Github messages for voidlinux
 help / color / mirror / Atom feed
From: ericonr <ericonr@users.noreply.github.com>
To: ml@inbox.vuxu.org
Subject: Re: [PR PATCH] [Updated] Aspell: force 32bit hash on all platforms
Date: Sun, 27 Dec 2020 00:05:50 +0100	[thread overview]
Message-ID: <20201226230550.6LgAOGYFjIp3B4fJDa-1quE-FbbhFfSSm3OXyUjtQCI@z> (raw)
In-Reply-To: <gh-mailinglist-notifications-41a7ca26-5023-4802-975b-f1789d68868e-void-packages-27342@inbox.vuxu.org>

[-- Attachment #1: Type: text/plain, Size: 689 bytes --]

There is an updated pull request by ericonr against master on the void-packages repository

https://github.com/ericonr/void-packages aspell
https://github.com/void-linux/void-packages/pull/27342

Aspell: force 32bit hash on all platforms
See https://github.com/void-linux/void-packages/issues/16659

The other solutions are either

- an aspell-32bit-compat package to cross build for 32bit archs on 64bit host
- adding plumbing around all dictionary packages to use qemu (which will break next time someone adds a dictionary)

Since neither of those are great, I went with the simplest one.

A patch file from https://github.com/void-linux/void-packages/pull/27342.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-aspell-27342.patch --]
[-- Type: text/x-diff, Size: 8938 bytes --]

From 0d5e1fa1466a849eea0a408ecad777be299fc0e6 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C3=89rico=20Rolim?= <erico.erc@gmail.com>
Date: Sat, 26 Dec 2020 20:02:15 -0300
Subject: [PATCH 1/9] environment/configure/gnu-configure: always include
 configure_args from template last.

This makes sure that anything set in templates will override the
defaults.
---
 common/environment/configure/gnu-configure-args.sh | 12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

diff --git a/common/environment/configure/gnu-configure-args.sh b/common/environment/configure/gnu-configure-args.sh
index 1c5f51b35cc..c0a2f4602b9 100644
--- a/common/environment/configure/gnu-configure-args.sh
+++ b/common/environment/configure/gnu-configure-args.sh
@@ -4,8 +4,12 @@ if [ -n "$build_style" -a "$build_style" != "gnu-configure" ]; then
 	return 0
 fi
 
+# Store args from template so they can be included last and override
+# our defaults
+TEMPLATE_CONFIGURE_ARGS="${configure_args}"
+
 export configure_args="--prefix=/usr --sysconfdir=/etc --sbindir=/usr/bin --bindir=/usr/bin
- --mandir=/usr/share/man --infodir=/usr/share/info --localstatedir=/var ${configure_args}"
+ --mandir=/usr/share/man --infodir=/usr/share/info --localstatedir=/var"
 
 . ${XBPS_COMMONDIR}/build-profiles/${XBPS_MACHINE}.sh
 export configure_args+=" --host=$XBPS_TRIPLET --build=$XBPS_TRIPLET"
@@ -29,12 +33,18 @@ esac
 
 # Cross compilation vars
 if [ -z "$CROSS_BUILD" ]; then
+	export configure_args+=" ${TEMPLATE_CONFIGURE_ARGS}"
+	unset TEMPLATE_CONFIGURE_ARGS
+
 	set +a
 	return 0
 fi
 
 export configure_args+=" --host=$XBPS_CROSS_TRIPLET --with-sysroot=$XBPS_CROSS_BASE --with-libtool-sysroot=$XBPS_CROSS_BASE "
 
+export configure_args+=" ${TEMPLATE_CONFIGURE_ARGS}"
+unset TEMPLATE_CONFIGURE_ARGS
+
 # Read autoconf cache variables for cross target (taken from OE).
 case "$XBPS_TARGET_MACHINE" in
 	# musl libc

From ae96f5add6bae085998d47a7fb27971ba109bc98 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C3=89rico=20Rolim?= <erico.erc@gmail.com>
Date: Tue, 22 Dec 2020 01:12:51 -0300
Subject: [PATCH 2/9] aspell: force 32-bit dictionaries for all archs.

Given [1] and that we cross build dictionary packages for 32bit archs on
64bit hosts, the generated dictionaries aren't usable on the 32bit
systems. It is therefore necessary to compile aspell in its 32bit mode,
which will make it possible to cross build dictionaries between
supported architectures, as long as they have the same endianness.

Furthermore, upstream recommends using 32bit hashes, since the 64bit
ones are completely unnecessary [2].

It should be noted that dictionaries were previously completely broken
for 32-bit cross compiled targets (currently, arvm6l and armv7l).

[1] http://aspell.net/man-html/Using-32_002dBit-Dictionaries-on-a-64_002dBit-System.html
[2] https://lists.gnu.org/archive/html/aspell-devel/2020-12/msg00001.html
---
 srcpkgs/aspell/template | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/aspell/template b/srcpkgs/aspell/template
index 414e0adedfd..f58c1832b9b 100644
--- a/srcpkgs/aspell/template
+++ b/srcpkgs/aspell/template
@@ -1,9 +1,16 @@
 # Template file for 'aspell'
 pkgname=aspell
 version=0.60.8
-revision=2
+revision=3
 build_style=gnu-configure
-configure_args="--enable-compile-in-filters"
+# we need to force aspell to use /usr/lib for data for two reasons:
+# - in multilib systems, it should use the native dicts instead of requiring
+#   that a dict be installed twice
+# - when cross compiling packages, it's aspell that determines where the dicts
+#   are to be installed; the build will error out if it tries to install the
+#   dictionaries into /usr/lib64 for 32-bit targets
+configure_args="--enable-compile-in-filters --enable-32-bit-hash-fun
+ --libdir=/usr/lib"
 hostmakedepends="automake libtool gettext-devel perl"
 makedepends="ncurses-devel"
 depends="perl"

From c031dbc419907f8d066817dee6afe25071e84128 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C3=89rico=20Rolim?= <erico.erc@gmail.com>
Date: Tue, 22 Dec 2020 01:19:32 -0300
Subject: [PATCH 3/9] aspell-ru: rebuild for forced 32bit hash function in
 aspell.

---
 srcpkgs/aspell-ru/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/aspell-ru/template b/srcpkgs/aspell-ru/template
index c6592338f38..abdcf8f050c 100644
--- a/srcpkgs/aspell-ru/template
+++ b/srcpkgs/aspell-ru/template
@@ -1,7 +1,7 @@
 # Template file for 'aspell-ru'
 pkgname=aspell-ru
 version=0.99f7
-revision=3
+revision=4
 wrksrc="aspell6-ru-${version}-1"
 build_style=configure
 hostmakedepends="aspell-devel which"

From 0c93eaea3376a24454e84df2858a7d411f6ac644 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C3=89rico=20Rolim?= <erico.erc@gmail.com>
Date: Tue, 22 Dec 2020 01:19:32 -0300
Subject: [PATCH 4/9] aspell-de: rebuild for forced 32bit hash function in
 aspell.

---
 srcpkgs/aspell-de/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/aspell-de/template b/srcpkgs/aspell-de/template
index 029664409c5..be8905b0299 100644
--- a/srcpkgs/aspell-de/template
+++ b/srcpkgs/aspell-de/template
@@ -1,7 +1,7 @@
 # Template file for 'aspell-de'
 pkgname=aspell-de
 version=20161207.7.0
-revision=2
+revision=3
 wrksrc="aspell6-de-${version//./-}"
 build_style=configure
 hostmakedepends="aspell-devel which"

From 3a9f2e8904c29ebba80da2cd16fb05c5822e9369 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C3=89rico=20Rolim?= <erico.erc@gmail.com>
Date: Tue, 22 Dec 2020 01:19:32 -0300
Subject: [PATCH 5/9] aspell-el: rebuild for forced 32bit hash function in
 aspell.

---
 srcpkgs/aspell-el/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/aspell-el/template b/srcpkgs/aspell-el/template
index 7d4a9c2727f..1221a64c823 100644
--- a/srcpkgs/aspell-el/template
+++ b/srcpkgs/aspell-el/template
@@ -1,7 +1,7 @@
 # Template file for 'aspell-el'
 pkgname=aspell-el
 version=0.08.0
-revision=2
+revision=3
 _distver="${version%.*}-${version##*.}"
 wrksrc="aspell6-el-${_distver}"
 build_style=configure

From d5274db002cbb03bb2842c8b2fe389850bf66c8f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C3=89rico=20Rolim?= <erico.erc@gmail.com>
Date: Tue, 22 Dec 2020 01:19:32 -0300
Subject: [PATCH 6/9] aspell-fr: rebuild for forced 32bit hash function in
 aspell.

---
 srcpkgs/aspell-fr/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/aspell-fr/template b/srcpkgs/aspell-fr/template
index 970e6041401..e563f3a91e8 100644
--- a/srcpkgs/aspell-fr/template
+++ b/srcpkgs/aspell-fr/template
@@ -1,7 +1,7 @@
 # Template file for 'aspell-fr'
 pkgname=aspell-fr
 version=0.50.3
-revision=3
+revision=4
 wrksrc="aspell-fr-0.50-3"
 build_style=configure
 hostmakedepends="aspell-devel which"

From a9a2d42e49ba0e867650fce64b764b5b343c267c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C3=89rico=20Rolim?= <erico.erc@gmail.com>
Date: Tue, 22 Dec 2020 01:19:33 -0300
Subject: [PATCH 7/9] aspell-en: rebuild for forced 32bit hash function in
 aspell.

---
 srcpkgs/aspell-en/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/aspell-en/template b/srcpkgs/aspell-en/template
index 87ac85d00ea..7b6ca841eaf 100644
--- a/srcpkgs/aspell-en/template
+++ b/srcpkgs/aspell-en/template
@@ -1,7 +1,7 @@
 # Template file for 'aspell-en'
 pkgname=aspell-en
 version=2020.12.07
-revision=1
+revision=2
 wrksrc="aspell6-en-${version}-0"
 build_style=configure
 hostmakedepends="aspell-devel which"

From a051dc443c7292bbf2e0a1314f535b3f60a40185 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C3=89rico=20Rolim?= <erico.erc@gmail.com>
Date: Tue, 22 Dec 2020 01:19:33 -0300
Subject: [PATCH 8/9] aspell-cs: rebuild for forced 32bit hash function in
 aspell.

---
 srcpkgs/aspell-cs/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/aspell-cs/template b/srcpkgs/aspell-cs/template
index 35958546170..a5ff4a773d2 100644
--- a/srcpkgs/aspell-cs/template
+++ b/srcpkgs/aspell-cs/template
@@ -1,7 +1,7 @@
 # Template file for 'aspell-cs'
 pkgname=aspell-cs
 version=20040614.1
-revision=2
+revision=3
 wrksrc="aspell6-cs-${version/./-}"
 build_style=configure
 hostmakedepends="aspell-devel which"

From c65d92c568327ad5cc3dc37c9613613b2b97e46c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C3=89rico=20Rolim?= <erico.erc@gmail.com>
Date: Tue, 22 Dec 2020 01:19:33 -0300
Subject: [PATCH 9/9] aspell-pl: rebuild for forced 32bit hash function in
 aspell.

---
 srcpkgs/aspell-pl/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/aspell-pl/template b/srcpkgs/aspell-pl/template
index a0600b785c9..05d90c0033b 100644
--- a/srcpkgs/aspell-pl/template
+++ b/srcpkgs/aspell-pl/template
@@ -1,7 +1,7 @@
 # Template file for 'aspell-pl'
 pkgname=aspell-pl
 version=20061121
-revision=2
+revision=3
 wrksrc="aspell6-pl-6.0_${version}-0"
 build_style=configure
 hostmakedepends="aspell-devel which"

  parent reply	other threads:[~2020-12-26 23:05 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-12-22  4:21 [PR PATCH] " ericonr
2020-12-23 19:46 ` ericonr
2020-12-26 21:37 ` [PR PATCH] [Updated] " ericonr
2020-12-26 22:05 ` ericonr
2020-12-26 22:12 ` ericonr
2020-12-26 22:18 ` ericonr
2020-12-26 23:05 ` ericonr [this message]
2020-12-28  1:31 ` [PR PATCH] [Merged]: " ericonr

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20201226230550.6LgAOGYFjIp3B4fJDa-1quE-FbbhFfSSm3OXyUjtQCI@z \
    --to=ericonr@users.noreply.github.com \
    --cc=ml@inbox.vuxu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).