diff options
author | Sebastien Fabbro <bicatali@gentoo.org> | 2009-08-26 18:28:40 +0000 |
---|---|---|
committer | Sebastien Fabbro <bicatali@gentoo.org> | 2009-08-26 18:28:40 +0000 |
commit | b416c50b1606795cf1a7c0f1e4f4f14f1e259b10 (patch) | |
tree | c1657f2986b1f8ffe62ad42ceb25b79cc219c309 /dev-libs/ntl | |
parent | Add first rc version of upcoming 0.5 series. (diff) | |
download | gentoo-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/ChangeLog | 13 | ||||
-rw-r--r-- | dev-libs/ntl/files/linux.mk | 3 | ||||
-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.xml | 1 | ||||
-rw-r--r-- | dev-libs/ntl/ntl-5.5.2.ebuild | 68 |
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 +} |