freebsd-ports/math/msieve/Makefile
Martin Wilke 18c29c6a72 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 a
highly experimental and unfinished number field sieve (NFS) implementation.
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.

Author: Jason Papadopoulos <jasonp@boo.net>
WWW: http://www.boo.net/~jasonp/qs.html

PR:		ports/107477
Submitted by:	Daniel Roethlisberger <daniel at roe.ch>
2007-01-05 07:58:52 +00:00

55 lines
1.5 KiB
Makefile

# New ports collection makefile for: msieve
# Date created: 2007-01-02
# Whom: Daniel Roethlisberger <daniel@roe.ch>
#
# $FreeBSD$
#
PORTNAME= msieve
PORTVERSION= 1.13
CATEGORIES= math
MASTER_SITES= http://www.boo.net/~jasonp/ \
http://mirror.roe.ch/dist/msieve/
DISTNAME= ${PORTNAME}${PORTVERSION:S/.//}
MAINTAINER= daniel@roe.ch
COMMENT= Fast factorization of big integers using MPQS and NFS
WRKSRC= ${WRKDIR}/${PORTNAME}-${PORTVERSION}
USE_GMAKE= yes
MAKE_ENV= CPPFLAGS="${CPPFLAGS} -I${LOCALBASE}/include" \
LDFLAGS="${LDFLAGS} -L${LOCALBASE}/lib" \
PTHREAD_LIBS="${PTHREAD_LIBS}"
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 \
NFS "Enable Number Field Sieve (EXPERIMENTAL)" Off
.include <bsd.port.pre.mk>
.if !defined(WITHOUT_OCFLAGS)
CFLAGS+= -O3 -ffast-math -fomit-frame-pointer
.endif
.if defined(WITH_NFS)
LIB_DEPENDS+= gsl.9:${PORTSDIR}/math/gsl
ALL_TARGET= nfs
.endif
do-install:
${INSTALL_PROGRAM} ${WRKSRC}/msieve ${PREFIX}/bin
${MKDIR} ${PREFIX}/include/msieve
${INSTALL_DATA} ${WRKSRC}/include/msieve.h ${PREFIX}/include/msieve
${INSTALL_DATA} ${WRKSRC}/include/mp.h ${PREFIX}/include/msieve
${INSTALL_DATA} ${WRKSRC}/include/util.h ${PREFIX}/include/msieve
${INSTALL_DATA} ${WRKSRC}/libmsieve.a ${PREFIX}/lib
.if !defined(NOPORTDOCS)
${MKDIR} ${DOCSDIR}
cd ${WRKSRC} && ${INSTALL_DATA} ${PORTDOCS} ${DOCSDIR}
.endif
.include <bsd.port.post.mk>