summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSebastien Fabbro <bicatali@gentoo.org>2009-08-26 18:28:40 +0000
committerSebastien Fabbro <bicatali@gentoo.org>2009-08-26 18:28:40 +0000
commitb416c50b1606795cf1a7c0f1e4f4f14f1e259b10 (patch)
treec1657f2986b1f8ffe62ad42ceb25b79cc219c309 /dev-libs/ntl
parentAdd first rc version of upcoming 0.5 series. (diff)
downloadgentoo-2-b416c50b1606795cf1a7c0f1e4f4f14f1e259b10.tar.gz
gentoo-2-b416c50b1606795cf1a7c0f1e4f4f14f1e259b10.tar.bz2
gentoo-2-b416c50b1606795cf1a7c0f1e4f4f14f1e259b10.zip
Version bump. Now gmp and gf2x are forced. Fixed parallel building, and hopefully as-needed issues (bug #282174). Simplified the shared lib patch. Added sci-mathematics herd as co-maintainer.
(Portage version: 2.2_rc38/cvs/Linux x86_64)
Diffstat (limited to 'dev-libs/ntl')
-rw-r--r--dev-libs/ntl/ChangeLog13
-rw-r--r--dev-libs/ntl/files/linux.mk3
-rw-r--r--dev-libs/ntl/files/ntl-5.5.2-sage-tools.patch (renamed from dev-libs/ntl/files/ntl-5.5.1-sage-tools.patch)4
-rw-r--r--dev-libs/ntl/files/ntl-5.5.2-shared.patch (renamed from dev-libs/ntl/files/ntl-5.5.1-shared.patch)41
-rw-r--r--dev-libs/ntl/files/ntl-5.5.2-singular.patch (renamed from dev-libs/ntl/files/ntl-5.5.1-singular.patch)0
-rw-r--r--dev-libs/ntl/metadata.xml1
-rw-r--r--dev-libs/ntl/ntl-5.5.2.ebuild68
7 files changed, 89 insertions, 41 deletions
diff --git a/dev-libs/ntl/ChangeLog b/dev-libs/ntl/ChangeLog
index 3f0aee68d842..0b386a4ded2a 100644
--- a/dev-libs/ntl/ChangeLog
+++ b/dev-libs/ntl/ChangeLog
@@ -1,6 +1,17 @@
# ChangeLog for dev-libs/ntl
# Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-libs/ntl/ChangeLog,v 1.14 2009/08/10 23:22:39 bicatali Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-libs/ntl/ChangeLog,v 1.15 2009/08/26 18:28:40 bicatali Exp $
+
+*ntl-5.5.2 (26 Aug 2009)
+
+ 26 Aug 2009; Sébastien Fabbro <bicatali@gentoo.org>
+ -files/ntl-5.5.1-sage-tools.patch, -files/ntl-5.5.1-shared.patch,
+ -files/ntl-5.5.1-singular.patch, +ntl-5.5.2.ebuild,
+ +files/ntl-5.5.2-sage-tools.patch, +files/ntl-5.5.2-shared.patch,
+ +files/ntl-5.5.2-singular.patch, -files/linux.mk, metadata.xml:
+ Version bump. Now gmp and gf2x are forced. Fixed parallel building, and
+ hopefully as-needed issues (bug #282174). Simplified the shared lib patch.
+ Added sci-mathematics herd as co-maintainer.
*ntl-5.5.1 (10 Aug 2009)
diff --git a/dev-libs/ntl/files/linux.mk b/dev-libs/ntl/files/linux.mk
deleted file mode 100644
index 5df3673c3018..000000000000
--- a/dev-libs/ntl/files/linux.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-shared: DIRNAME $(SHOBJ)
- $(LINK_CXX) $(PICFLAG) -shared -Wl,-soname,lib`cat DIRNAME`.so -o lib`cat DIRNAME`.so $(SHOBJ) $(GMP_OPT_LIBDIR) $(GMP_OPT_LIB)
- ln -s lib`cat DIRNAME`.so libntl.so
diff --git a/dev-libs/ntl/files/ntl-5.5.1-sage-tools.patch b/dev-libs/ntl/files/ntl-5.5.2-sage-tools.patch
index 28914b95b959..fafa97356cd8 100644
--- a/dev-libs/ntl/files/ntl-5.5.1-sage-tools.patch
+++ b/dev-libs/ntl/files/ntl-5.5.2-sage-tools.patch
@@ -5,7 +5,7 @@
+/*
-+ This function is not present in vanilla NTL 5.4.2.
++ This function is not present in vanilla NTL
+ See tools.c for documentation.
+ */
+void SetErrorCallbackFunction(void (*func)(const char *s, void *context), void *context);
@@ -20,7 +20,7 @@
+/*
-+ The following code differs from vanilla NTL 5.4.2.
++ The following code differs from vanilla NTL
+
+ We add a SetErrorCallbackFunction(). This sets a global callback function _function_,
+ which gets called with parameter _context_ and an error message string whenever Error()
diff --git a/dev-libs/ntl/files/ntl-5.5.1-shared.patch b/dev-libs/ntl/files/ntl-5.5.2-shared.patch
index 91c0bdd6ecde..cd832792e0d1 100644
--- a/dev-libs/ntl/files/ntl-5.5.1-shared.patch
+++ b/dev-libs/ntl/files/ntl-5.5.2-shared.patch
@@ -35,18 +35,6 @@
--- src/mfile.orig 2009-05-05 07:46:39.000000000 +0100
+++ src/mfile 2009-08-10 20:31:36.000000000 +0100
-@@ -77,6 +77,11 @@
- # where to install NTL
-
- ###############################################################
-+# choose the appropriate shared object makefile
-+###############################################################
-+SHMAKE=@{SHMAKE}
-+
-+###############################################################
- #
- # Second, if you want to use GMP (the GNU Multi-Precision library),
- # define the variables GMP_OPT_INCDIR, GMP_OPT_LIBDIR, GMP_OPT_LIB below.
@@ -141,6 +146,16 @@
WIZARD=@{WIZARD}
# Set to off if you want to bypass the wizard; otherwise, set to on.
@@ -64,30 +52,11 @@
#################################################################
#
-@@ -173,6 +188,27 @@
+@@ -173,6 +188,8 @@
OBJ=$(O19)
-+SHOBJ=FFT.lo FacVec.lo GF2.lo GF2E.lo GF2EX.lo GF2EXFactoring.lo GF2X.lo GF2X1.lo \
-+ GF2XFactoring.lo GF2XVec.lo GetTime.lo HNF.lo ctools.lo LLL.lo LLL_FP.lo \
-+ LLL_QP.lo LLL_RR.lo LLL_XD.lo RR.lo WordVector.lo ZZ.lo ZZVec.lo \
-+ ZZX.lo ZZX1.lo ZZXCharPoly.lo ZZXFactoring.lo ZZ_p.lo ZZ_pE.lo ZZ_pEX.lo \
-+ ZZ_pEXFactoring.lo ZZ_pX.lo ZZ_pX1.lo ZZ_pXCharPoly.lo ZZ_pXFactoring.lo \
-+ fileio.lo lip.lo lzz_p.lo lzz_pE.lo lzz_pEX.lo lzz_pEXFactoring.lo \
-+ lzz_pX.lo lzz_pX1.lo lzz_pXCharPoly.lo lzz_pXFactoring.lo \
-+ mat_GF2.lo mat_GF2E.lo mat_RR.lo mat_ZZ.lo mat_ZZ_p.lo \
-+ mat_ZZ_pE.lo mat_lzz_p.lo mat_lzz_pE.lo mat_poly_ZZ.lo \
-+ mat_poly_ZZ_p.lo mat_poly_lzz_p.lo pair_GF2EX_long.lo \
-+ pair_GF2X_long.lo pair_ZZX_long.lo pair_ZZ_pEX_long.lo \
-+ pair_ZZ_pX_long.lo pair_lzz_pEX_long.lo pair_lzz_pX_long.lo \
-+ quad_float.lo tools.lo vec_GF2.lo vec_GF2E.lo vec_GF2XVec.lo \
-+ vec_RR.lo vec_ZZ.lo vec_ZZVec.lo vec_ZZ_p.lo vec_ZZ_pE.lo \
-+ vec_double.lo vec_long.lo vec_lzz_p.lo vec_lzz_pE.lo vec_quad_float.lo \
-+ vec_vec_GF2.lo vec_vec_GF2E.lo vec_vec_RR.lo vec_vec_ZZ.lo \
-+ vec_vec_ZZ_p.lo vec_vec_ZZ_pE.lo vec_vec_long.lo vec_vec_lzz_p.lo \
-+ vec_vec_lzz_pE.lo vec_xdouble.lo xdouble.lo \
-+ G_LLL_FP.lo G_LLL_QP.lo G_LLL_XD.lo G_LLL_RR.lo vec_ulong.lo vec_vec_ulong.lo
-+
++SHOBJ=$(subst .o,.lo,$(OBJ))
+
# library source files
@@ -184,8 +153,10 @@
rm -rf small
@{LSHAR} - $(LIBTOOL) --mode=clean rm -f libntl.la *.lo #LSHAR
-@@ -549,3 +597,4 @@
+@@ -549,3 +597,6 @@
-+sinclude $(SHMAKE).mk
++shared: DIRNAME $(SHOBJ)
++ $(LINK_CXX) $(PICFLAG) -shared -Wl,-soname,lib`cat DIRNAME`.so -o lib`cat DIRNAME`.so $(SHOBJ) $(GMP_OPT_LIBDIR) $(GMP_OPT_LIB) $(GF2X_OPT_LIBDIR) $(GF2X_OPT_LIB)
++ ln -s lib`cat DIRNAME`.so libntl.so
diff --git a/dev-libs/ntl/files/ntl-5.5.1-singular.patch b/dev-libs/ntl/files/ntl-5.5.2-singular.patch
index 9f0d13140cee..9f0d13140cee 100644
--- a/dev-libs/ntl/files/ntl-5.5.1-singular.patch
+++ b/dev-libs/ntl/files/ntl-5.5.2-singular.patch
diff --git a/dev-libs/ntl/metadata.xml b/dev-libs/ntl/metadata.xml
index 261aa0426845..4c8dcf7542ff 100644
--- a/dev-libs/ntl/metadata.xml
+++ b/dev-libs/ntl/metadata.xml
@@ -1,6 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
+<herd>sci-mathematics</herd>
<herd>cpp</herd>
<longdescription lang="en">
NTL is a high-performance, portable C++ library providing data
diff --git a/dev-libs/ntl/ntl-5.5.2.ebuild b/dev-libs/ntl/ntl-5.5.2.ebuild
new file mode 100644
index 000000000000..9d67de351e50
--- /dev/null
+++ b/dev-libs/ntl/ntl-5.5.2.ebuild
@@ -0,0 +1,68 @@
+# Copyright 1999-2009 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-libs/ntl/ntl-5.5.2.ebuild,v 1.1 2009/08/26 18:28:40 bicatali Exp $
+
+EAPI=2
+inherit toolchain-funcs eutils
+
+DESCRIPTION="High-performance and portable Number Theory C++ library"
+HOMEPAGE="http://shoup.net/ntl/"
+SRC_URI="http://www.shoup.net/ntl/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="doc"
+
+RDEPEND=">=dev-libs/gmp-4.3
+ >=dev-libs/gf2x-0.9"
+DEPEND="${RDEPEND}
+ dev-lang/perl"
+
+S="${WORKDIR}/${P}/src"
+
+src_prepare() {
+ # fix parallel make
+ sed -i -e "s/make/make ${MAKEOPTS}/g" WizardAux || die
+ cd ..
+ # enable compatibility with singular
+ epatch "$FILESDIR/${P}-singular.patch"
+ # implement a call back framework ( submitted upstream)
+ epatch "$FILESDIR/${P}-sage-tools.patch"
+ # sanitize the makefile and allow the building of shared library
+ epatch "$FILESDIR/${P}-shared.patch"
+}
+
+src_configure() {
+ perl DoConfig \
+ PREFIX=/usr \
+ CFLAGS="${CFLAGS}" CXXFLAGS="${CXXFLAGS}" LDFLAGS="${LDFLAGS}" \
+ CC="$(tc-getCC)" CXX="$(tc-getCXX)" \
+ AR="$(tc-getAR)" RANLIB="$(tc-getRANLIB)" \
+ NTL_STD_CXX=on NTL_GMP_LIP=on NTL_GF2X_LIB=on \
+ || die "DoConfig failed"
+}
+
+src_compile() {
+ # split the targets to allow parallel make to run properly
+ emake setup1 setup2 || die "emake setup failed"
+ emake setup3 || die "emake setup failed"
+ sh Wizard on || die "Tuning wizard failed"
+ emake ntl.a || die "emake static failed"
+ emake shared || die "emake shared failed"
+}
+
+src_install() {
+ newlib.a ntl.a libntl.a || die "installation of static library failed"
+ dolib.so lib*.so || die "installation of shared library failed"
+
+ cd ..
+ insinto /usr/include
+ doins -r include/NTL || die "installation of the headers failed"
+
+ dodoc README
+ if use doc ; then
+ dodoc doc/*.txt || die
+ dohtml doc/* || die
+ fi
+}