summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--dev-libs/ntl/Manifest1
-rw-r--r--dev-libs/ntl/ntl-11.4.4.ebuild62
2 files changed, 63 insertions, 0 deletions
diff --git a/dev-libs/ntl/Manifest b/dev-libs/ntl/Manifest
index c1c7dc4d859..6e7174b0f2c 100644
--- a/dev-libs/ntl/Manifest
+++ b/dev-libs/ntl/Manifest
@@ -1 +1,2 @@
DIST ntl-11.4.3.tar.gz 2274421 BLAKE2B d2c2fe695b17f47b24ad714d51dd723cbba453cc0fd67b8f46392103ef2f40ba54246411c793f0f60d1d50aae27cb8e75f6e8526fa9592e04c2cd0bdecef760c SHA512 26515ed73c8e74d0ff8bc161101f1b815f2c23e4bd633cc426f6da2741c6d8f43ad4f8df2cb7ad915475933599e0ee01cc360e75569f6f5d49cb5e5eae37b3f5
+DIST ntl-11.4.4.tar.gz 2378708 BLAKE2B 9a4c85bbe2fd2d3360988e0c350864fc0a05714e39ce3972228d93aba17f0dc079c90fbe40ab9d72116d1e31f55328bbd5cc71cd080e42ea33bc92361b4462aa SHA512 ed89d82008ca8785cb3d69de9577f42abe464dabf167ea2aaf801951843fc427d41171cbaac2f0cf68f35110d029cc28a65bd5aad69d30e7312f5ebcb0b58911
diff --git a/dev-libs/ntl/ntl-11.4.4.ebuild b/dev-libs/ntl/ntl-11.4.4.ebuild
new file mode 100644
index 00000000000..0a9584119e1
--- /dev/null
+++ b/dev-libs/ntl/ntl-11.4.4.ebuild
@@ -0,0 +1,62 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+inherit toolchain-funcs
+
+DESCRIPTION="High-performance and portable C++ number theory library"
+HOMEPAGE="https://www.shoup.net/ntl/ https://github.com/libntl/ntl"
+SRC_URI="https://www.shoup.net/ntl/${P}.tar.gz"
+
+LICENSE="LGPL-2.1+"
+SLOT="0/43"
+KEYWORDS="~amd64 ~arm64 ~ppc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
+IUSE="bindist doc static-libs threads cpu_flags_x86_avx2"
+
+BDEPEND="dev-lang/perl"
+DEPEND="dev-libs/gmp:0=
+ dev-libs/gf2x
+ threads? ( >=dev-libs/gf2x-1.2 )"
+RDEPEND="${DEPEND}"
+
+S="${WORKDIR}/${P}/src"
+
+REQUIRED_USE="bindist? ( !cpu_flags_x86_avx2 )"
+
+DOCS=( "${WORKDIR}/${P}"/README )
+
+src_configure() {
+ # Currently the build system can build a static library or both
+ # static and shared libraries, but not only shared libraries. The
+ # name NTL_GMP_LIP is *not* a typo.
+ perl DoConfig \
+ PREFIX="${EPREFIX}"/usr \
+ LIBDIR="${EPREFIX}"/usr/$(get_libdir) \
+ CXXFLAGS="${CXXFLAGS}" \
+ CPPFLAGS="${CPPFLAGS}" \
+ LDFLAGS="${LDFLAGS}" \
+ CXX="$(tc-getCXX)" \
+ AR="$(tc-getAR)" \
+ RANLIB="$(tc-getRANLIB)" \
+ SHARED=on \
+ NTL_GMP_LIP=on \
+ NTL_GF2X_LIB=on \
+ NTL_THREADS=$(usex threads on off) \
+ NTL_ENABLE_AVX_FFT=$(usex cpu_flags_x86_avx2 on off) \
+ NATIVE=$(usex bindist off on) \
+ || die "DoConfig failed"
+
+ if use doc; then
+ DOCS+=( "${WORKDIR}/${P}"/doc/*.txt )
+ HTML_DOCS=( "${WORKDIR}/${P}"/doc/*.html "${WORKDIR}/${P}"/doc/*.gif )
+ fi
+}
+
+src_install() {
+ default
+ if ! use static-libs; then
+ rm "${ED}/usr/$(get_libdir)"/libntl.{la,a} || die
+ fi
+
+ rm -r "${ED}"/usr/share/doc/NTL || die
+}