summaryrefslogtreecommitdiff
path: root/sci-mathematics/gmp-ecm/gmp-ecm-7.0.4-r1.ebuild
diff options
context:
space:
mode:
Diffstat (limited to 'sci-mathematics/gmp-ecm/gmp-ecm-7.0.4-r1.ebuild')
-rw-r--r--sci-mathematics/gmp-ecm/gmp-ecm-7.0.4-r1.ebuild54
1 files changed, 54 insertions, 0 deletions
diff --git a/sci-mathematics/gmp-ecm/gmp-ecm-7.0.4-r1.ebuild b/sci-mathematics/gmp-ecm/gmp-ecm-7.0.4-r1.ebuild
new file mode 100644
index 000000000000..67ee92316610
--- /dev/null
+++ b/sci-mathematics/gmp-ecm/gmp-ecm-7.0.4-r1.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+inherit autotools eutils flag-o-matic multilib
+
+DESCRIPTION="Elliptic Curve Method for Integer Factorization"
+HOMEPAGE="http://ecm.gforge.inria.fr/"
+SRC_URI="https://gforge.inria.fr/frs/download.php/36224/${P}.tar.gz"
+
+LICENSE="GPL-3 LGPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="+blas +custom-tune -openmp static-libs test"
+
+DEPEND="
+ dev-libs/gmp:0=
+ blas? ( sci-libs/gsl )
+ openmp? ( sys-devel/gcc:*[openmp] )"
+RDEPEND="${DEPEND}"
+
+S=${WORKDIR}/ecm-${PV}
+
+MAKEOPTS+=" -j1"
+
+src_prepare() {
+ sed -e '/libecm_la_LIBADD/s:$: -lgmp:g' -i Makefile.am || die
+ eautoreconf
+}
+
+src_configure() {
+ # --enable-shellcmd is broken
+ econf \
+ --enable-shared \
+ $(use_enable static-libs static) \
+ $(use_enable openmp) \
+ ${myconf}
+}
+
+src_compile() {
+ append-ldflags "-Wl,-z,noexecstack"
+ if use custom-tune; then
+ emake && emake ecm-params # need to build all to get benchmark bits, then run benchmark
+ emake
+ fi
+ default
+}
+
+src_install() {
+ default
+ mkdir -p "${ED}/usr/include/${PN}/"
+ cp "${S}"/*.h "${ED}/usr/include/${PN}" || die "Failed to copy headers" # needed by other apps like YAFU
+}