From d18bf1e01b65ee4bf0c804e2843b282d3d4e5d7c Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Tue, 15 Jun 2021 14:57:03 +0100 Subject: gentoo resync : 15.06.2021 --- sci-mathematics/gmp-ecm/Manifest | 5 +- .../gmp-ecm/files/gmp-ecm-7.0.4-execstack.patch | 49 +++++++++++++ sci-mathematics/gmp-ecm/gmp-ecm-7.0.4-r3.ebuild | 57 --------------- sci-mathematics/gmp-ecm/gmp-ecm-7.0.4-r4.ebuild | 81 ++++++++++++++++++++++ sci-mathematics/gmp-ecm/metadata.xml | 19 ++++- 5 files changed, 149 insertions(+), 62 deletions(-) create mode 100644 sci-mathematics/gmp-ecm/files/gmp-ecm-7.0.4-execstack.patch delete mode 100644 sci-mathematics/gmp-ecm/gmp-ecm-7.0.4-r3.ebuild create mode 100644 sci-mathematics/gmp-ecm/gmp-ecm-7.0.4-r4.ebuild (limited to 'sci-mathematics/gmp-ecm') diff --git a/sci-mathematics/gmp-ecm/Manifest b/sci-mathematics/gmp-ecm/Manifest index 34605f7595db..9c5912a1735c 100644 --- a/sci-mathematics/gmp-ecm/Manifest +++ b/sci-mathematics/gmp-ecm/Manifest @@ -1,6 +1,7 @@ +AUX gmp-ecm-7.0.4-execstack.patch 1568 BLAKE2B ccf8b74074bf357e74bc6126c505ebc77c389c851ee0ec35743c99270b6f36fa92d26c9df4b1f1a20e125a3b6dbd53522fa441d91fc4f8427d3b6d6ab50be07a SHA512 874924dd2f81c2e85dd4cdb0d8a14d1e22a9aca0c3883a9e16f1888f61b5af9b26a8c80469b65566a4becefce6a1d37ecdbba029648b4d62dc320f9e5a776453 AUX gmp-ecm-7.0.4-openmp.patch 795 BLAKE2B 2a857cba5e0bc4e7dfe710c250bcb721dd2fd5e0c9c049987f8505d2efc758ff026b313bc92a2b18472bbebc320c8d1187c8506eaea6d2f1f6d51da284bca3ae SHA512 063d20e5a4cf088aaed31eb79c6b253ef4747d3d449c70936b4079c519480767f4f19dc259894422dc6d5783c9c360fc2c3a9fda4bb9b2a124a0e7bd90c08554 DIST ecm-7.0.4.tar.gz 1101899 BLAKE2B 6d52364d9c752aee66510a7f6b273559bf1b7de0032fbbeff74e229ed68fd0cd1c236b480f8fc25bcad6435740e3e22b3099c8f018912918ab8f4b33dc7b8b3c SHA512 b863b9bfd26df26c3c4243686036a69110e69ca3eec5b31d4550fe713e2fac4ce70cd1d80f0614899793aa44710531aa4a21abc0fa1b99eb17f62bd92b971350 DIST gmp-ecm-7.0.4.tar.gz 1101899 BLAKE2B 6d52364d9c752aee66510a7f6b273559bf1b7de0032fbbeff74e229ed68fd0cd1c236b480f8fc25bcad6435740e3e22b3099c8f018912918ab8f4b33dc7b8b3c SHA512 b863b9bfd26df26c3c4243686036a69110e69ca3eec5b31d4550fe713e2fac4ce70cd1d80f0614899793aa44710531aa4a21abc0fa1b99eb17f62bd92b971350 EBUILD gmp-ecm-7.0.4-r2.ebuild 1215 BLAKE2B c018b48131e2baeb0f373993b32c2a1e05b9669932ac54ece52ba30b8e0b63a6e59ff4506cbcd85bcb1d7e3ace665d993d4bae830ecb9f2909530fc41d3a78db SHA512 912183343a5a87f9fb27934de2e729a4eef66dec2a72ef6afbdb59eff91da2e2222647976b4304d186c40ef65a79a3536103527fbf0d9346419a46ddc3e5b476 -EBUILD gmp-ecm-7.0.4-r3.ebuild 1430 BLAKE2B eb29cc60000a5348eb82b90d8a3167877b9703fa68332accf175766786066587dc3a228e7a34f711ceeef2b1d5c2e6cd25ca81c6b1d60a4b0fdcca785f52ba03 SHA512 ba4fdcaf9b304114619669f6e6af012bc5845d301a0734131abaf76663ea489766c2690545d4f97008ecacca60c3205a5e7caa0d1ad230989539dbf42fcbbd7b -MISC metadata.xml 384 BLAKE2B 168807abd87bddc88522015f01126d5ec0bde8716aa38b6e619054d39e9bb12a6ffdaa3082328ecb56c0398b498c964c8e28c818d3887919fbe3065a28673f2a SHA512 a8a7aa64869c88ac293347281a80158cbd3cc84fc9f5ca56531d3d53b33601f9baa5c4f66c93508d6763dc54779a563faa09c4a473c670a9b217610efecca25c +EBUILD gmp-ecm-7.0.4-r4.ebuild 2006 BLAKE2B 103f94466d63669a880d9b883799e2fbefb4f3d887eef3711569bf6e55aca319599c91b2b1b1979f922d9633e9491df3276037ff7f7100e85ed091001dc54b3b SHA512 c66648073d3097233010fccbcf55c16437910833cf521d8aad0cd22f272a0b65ea008809750abfecb1fe96d88828041382b3541a1740e6e35757593dd8003c40 +MISC metadata.xml 642 BLAKE2B 1fd7ded8fc3297865351312b2fe01357ba0f5cecdc7286204f584ebd8691f5d2dc42124ab22e11bb1e7afc99ca81a366de1c6438516ba299a37ac591c90c5115 SHA512 ae6a010d64adf5d6d6fcc3170e054f3fe6b5af6a996620ebf5d7cac6f4decca05562767706857143d9e4f75225e3ca21504b816248df1912c71b8eb4f02da771 diff --git a/sci-mathematics/gmp-ecm/files/gmp-ecm-7.0.4-execstack.patch b/sci-mathematics/gmp-ecm/files/gmp-ecm-7.0.4-execstack.patch new file mode 100644 index 000000000000..6cca19161911 --- /dev/null +++ b/sci-mathematics/gmp-ecm/files/gmp-ecm-7.0.4-execstack.patch @@ -0,0 +1,49 @@ +diff --git a/acinclude.m4 b/acinclude.m4 +index e92d2c9..b602f12 100644 +--- a/acinclude.m4 ++++ b/acinclude.m4 +@@ -604,32 +604,3 @@ AC_SUBST(CUDALDFLAGS) + AC_SUBST(CUDARPATH) + + ]) +- +-dnl Checks whether the stack can be marked nonexecutable by passing an option +-dnl to the C-compiler when acting on .s files. Appends that option to ASMFLAGS. +-dnl This macro is adapted from one found in GMP 6.1.1. +-dnl FIXME: This test looks broken. It tests that a file with .note.GNU-stack... +-dnl can be compiled/assembled with -Wa,--noexecstack. It does not determine +-dnl if that command-line option has any effect on general asm code. +-AC_DEFUN([CL_AS_NOEXECSTACK],[ +-dnl AC_REQUIRE([AC_PROG_CC]) GMP uses something else +-AC_CACHE_CHECK([whether assembler supports --noexecstack option], +-cl_cv_as_noexecstack, [dnl +- cat > conftest.c </dev/null]) \ +- && grep .note.GNU-stack conftest.s >/dev/null \ +- && AC_TRY_COMMAND([${CC} $CFLAGS $CPPFLAGS -Wa,--noexecstack +- -c -o conftest.o conftest.s >/dev/null]) +- then +- cl_cv_as_noexecstack=yes +- else +- cl_cv_as_noexecstack=no +- fi +- rm -f conftest*]) +- if test "$cl_cv_as_noexecstack" = yes; then +- LIBECM_LDFLAGS="$LIBECM_LDFLAGS -Wl,-znoexecstack" +- fi +-]) +diff --git a/configure.ac b/configure.ac +index 66a18dc..25b9aba 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -590,7 +590,6 @@ error + fi + ;; + esac +-CL_AS_NOEXECSTACK + AC_SUBST([LIBECM_LDFLAGS]) + + diff --git a/sci-mathematics/gmp-ecm/gmp-ecm-7.0.4-r3.ebuild b/sci-mathematics/gmp-ecm/gmp-ecm-7.0.4-r3.ebuild deleted file mode 100644 index f36a15f13d2c..000000000000 --- a/sci-mathematics/gmp-ecm/gmp-ecm-7.0.4-r3.ebuild +++ /dev/null @@ -1,57 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit flag-o-matic toolchain-funcs - -MY_PN="ecm" -MY_P="${MY_PN}-${PV}" -DESCRIPTION="Elliptic Curve Method for Integer Factorization" -HOMEPAGE="https://gitlab.inria.fr/zimmerma/ecm" -SRC_URI="https://gitlab.inria.fr/zimmerma/ecm/uploads/9cd422ec80268f8a885e499e17f98056/${MY_P}.tar.gz" - -LICENSE="GPL-3 LGPL-3" -SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~x86 ~ppc-macos ~x64-macos" -IUSE="+custom-tune openmp static-libs cpu_flags_x86_sse2" - -DEPEND="dev-libs/gmp:=" -RDEPEND="${DEPEND}" - -PATCHES=( - "${FILESDIR}"/${PN}-7.0.4-openmp.patch -) - -S="${WORKDIR}/${MY_P}" - -pkg_pretend() { - use openmp && tc-check-openmp -} - -src_compile() { - default - if use custom-tune; then - # One "emake" was needed to build the library. Now we can find - # the best set of parameters, and then run "emake" one more time - # to rebuild the library with the custom parameters. See the - # project's README or INSTALL-ecm. The build targets don't depend - # on ecm-params.h, so we need to "make clean" to force a rebuild. - emake ecm-params && emake clean && emake - fi -} -src_configure() { - econf \ - --enable-shared \ - $(use_enable static-libs static) \ - $(use_enable openmp) \ - $(use_enable cpu_flags_x86_sse2 sse2) \ - $(use_enable custom-tune asm-redc) -} - -src_install() { - default - - # remove .la file - find "${ED}" -name '*.la' -delete || die -} diff --git a/sci-mathematics/gmp-ecm/gmp-ecm-7.0.4-r4.ebuild b/sci-mathematics/gmp-ecm/gmp-ecm-7.0.4-r4.ebuild new file mode 100644 index 000000000000..800fcf6b3584 --- /dev/null +++ b/sci-mathematics/gmp-ecm/gmp-ecm-7.0.4-r4.ebuild @@ -0,0 +1,81 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit autotools flag-o-matic toolchain-funcs + +MY_PN="ecm" +MY_P="${MY_PN}-${PV}" +DESCRIPTION="Elliptic Curve Method for Integer Factorization" +HOMEPAGE="https://gitlab.inria.fr/zimmerma/ecm" +SRC_URI="https://gitlab.inria.fr/zimmerma/ecm/uploads/9cd422ec80268f8a885e499e17f98056/${MY_P}.tar.gz" + +LICENSE="GPL-3 LGPL-3" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~x86 ~ppc-macos ~x64-macos" +IUSE="+custom-tune openmp static-libs cpu_flags_x86_sse2" + +DEPEND="dev-libs/gmp:=" +RDEPEND="${DEPEND}" + +PATCHES=( + "${FILESDIR}"/${PN}-7.0.4-openmp.patch + "${FILESDIR}"/${PN}-7.0.4-execstack.patch +) + +S="${WORKDIR}/${MY_P}" + +pkg_pretend() { + use openmp && tc-check-openmp +} + +src_prepare(){ + default + + # patch the asm files + # create a sample with the assembly code needed + # Quote around # are needed because the files will be processed by M4. + cat <<-EOF > "${T}/sample.asm" + + \`#'if defined(__linux__) && defined(__ELF__) + .section .note.GNU-stack,"",%progbits + \`#'endif + EOF + + # patch the asm files + cat "${T}/sample.asm" >> x86_64/mulredc1.asm + for i in {2..20} ; do + cat "${T}/sample.asm" >> x86_64/mulredc"$i".asm + cat "${T}/sample.asm" >> x86_64/mulredc1_"$i".asm + done + + eautoreconf +} + +src_compile() { + default + if use custom-tune; then + # One "emake" was needed to build the library. Now we can find + # the best set of parameters, and then run "emake" one more time + # to rebuild the library with the custom parameters. See the + # project's README or INSTALL-ecm. The build targets don't depend + # on ecm-params.h, so we need to "make clean" to force a rebuild. + emake ecm-params && emake clean && emake + fi +} +src_configure() { + econf \ + --enable-shared \ + $(use_enable static-libs static) \ + $(use_enable openmp) \ + $(use_enable cpu_flags_x86_sse2 sse2) \ + $(use_enable custom-tune asm-redc) +} + +src_install() { + default + + # remove .la file + find "${ED}" -name '*.la' -delete || die +} diff --git a/sci-mathematics/gmp-ecm/metadata.xml b/sci-mathematics/gmp-ecm/metadata.xml index b5bb0a9997ee..1922e4c13f31 100644 --- a/sci-mathematics/gmp-ecm/metadata.xml +++ b/sci-mathematics/gmp-ecm/metadata.xml @@ -1,11 +1,24 @@ + - patrick@gentoo.org - Patrick Lauer + mjo@gentoo.org + + + frp.bissey@gmail.com + François Bissey + + + proxy-maint@gentoo.org + Proxy Maintainers + + - Improve performance of some operations by selecting machine-specific defaults + + Improve performance of some operations by selecting + machine-specific defaults + -- cgit v1.2.3