aboutsummaryrefslogtreecommitdiff
path: root/math
diff options
context:
space:
mode:
authorMartin Wilke <miwi@FreeBSD.org>2008-03-30 00:09:07 +0000
committerMartin Wilke <miwi@FreeBSD.org>2008-03-30 00:09:07 +0000
commita5148894fa248c86bac8b4e6eb9dbde1ca4e57ec (patch)
treee391d12564aec7aa77030e085cb05d36927c6fac /math
parent6dc43b39787fcbde1d6094229de9822b6bffd2f8 (diff)
Notes
Diffstat (limited to 'math')
-rw-r--r--math/msieve/Makefile40
-rw-r--r--math/msieve/distinfo6
-rw-r--r--math/msieve/files/patch-Makefile105
-rw-r--r--math/msieve/pkg-descr6
4 files changed, 50 insertions, 107 deletions
diff --git a/math/msieve/Makefile b/math/msieve/Makefile
index 3859b5566ed5..d4c8254272b4 100644
--- a/math/msieve/Makefile
+++ b/math/msieve/Makefile
@@ -6,8 +6,7 @@
#
PORTNAME= msieve
-PORTVERSION= 1.23
-PORTREVISION= 1
+PORTVERSION= 1.34
CATEGORIES= math
MASTER_SITES= http://www.boo.net/~jasonp/ \
http://mirror.roe.ch/dist/msieve/
@@ -16,49 +15,44 @@ DISTNAME= ${PORTNAME}${PORTVERSION:S/.//}
MAINTAINER= daniel@roe.ch
COMMENT= Fast factorization of big integers using MPQS and GNFS
+BUILD_DEPENDS= ${LOCALBASE}/lib/libecm.a:${PORTSDIR}/math/gmp-ecm
+
WRKSRC= ${WRKDIR}/${PORTNAME}-${PORTVERSION}
USE_GMAKE= yes
MAKE_ENV= CPPFLAGS="${CPPFLAGS} -I${LOCALBASE}/include" \
LDFLAGS="${LDFLAGS} -L${LOCALBASE}/lib" \
- PTHREAD_LIBS="${PTHREAD_LIBS}"
+ PTHREAD_LIBS="${PTHREAD_LIBS}" \
+ ECM=1
PLIST_FILES= bin/msieve lib/libmsieve.a include/msieve/msieve.h \
include/msieve/mp.h include/msieve/util.h
PLIST_DIRS= include/msieve
PORTDOCS= Changes Readme Readme.nfs Readme.qs
-OPTIONS= OCFLAGS "Enable optimized CFLAGS" On \
- GNFS "General Number Field Sieve support" On
+OPTIONS= OCFLAGS "Enable optimized CFLAGS" On
.include <bsd.port.pre.mk>
+.if !defined(WITHOUT_OCFLAGS)
+CFLAGS+= -O3 -ffast-math -fomit-frame-pointer -D_FILE_OFFSET_BITS=64
+.else
+CFLAGS+= -D_FILE_OFFSET_BITS=64
+.endif
+
# Does not build with GCC 4.2
.if ${OSVERSION} >= 700042
USE_GCC= 3.4
+.if ${ARCH} == "sparc64"
+BROKEN= Does not compile on sparc64-7
.endif
-
-.if !defined(WITHOUT_OCFLAGS)
-CFLAGS+= -O3 -ffast-math -fomit-frame-pointer
-.endif
-
-.if !defined(WITHOUT_GNFS)
-LIB_DEPENDS+= gsl.10:${PORTSDIR}/math/gsl
-ALLTGT_SUFX= _nfs
.endif
-ALLTGT= generic
+ALL_TARGET= generic
.if ${ARCH} == "i386"
-ALLTGT= x86
+ALL_TARGET= x86
.endif
.if ${ARCH} == "amd64"
-ALLTGT= x86_64
-.endif
-ALL_TARGET= ${ALLTGT}${ALLTGT_SUFX}
-
-.if ${OSVERSION} >= 700042
-.if ${ARCH} == "sparc64"
-BROKEN= Does not compile with GCC 4.2
-.endif
+ALL_TARGET= x86_64
.endif
do-install:
diff --git a/math/msieve/distinfo b/math/msieve/distinfo
index 8308d3a40e40..223bc21b1795 100644
--- a/math/msieve/distinfo
+++ b/math/msieve/distinfo
@@ -1,3 +1,3 @@
-MD5 (msieve123.tar.gz) = 18743917ef837decb8c6d20c903523a0
-SHA256 (msieve123.tar.gz) = 4b5cb2149420b16805badfdc54af1b74b3907d49885e6a0a1a3a04372e4f119c
-SIZE (msieve123.tar.gz) = 241693
+MD5 (msieve134.tar.gz) = 22ce5db1ddeb2c54978a074176eeee4f
+SHA256 (msieve134.tar.gz) = 570c131d4d1131129b3a68e0e2426f779f4581b9db29d61d891a70df32efba5c
+SIZE (msieve134.tar.gz) = 314962
diff --git a/math/msieve/files/patch-Makefile b/math/msieve/files/patch-Makefile
index 6197fb03e8ab..eaa6c80ab47b 100644
--- a/math/msieve/files/patch-Makefile
+++ b/math/msieve/files/patch-Makefile
@@ -1,78 +1,27 @@
---- Makefile.orig Sun May 27 07:36:20 2007
-+++ Makefile Wed May 30 21:57:37 2007
-@@ -24,19 +24,19 @@
-
- # gcc with basic optimization (-march flag could
- # get overridden by architecture-specific builds)
--CC = gcc
-+#CC = gcc
- WARN_FLAGS = -Wall -W -Wconversion
--OPT_FLAGS = -O3 -fomit-frame-pointer -DNDEBUG -march=athlon
-+#OPT_FLAGS = -O3 -fomit-frame-pointer -DNDEBUG -march=athlon
- # OPT_FLAGS = -O3 -fomit-frame-pointer -DNDEBUG -march=k8
-
- # note that if GSL was built as a shared library you may need
- # to append -lgslcblas to LIB_GSL, or even build a static version
- # Note to MinGW users: comment out LIB_THREAD, you don't need it
-
--LIB_THREAD = -lpthread
--LIB_GSL = -lgsl
-+LIB_THREAD = $(PTHREAD_LIBS)
-+LIB_GSL = -lgsl -lgslcblas
-
--CFLAGS = $(OPT_FLAGS) $(MACHINE_FLAGS) $(WARN_FLAGS) -Iinclude
-+CFLAGS += $(WARN_FLAGS) -Iinclude $(CPPFLAGS)
-
- #---------------------------------- Generic file lists -------------------
-
-@@ -160,7 +160,7 @@
- ar r libmsieve.a $(COMMON_OBJS_NO_NFS) $(QS_OBJS) \
- $(QS_CORE_OBJS) $(QS_CORE_OBJS_X86)
- ranlib libmsieve.a
-- $(CC) $(CFLAGS) demo.c -o msieve -lm libmsieve.a $(LIB_THREAD)
-+ $(CC) $(CFLAGS) $(LDFLAGS) demo.c -o msieve -lm libmsieve.a $(LIB_THREAD)
-
- x86_64: $(COMMON_OBJS_NO_NFS) $(QS_OBJS) \
- $(QS_CORE_OBJS) $(QS_CORE_OBJS_X86_64)
-@@ -168,13 +168,13 @@
- ar r libmsieve.a $(COMMON_OBJS_NO_NFS) $(QS_OBJS) \
- $(QS_CORE_OBJS) $(QS_CORE_OBJS_X86_64)
- ranlib libmsieve.a
-- $(CC) $(CFLAGS) demo.c -o msieve -lm libmsieve.a $(LIB_THREAD)
-+ $(CC) $(CFLAGS) $(LDFLAGS) demo.c -o msieve -lm libmsieve.a $(LIB_THREAD)
-
- generic: $(COMMON_OBJS_NO_NFS) $(QS_OBJS) $(QS_CORE_OBJS)
- rm -f libmsieve.a
- ar r libmsieve.a $(COMMON_OBJS_NO_NFS) $(QS_OBJS) $(QS_CORE_OBJS)
- ranlib libmsieve.a
-- $(CC) $(CFLAGS) demo.c -o msieve -lm libmsieve.a $(LIB_THREAD)
-+ $(CC) $(CFLAGS) $(LDFLAGS) demo.c -o msieve -lm libmsieve.a $(LIB_THREAD)
-
- x86_nfs: $(COMMON_OBJS) $(QS_OBJS) $(NFS_OBJS) \
- $(QS_CORE_OBJS) $(QS_CORE_OBJS_X86)
-@@ -182,7 +182,7 @@
- ar r libmsieve.a $(COMMON_OBJS) $(QS_OBJS) $(NFS_OBJS) \
- $(QS_CORE_OBJS) $(QS_CORE_OBJS_X86)
- ranlib libmsieve.a
-- $(CC) $(CFLAGS) demo.c -o msieve -lm libmsieve.a \
-+ $(CC) $(CFLAGS) $(LDFLAGS) demo.c -o msieve -lm libmsieve.a \
- $(LIB_THREAD) $(LIB_GSL)
-
- x86_64_nfs: $(COMMON_OBJS) $(QS_OBJS) $(NFS_OBJS) \
-@@ -191,14 +191,14 @@
- ar r libmsieve.a $(COMMON_OBJS) $(QS_OBJS) $(NFS_OBJS) \
- $(QS_CORE_OBJS) $(QS_CORE_OBJS_X86_64)
- ranlib libmsieve.a
-- $(CC) $(CFLAGS) demo.c -o msieve -lm libmsieve.a \
-+ $(CC) $(CFLAGS) $(LDFLAGS) demo.c -o msieve -lm libmsieve.a \
- $(LIB_THREAD) $(LIB_GSL)
-
- generic_nfs: $(COMMON_OBJS) $(QS_OBJS) $(QS_CORE_OBJS) $(NFS_OBJS)
- rm -f libmsieve.a
- ar r libmsieve.a $(COMMON_OBJS) $(QS_OBJS) $(NFS_OBJS) $(QS_CORE_OBJS)
- ranlib libmsieve.a
-- $(CC) $(CFLAGS) demo.c -o msieve -lm libmsieve.a \
-+ $(CC) $(CFLAGS) $(LDFLAGS) demo.c -o msieve -lm libmsieve.a \
- $(LIB_THREAD) $(LIB_GSL)
-
- clean:
+--- Makefile.orig 2008-03-23 05:32:08.000000000 +0100
++++ Makefile 2008-03-28 13:15:14.000000000 +0100
+@@ -26,12 +26,12 @@
+
+ # gcc with basic optimization (-march flag could
+ # get overridden by architecture-specific builds)
+-CC = gcc
++#CC = gcc
+ WARN_FLAGS = -Wall -W -Wconversion
+-OPT_FLAGS = -O3 -fomit-frame-pointer -march=athlon -D_FILE_OFFSET_BITS=64
++#OPT_FLAGS = -O3 -fomit-frame-pointer -march=athlon -D_FILE_OFFSET_BITS=64
+ #OPT_FLAGS = -O3 -fomit-frame-pointer -march=k8
+
+-CFLAGS = $(OPT_FLAGS) $(MACHINE_FLAGS) $(WARN_FLAGS) -Iinclude -Ignfs/poly
++CFLAGS += $(WARN_FLAGS) -Iinclude -Ignfs/poly $(CPPFLAGS)
+
+ LIBS = -lm
+
+@@ -50,7 +50,7 @@
+ endif
+
+ # Note to MinGW users: comment out the next line, you don't need it
+-LIBS += -lpthread
++LIBS += $(PTHREAD_LIBS)
+
+ #---------------------------------- Generic file lists -------------------
+
diff --git a/math/msieve/pkg-descr b/math/msieve/pkg-descr
index c4db09b53695..0bca3d19f9d8 100644
--- a/math/msieve/pkg-descr
+++ b/math/msieve/pkg-descr
@@ -1,11 +1,11 @@
Msieve is a library and utility for factoring large integers using the most
powerful modern algorithms. It features a stable and very fast implementation
-of a self-initializing multiple polynomial quadratic sieve (MPQS), plus highly
-experimental and unfinished general number field sieve (GNFS) code.
+of a self-initializing multiple polynomial quadratic sieve (MPQS), plus a
+somewhat experimental general number field sieve (GNFS) code.
Primary design goals are speed, portability and ease of use. Msieve claims to
be the fastest implementation for factoring general inputs between 40 and 100
-decimal digits.
+decimal digits, but can handle larger input as well.
Author: Jason Papadopoulos <jasonp@boo.net>
WWW: http://www.boo.net/~jasonp/qs.html