diff options
author | pav <pav@FreeBSD.org> | 2003-12-07 11:13:41 +0800 |
---|---|---|
committer | pav <pav@FreeBSD.org> | 2003-12-07 11:13:41 +0800 |
commit | 8aa9aa870d7a6a669475c29784b05ac83e4c8147 (patch) | |
tree | d20bfde2fe4d91d7339729aa9d521d348f1f304a | |
parent | ac5e5d5e6701fc9b56a88a1ba594983d527d7afe (diff) | |
download | freebsd-ports-gnome-8aa9aa870d7a6a669475c29784b05ac83e4c8147.tar.gz freebsd-ports-gnome-8aa9aa870d7a6a669475c29784b05ac83e4c8147.tar.zst freebsd-ports-gnome-8aa9aa870d7a6a669475c29784b05ac83e4c8147.zip |
Add FreeFem++, an extension of freefem, an implementation of the Gfem
language dedicated to the finite element method.
PR: ports/58536
Submitted by: Thierry Thomas <thierry@pompo.net>
-rw-r--r-- | math/Makefile | 1 | ||||
-rw-r--r-- | math/freefem++/Makefile | 62 | ||||
-rw-r--r-- | math/freefem++/distinfo | 1 | ||||
-rw-r--r-- | math/freefem++/files/patch-Makefile | 11 | ||||
-rw-r--r-- | math/freefem++/files/patch-src::Makefile-linux | 35 | ||||
-rw-r--r-- | math/freefem++/pkg-descr | 14 | ||||
-rw-r--r-- | math/freefem++/pkg-plist | 92 |
7 files changed, 216 insertions, 0 deletions
diff --git a/math/Makefile b/math/Makefile index 4064ab17baa6..143bf09a8b56 100644 --- a/math/Makefile +++ b/math/Makefile @@ -38,6 +38,7 @@ SUBDIR += fftpack SUBDIR += fftw SUBDIR += freefem + SUBDIR += freefem++ SUBDIR += fudgit SUBDIR += fung-calc SUBDIR += fxt diff --git a/math/freefem++/Makefile b/math/freefem++/Makefile new file mode 100644 index 000000000000..627008ef34f8 --- /dev/null +++ b/math/freefem++/Makefile @@ -0,0 +1,62 @@ +# New ports collection makefile for: FreeFem++ +# Date created: 17 October 2003 +# Whom: thierry@pompo.net +# +# $FreeBSD$ +# + +PORTNAME= freefem++ +PORTVERSION= 1.34 +CATEGORIES= math science +MASTER_SITES= ftp://ftp.inria.fr/INRIA/Projects/Gamma/freefem/ +DISTNAME= FreeFem++v${PORTVERSION} + +MAINTAINER= ports@FreeBSD.org +COMMENT= An implementation of a language dedicated to the finite element method + +LIB_DEPENDS= atlas.1:${PORTSDIR}/math/atlas +BUILD_DEPENDS= ${LOCALBASE}/include/ARPACK++:${PORTSDIR}/math/arpack++ + +USE_XLIB= yes +USE_GMAKE= yes + +MAKE_ENV= CXX=${CXX} HOSTTYPE=${HOSTTYPE} + +DOCS= BUGS COPYRIGHT HISTORY README DOC/manual.pdf + +.include <bsd.port.pre.mk> + +HOSTTYPE!= ${UNAME} -s + +post-patch: + @${MV} ${WRKSRC}/src/Makefile-linux ${WRKSRC}/src/Makefile-${HOSTTYPE} + @${MV} ${WRKSRC}/src/Makefile-linux.orig ${WRKSRC}/src/Makefile-linux + +post-install: + @${STRIP_CMD} ${PREFIX}/bin/FreeFem++ ${PREFIX}/bin/FreeFem++-nw +.if !defined(NOPORTDOCS) + @${MKDIR} ${DOCSDIR} +.for doc in ${DOCS} + @${INSTALL_DATA} ${WRKSRC}/${doc} ${DOCSDIR} +.endfor + @${ECHO_MSG} "===> Documentation installed in ${DOCSDIR}." +.for direx in "" -bug -eigen -tutorial + @${MKDIR} ${EXAMPLESDIR}/${direx:S/-//} + @for sample in `${LS} ${WRKSRC}/examples++${direx}` ; do \ + ${INSTALL_DATA} ${WRKSRC}/examples++${direx}/$$sample \ + ${EXAMPLESDIR}/${direx:S/-//} ; \ + done +.endfor + @${ECHO_MSG} "===> Examples installed in ${EXAMPLESDIR}." +.endif + +.if defined(MAINTAINER_MODE) +test: install + # Gnuplot needed! Click on the picture to end a set. +.for direx in - -eigen -tutorial + (cd ${EXAMPLESDIR}/${direx:S/-//} ; \ + ${PREFIX}/bin/FreeFem++ all.edp) +.endfor +.endif + +.include <bsd.port.post.mk> diff --git a/math/freefem++/distinfo b/math/freefem++/distinfo new file mode 100644 index 000000000000..2c45938d247c --- /dev/null +++ b/math/freefem++/distinfo @@ -0,0 +1 @@ +MD5 (FreeFem++v1.34.tar.gz) = a86406c5c6be21835f0faa62dd2d718f diff --git a/math/freefem++/files/patch-Makefile b/math/freefem++/files/patch-Makefile new file mode 100644 index 000000000000..64b5a9dde8ca --- /dev/null +++ b/math/freefem++/files/patch-Makefile @@ -0,0 +1,11 @@ +--- Makefile.orig Fri Aug 22 15:23:41 2003 ++++ Makefile Sat Oct 25 17:10:47 2003 +@@ -3,7 +3,7 @@ + # ---------------------------------------------- + src?=./src + include $(src)/Makefile-$(HOSTTYPE) +-CXXFLAGS = $(OPTFLAGS) $(FFFLAGS) $(includedir) $(INCARPACKPP) ++CXXFLAGS+= $(OPTFLAGS) $(FFFLAGS) $(includedir) $(INCARPACKPP) + CXXMPIFLAGS= $(CXXFLAGS) $(MPIFLAGS) -DPARALLELE $(INCARPACKPP) + LIBS=$(LIBARPACK) $(LIBF77) + VERSION=1.34 diff --git a/math/freefem++/files/patch-src::Makefile-linux b/math/freefem++/files/patch-src::Makefile-linux new file mode 100644 index 000000000000..449fda67d29a --- /dev/null +++ b/math/freefem++/files/patch-src::Makefile-linux @@ -0,0 +1,35 @@ +--- src/Makefile-linux.orig Thu Jan 2 14:30:30 2003 ++++ src/Makefile-linux Thu Oct 23 23:42:32 2003 +@@ -1,16 +1,15 @@ +-LIBX11= -L/usr/X11R6/lib -lX11 -lm +-INCLUDEX11 = /usr/X11R6/include +-CXX=g++ #C++ compiler +-CXXMPI=mpiCC # compilation with mpi +-OOPTFLAGS= -O # compilation with optimisation ++# $FreeBSD$ ++LIBX11= -L$(X11BASE)/lib -lX11 -lm ++INCLUDEX11 = $(X11BASE)/include ++OOPTFLAGS= -Wno-deprecated + GOPTFLAGS= -g # compilation with debugging + #-------------------------------------------------- + # the flag of eigen value part with arpack++ tools + #------------------------------------------------- + EIGEN= eigenvalue.o +-LIBARPACK= -L../../arpack/ARPACK -larpack_linux -llapack -lblas +-LIBF77= -lg2c +-INCARPACKPP = -DEIGENVALUE -I../../arpack/arpack++/include ++LIBARPACK= -L$(LOCALBASE)/lib ${LOCALBASE}/lib/libarpack.a -lalapack -lf77blas -lcblas -latlas ++LIBF77= -lg2c -lm ++INCARPACKPP = -DEIGENVALUE -I$(LOCALBASE)/include/ARPACK++ + # ------------------------------ + # compilation flags of FreeFem++ + # ------------------------------ +@@ -29,7 +28,7 @@ + # --------------------------- + # install and compile dir. + # ---------------------- +-BIN_DIR=$(HOME)/bin-$(HOSTTYPE) ++BIN_DIR=$(PREFIX)/bin + COMPILE_DIR=c-$(HOSTTYPE) + #---------------------- + diff --git a/math/freefem++/pkg-descr b/math/freefem++/pkg-descr new file mode 100644 index 000000000000..75a89b6fef65 --- /dev/null +++ b/math/freefem++/pkg-descr @@ -0,0 +1,14 @@ +FreeFem++ is an implementation of a language dedicated to the finite element +method. + +It provides you a way to solve Partial Differential Equations (PDE) simply. +Problems involving partial differential equations (pde) of several branches +of physics such as fluid-structure interactions require interpolations of +data on several meshes and their manipulation within one program. In this +report we build on a fast quadtree-based interpolation algorithm, propose +a language for the manipulation of data on multiple meshes (generated with +bamg) and test by designing an extension of freefem and of freefem+. + +Suggested add-on: the port graphics/xd3d. + +WWW: http://www.ann.jussieu.fr/~hecht/freefem++.htm diff --git a/math/freefem++/pkg-plist b/math/freefem++/pkg-plist new file mode 100644 index 000000000000..6362203177a9 --- /dev/null +++ b/math/freefem++/pkg-plist @@ -0,0 +1,92 @@ +bin/FreeFem++ +bin/FreeFem++-nw +%%PORTDOCS%%%%DOCSDIR%%/BUGS +%%PORTDOCS%%%%DOCSDIR%%/COPYRIGHT +%%PORTDOCS%%%%DOCSDIR%%/HISTORY +%%PORTDOCS%%%%DOCSDIR%%/README +%%PORTDOCS%%%%DOCSDIR%%/manual.pdf +%%PORTDOCS%%%%EXAMPLESDIR%%/D2.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/NSP1P1.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/NSP1P1b.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/NSP1P2.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/aaRT.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/aaa-adp.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/aadaptation.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/aalapacien.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/aalaplace-nc.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/aamove.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/all.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/arrayoFVh.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/bug/SegmentationFault.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/bug/aaa.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/bug/bugf.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/bug/bugv1.18.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/bug/func.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/ccc-adp.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/demo.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/demo1.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/eigen/BeamEigenValue.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/eigen/BeamEigenValueperio.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/eigen/LapEigenValue.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/eigen/LapnosymEigenValue.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/eigen/all.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/eigen/neuman.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/funct.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/include.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/lap_mat.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/lapacienprecon.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/testFE.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/testadp.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/teste.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/FE.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/LaplaceP1.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/LaplaceP1bis.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/LaplaceRT.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/NSUzawaCahouetChabart.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/Newton.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/Periodic.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/StokesUzawa.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/a_tutorial.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/adapt.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/adaptindicatorP1.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/adaptindicatorP2.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/aile.msh +%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/algo.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/algowithmacro.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/all.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/array.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/beam.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/blakschol.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/calculus.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/cavity.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/convect-apt.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/convect.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/convect2.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/dumptable.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/ex-vf.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/fluidStruct.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/fluidStructAdapt.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/freeboundary-weak.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/freeboundary.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/gnuplot.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/medit.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/mesh.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/nolinear-elas.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/onde.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/parareal.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/periodic4.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/plot.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/readmesh.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/region.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/schwarz-gc.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/schwarz-no-overlap.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/schwarz-overlap.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/tablefunction.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/truncmesh.edp +%%PORTDOCS%%%%EXAMPLESDIR%%/tutorial/xyf +%%PORTDOCS%%%%EXAMPLESDIR%%/wafer-heating-laser-axi.edp +%%PORTDOCS%%@dirrm %%DOCSDIR%% +%%PORTDOCS%%@dirrm %%EXAMPLESDIR%%/bug +%%PORTDOCS%%@dirrm %%EXAMPLESDIR%%/eigen +%%PORTDOCS%%@dirrm %%EXAMPLESDIR%%/tutorial +%%PORTDOCS%%@dirrm %%EXAMPLESDIR%% |