- Upgrade to 2.9;

- Don't depend on ATLAS, unless already installed;

- Enable MPICH2.
This commit is contained in:
Thierry Thomas 2006-09-24 23:12:02 +00:00
parent bf460149a7
commit bcff1fa77f
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=173752
6 changed files with 93 additions and 29 deletions

View file

@ -6,17 +6,14 @@
# #
PORTNAME= freefem++ PORTNAME= freefem++
DISTVERSION= 2.8-1 PORTVERSION= 2.9
CATEGORIES= math science CATEGORIES= math science
MASTER_SITES= http://www.freefem.org/ff++/ftp/ MASTER_SITES= http://www.freefem.org/ff++/ftp/
MAINTAINER= ports@FreeBSD.org MAINTAINER= ports@FreeBSD.org
COMMENT= An implementation of a language dedicated to the finite element method COMMENT= An implementation of a language dedicated to the finite element method
LIB_DEPENDS= atlas.1:${PORTSDIR}/math/atlas \ LIB_DEPENDS= lapack.3:${PORTSDIR}/math/lapack \
f2c.2:${PORTSDIR}/lang/f2c \
gsl.9:${PORTSDIR}/math/gsl \
lapack.3:${PORTSDIR}/math/lapack \
fltk.1:${PORTSDIR}/x11-toolkits/fltk-threads \ fltk.1:${PORTSDIR}/x11-toolkits/fltk-threads \
fftw3.4:${PORTSDIR}/math/fftw3 fftw3.4:${PORTSDIR}/math/fftw3
BUILD_DEPENDS= ${LOCALBASE}/lib/libumfpack.a:${PORTSDIR}/math/umfpack \ BUILD_DEPENDS= ${LOCALBASE}/lib/libumfpack.a:${PORTSDIR}/math/umfpack \
@ -37,6 +34,7 @@ USE_GMAKE= yes
GNU_CONFIGURE= yes GNU_CONFIGURE= yes
CONFIGURE_TARGET= --build=${MACHINE_ARCH}-portbld-freebsd${OSREL} CONFIGURE_TARGET= --build=${MACHINE_ARCH}-portbld-freebsd${OSREL}
CONFIGURE_ARGS= --disable-download \ CONFIGURE_ARGS= --disable-download \
--without-cadna \
--with-blas="${LIBBLAS}" \ --with-blas="${LIBBLAS}" \
--with-amd="-lamd" \ --with-amd="-lamd" \
--with-umfpack="-lumfpack" \ --with-umfpack="-lumfpack" \
@ -44,9 +42,6 @@ CONFIGURE_ARGS= --disable-download \
CONFIGURE_ENV= CPPFLAGS="${MPICFLAGS} -I${LOCALBASE}/include ${PTHREAD_CFLAGS}" \ CONFIGURE_ENV= CPPFLAGS="${MPICFLAGS} -I${LOCALBASE}/include ${PTHREAD_CFLAGS}" \
LDFLAGS="${MPILDFLAGS} -L${LOCALBASE}/lib -L${X11BASE}/lib ${PTHREAD_LIBS}" LDFLAGS="${MPILDFLAGS} -L${LOCALBASE}/lib -L${X11BASE}/lib ${PTHREAD_LIBS}"
LIBBLAS= -lf2c -lf77blas -latlas_r -lgslcblas
LIBARPACK= -larpack -lalapack ${LIBBLAS}
DOC_TARGET= freefem++doc.pdf DOC_TARGET= freefem++doc.pdf
PORTDOCS= AUTHORS BUGS COPYING HISTORY HISTORY_BEFORE_2005 INNOVATION README TODO ${DOC_TARGET} PORTDOCS= AUTHORS BUGS COPYING HISTORY HISTORY_BEFORE_2005 INNOVATION README TODO ${DOC_TARGET}
BADSAMPLES= load/myfunction.o BADSAMPLES= load/myfunction.o
@ -61,29 +56,45 @@ MAKE_ARGS+= "PIC=-fPIC"
CONFIGURE_ARGS+= --disable-optim CONFIGURE_ARGS+= --disable-optim
.endif .endif
.if exists(${LOCALBASE}/mpich/mpich/include/mpicxx.h) && !defined(WITHOUT_MPI) .if exists(${LOCALBASE}/lib/libatlas_r.so) && !defined(WITH_BLAS)
WITH_MPI= yes # MPICH-2 is required WITH_ATLAS= yes
.endif .endif
#.if defined(WITH_MPI) .if defined(WITH_ATLAS)
#BUILD_DEPENDS+= ${LOCALBASE}/mpich/bin/mpiCC:${PORTSDIR}/net/mpich LIB_DEPENDS+= f77blas.1:${PORTSDIR}/math/atlas \
#RUN_DEPENDS+= ${LOCALBASE}/mpich/bin/mpiCC:${PORTSDIR}/net/mpich f2c.2:${PORTSDIR}/lang/f2c \
#MPICFLAGS= -I${LOCALBASE}/mpich/include gsl.9:${PORTSDIR}/math/gsl
#MPILDFLAGS= -L${LOCALBASE}/mpich/lib LIBBLAS= -lf2c -lf77blas -latlas_r -lgslcblas
#CONFIGURE_ENV+= PATH="$$PATH:${LOCALBASE}/mpich/bin" LIBARPACK= -larpack -lalapack ${LIBBLAS}
#CONFIGURE_ARGS+= --with-mpi=yes .else
#PLIST_SUB+= MPI="" LIB_DEPENDS+= blas.1:${PORTSDIR}/math/blas
#.else LIBBLAS= -lblas
LIBARPACK= -larpack ${LIBBLAS}
.endif
.if exists(${LOCALBASE}/mpich2/include/mpicxx.h) && !defined(WITHOUT_MPI)
WITH_MPI= yes
.endif
.if defined(WITH_MPI)
BUILD_DEPENDS+= ${LOCALBASE}/mpich2/bin/mpicxx:${PORTSDIR}/net/mpich2
RUN_DEPENDS+= ${LOCALBASE}/mpich2/bin/mpiexec:${PORTSDIR}/net/mpich2
MPICFLAGS= -I${LOCALBASE}/mpich2/include -DMPICH_IGNORE_CXX_SEEK
MPILDFLAGS= -L${LOCALBASE}/mpich2/lib
CONFIGURE_ENV+= PATH="$$PATH:${LOCALBASE}/mpich2/bin"
CONFIGURE_ARGS+= --with-mpi=${LOCALBASE}/mpich2/bin/mpicxx
PLIST_SUB+= MPI=""
.else
PLIST_SUB+= MPI="@comment " PLIST_SUB+= MPI="@comment "
CONFIGURE_ARGS+= --without-mpi CONFIGURE_ARGS+= --without-mpi
#.endif .endif
pre-configure: pre-configure:
@${REINPLACE_CMD} -e "s|-lpthread|${PTHREAD_LIBS}|g" \ ${REINPLACE_CMD} -e "s|-lpthread|${PTHREAD_LIBS}|g" \
-e "s|=mpiCC|=${LOCALBASE}/mpich/bin/mpiCC|" \
-e "s|/usr/X11R6|${X11BASE}|g" \ -e "s|/usr/X11R6|${X11BASE}|g" \
${WRKSRC}/${CONFIGURE_SCRIPT} ${WRKSRC}/${CONFIGURE_SCRIPT}
@${REINPLACE_CMD} -e "s|mpiCC|${LOCALBASE}/mpich/bin/mpiCC|" \ ${REINPLACE_CMD} -e "s|mpicc|${LOCALBASE}/mpich2/bin/mpicxx|" \
${WRKSRC}/src/mpi/Makefile.in ${WRKSRC}/src/mpi/Makefile.in
# ${FIND} ${WRKSRC} -name "*.edp" | ${XARGS} \
# ${REINPLACE_CMD} -e 's|exec("medit|// exec("medit|g'
post-build: post-build:
.if !defined(NOPORTDOCS) .if !defined(NOPORTDOCS)
@ -114,7 +125,7 @@ post-install:
.if defined(MAINTAINER_MODE) .if defined(MAINTAINER_MODE)
regression-test: install regression-test: install
# Gnuplot needed! Click on the picture to end a set. # Gnuplot and medit needed! Click on the picture to end a set.
.for direx in - -eigen -tutorial .for direx in - -eigen -tutorial
(cd ${EXAMPLESDIR}/${direx:S/-//} ; \ (cd ${EXAMPLESDIR}/${direx:S/-//} ; \
${PREFIX}/bin/FreeFem++ all.edp) ${PREFIX}/bin/FreeFem++ all.edp)

View file

@ -1,3 +1,3 @@
MD5 (freefem++-2.8-1.tar.gz) = a965fb259b118e2644f07897df537eb7 MD5 (freefem++-2.9.tar.gz) = 48a0ab98eb6bd07eb5b722bc442231ac
SHA256 (freefem++-2.8-1.tar.gz) = 1bc42323e7c9fe9668be3e9e7ab379a2623287d1fd873a95c48606490dbf0526 SHA256 (freefem++-2.9.tar.gz) = 4fc13208c2381cd6a96623704201dbf90c3182ba30b65731ceafd0f09e806d04
SIZE (freefem++-2.8-1.tar.gz) = 10562043 SIZE (freefem++-2.9.tar.gz) = 10595356

View file

@ -0,0 +1,20 @@
--- configure.orig Tue Sep 19 21:24:02 2006
+++ configure Wed Sep 20 22:32:15 2006
@@ -9371,7 +9371,7 @@
cat >>conftest.$ac_ext <<_ACEOF
/* end confdefs.h. */
$ac_includes_default
-#include <mpicxx.h>
+#include <mpi.h>
_ACEOF
rm -f conftest.$ac_objext
if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
@@ -9415,7 +9415,7 @@
cat confdefs.h >>conftest.$ac_ext
cat >>conftest.$ac_ext <<_ACEOF
/* end confdefs.h. */
-#include <mpicxx.h>
+#include <mpi.h>
_ACEOF
if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
(eval $ac_cpp conftest.$ac_ext) 2>conftest.er1

View file

@ -0,0 +1,11 @@
--- ./examples++-load/Makefile.in.orig Tue Sep 19 21:36:42 2006
+++ ./examples++-load/Makefile.in Wed Sep 20 23:41:53 2006
@@ -355,7 +355,7 @@
include: include.tar.gz
tar zxvf include.tar.gz
- -rm include/._*
+ -rm -f include/._*
Ref: makeref.edp
../src/nw/FreeFem++-nw makeref.edp

View file

@ -9,6 +9,7 @@ report we build on a fast quadtree-based interpolation algorithm, propose
a language for the manipulation of data on multiple meshes (generated with a language for the manipulation of data on multiple meshes (generated with
bamg) and test by designing an extension of freefem and of freefem+. bamg) and test by designing an extension of freefem and of freefem+.
Suggested add-on: the port graphics/xd3d. Suggested add-ons: the ports graphics/xd3d, science/medit and math/gnuplot
(medit and gnuplot are requested to run some examples).
WWW: http://www.freefem.org/ff++/ WWW: http://www.freefem.org/ff++/

View file

@ -6,6 +6,7 @@ bin/FreeFem++-ide
bin/FreeFem++-server bin/FreeFem++-server
bin/FreeFem++-nw bin/FreeFem++-nw
%%MPI%%bin/FreeFem++-mpi %%MPI%%bin/FreeFem++-mpi
%%PORTDOCS%%%%EXAMPLESDIR%%/._aaa-adp.edp
%%PORTDOCS%%%%EXAMPLESDIR%%/D2.edp %%PORTDOCS%%%%EXAMPLESDIR%%/D2.edp
%%PORTDOCS%%%%EXAMPLESDIR%%/FE-medit.edp %%PORTDOCS%%%%EXAMPLESDIR%%/FE-medit.edp
%%PORTDOCS%%%%EXAMPLESDIR%%/NSP1P1.edp %%PORTDOCS%%%%EXAMPLESDIR%%/NSP1P1.edp
@ -21,16 +22,25 @@ bin/FreeFem++-nw
%%PORTDOCS%%%%EXAMPLESDIR%%/all.edp %%PORTDOCS%%%%EXAMPLESDIR%%/all.edp
%%PORTDOCS%%%%EXAMPLESDIR%%/arrayoFVh.edp %%PORTDOCS%%%%EXAMPLESDIR%%/arrayoFVh.edp
%%PORTDOCS%%%%EXAMPLESDIR%%/bilap.edp %%PORTDOCS%%%%EXAMPLESDIR%%/bilap.edp
%%PORTDOCS%%%%EXAMPLESDIR%%/bug/AAA.edp
%%PORTDOCS%%%%EXAMPLESDIR%%/bug/NSP1P2.edp
%%PORTDOCS%%%%EXAMPLESDIR%%/bug/P2b.edp
%%PORTDOCS%%%%EXAMPLESDIR%%/bug/SegmentationFault.edp %%PORTDOCS%%%%EXAMPLESDIR%%/bug/SegmentationFault.edp
%%PORTDOCS%%%%EXAMPLESDIR%%/bug/aaa.edp %%PORTDOCS%%%%EXAMPLESDIR%%/bug/b.edp
%%PORTDOCS%%%%EXAMPLESDIR%%/bug/bb.edp
%%PORTDOCS%%%%EXAMPLESDIR%%/bug/bug-arg-string.edp %%PORTDOCS%%%%EXAMPLESDIR%%/bug/bug-arg-string.edp
%%PORTDOCS%%%%EXAMPLESDIR%%/bug/bug-mesh.edp
%%PORTDOCS%%%%EXAMPLESDIR%%/bug/bug-toto.edp
%%PORTDOCS%%%%EXAMPLESDIR%%/bug/bugborder.edp %%PORTDOCS%%%%EXAMPLESDIR%%/bug/bugborder.edp
%%PORTDOCS%%%%EXAMPLESDIR%%/bug/bugf.edp %%PORTDOCS%%%%EXAMPLESDIR%%/bug/bugf.edp
%%PORTDOCS%%%%EXAMPLESDIR%%/bug/bugv1.18.edp %%PORTDOCS%%%%EXAMPLESDIR%%/bug/bugv1.18.edp
%%PORTDOCS%%%%EXAMPLESDIR%%/bug/fe-vect.edp %%PORTDOCS%%%%EXAMPLESDIR%%/bug/fe-vect.edp
%%PORTDOCS%%%%EXAMPLESDIR%%/bug/func.edp %%PORTDOCS%%%%EXAMPLESDIR%%/bug/func.edp
%%PORTDOCS%%%%EXAMPLESDIR%%/bug/laptopbig.edp
%%PORTDOCS%%%%EXAMPLESDIR%%/bug/mesh.edp
%%PORTDOCS%%%%EXAMPLESDIR%%/bug/zArithmetic_bug1.edp %%PORTDOCS%%%%EXAMPLESDIR%%/bug/zArithmetic_bug1.edp
%%PORTDOCS%%%%EXAMPLESDIR%%/ccc-adp.edp %%PORTDOCS%%%%EXAMPLESDIR%%/ccc-adp.edp
%%PORTDOCS%%%%EXAMPLESDIR%%/chapt3/._lame.edp
%%PORTDOCS%%%%EXAMPLESDIR%%/chapt3/BlackScholes2D.edp %%PORTDOCS%%%%EXAMPLESDIR%%/chapt3/BlackScholes2D.edp
%%PORTDOCS%%%%EXAMPLESDIR%%/chapt3/NSprojection.edp %%PORTDOCS%%%%EXAMPLESDIR%%/chapt3/NSprojection.edp
%%PORTDOCS%%%%EXAMPLESDIR%%/chapt3/all.edp %%PORTDOCS%%%%EXAMPLESDIR%%/chapt3/all.edp
@ -63,10 +73,12 @@ bin/FreeFem++-nw
%%PORTDOCS%%%%EXAMPLESDIR%%/eigen/Stokes-eigen.edp %%PORTDOCS%%%%EXAMPLESDIR%%/eigen/Stokes-eigen.edp
%%PORTDOCS%%%%EXAMPLESDIR%%/eigen/all.edp %%PORTDOCS%%%%EXAMPLESDIR%%/eigen/all.edp
%%PORTDOCS%%%%EXAMPLESDIR%%/eigen/neuman.edp %%PORTDOCS%%%%EXAMPLESDIR%%/eigen/neuman.edp
%%PORTDOCS%%%%EXAMPLESDIR%%/eigen/testeigen.edp
%%PORTDOCS%%%%EXAMPLESDIR%%/funct.edp %%PORTDOCS%%%%EXAMPLESDIR%%/funct.edp
%%PORTDOCS%%%%EXAMPLESDIR%%/include.edp %%PORTDOCS%%%%EXAMPLESDIR%%/include.edp
%%PORTDOCS%%%%EXAMPLESDIR%%/lap_mat.edp %%PORTDOCS%%%%EXAMPLESDIR%%/lap_mat.edp
%%PORTDOCS%%%%EXAMPLESDIR%%/lapacienprecon.edp %%PORTDOCS%%%%EXAMPLESDIR%%/lapacienprecon.edp
%%PORTDOCS%%%%EXAMPLESDIR%%/load/._testFE.edp
%%PORTDOCS%%%%EXAMPLESDIR%%/load/AFunction.hpp %%PORTDOCS%%%%EXAMPLESDIR%%/load/AFunction.hpp
%%PORTDOCS%%%%EXAMPLESDIR%%/load/AFunction_ext.hpp %%PORTDOCS%%%%EXAMPLESDIR%%/load/AFunction_ext.hpp
%%PORTDOCS%%%%EXAMPLESDIR%%/load/AddNewFE.h %%PORTDOCS%%%%EXAMPLESDIR%%/load/AddNewFE.h
@ -113,6 +125,7 @@ bin/FreeFem++-nw
%%PORTDOCS%%%%EXAMPLESDIR%%/load/funcTemplate.edp %%PORTDOCS%%%%EXAMPLESDIR%%/load/funcTemplate.edp
%%PORTDOCS%%%%EXAMPLESDIR%%/load/funcTemplate.o %%PORTDOCS%%%%EXAMPLESDIR%%/load/funcTemplate.o
%%PORTDOCS%%%%EXAMPLESDIR%%/load/funcTemplate.so %%PORTDOCS%%%%EXAMPLESDIR%%/load/funcTemplate.so
%%PORTDOCS%%%%EXAMPLESDIR%%/load/gmres.hpp
%%PORTDOCS%%%%EXAMPLESDIR%%/load/include.tar.gz %%PORTDOCS%%%%EXAMPLESDIR%%/load/include.tar.gz
%%PORTDOCS%%%%EXAMPLESDIR%%/load/lex.hpp %%PORTDOCS%%%%EXAMPLESDIR%%/load/lex.hpp
%%PORTDOCS%%%%EXAMPLESDIR%%/load/lgfem.hpp %%PORTDOCS%%%%EXAMPLESDIR%%/load/lgfem.hpp
@ -151,6 +164,14 @@ bin/FreeFem++-nw
%%PORTDOCS%%%%EXAMPLESDIR%%/testFE.edp %%PORTDOCS%%%%EXAMPLESDIR%%/testFE.edp
%%PORTDOCS%%%%EXAMPLESDIR%%/testadp.edp %%PORTDOCS%%%%EXAMPLESDIR%%/testadp.edp
%%PORTDOCS%%%%EXAMPLESDIR%%/teste.edp %%PORTDOCS%%%%EXAMPLESDIR%%/teste.edp
%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/._AdaptResidualErrorIndicator.edp
%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/._FEComplex.edp
%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/._LapDG2.edp
%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/._VI-adap.edp
%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/._VI.edp
%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/._adapt.edp
%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/._adaptindicatorP1.edp
%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/._sparse-matrix.edp
%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/AdaptResidualErrorIndicator.edp %%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/AdaptResidualErrorIndicator.edp
%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/FE.edp %%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/FE.edp
%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/FEComplex.edp %%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/FEComplex.edp