summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Orlitzky <mjo@gentoo.org>2020-04-26 14:08:58 -0400
committerMichael Orlitzky <mjo@gentoo.org>2020-04-26 14:18:09 -0400
commit2e663bd0db9b0cc1bdc6136bc392230f759a4d48 (patch)
tree756d92fcb4fc4f21fc8660daeb6417cc45bb8647 /dev-libs
parentdev-lang/python: arm stable wrt bug #707822 (diff)
downloadgentoo-2e663bd0db9b0cc1bdc6136bc392230f759a4d48.tar.gz
gentoo-2e663bd0db9b0cc1bdc6136bc392230f759a4d48.tar.bz2
gentoo-2e663bd0db9b0cc1bdc6136bc392230f759a4d48.zip
dev-libs/gf2x: new version 1.3.0.
Standard version bump along with some ebuild improvements: * EAPI=7. * Dropped the unused eutils and replaced the ltprune eclasses. * Added the new Gitlab instance to HOMEPAGE. * Added a GCC-10.x compatibility patch already merged upstream. * Updated the subslot to match the major soname component. Closes: https://bugs.gentoo.org/719612 Package-Manager: Portage-2.3.89, Repoman-2.3.20 Signed-off-by: Michael Orlitzky <mjo@gentoo.org>
Diffstat (limited to 'dev-libs')
-rw-r--r--dev-libs/gf2x/Manifest1
-rw-r--r--dev-libs/gf2x/files/fno-common.patch37
-rw-r--r--dev-libs/gf2x/gf2x-1.3.0.ebuild57
3 files changed, 95 insertions, 0 deletions
diff --git a/dev-libs/gf2x/Manifest b/dev-libs/gf2x/Manifest
index 28e154527b01..a221ee912f7c 100644
--- a/dev-libs/gf2x/Manifest
+++ b/dev-libs/gf2x/Manifest
@@ -1 +1,2 @@
DIST gf2x-1.2.tar.gz 706519 BLAKE2B 4aa45d10646b51e540be51d0fe3691083c48c666d34e67d50d8f53753c49af2bd9664483618eee5a1883106d1f58ddb28cd4eb02031f13eebe8278630de736f6 SHA512 efddad2b99fa103fa77caed4a62f4a763dbff67bc7cf4527bbbf33ca826829e4a4f94e97454ef1a6498bdc2cee8934ff43f9dabf41a4a4f256721527a1dffa30
+DIST gf2x-1.3.0.tar.gz 727717 BLAKE2B 65f6596a09087708e4ae940b067cb375476c1e7b25a28bf12e9318c752cb326516edeb9363d0f98a9b4173f5bcefd204aa62e1cb87b3f27ad9c30b661edc7451 SHA512 4991568032483e0ecb4552a698e5b7d09f80875e54584a0060a9473be1f87e4e8f714e657f08fec0b9fcf493d969408e5a9000f900623b3694aba1ecf6dc239e
diff --git a/dev-libs/gf2x/files/fno-common.patch b/dev-libs/gf2x/files/fno-common.patch
new file mode 100644
index 000000000000..bcb4c255707d
--- /dev/null
+++ b/dev-libs/gf2x/files/fno-common.patch
@@ -0,0 +1,37 @@
+From 5c8737c5c3170358024a4a969e1386cea15932f3 Mon Sep 17 00:00:00 2001
+From: Michael Orlitzky <michael@orlitzky.com>
+Date: Sun, 26 Apr 2020 09:56:34 -0400
+Subject: [PATCH 1/1] src/tunetoom.c: delete duplicate definition of rp.
+
+The "make tune-toom" command has started failing with gcc-10.x because
+of its new default -fno-common behavior,
+
+ * https://gcc.gnu.org/gcc-10/porting_to.html
+ * https://wiki.gentoo.org/wiki/Gcc_10_porting_notes/fno_common
+
+This leads to an error involving the FILE pointer "rp" that is declared
+in global scope in both src/tunetoom.c and src/tuning-common.c. In this
+case, the declaration in src/tunetoom.c is simply redundant: that file
+includes src/tuning-common.h which already declares "rp" as extern.
+
+Deleting the redeclaration in src/tunetoom.c makes the build succeed.
+---
+ src/tunetoom.c | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/src/tunetoom.c b/src/tunetoom.c
+index 7553e0c..1140606 100644
+--- a/src/tunetoom.c
++++ b/src/tunetoom.c
+@@ -111,8 +111,6 @@ const char * gf2x_utoom_select_string[] = {
+ [GF2X_SELECT_UNB_TC3U] = "TC3U",
+ };
+
+-FILE *rp;
+-
+ void tunetoom(long tablesz)
+ {
+ long high, n;
+--
+2.24.1
+
diff --git a/dev-libs/gf2x/gf2x-1.3.0.ebuild b/dev-libs/gf2x/gf2x-1.3.0.ebuild
new file mode 100644
index 000000000000..4763099d4a33
--- /dev/null
+++ b/dev-libs/gf2x/gf2x-1.3.0.ebuild
@@ -0,0 +1,57 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit autotools
+
+DESCRIPTION="C/C++ routines for fast arithmetic in GF(2)[x]"
+HOMEPAGE="https://gitlab.inria.fr/thome/gf2x/ http://gforge.inria.fr/projects/gf2x/"
+# The Gitlab release is missing the autotools files.
+SRC_URI="https://gforge.inria.fr/frs/download.php/38243/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0/3" # soname major version, defined in configure.ac
+KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
+IUSE="fft static-libs custom-tune"
+IUSE_CPU_FLAGS=" pclmul sse2 sse3 sse4_1 ssse3"
+IUSE+=" ${IUSE_CPU_FLAGS// / cpu_flags_x86_}"
+
+PATCHES=( "${FILESDIR}/fno-common.patch" )
+
+src_prepare() {
+ default
+ # fix for cross-compiling, avoid ABI detection
+ sed -e 's/VERIFY_WORDSIZE(\[$ABI\].*/echo "skipping ABI check"/' \
+ -e 's/AC_MSG_ERROR(\[already_t.*/echo "skipping ABI check"/' \
+ -i configure.ac || die
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ $(use_enable cpu_flags_x86_sse2 sse2) \
+ $(use_enable cpu_flags_x86_sse3 sse3) \
+ $(use_enable cpu_flags_x86_ssse3 ssse3) \
+ $(use_enable cpu_flags_x86_sse4_1 sse41) \
+ $(use_enable cpu_flags_x86_pclmul pclmul) \
+ $(use_enable fft fft-interface) \
+ $(use_enable static-libs static)
+}
+
+src_compile() {
+ emake
+ if use custom-tune; then
+ einfo "Starting tuning"
+ emake tune-lowlevel
+ emake tune-toom
+ use fft && emake tune-fft
+ fi
+}
+
+src_install() {
+ default
+ if ! use static-libs; then
+ find "${ED}" -name '*.la' -delete || die
+ fi
+}