summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFrançois Bissey <frp.bissey@gmail.com>2022-05-06 11:31:46 +1200
committerMichael Orlitzky <mjo@gentoo.org>2022-05-06 07:42:34 -0400
commit99942c6ca1519833a3557de313fff0056788f71f (patch)
treed83a33c4d971532251f078ea1b4026200bb6fe91
parentdev-ruby/rrdtool-bindings: Stabilize 1.8.0 x86, #842840 (diff)
downloadgentoo-99942c6c.tar.gz
gentoo-99942c6c.tar.bz2
gentoo-99942c6c.zip
sci-mathematics/gmp-ecm: upstream bump
Package-Manager: Portage-3.0.30, Repoman-3.0.3 Closes: https://bugs.gentoo.org/842843 Closes: https://github.com/gentoo/gentoo/pull/25341 Signed-off-by: François René Pierre Bissey <frp.bissey@gmail.com> Signed-off-by: Michael Orlitzky <mjo@gentoo.org>
-rw-r--r--sci-mathematics/gmp-ecm/Manifest1
-rw-r--r--sci-mathematics/gmp-ecm/gmp-ecm-7.0.5.ebuild63
-rw-r--r--sci-mathematics/gmp-ecm/metadata.xml3
3 files changed, 67 insertions, 0 deletions
diff --git a/sci-mathematics/gmp-ecm/Manifest b/sci-mathematics/gmp-ecm/Manifest
index fce77a75e928..0b39c18a6861 100644
--- a/sci-mathematics/gmp-ecm/Manifest
+++ b/sci-mathematics/gmp-ecm/Manifest
@@ -1 +1,2 @@
DIST ecm-7.0.4.tar.gz 1101899 BLAKE2B 6d52364d9c752aee66510a7f6b273559bf1b7de0032fbbeff74e229ed68fd0cd1c236b480f8fc25bcad6435740e3e22b3099c8f018912918ab8f4b33dc7b8b3c SHA512 b863b9bfd26df26c3c4243686036a69110e69ca3eec5b31d4550fe713e2fac4ce70cd1d80f0614899793aa44710531aa4a21abc0fa1b99eb17f62bd92b971350
+DIST ecm-7.0.5.tar.gz 1159568 BLAKE2B 7fb8d78a6bc8423c9890b9d6e334f8c4317b68cde7d712c5306775c6f07eacb3cbbbd11d651bbbdd687a87692f4920170557b51f9498881a6c5018a2ce0b1b7f SHA512 f5a482a231339304683adc3334c9b86f21a0d9b42ea871418d4c01005057d560cd418eddfcc1c7be7f8c249960b2ee612a1454ccc5d8e41319b06c6f42e6662e
diff --git a/sci-mathematics/gmp-ecm/gmp-ecm-7.0.5.ebuild b/sci-mathematics/gmp-ecm/gmp-ecm-7.0.5.ebuild
new file mode 100644
index 000000000000..bf4ba87d79a1
--- /dev/null
+++ b/sci-mathematics/gmp-ecm/gmp-ecm-7.0.5.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit 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/89f6f0d65d3e980cef33dc922004e4b2/${MY_P}.tar.gz"
+
+LICENSE="GPL-3 LGPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86 ~ppc-macos ~x64-macos"
+IUSE="cuda +custom-tune openmp static-libs cpu_flags_x86_sse2"
+
+DEPEND="dev-libs/gmp:=
+ cuda? (
+ dev-util/nvidia-cuda-toolkit
+ x11-drivers/nvidia-drivers
+ )
+"
+RDEPEND="${DEPEND}"
+# xsltproc is used to produce the manppage in combination with the appropriate stylesheet
+BDEPEND="dev-libs/libxslt
+ app-text/docbook-xsl-stylesheets"
+
+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 cuda gpu) \
+ $(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 e89f3c570a87..3723f0d56e48 100644
--- a/sci-mathematics/gmp-ecm/metadata.xml
+++ b/sci-mathematics/gmp-ecm/metadata.xml
@@ -16,6 +16,9 @@
</maintainer>
<use>
+ <flag name="cuda">
+ Use NVidia's cuda toolkit for computations
+ </flag>
<flag name="custom-tune">
Improve performance of some operations by selecting
machine-specific defaults