aboutsummaryrefslogtreecommitdiffstats
path: root/cad/gmsh
diff options
context:
space:
mode:
authorpav <pav@FreeBSD.org>2010-01-13 20:47:20 +0800
committerpav <pav@FreeBSD.org>2010-01-13 20:47:20 +0800
commit23c300ef8b4de7cd1c2bde0bd843fac918704e96 (patch)
treeb2370f2a4d5d0643e9b5ff816be1c904da41dce3 /cad/gmsh
parent5e05aa993edbc215f7ffa7e70f767fd180663b55 (diff)
downloadfreebsd-ports-gnome-23c300ef8b4de7cd1c2bde0bd843fac918704e96.tar.gz
freebsd-ports-gnome-23c300ef8b4de7cd1c2bde0bd843fac918704e96.tar.zst
freebsd-ports-gnome-23c300ef8b4de7cd1c2bde0bd843fac918704e96.zip
- Update to 2.4.2
PR: ports/142360 Submitted by: Stephen Montgomery-Smith <stephen@missouri.edu> (maintainer)
Diffstat (limited to 'cad/gmsh')
-rw-r--r--cad/gmsh/Makefile213
-rw-r--r--cad/gmsh/distinfo9
-rw-r--r--cad/gmsh/files/patch-CMakeLists.txt66
-rw-r--r--cad/gmsh/files/patch-Common::DefaultOptions.h12
-rw-r--r--cad/gmsh/files/patch-Solver::linearSystemCSR.cpp11
-rw-r--r--cad/gmsh/files/patch-configure38
-rw-r--r--cad/gmsh/pkg-plist155
7 files changed, 319 insertions, 185 deletions
diff --git a/cad/gmsh/Makefile b/cad/gmsh/Makefile
index cc8e9cbaed58..67127d92d92e 100644
--- a/cad/gmsh/Makefile
+++ b/cad/gmsh/Makefile
@@ -6,111 +6,118 @@
#
PORTNAME= gmsh
-PORTVERSION= 2.3.1
-PORTREVISION= 3
+PORTVERSION= 2.4.2
CATEGORIES= cad
-MASTER_SITES= http://www.geuz.org/gmsh/src/
+MASTER_SITES= http://www.geuz.org/gmsh/src/ \
+ http://glaros.dtc.umn.edu/gkhome/fetch/sw/metis/
DISTNAME= ${PORTNAME}-${PORTVERSION}-source
EXTRACT_SUFX= .tgz
+DISTFILES= ${DISTNAME}${EXTRACT_SUFX}
+DIST_SUBDIR= gmsh
+EXTRACT_ONLY= ${DISTNAME}${EXTRACT_SUFX}
MAINTAINER= stephen@missouri.edu
COMMENT= An automatic 3D finite element mesh generator
-RUN_DEPENDS= getdp:${PORTSDIR}/science/getdp
LIB_DEPENDS= fltk.1:${PORTSDIR}/x11-toolkits/fltk \
- jpeg.10:${PORTSDIR}/graphics/jpeg
+ jpeg.10:${PORTSDIR}/graphics/jpeg \
+ lapack.4:${PORTSDIR}/math/lapack
SLAVEDIRS= cad/gmsh-occ
-.if !defined(WITHOUT_TETGEN)
-EXTRACT_DEPENDS+= ${NONEXISTENT}:${TETGEN_PORTDIR}:patch
-TETGEN_PORTDIR= ${PORTSDIR}/math/tetgen
-TETGEN_SRC= predicates.cxx tetgen.cxx tetgen.h
-.endif
-
USE_FORTRAN= yes
-FORTRANLIBDIR= `${DIRNAME} \\`${FC} -print-libgcc-file-name\\``
-FORTRANLIBDIR2= `${DIRNAME} \\`${FC} -print-libgcc-file-name\\``/../../../
-GNU_CONFIGURE= yes
-CONFIGURE_ARGS= --with-fltk-prefix=${LOCALBASE} \
- --with-med-prefix=${LOCALBASE} \
- --with-jpeg-prefix=${LOCALBASE} \
- --with-blas-lapack-prefix=${LOCALBASE} \
- --with-png-prefix=${LOCALBASE}
+USE_CMAKE= yes
USE_GMAKE= yes
-ALL_TARGET= all utils
+USE_GL= yes
+ALL_TARGET= all
+
+MAN1= gmsh.1
+
+CMAKE_ARGS+= -DCMAKE_SKIP_RPATH:BOOL=YES
-.if !defined(WITHOUT_HDF5) && defined(WITH_OCC)
-CONFIGURE_ENV+= LDFLAGS="${LDFLAGS} ${PTHREAD_LIBS}"
+.if !defined(WITHOUT_STATIC_LIB)
+ALL_TARGET+= lib
+PLIST_SUB+= STATIC_LIB=""
+.else
+PLIST_SUB+= STATIC_LIB="@comment "
.endif
-.if !defined(WITHOUT_MED)
-LIB_DEPENDS+= med.2:${PORTSDIR}/french/med
-CONFIGURE_ARGS+= --enable-med --with-med-prefix=${LOCALBASE}
+.if !defined(WITHOUT_SHARED_LIB)
+ALL_TARGET+= shared
+PLIST_SUB+= SHARED_LIB=""
+USE_LDCONFIG= yes
.else
-CONFIGURE_ARGS+= --disable-med
+PLIST_SUB+= SHARED_LIB="@comment "
+.endif
+
+.if defined(NOPORTDOCS)
+CMAKE_ARGS+= -DINSTALL_DOCS=OFF
.endif
-.if !defined(WITHOUT_HDF5)
-LIB_DEPENDS+= hdf5.0:${PORTSDIR}/science/hdf5
-CONFIGURE_ARGS+= --enable-hdf5 --with-hdf5-prefix=${LOCALBASE}
+.if defined(WITHOUT_TETGEN)
+CMAKE_ARGS+= -DENABLE_TETGEN=OFF
.else
-CONFIGURE_ARGS+= --disable-hdf5
+CMAKE_ARGS+= -DENABLE_TETGEN=ON
.endif
-.if !defined(WITHOUT_CGNS)
-LIB_DEPENDS+= cgns.0:${PORTSDIR}/science/cgnslib
-CONFIGURE_ARGS+= --enable-cgns --with-cgns-prefix=${LOCALBASE}
+# Even though the taucs port pulls in the metis port, we will still need
+# WITHOUT_METIS not set when WITHOUT_TAUCS is not set, otherwise the linker
+# does not find the libraries installed by the metis port.
+.if !defined(WITHOUT_TAUCS) && defined(WITHOUT_METIS)
+IGNORE= requires that WITHOUT_METIS is not set if WITHOUT_TAUCS is not set
+.endif
+
+.if !defined(WITHOUT_METIS)
+CMAKE_ARGS+= -DENABLE_METIS=ON
+.if defined(NOPORTDOCS)
+IGNORE= The license for Metis requires that its documentation is included
+.endif
+DISTFILES+= manual.pdf
+PLIST_SUB+= METIS=""
.else
-CONFIGURE_ARGS+= --disable-cgns
+CMAKE_ARGS+= -DENABLE_METIS=OFF
+PLIST_SUB+= METIS="@comment "
.endif
-.if !defined(WITHOUT_GMM)
-CONFIGURE_ARGS+= --disable-gmm
+.if defined(WITH_TAUCS)
+LIB_DEPENDS+= taucs.1:${PORTSDIR}/math/taucs
+CMAKE_ARGS+= -DENABLE_TAUCS=ON
+.else
+CMAKE_ARGS+= -DENABLE_TAUCS=OFF
.endif
-# For FourierModel
-.if defined(WITH_FFTW3)
-LIB_DEPENDS+= fftw3.5:${PORTSDIR}/math/fftw3
-CONFIGURE_ARGS+= --enable-fftw3 --with-fftw3-prefix=${LOCALBASE}
+.if !defined(WITHOUT_MED)
+LIB_DEPENDS+= med.2:${PORTSDIR}/french/med
+CMAKE_ARGS+= -DENABLE_MED=ON
.else
-CONFIGURE_ARGS+= --disable-fftw3
+CMAKE_ARGS+= -DENABLE_MED=OFF
.endif
-.if defined(WITH_OCC)
-LIB_DEPENDS+= TKernel.0:${PORTSDIR}/cad/opencascade
-CONFIGURE_ARGS+= --enable-occ --with-occ-prefix=${LOCALBASE}/OpenCAS/ros
-CONFIGURE_ENV+= ARCH="${ARCH}"
-CONFLICTS= gmsh-2.*
+.if !defined(WITHOUT_CGNS)
+LIB_DEPENDS+= cgns.0:${PORTSDIR}/science/cgnslib
+CMAKE_ARGS+= -DENABLE_CGNS=ON
.else
-CONFIGURE_ARGS+= --disable-occ
-CONFLICTS= gmsh-occ-2.*
+CMAKE_ARGS+= -DENABLE_CGNS=OFF
.endif
-WRKSRC= ${WRKDIR}/${PORTNAME}-${PORTVERSION}
-PKGMESSAGE= ${WRKDIR}/pkg-message
+.if defined(WITHOUT_GMM)
+CMAKE_ARGS+= -DENABLE_GMM=OFF
+.endif
-PORTDOCS= CREDITS.txt FAQ.txt VERSIONS.txt gmsh.html
+.if defined(WITH_OCC)
+LIB_DEPENDS+= TKernel.0:${PORTSDIR}/cad/opencascade
+CMAKE_ARGS+= -DENABLE_OCC=ON
+CONFLICTS= gmsh-2.*
+.else
+CMAKE_ARGS+= -DENABLE_OCC=OFF
+CONFLICTS= gmsh-occ-2.*
+.endif
-MAN1= gmsh.1
+PKGMESSAGE= ${WRKDIR}/pkg-message
.include <bsd.port.pre.mk>
-.if exists(${LOCALBASE}/lib/libatlas_r.so) && !defined(WITH_BLAS)
-WITH_ATLAS= yes
-.endif
-.if defined(WITH_ATLAS)
-LIB_DEPENDS+= atlas.2:${PORTSDIR}/math/atlas
-BLAS= -lcblas -lf77blas -latlas -L${FORTRANLIBDIR} -L${FORTRANLIBDIR2} -lgfortranbegin -lgfortran
-LAPACK= -lalapack ${BLAS}
-ARPACK= -larpack
-.else
-LIB_DEPENDS+= blas.2:${PORTSDIR}/math/blas
-LIB_DEPENDS+= lapack.4:${PORTSDIR}/math/lapack
-BLAS= -lblas
-LAPACK= -llapack ${BLAS}
-ARPACK= -larpack
-.endif
+CMAKE_USE_PTHREAD= yes
pre-everything::
@${ECHO_MSG} ""
@@ -119,12 +126,17 @@ pre-everything::
@${ECHO_MSG} "3D mesh generator."
@${ECHO_MSG} ""
.endif
-.if !defined(WITHOUT_MED)
- @${ECHO_MSG} "Define WITHOUT_MED to disable MED support."
+.if !defined(WITHOUT_METIS)
+ @${ECHO_MSG} "Define WITHOUT_METIS to disable Metis as an alternative"
+ @${ECHO_MSG} "3D mesh generator."
+ @${ECHO_MSG} ""
+.endif
+.if !defined(WITHOUT_TAUCS)
+ @${ECHO_MSG} "Define WITHOUT_TAUCS to disable the Taucs linear algebra solver."
@${ECHO_MSG} ""
.endif
-.if !defined(WITHOUT_HDF5)
- @${ECHO_MSG} "Define WITHOUT_HDF5 to disable HDF5 support."
+.if !defined(WITHOUT_MED)
+ @${ECHO_MSG} "Define WITHOUT_MED to disable MED support."
@${ECHO_MSG} ""
.endif
.if !defined(WITHOUT_CGNS)
@@ -140,46 +152,51 @@ pre-everything::
@${ECHO_MSG} "(through OpenCascade)."
@${ECHO_MSG} ""
.endif
+.if !defined(WITHOUT_STATIC_LIB)
+ @${ECHO_MSG} "Define WITHOUT_STATIC_LIB to avoid building and installing the static library."
+ @${ECHO_MSG} "(You would want to do this to reduce build time.)"
+ @${ECHO_MSG} ""
+.endif
+.if !defined(WITHOUT_SHARED_LIB)
+ @${ECHO_MSG} "Define WITHOUT_SHARED_LIB to avoid building and installing the shared library."
+ @${ECHO_MSG} "(You would want to do this to reduce build time.)"
+ @${ECHO_MSG} ""
+.endif
post-extract:
+ ${CP} ${DISTDIR}/${DIST_SUBDIR}/manual.pdf ${WRKDIR}
${TOUCH} ${PKGMESSAGE}
.if !defined(WITHOUT_TETGEN)
- ${CP} ${TETGEN_SRC:S|^|`cd ${TETGEN_PORTDIR}; ${MAKE} -V WRKSRC`/|} \
- ${WRKSRC}/contrib/Tetgen
@${ECHO} >> ${PKGMESSAGE}
@${ECHO} "The FreeBSD project has been granted redistribution rights" >> ${PKGMESSAGE}
@${ECHO} "but anyone attempting to redistribute Gmsh with Tetgen" >> ${PKGMESSAGE}
@${ECHO} "for strict commercial purposes must still contact the author" >> ${PKGMESSAGE}
@${ECHO} "(Hang Si) and license the code." >> ${PKGMESSAGE}
.endif
-
-pre-configure:
-.for demo in lowmem-anim.geo
- @${REINPLACE_CMD} -e "s|../tutorial|${DOCSDIR}/tutorial|" \
- ${WRKSRC}/demos/${demo}
-.endfor
- ${REINPLACE_CMD} -e 's|-lcblas -latlas|%%BLAS%%|; \
- s|-lcblas|${BLAS}|; s|%%BLAS%%|${BLAS}|; \
- s|-llapack|${LAPACK}|' ${WRKSRC}/${CONFIGURE_SCRIPT}
-
-do-install:
-.for f in dxf2geo gmsh mshsort
- ${INSTALL_PROGRAM} ${WRKSRC}/bin/${f} ${PREFIX}/bin
-.endfor
- ${INSTALL_MAN} ${WRKSRC}/doc/gmsh.1 ${MANPREFIX}/man/man1
-.if !defined(NOPORTDOCS)
- @${MKDIR} ${DOCSDIR}
- ${INSTALL_DATA} ${PORTDOCS:S|^|${WRKSRC}/doc/|} ${DOCSDIR}
- cd ${WRKSRC} && ${FIND} tutorial | \
- ${CPIO} -pdm -L -R ${SHAREOWN}:${SHAREGRP} ${DOCSDIR}
-.endif
-.if !defined(NOPORTEXAMPLES)
- @${MKDIR} ${EXAMPLESDIR}
- cd ${WRKSRC} && ${FIND} demos ! -name "*.bak" | \
- ${CPIO} -pdm -L -R ${SHAREOWN}:${SHAREGRP} ${EXAMPLESDIR}
+.if !defined(WITHOUT_METIS)
+ @${ECHO} >> ${PKGMESSAGE}
+ @${ECHO} "The FreeBSD project has been granted redistribution rights" >> ${PKGMESSAGE}
+ @${ECHO} "but anyone attempting to redistribute Gmsh with Metis" >> ${PKGMESSAGE}
+ @${ECHO} "must still contact the author" >> ${PKGMESSAGE}
+ @${ECHO} "http://glaros.dtc.umn.edu/gkhome/metis/metis/faq?q=metis/metis/faq#distribute" >> ${PKGMESSAGE}
+ @${ECHO} "\"A Fast and Highly Quality Multilevel Scheme for Partitioning Irregular Graphs\". George Karypis and Vipin Kumar. SIAM Journal on Scientific Computing, Vol. 20, No. 1, pp. 359-392, 1999." >> ${PKGMESSAGE}
+.endif
+.if !defined(WITHOUT_TAUCS)
+ @${ECHO} >> ${PKGMESSAGE}
+ @${ECHO} "There might be licensing issues with using Taucs with Gmsh" >> ${PKGMESSAGE}
+ @${ECHO} "because Taucs requires Metis." >> ${PKGMESSAGE}
.endif
post-install:
+.if !defined(WITHOUT_SHARED_LIB)
+ ${MV} -f ${PREFIX}/lib/libGmsh.so ${PREFIX}/lib/libGmsh.so.0
+ ${LN} -s ${PREFIX}/lib/libGmsh.so.0 ${PREFIX}/lib/libGmsh.so
+.endif
+.if !defined(WITHOUT_METIS)
+ ${MKDIR} ${DOCSDIR}/metis
+ ${INSTALL_DATA} ${WRKDIR}/manual.pdf ${DOCSDIR}/metis
+.endif
+
@${ECHO_MSG}
@${CAT} ${PKGMESSAGE}
@${ECHO_MSG}
diff --git a/cad/gmsh/distinfo b/cad/gmsh/distinfo
index 805ad4a3d27f..08769411a08b 100644
--- a/cad/gmsh/distinfo
+++ b/cad/gmsh/distinfo
@@ -1,3 +1,6 @@
-MD5 (gmsh-2.3.1-source.tgz) = 0eb7c2917ed2d9fc50ad502e85a5ef65
-SHA256 (gmsh-2.3.1-source.tgz) = 895d85082f3688bfa35225a13ed7f52b1fcf3526039fd3456ddff7be1738e9e8
-SIZE (gmsh-2.3.1-source.tgz) = 2809970
+MD5 (gmsh/gmsh-2.4.2-source.tgz) = 538ece4c7850934f08650e394785b5a1
+SHA256 (gmsh/gmsh-2.4.2-source.tgz) = b922b1f8f63085361cb4b94a16eb72b4d75d580d5610ebeeccd0a2223920acc1
+SIZE (gmsh/gmsh-2.4.2-source.tgz) = 3109391
+MD5 (gmsh/manual.pdf) = adaea87a07528bcc45b5eb84e636d00a
+SHA256 (gmsh/manual.pdf) = 8a682ee7f02380f52d5efdde5f9f9d8e927a4f4eb29287a878c1016225568911
+SIZE (gmsh/manual.pdf) = 206713
diff --git a/cad/gmsh/files/patch-CMakeLists.txt b/cad/gmsh/files/patch-CMakeLists.txt
new file mode 100644
index 000000000000..af0b6454ebf7
--- /dev/null
+++ b/cad/gmsh/files/patch-CMakeLists.txt
@@ -0,0 +1,66 @@
+--- CMakeLists.txt.orig 2009-09-21 13:54:49.000000000 -0500
++++ CMakeLists.txt 2010-01-02 16:31:27.000000000 -0600
+@@ -41,6 +41,7 @@
+ option(ENABLE_TAUCS "Enable Taucs linear algebra solver" ON)
+ option(ENABLE_TETGEN "Enable Tetgen mesh generator" ON)
+ option(ENABLE_TETGEN_NEW "Enable experimental version of Tetgen" OFF)
++option(INSTALL_DOCS "Install the docs (FreeBSD only)" ON)
+
+ set(GMSH_MAJOR_VERSION 2)
+ set(GMSH_MINOR_VERSION 4)
+@@ -478,13 +479,17 @@
+ if(ENABLE_TAUCS)
+ find_library(TAUCS_LIB taucs)
+ if(TAUCS_LIB)
+- find_path(TAUCS_INC "taucs.h" PATH_SUFFIXES src include)
+- if(TAUCS_INC)
+- set(HAVE_TAUCS TRUE)
+- list(APPEND CONFIG_OPTIONS "Taucs")
+- list(APPEND EXTERNAL_LIBRARIES ${TAUCS_LIB})
+- list(APPEND EXTERNAL_INCLUDES ${TAUCS_INC})
+- endif(TAUCS_INC)
++ find_library(COMPAT_LIB compat)
++ if (COMPAT_LIB)
++ find_path(TAUCS_INC "taucs.h" PATH_SUFFIXES src include)
++ if(TAUCS_INC)
++ set(HAVE_TAUCS TRUE)
++ list(APPEND CONFIG_OPTIONS "Taucs")
++ list(APPEND EXTERNAL_LIBRARIES ${TAUCS_LIB})
++ list(APPEND EXTERNAL_LIBRARIES ${COMPAT_LIB})
++ list(APPEND EXTERNAL_INCLUDES ${TAUCS_INC})
++ endif(TAUCS_INC)
++ endif(COMPAT_LIB)
+ endif(TAUCS_LIB)
+ endif(ENABLE_TAUCS)
+
+@@ -518,7 +523,7 @@
+ list(LENGTH OCC_LIBS NUM_OCC_LIBS)
+ if(NUM_OCC_LIBS EQUAL NUM_OCC_LIBS_REQUIRED)
+ find_path(OCC_INC "BRep_Tool.hxx" PATHS ENV CASROOT PATH_SUFFIXES inc
+- include opencascade)
++ include opencascade OpenCAS/ros/inc)
+ if(OCC_INC)
+ set(HAVE_OCC TRUE)
+ list(APPEND CONFIG_OPTIONS "OpenCascade")
+@@ -762,13 +767,15 @@
+ install(TARGETS gmsh DESTINATION ${GMSH_BIN} OPTIONAL)
+ install(TARGETS lib shared DESTINATION lib OPTIONAL)
+ install(FILES ${GMSH_API} DESTINATION include/gmsh)
+-install(FILES ${WELCOME_FILE} DESTINATION ${GMSH_DOC} RENAME README.txt)
+-install(FILES ${LICENSE_FILE} DESTINATION ${GMSH_DOC})
+-install(FILES ${CREDITS_FILE} DESTINATION ${GMSH_DOC})
+-install(FILES ${TUTORIAL_FILES} DESTINATION ${GMSH_DOC}/tutorial)
+-install(FILES ${DEMO_FILES} DESTINATION ${GMSH_DOC}/demos)
++if(INSTALL_DOCS)
++ install(FILES ${WELCOME_FILE} DESTINATION ${GMSH_DOC} RENAME README.txt)
++ install(FILES ${LICENSE_FILE} DESTINATION ${GMSH_DOC})
++ install(FILES ${CREDITS_FILE} DESTINATION ${GMSH_DOC})
++ install(FILES ${TUTORIAL_FILES} DESTINATION ${GMSH_DOC}/tutorial)
++ install(FILES ${DEMO_FILES} DESTINATION ${GMSH_DOC}/demos)
++endif(INSTALL_DOCS)
+ if(UNIX AND NOT CYGWIN)
+- install(FILES ${CMAKE_SOURCE_DIR}/doc/gmsh.1 DESTINATION share/man/man1)
++ install(FILES ${CMAKE_SOURCE_DIR}/doc/gmsh.1 DESTINATION man/man1)
+ endif(UNIX AND NOT CYGWIN)
+
+ find_program(MAKEINFO makeinfo)
diff --git a/cad/gmsh/files/patch-Common::DefaultOptions.h b/cad/gmsh/files/patch-Common::DefaultOptions.h
index 7949e420e7dd..daa3e54bf445 100644
--- a/cad/gmsh/files/patch-Common::DefaultOptions.h
+++ b/cad/gmsh/files/patch-Common::DefaultOptions.h
@@ -1,11 +1,11 @@
---- ./Common/DefaultOptions.h.orig Sun Oct 17 04:49:26 2004
-+++ ./Common/DefaultOptions.h Sun Oct 17 22:50:05 2004
-@@ -65,7 +65,7 @@
+--- Common/DefaultOptions.h.orig 2010-01-01 14:21:13.000000000 -0600
++++ Common/DefaultOptions.h 2010-01-01 14:22:28.000000000 -0600
+@@ -70,7 +70,7 @@
#elif defined(__APPLE__)
- "open -e %s" ,
+ "open -t %s" ,
#else
-- "emacs %s &" ,
-+ "$EDITOR %s &" ,
+- "emacs '%s' &" ,
++ "$EDITOR '%s' &" ,
#endif
"System command to launch a text editor" },
{ F|S, "TmpFileName" , opt_general_tmp_filename , ".gmsh-tmp" ,
diff --git a/cad/gmsh/files/patch-Solver::linearSystemCSR.cpp b/cad/gmsh/files/patch-Solver::linearSystemCSR.cpp
new file mode 100644
index 000000000000..20a278b2dcb6
--- /dev/null
+++ b/cad/gmsh/files/patch-Solver::linearSystemCSR.cpp
@@ -0,0 +1,11 @@
+--- Solver/linearSystemCSR.cpp.orig 2010-01-02 16:10:27.000000000 -0600
++++ Solver/linearSystemCSR.cpp 2010-01-02 16:10:40.000000000 -0600
+@@ -245,7 +245,7 @@
+ }
+
+ template <class scalar>
+-static void sortColumns(int NbLines,
++void sortColumns(int NbLines,
+ int nnz,
+ INDEX_TYPE *ptr,
+ INDEX_TYPE *jptr,
diff --git a/cad/gmsh/files/patch-configure b/cad/gmsh/files/patch-configure
deleted file mode 100644
index 5bc1a8dc7b3d..000000000000
--- a/cad/gmsh/files/patch-configure
+++ /dev/null
@@ -1,38 +0,0 @@
---- configure.orig 2009-01-09 08:13:50.000000000 +0100
-+++ configure 2009-01-27 19:27:36.000000000 +0100
-@@ -3714,7 +3714,7 @@
-
- GMSH_DIRS="Common Geo Mesh Post Plugin Numeric Parser Graphics Fltk"
- GMSH_LIBS="-Llib -lGmshFltk -lGmshCommon -lGmshMesh -lGmshGeo -lGmshPost -lGmshPlugin"
-- GMSH_LIBS="${GMSH_LIBS} -lGmshCommon -lGmshGraphics -lGmshParser -lGmshNumeric"
-+ GMSH_LIBS="${GMSH_LIBS} -lGmshCommon -lGmshGraphics -lGmshParser -lGmshNumeric ${LDFLAGS}"
- cat >>confdefs.h <<\_ACEOF
- #define HAVE_FLTK 1
- _ACEOF
-@@ -4884,7 +4884,7 @@
- GMSH_LIBS="${GMSH_LIBS} ${OCC_LIBS}"
- else
- GMSH_LIBS="${GMSH_LIBS} -L${OCC_PREFIX}/lib ${OCC_LIBS}"
-- FLAGS="${FLAGS} -I${OCC_PREFIX}/inc"
-+ FLAGS="${FLAGS} -DHAVE_WOK_CONFIG_H -DFREEBSD -D${ARCH} -I${OCC_PREFIX}/inc"
- fi
- fi
- fi
-@@ -5012,7 +5012,7 @@
- echo $ECHO_N "(cached) $ECHO_C" >&6
- else
- ac_check_lib_save_LIBS=$LIBS
--LIBS="-lcgns $LIBS"
-+LIBS="-lcgns -lhdf5 $LIBS"
- cat >conftest.$ac_ext <<_ACEOF
- /* confdefs.h. */
- _ACEOF
-@@ -5074,7 +5074,7 @@
- if test "x${CGNS_PREFIX}" = "x"; then
- GMSH_LIBS="${GMSH_LIBS} -lcgns"
- else
-- GMSH_LIBS="${GMSH_LIBS} -L${CGNS_PREFIX}/lib -lcgns"
-+ GMSH_LIBS="${GMSH_LIBS} -L${CGNS_PREFIX}/lib -lcgns -lhdf5"
- FLAGS="${FLAGS} -I${CGNS_PREFIX}/include"
- fi
- fi
diff --git a/cad/gmsh/pkg-plist b/cad/gmsh/pkg-plist
index 6ab4b26418f2..f45753a25309 100644
--- a/cad/gmsh/pkg-plist
+++ b/cad/gmsh/pkg-plist
@@ -1,6 +1,114 @@
-bin/dxf2geo
bin/gmsh
-bin/mshsort
+%%STATIC_LIB%%lib/libGmsh.a
+%%SHARED_LIB%%lib/libGmsh.so
+%%SHARED_LIB%%lib/libGmsh.so.0
+include/gmsh/CellComplex.h
+include/gmsh/ChainComplex.h
+include/gmsh/DILevelset.h
+include/gmsh/GEdge.h
+include/gmsh/GEdgeCompound.h
+include/gmsh/GEdgeLoop.h
+include/gmsh/GEntity.h
+include/gmsh/GFace.h
+include/gmsh/GFaceCompound.h
+include/gmsh/GModel.h
+include/gmsh/GPoint.h
+include/gmsh/GRegion.h
+include/gmsh/GRegionCompound.h
+include/gmsh/GVertex.h
+include/gmsh/Gauss.h
+include/gmsh/Gmsh.h
+include/gmsh/GmshConfig.h
+include/gmsh/GmshDefines.h
+include/gmsh/GmshMessage.h
+include/gmsh/GmshVersion.h
+include/gmsh/MEdge.h
+include/gmsh/MElement.h
+include/gmsh/MElementCut.h
+include/gmsh/MFace.h
+include/gmsh/MHexahedron.h
+include/gmsh/MLine.h
+include/gmsh/MPoint.h
+include/gmsh/MPrism.h
+include/gmsh/MPyramid.h
+include/gmsh/MQuadrangle.h
+include/gmsh/MTetrahedron.h
+include/gmsh/MTriangle.h
+include/gmsh/MVertex.h
+include/gmsh/Numeric.h
+include/gmsh/PView.h
+include/gmsh/PViewData.h
+include/gmsh/Pair.h
+include/gmsh/PluginManager.h
+include/gmsh/Range.h
+include/gmsh/SBoundingBox3d.h
+include/gmsh/SOrientedBoundingBox.h
+include/gmsh/SPoint2.h
+include/gmsh/SPoint3.h
+include/gmsh/STensor3.h
+include/gmsh/SVector3.h
+include/gmsh/VertexArray.h
+include/gmsh/discreteEdge.h
+include/gmsh/discreteFace.h
+include/gmsh/discreteRegion.h
+include/gmsh/discreteVertex.h
+include/gmsh/dofManager.h
+include/gmsh/drawContext.h
+include/gmsh/elasticityTerm.h
+include/gmsh/femTerm.h
+include/gmsh/fullMatrix.h
+include/gmsh/functionSpace.h
+include/gmsh/gmp_blas.h
+include/gmsh/gmp_matrix.h
+include/gmsh/gmp_normal_form.h
+include/gmsh/laplaceTerm.h
+include/gmsh/linearSystem.h
+include/gmsh/linearSystemFull.h
+include/gmsh/linearSystemGMM.h
+include/gmsh/meshGEdge.h
+include/gmsh/meshGFace.h
+include/gmsh/meshGFaceDelaunayInsertion.h
+include/gmsh/meshGFaceOptimize.h
+include/gmsh/simpleFunction.h
+%%PORTDOCS%%%%DOCSDIR%%/CREDITS.txt
+%%PORTDOCS%%%%DOCSDIR%%/LICENSE.txt
+%%PORTDOCS%%%%DOCSDIR%%/README.txt
+%%PORTDOCS%%%%DOCSDIR%%/demos/anim.script
+%%PORTDOCS%%%%DOCSDIR%%/demos/antenna.geo
+%%PORTDOCS%%%%DOCSDIR%%/demos/antenna.i1
+%%PORTDOCS%%%%DOCSDIR%%/demos/component8.step
+%%PORTDOCS%%%%DOCSDIR%%/demos/component8_in_a_box.geo
+%%PORTDOCS%%%%DOCSDIR%%/demos/cone.geo
+%%PORTDOCS%%%%DOCSDIR%%/demos/cube.geo
+%%PORTDOCS%%%%DOCSDIR%%/demos/encode.script
+%%PORTDOCS%%%%DOCSDIR%%/demos/fields.geo
+%%PORTDOCS%%%%DOCSDIR%%/demos/filter.geo
+%%PORTDOCS%%%%DOCSDIR%%/demos/hex.geo
+%%PORTDOCS%%%%DOCSDIR%%/demos/isosurf.script
+%%PORTDOCS%%%%DOCSDIR%%/demos/lowmem-anim.geo
+%%PORTDOCS%%%%DOCSDIR%%/demos/machine.geo
+%%PORTDOCS%%%%DOCSDIR%%/demos/machine.i1
+%%PORTDOCS%%%%DOCSDIR%%/demos/machine.i2
+%%PORTDOCS%%%%DOCSDIR%%/demos/multislice.script
+%%PORTDOCS%%%%DOCSDIR%%/demos/piece-extr-rec.geo
+%%PORTDOCS%%%%DOCSDIR%%/demos/piece-extr.geo
+%%PORTDOCS%%%%DOCSDIR%%/demos/piece.geo
+%%PORTDOCS%%%%DOCSDIR%%/demos/plot2d.geo
+%%PORTDOCS%%%%DOCSDIR%%/demos/primitives.pos
+%%PORTDOCS%%%%DOCSDIR%%/demos/pripyrtet.geo
+%%PORTDOCS%%%%DOCSDIR%%/demos/rotate.script
+%%PORTDOCS%%%%DOCSDIR%%/demos/sphere-discrete.geo
+%%PORTDOCS%%%%DOCSDIR%%/demos/sphere-surf.stl
+%%PORTDOCS%%%%DOCSDIR%%/demos/sphere.geo
+%%PORTDOCS%%%%DOCSDIR%%/demos/splines.geo
+%%PORTDOCS%%%%DOCSDIR%%/demos/title.script
+%%PORTDOCS%%%%DOCSDIR%%/demos/tower.geo
+%%PORTDOCS%%%%DOCSDIR%%/demos/tower.i1
+%%PORTDOCS%%%%DOCSDIR%%/demos/tower.i2
+%%PORTDOCS%%%%DOCSDIR%%/demos/tower.i3
+%%PORTDOCS%%%%DOCSDIR%%/demos/tower.i4
+%%PORTDOCS%%%%DOCSDIR%%/demos/tower.i5
+%%PORTDOCS%%%%DOCSDIR%%/demos/transfinite.geo
%%PORTDOCS%%%%DOCSDIR%%/tutorial/bgmesh.pos
%%PORTDOCS%%%%DOCSDIR%%/tutorial/t1.geo
%%PORTDOCS%%%%DOCSDIR%%/tutorial/t2.geo
@@ -17,42 +125,9 @@ bin/mshsort
%%PORTDOCS%%%%DOCSDIR%%/tutorial/view3.pos
%%PORTDOCS%%%%DOCSDIR%%/tutorial/view4.pos
%%PORTDOCS%%%%DOCSDIR%%/tutorial/view5.msh
-%%PORTEXAMPLES%%%%EXAMPLESDIR%%/demos/anim.script
-%%PORTEXAMPLES%%%%EXAMPLESDIR%%/demos/antenna.geo
-%%PORTEXAMPLES%%%%EXAMPLESDIR%%/demos/antenna.i1
-%%PORTEXAMPLES%%%%EXAMPLESDIR%%/demos/component8.step
-%%PORTEXAMPLES%%%%EXAMPLESDIR%%/demos/component8_in_a_box.geo
-%%PORTEXAMPLES%%%%EXAMPLESDIR%%/demos/cone.geo
-%%PORTEXAMPLES%%%%EXAMPLESDIR%%/demos/cube.geo
-%%PORTEXAMPLES%%%%EXAMPLESDIR%%/demos/encode.script
-%%PORTEXAMPLES%%%%EXAMPLESDIR%%/demos/fields.geo
-%%PORTEXAMPLES%%%%EXAMPLESDIR%%/demos/filter.geo
-%%PORTEXAMPLES%%%%EXAMPLESDIR%%/demos/hex.geo
-%%PORTEXAMPLES%%%%EXAMPLESDIR%%/demos/isosurf.script
-%%PORTEXAMPLES%%%%EXAMPLESDIR%%/demos/lowmem-anim.geo
-%%PORTEXAMPLES%%%%EXAMPLESDIR%%/demos/machine.geo
-%%PORTEXAMPLES%%%%EXAMPLESDIR%%/demos/machine.i1
-%%PORTEXAMPLES%%%%EXAMPLESDIR%%/demos/machine.i2
-%%PORTEXAMPLES%%%%EXAMPLESDIR%%/demos/multislice.script
-%%PORTEXAMPLES%%%%EXAMPLESDIR%%/demos/piece-extr-rec.geo
-%%PORTEXAMPLES%%%%EXAMPLESDIR%%/demos/piece-extr.geo
-%%PORTEXAMPLES%%%%EXAMPLESDIR%%/demos/piece.geo
-%%PORTEXAMPLES%%%%EXAMPLESDIR%%/demos/plot2d.geo
-%%PORTEXAMPLES%%%%EXAMPLESDIR%%/demos/primitives.pos
-%%PORTEXAMPLES%%%%EXAMPLESDIR%%/demos/pripyrtet.geo
-%%PORTEXAMPLES%%%%EXAMPLESDIR%%/demos/rotate.script
-%%PORTEXAMPLES%%%%EXAMPLESDIR%%/demos/sphere-discrete.geo
-%%PORTEXAMPLES%%%%EXAMPLESDIR%%/demos/sphere-surf.stl
-%%PORTEXAMPLES%%%%EXAMPLESDIR%%/demos/sphere.geo
-%%PORTEXAMPLES%%%%EXAMPLESDIR%%/demos/splines.geo
-%%PORTEXAMPLES%%%%EXAMPLESDIR%%/demos/title.script
-%%PORTEXAMPLES%%%%EXAMPLESDIR%%/demos/tower.geo
-%%PORTEXAMPLES%%%%EXAMPLESDIR%%/demos/tower.i1
-%%PORTEXAMPLES%%%%EXAMPLESDIR%%/demos/tower.i2
-%%PORTEXAMPLES%%%%EXAMPLESDIR%%/demos/tower.i3
-%%PORTEXAMPLES%%%%EXAMPLESDIR%%/demos/tower.i4
-%%PORTEXAMPLES%%%%EXAMPLESDIR%%/demos/tower.i5
-%%PORTEXAMPLES%%%%EXAMPLESDIR%%/demos/transfinite.geo
+%%METIS%%%%DOCSDIR%%/metis/manual.pdf
+@dirrm include/gmsh
+%%PORTDOCS%%@dirrm %%DOCSDIR%%/demos
%%PORTDOCS%%@dirrm %%DOCSDIR%%/tutorial
-%%PORTEXAMPLES%%@dirrm %%EXAMPLESDIR%%/demos
-%%PORTEXAMPLES%%@dirrm %%EXAMPLESDIR%%
+%%METIS%%@dirrm %%DOCSDIR%%/metis
+%%PORTDOCS%%@dirrm %%DOCSDIR%%