summaryrefslogtreecommitdiff
path: root/math/ntl
diff options
context:
space:
mode:
authoragc <agc@pkgsrc.org>2013-05-18 18:32:19 +0000
committeragc <agc@pkgsrc.org>2013-05-18 18:32:19 +0000
commit43bf07b586b25686d8b51877ef09a41b55f189bf (patch)
treef8ea8c3a607bebb5f3313b001bd13181eea75437 /math/ntl
parent2bca1540d4c519144ddea51cc6ffb395f14916b6 (diff)
downloadpkgsrc-43bf07b586b25686d8b51877ef09a41b55f189bf.tar.gz
Update math/ntl to version 6.0.0
Differences from previous version (5.5.2): 2013.02.15: Changes between NTL 5.5.2 and 6.0 Replaced the old template-like macros for vectors, matrices, and pairs with true template classes: Vec<T>, Mat<T>, and Pair<S,T>. For backwards compatibilty, all the names that were used in previous versions (e.g., vec_ZZ_p, mat_ZZ_p) have been replaced with appropriate typedefs. For many years, I resisted the temptation of using templates, because compiler support was very inconsistent. But that no longer seems to be the case. This change, while rather sweeping, should create very few, if any, incompatibilities with existing software. The biggest issue would be for software that uses the old template-like macros: such macro invocations can simply be replaced with appropriate typedefs. Made the conversion interface more complete and uniform. Also, using template notation, one can and should now write conv<ZZ>(a) instead of to_ZZ(a) (for backward compatibility, all the old names to_XXX are still there, but many new conversions are not available under these old names). There are many new conversions provided. Moreover, whenever there is a conversion from a ring R to a ring S, there is a corresponding, coefficiet-wise conversion from the polynomial ring R[X] to the polynomial ring R[X]. In addition, using the template mechanism, there are generic conversions for vectors and matrices. For example, if there is a conversion from S to T, then there is automatically a corresponding component-wise conversion from Vec<S> to Vec<T>. Introduced a more general mechanism for accessing GF2's in packed structures via indexing (see the class ref_GF2 in the GF2 module). Employed ideas from David Harvey to make the single-precision FFT faster (about twice as fast in many cases). This speeds up many higher-level operations. Fixed all known bugs.
Diffstat (limited to 'math/ntl')
-rw-r--r--math/ntl/Makefile5
-rw-r--r--math/ntl/buildlink3.mk6
-rw-r--r--math/ntl/distinfo10
-rw-r--r--math/ntl/patches/patch-aa57
4 files changed, 33 insertions, 45 deletions
diff --git a/math/ntl/Makefile b/math/ntl/Makefile
index d89c3198baf..98caf58406c 100644
--- a/math/ntl/Makefile
+++ b/math/ntl/Makefile
@@ -1,7 +1,6 @@
-# $NetBSD: Makefile,v 1.27 2012/10/03 21:56:36 wiz Exp $
+# $NetBSD: Makefile,v 1.28 2013/05/18 18:32:19 agc Exp $
-DISTNAME= ntl-5.5.2
-PKGREVISION= 1
+DISTNAME= ntl-6.0.0
CATEGORIES= math devel
MASTER_SITES= http://www.shoup.net/ntl/
diff --git a/math/ntl/buildlink3.mk b/math/ntl/buildlink3.mk
index 20edc07f333..69e3320cf43 100644
--- a/math/ntl/buildlink3.mk
+++ b/math/ntl/buildlink3.mk
@@ -1,12 +1,12 @@
-# $NetBSD: buildlink3.mk,v 1.8 2010/03/24 21:54:16 asau Exp $
+# $NetBSD: buildlink3.mk,v 1.9 2013/05/18 18:32:19 agc Exp $
BUILDLINK_TREE+= ntl
.if !defined(NTL_BUILDLINK3_MK)
NTL_BUILDLINK3_MK:=
-BUILDLINK_API_DEPENDS.ntl+= ntl>=5.3.1
-BUILDLINK_ABI_DEPENDS.ntl+= ntl>=5.3.1nb2
+BUILDLINK_API_DEPENDS.ntl+= ntl>=6.0.0
+BUILDLINK_ABI_DEPENDS.ntl+= ntl>=6.0.0
BUILDLINK_PKGSRCDIR.ntl?= ../../math/ntl
.include "../../devel/gmp/buildlink3.mk"
diff --git a/math/ntl/distinfo b/math/ntl/distinfo
index 51c3138e558..bf56975534a 100644
--- a/math/ntl/distinfo
+++ b/math/ntl/distinfo
@@ -1,8 +1,8 @@
-$NetBSD: distinfo,v 1.7 2012/01/02 23:42:28 dholland Exp $
+$NetBSD: distinfo,v 1.8 2013/05/18 18:32:19 agc Exp $
-SHA1 (ntl-5.5.2.tar.gz) = b45e3858f7f351afeb7fbb831b256befc4892b06
-RMD160 (ntl-5.5.2.tar.gz) = 3ba508219276b3922ec6def391100a23b79f6193
-Size (ntl-5.5.2.tar.gz) = 707247 bytes
-SHA1 (patch-aa) = e2900601cf350c8d93f7aa77969b3caca164c8fa
+SHA1 (ntl-6.0.0.tar.gz) = ee71b1c6a94f34b8a3c226502a0a0c6c2d1bc3f9
+RMD160 (ntl-6.0.0.tar.gz) = 2be966b4f2ecb7cd957ca42b41836459b9a29bd9
+Size (ntl-6.0.0.tar.gz) = 714741 bytes
+SHA1 (patch-aa) = 4f07d991930fa8bac5cf586693cce0b3e8679527
SHA1 (patch-ab) = b91b052c88ea49a4138723259a312c43148737cc
SHA1 (patch-ac) = 99c32692cd27ea63e966c3fe1df0b8a6373f5018
diff --git a/math/ntl/patches/patch-aa b/math/ntl/patches/patch-aa
index 84f1b482ee8..1b489f30327 100644
--- a/math/ntl/patches/patch-aa
+++ b/math/ntl/patches/patch-aa
@@ -1,10 +1,10 @@
-$NetBSD: patch-aa,v 1.7 2012/01/02 23:42:28 dholland Exp $
+$NetBSD: patch-aa,v 1.8 2013/05/18 18:32:19 agc Exp $
- configure for pkgsrc
- libtoolize
---- makefile.orig 2009-08-14 12:53:13.000000000 +0000
-+++ makefile
+--- makefile.orig 2013-02-15 06:44:27.000000000 -0800
++++ makefile 2013-05-07 10:56:46.000000000 -0700
@@ -7,7 +7,7 @@
###############################################################
@@ -14,7 +14,7 @@ $NetBSD: patch-aa,v 1.7 2012/01/02 23:42:28 dholland Exp $
# A C or C++ compiler, e. g., gcc, cc, xlc.
# There are a few components written in C which may be compiled
# under C++, but C compilers tend to generate slightly better code.
-@@ -15,11 +15,11 @@ CC=gcc
+@@ -15,11 +15,11 @@
# compatible code.
@@ -28,7 +28,7 @@ $NetBSD: patch-aa,v 1.7 2012/01/02 23:42:28 dholland Exp $
# Flags for the C compiler
# Some useful flags:
# -O2 -- recommended level of optimization
-@@ -32,7 +32,7 @@ CFLAGS=-O2
+@@ -32,7 +32,7 @@
@@ -37,7 +37,7 @@ $NetBSD: patch-aa,v 1.7 2012/01/02 23:42:28 dholland Exp $
# Flags for the C++ compiler (usually the same as CFLAGS)
# Some useful flags:
# -+ -- needed with xlC to make it treat .c files as C++ files
-@@ -41,16 +41,16 @@ CXXFLAGS=$(CFLAGS)
+@@ -41,16 +41,16 @@
# The defaults should almost always be OK.
@@ -58,7 +58,7 @@ $NetBSD: patch-aa,v 1.7 2012/01/02 23:42:28 dholland Exp $
# arguments for linker for C programs
LDFLAGS_CXX=$(LDFLAGS)
-@@ -62,15 +62,15 @@ LDLIBS=-lm
+@@ -62,15 +62,15 @@
LDLIBS_CXX=$(LDLIBS)
# libraries for linking C++ programs
@@ -78,7 +78,7 @@ $NetBSD: patch-aa,v 1.7 2012/01/02 23:42:28 dholland Exp $
LIBDIR=$(PREFIX)/lib
INCLUDEDIR=$(PREFIX)/include
DOCDIR=$(PREFIX)/share/doc
-@@ -92,17 +92,17 @@ DOCDIR=$(PREFIX)/share/doc
+@@ -92,17 +92,17 @@
###############################################################
@@ -93,8 +93,8 @@ $NetBSD: patch-aa,v 1.7 2012/01/02 23:42:28 dholland Exp $
+GMP_LIBDIR= ${GMP_PREFIX}/lib
# directory containing libgmp.a if using GMP
--GMP_OPT_INCDIR=# -I$(GMP_INCDIR) # GMP
--GMP_OPT_LIBDIR=# -L$(GMP_LIBDIR) # GMP
+-GMP_OPT_INCDIR=# -I$(GMP_INCDIR) # GMPI
+-GMP_OPT_LIBDIR=# -L$(GMP_LIBDIR) # GMPL
-GMP_OPT_LIB=# -lgmp # GMP
+GMP_OPT_INCDIR= -I$(GMP_INCDIR) # GMP
+GMP_OPT_LIBDIR= -Wl,-R$(GMP_LIBDIR) -L$(GMP_LIBDIR) # GMP
@@ -102,7 +102,7 @@ $NetBSD: patch-aa,v 1.7 2012/01/02 23:42:28 dholland Exp $
# uncomment these if using GMP
-@@ -116,7 +116,7 @@ GMP_OPT_LIB=# -lgmp # GMP
+@@ -116,7 +116,7 @@
#
###############################################################
@@ -111,7 +111,7 @@ $NetBSD: patch-aa,v 1.7 2012/01/02 23:42:28 dholland Exp $
GF2X_INCDIR=$(GF2X_PREFIX)/include
# directory containing gf2x.h if using gf2x
-@@ -125,7 +125,7 @@ GF2X_LIBDIR=$(GF2X_PREFIX)/lib
+@@ -125,7 +125,7 @@
# directory containing libgf2x.a
GF2X_OPT_INCDIR=# -I$(GF2X_INCDIR) # GF2X
@@ -120,7 +120,7 @@ $NetBSD: patch-aa,v 1.7 2012/01/02 23:42:28 dholland Exp $
GF2X_OPT_LIB=# -lgf2x # GF2X
# uncomment these if using gf2x
-@@ -179,7 +179,7 @@ OBJ=$(O19)
+@@ -179,7 +179,7 @@
S01=FFT.c FacVec.c GF2.c GF2E.c GF2EX.c GF2EXFactoring.c GF2X.c GF2X1.c
S02=$(S01) GF2XFactoring.c GF2XVec.c HNF.c ctools.c LLL.c LLL_FP.c LLL_QP.c
S03=$(S02) LLL_RR.c LLL_XD.c RR.c WordVector.c ZZ.c ZZVec.c ZZX.c ZZX1.c
@@ -129,18 +129,7 @@ $NetBSD: patch-aa,v 1.7 2012/01/02 23:42:28 dholland Exp $
S05=$(S04) ZZ_pEXFactoring.c ZZ_pX.c ZZ_pX1.c ZZ_pXCharPoly.c
S06=$(S05) ZZ_pXFactoring.c fileio.c lip.c lzz_p.c lzz_pE.c lzz_pEX.c
S07=$(S06) lzz_pEXFactoring.c lzz_pX.c lzz_pX1.c
-@@ -194,8 +194,8 @@ S15=$(S14) vec_long.c vec_lzz_p.c vec_lz
- S16=$(S15) vec_vec_GF2.c vec_vec_GF2E.c vec_vec_RR.c vec_vec_ZZ.c
- S17=$(S16) vec_vec_ZZ_p.c vec_vec_ZZ_pE.c vec_vec_long.c vec_vec_lzz_p.c
- S18=$(S17) vec_vec_lzz_pE.c vec_xdouble.c xdouble.c
--S19=$(S18) G_LLL_FP.c G_LLL_QP.c G_LLL_XD.c G_LLL_RR.c
--S20=$(S19) vec_ulong.c vec_vec_ulong.c
-+S19=$(S18) G_LLL_FP.c G_LLL_QP.c G_LLL_XD.c G_LLL_RR.c
-+S20=$(S19) vec_ulong.c vec_vec_ulong.c
-
- SRC = $(S20)
-
-@@ -234,9 +234,9 @@ INCL=$(IN18)
+@@ -233,9 +233,9 @@
# test data
@@ -153,7 +142,7 @@ $NetBSD: patch-aa,v 1.7 2012/01/02 23:42:28 dholland Exp $
TD4=$(TD3) CharPolyTestOut QuadTestIn QuadTestOut
TD = $(TD4)
-@@ -314,11 +314,11 @@ SFILES=$(SFI3)
+@@ -313,11 +313,11 @@
NTL_INCLUDE = -I../include -I.
# NTL needs this to find its include files
@@ -169,7 +158,7 @@ $NetBSD: patch-aa,v 1.7 2012/01/02 23:42:28 dholland Exp $
-@@ -332,7 +332,7 @@ all:
+@@ -331,7 +331,7 @@
make setup2
make setup3
make setup4
@@ -178,7 +167,7 @@ $NetBSD: patch-aa,v 1.7 2012/01/02 23:42:28 dholland Exp $
touch all
-@@ -340,7 +340,7 @@ all:
+@@ -339,7 +339,7 @@
setup1:
$(COMPILE) MakeDescAux.c
@@ -187,7 +176,7 @@ $NetBSD: patch-aa,v 1.7 2012/01/02 23:42:28 dholland Exp $
./MakeDesc
mv mach_desc.h ../include/NTL/mach_desc.h
-@@ -367,10 +367,16 @@ setup4:
+@@ -366,10 +366,16 @@
sh Wizard $(WIZARD)
@@ -208,7 +197,7 @@ $NetBSD: patch-aa,v 1.7 2012/01/02 23:42:28 dholland Exp $
LCOMP= #LSTAT
# LCOMP=$(LIBTOOL) --mode=compile #LSHAR
-@@ -391,7 +397,7 @@ GetTime.o: GetTime.c
+@@ -390,7 +396,7 @@
$(LCOMP) $(COMPILE_CXX) $(GF2X_OPT_INCDIR) $<
.c:
@@ -217,7 +206,7 @@ $NetBSD: patch-aa,v 1.7 2012/01/02 23:42:28 dholland Exp $
# $(LIBTOOL) --mode=link $(LINK_CXX) -o $@ $< libntl.la #LSHAR
#################################################################
-@@ -425,23 +431,29 @@ check:
+@@ -424,23 +430,29 @@
install:
@@ -264,7 +253,7 @@ $NetBSD: patch-aa,v 1.7 2012/01/02 23:42:28 dholland Exp $
uninstall:
rm -f $(LIBDIR)/libntl.a #LSTAT
-@@ -461,7 +473,7 @@ uninstall:
+@@ -460,7 +472,7 @@
#################################################################
clobber:
@@ -273,7 +262,7 @@ $NetBSD: patch-aa,v 1.7 2012/01/02 23:42:28 dholland Exp $
rm -f lip_gmp_aux_impl.h ../include/NTL/gmp_aux.h
sh RemoveProg $(PROGS) MakeDesc TestGetTime gen_lip_gmp_aux gen_gmp_aux
rm -f *.o
-@@ -472,7 +484,7 @@ clobber:
+@@ -471,7 +483,7 @@
clean:
sh RemoveProg MakeDesc TestGetTime gen_lip_gmp_aux gen_gmp_aux
@@ -282,7 +271,7 @@ $NetBSD: patch-aa,v 1.7 2012/01/02 23:42:28 dholland Exp $
rm -rf small
# - $(LIBTOOL) --mode=clean rm -f libntl.la *.lo #LSHAR
-@@ -522,22 +534,25 @@ WO3 = $(WO2) GF2.o WordVector.o vec_GF2.
+@@ -521,22 +533,25 @@
WOBJ = $(WO3)
# wntl.a: LCOMP= #LSHAR