ports/67271: [MAINTAINER] math/fftw3: [lots of new stuff]
michael johnson
ahze at ahze.net
Thu May 27 21:31:00 UTC 2004
>Number: 67271
>Category: ports
>Synopsis: [MAINTAINER] math/fftw3: [lots of new stuff]
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: maintainer-update
>Submitter-Id: current-users
>Arrival-Date: Thu May 27 14:30:16 PDT 2004
>Closed-Date:
>Last-Modified:
>Originator: michael johnson
>Release: FreeBSD 5.2-CURRENT i386
>Organization:
>Environment:
System: FreeBSD gentoo.ahze.net 5.2-CURRENT FreeBSD 5.2-CURRENT #45: Mon May 3 05:09:04 EDT
>Description:
- new WITH_SSE knob
- build & install fftw3 in single percision along with double
Generated with FreeBSD Port Tools 0.50
>How-To-Repeat:
>Fix:
--- fftw3-3.0.1_1.patch begins here ---
Index: Makefile
===================================================================
RCS file: /home/ncvs/ports/math/fftw3/Makefile,v
retrieving revision 1.18
diff -u -r1.18 Makefile
--- Makefile 18 Apr 2004 10:48:22 -0000 1.18
+++ Makefile 27 May 2004 21:18:04 -0000
@@ -7,6 +7,7 @@
PORTNAME= fftw3
PORTVERSION= 3.0.1
+PORTREVISION= 1
CATEGORIES= math
MASTER_SITES= ftp://ftp.fftw.org/pub/fftw/ \
ftp://ftp.fftw.org/pub/fftw/old/ \
@@ -20,34 +21,86 @@
USE_GMAKE= yes
USE_LIBTOOL_VER=13
USE_GNOME= gnomehack gnomeprefix gnometarget lthack pkgconfig
+USE_REINPLACE= yes
INSTALLS_SHLIB= yes
-MAN1= fftw-wisdom-to-conf.1 fftw-wisdom.1
+MAN1= fftw-wisdom-to-conf.1 fftw-wisdom.1 fftwf-wisdom.1
INFO= fftw3
-CONFIGURE_ARGS= --enable-shared
+CONFIGURE_ARGS= --enable-shared --with-our-malloc16
CONFIGURE_ENV= CFLAGS="${CFLAGS} ${PTHREAD_CFLAGS}" \
LDFLAGS="${LDFLAGS} ${PTHREAD_LIBS}"
+# FFTW --enable-single Options
+CONFIGURE_ARGS_FFTW3F=--enable-single ${CONFIGURE_ARGS}
+FFTW3F_WRKSRC= ${WRKDIR}/${DISTNAME}-3F
+FFTW3F_INSTALL_TARGET=install-pkgconfigDATA install-libLTLIBRARIES install-exec
OPTIONS= OPTIMIZED_CFLAGS "Enable optimized CFLAGS" off \
OPTIMIZED_ATHLON "Enable AMD K7(Athlon) optimizations" off \
+ SSE "Enable SSE optimized routines" off \
SMP_THREADS "Enable FFTW SMP threads library" off
.include <bsd.port.pre.mk>
.if defined(WITH_OPTIMIZED_CFLAGS) && !defined(WITH_OPTIMIZED_ATHLON)
-CONFIGURE_ENV+= CFLAGS="${CFLAGS} -O2 -ffast-math -fomit-frame-pointer"
+CONFIGURE_ENV+= CFLAGS="${CFLAGS:N-O:N-O*} -O2 -ffast-math -fomit-frame-pointer"
.endif
.if defined(WITH_OPTIMIZED_ATHLON)
CONFIGURE_ARGS+=--enable-k7
-CONFIGURE_ENV+= CFLAGS="${CFLAGS} -O3 -fomit-frame-pointer -fno-schedule-insns \
+CONFIGURE_ENV+= CFLAGS="${CFLAGS:N-O:N-O*} -O3 -fomit-frame-pointer -fno-schedule-insns \
-malign-double -fstrict-aliasing -mpreferred-stack-boundary=4 \
-ffast-math"
.endif
+.if defined(WITH_SSE)
+CONFIGURE_ARGS_FFTW3F+=--enable-sse
+CONFIGURE_ENV+= CFLAGS="${CFLAGS:N-O:N-O*} -O2"
+.endif
+
.if defined(WITH_SMP_THREADS)
CONFIGURE_ARGS+=--enable-threads
.endif
+post-patch:
+ @${REINPLACE_CMD} -e \
+ 's|/etc/fftw|${PREFIX}/etc/fftw}|' \
+ ${WRKSRC}/Makefile.in \
+ ${WRKSRC}/api/import-system-wisdom.c \
+ ${WRKSRC}/doc/fftw3* \
+ ${WRKSRC}/tools/fftw*wisdom.1
+ @${FIND} ${WRKSRC} -name \*.bak -type f -exec ${RM} -f {} \;
+
+pre-configure:
+ @${CP} -Rf ${WRKSRC} ${FFTW3F_WRKSRC}
+ @${REINPLACE_CMD} -e \
+ 's|EXTRA_DIST = fftw-wisdom-to-conf.in||; \
+ s|fftw-wisdom-to-conf.in||; \
+ s|fftw-wisdom-to-conf: $(top_builddir)/config.status||; \
+ s|bin_SCRIPTS = fftw-wisdom-to-conf||' \
+ ${FFTW3F_WRKSRC}/tools/Makefile.in
+
+post-configure:
+ @${ECHO_MSG} "===> Configuring for ${PORTNAME}-${PORTVERSION} (short)"
+ @(cd ${FFTW3F_WRKSRC} && \
+ ${SETENV} CC="${CC}" CXX="${CXX}" \
+ CFLAGS="${CFLAGS}" CXXFLAGS="${CXXFLAGS}" \
+ INSTALL="/usr/bin/install -c -o ${BINOWN} -g ${BINGRP}" \
+ INSTALL_DATA="${INSTALL_DATA}" \
+ INSTALL_PROGRAM="${INSTALL_PROGRAM}" \
+ INSTALL_SCRIPT="${INSTALL_SCRIPT}" \
+ ${CONFIGURE_ENV} ./${CONFIGURE_SCRIPT} ${CONFIGURE_ARGS_FFTW3F})
+
+post-build:
+ @${ECHO_MSG} "===> Building for ${PORTNAME}-${PORTVERSION} (short)"
+ @(cd ${FFTW3F_WRKSRC} && \
+ ${SETENV} ${MAKE_ENV} ${MAKE} ${MAKE_FLAGS} ${MAKEFILE} ${MAKE_ARGS} ${ALL_TARGET})
+
+do-install:
+ @(cd ${WRKSRC} && \
+ ${SETENV} ${MAKE_ENV} ${MAKE} ${MAKE_FLAGS} ${MAKEFILE} ${MAKE_ARGS} ${INSTALL_TARGET})
+ @(cd ${FFTW3F_WRKSRC} && \
+ ${SETENV} ${MAKE_ENV} ${MAKE} ${MAKE_FLAGS} ${MAKEFILE} ${MAKE_ARGS} ${FFTW3F_INSTALL_TARGET})
+ @${INSTALL_MAN} ${FFTW3F_WRKSRC}/tools/fftwf-wisdom.1 ${PREFIX}/man/man1
+
.include <bsd.port.post.mk>
Index: pkg-plist
===================================================================
RCS file: /home/ncvs/ports/math/fftw3/pkg-plist,v
retrieving revision 1.6
diff -u -r1.6 pkg-plist
--- pkg-plist 18 Apr 2004 10:48:22 -0000 1.6
+++ pkg-plist 27 May 2004 20:57:26 -0000
@@ -1,8 +1,14 @@
bin/fftw-wisdom
bin/fftw-wisdom-to-conf
+bin/fftwf-wisdom
include/fftw3.f
include/fftw3.h
lib/libfftw3.a
lib/libfftw3.so
lib/libfftw3.so.3
+lib/libfftw3f.a
+lib/libfftw3f.la
+lib/libfftw3f.so
+lib/libfftw3f.so.3
libdata/pkgconfig/fftw3.pc
+libdata/pkgconfig/fftw3f.pc
--- fftw3-3.0.1_1.patch ends here ---
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list