summaryrefslogtreecommitdiff
path: root/sci-mathematics/gmp-ecm/gmp-ecm-7.0.5-r1.ebuild
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2022-10-08 07:29:33 +0100
committerV3n3RiX <venerix@koprulu.sector>2022-10-08 07:29:33 +0100
commit4cc852b4016d8aa1fa4d7a8b3911bebe1ed1da50 (patch)
tree63c3a168bb59a510954fae0dc96a9f4658d22b31 /sci-mathematics/gmp-ecm/gmp-ecm-7.0.5-r1.ebuild
parentad75ca50360f9590325f0f709c091832b70eab1d (diff)
gentoo auto-resync : 08:10:2022 - 07:29:32
Diffstat (limited to 'sci-mathematics/gmp-ecm/gmp-ecm-7.0.5-r1.ebuild')
-rw-r--r--sci-mathematics/gmp-ecm/gmp-ecm-7.0.5-r1.ebuild60
1 files changed, 60 insertions, 0 deletions
diff --git a/sci-mathematics/gmp-ecm/gmp-ecm-7.0.5-r1.ebuild b/sci-mathematics/gmp-ecm/gmp-ecm-7.0.5-r1.ebuild
new file mode 100644
index 000000000000..8470285a6df1
--- /dev/null
+++ b/sci-mathematics/gmp-ecm/gmp-ecm-7.0.5-r1.ebuild
@@ -0,0 +1,60 @@
+# 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="+custom-tune openmp cpu_flags_x86_sse2"
+
+DEPEND="dev-libs/gmp:="
+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() {
+ [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
+}
+
+pkg_setup() {
+ [[ ${MERGE_TYPE} != binary ]] && 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 openmp) \
+ $(use_enable cpu_flags_x86_sse2 sse2) \
+ $(use_enable custom-tune asm-redc)
+}
+
+src_install() {
+ default
+ find "${ED}" -name '*.la' -delete || die
+}