diff --git a/math/moab/Makefile b/math/moab/Makefile index bce64266e692..29d81648abeb 100644 --- a/math/moab/Makefile +++ b/math/moab/Makefile @@ -1,43 +1,47 @@ PORTNAME= moab DISTVERSION= 5.3.1 +PORTREVISION= 1 CATEGORIES= math MASTER_SITES= https://bitbucket.org/${BB_ACCOUNT}/${BB_PROJECT}/get/${BB_COMMIT}.tar.gz?dummy=/ MAINTAINER= yuri@FreeBSD.org COMMENT= Component for representing and evaluating mesh data LICENSE= LGPL3+ LICENSE_FILE= ${WRKSRC}/LICENSE LIB_DEPENDS= libhdf5.so:science/hdf5 \ libnetcdf.so:science/netcdf \ libopenblas.so:math/openblas -USES= cmake compiler:c++11-lang eigen:3 fortran +USES= cmake eigen:3 fortran USE_LDCONFIG= yes CMAKE_ARGS= -DBLAS_LIBRARIES:STRING=${LOCALBASE}/lib/libopenblas.so \ -DLAPACK_LIBRARIES:STRING=${LOCALBASE}/lib/libopenblas.so \ -DFREEBSD_STAGEDIR:STRING=${STAGEDIR} BB_ACCOUNT= fathomteam BB_PROJECT= ${PORTNAME} BB_COMMIT= 65880ffe833d WRKSRC= ${WRKDIR}/${BB_ACCOUNT}-${BB_PROJECT}-${BB_COMMIT} OPTIONS_DEFINE= MPI -OPTIONS_DEFAULT= #MPI +OPTIONS_DEFAULT= MPI OPTIONS_SUB= yes MPI_CMAKE_BOOL= ENABLE_MPI MPI_LIB_DEPENDS= libmpi.so:net/openmpi -MPI_BROKEN= Build fails, see https://bitbucket.org/fathomteam/moab/issues/158/531-fails-to-build-with-openmpi-undefined +MPI_LDFLAGS= -L${LOCALBASE}/mpi/openmpi/lib +MPI_VARS= CXX=${LOCALBASE}/mpi/openmpi/bin/mpic++ CC=${LOCALBASE}/mpi/openmpi/bin/mpicc +OPENMPI_VARS= CONFLICTS_BUILD=mpich # otherwise bin/hexmodops gets linked with libmpi.so:net/mpich +OPENMPI_VARS_OFF= USES=compiler:c++11-lang post-install: # docs are just readmes @${RM} -r ${STAGEDIR}${DOCSDIR} # examples are installed into a wrong location, maybe fix them later? @${RM} -r ${STAGEDIR}${PREFIX}/share/examples .include diff --git a/math/moab/files/patch-CMakeLists.txt b/math/moab/files/patch-CMakeLists.txt index 32dc03a0a7bc..0c92f1b054cc 100644 --- a/math/moab/files/patch-CMakeLists.txt +++ b/math/moab/files/patch-CMakeLists.txt @@ -1,43 +1,42 @@ - workaround for https://bitbucket.org/fathomteam/moab/issues/148/530-cmake-error-at-cmake_installcmake-68 --- CMakeLists.txt.orig 2021-11-12 00:54:52 UTC +++ CMakeLists.txt @@ -618,7 +618,7 @@ endif(CLANG_TIDY_EXE) CONFIGURE_FILE(config/MOABConfig.cmake.h.in "${PROJECT_BINARY_DIR}/src/moab/MOABConfig.h" @ONLY) CONFIGURE_FILE(config/MOABConfig.cmake.cmake "${PROJECT_BINARY_DIR}/MOABConfig.cmake" @ONLY) -CONFIGURE_FILE(moab.make.cmake "${PROJECT_BINARY_DIR}/lib/moab.make" @ONLY) +CONFIGURE_FILE(moab.make.cmake "lib/moab.make" @ONLY) if ( MOAB_HAVE_FBIGEOM ) CONFIGURE_FILE(itaps/fbigeom/FBiGeom-Defs.inc.in "${PROJECT_BINARY_DIR}/lib/FBiGeom-Defs.inc" @ONLY) install( -@@ -636,23 +636,24 @@ if ( MOAB_HAVE_IMESH ) +@@ -636,23 +636,23 @@ if ( MOAB_HAVE_IMESH ) endif ( MOAB_HAVE_IMESH ) INSTALL( FILES "${PROJECT_BINARY_DIR}/lib/moab.make" - DESTINATION ${CMAKE_INSTALL_LIBDIR} + DESTINATION lib ) -+message(STATUS "YURI DESTDIR=${FREEBSD_STAGEDIR}") INSTALL( CODE - "file(APPEND ${CMAKE_INSTALL_FULL_LIBDIR}/moab.make MOAB_LIBDIR=${CMAKE_INSTALL_FULL_LIBDIR}\\n )" + "file(APPEND ${FREEBSD_STAGEDIR}${CMAKE_INSTALL_FULL_LIBDIR}/moab.make MOAB_LIBDIR=${CMAKE_INSTALL_FULL_LIBDIR}\\n )" ) INSTALL( CODE - "file(APPEND ${CMAKE_INSTALL_FULL_LIBDIR}/moab.make MOAB_INCLUDES=-I${CMAKE_INSTALL_FULL_INCLUDEDIR}\\n )" + "file(APPEND ${FREEBSD_STAGEDIR}${CMAKE_INSTALL_FULL_LIBDIR}/moab.make MOAB_INCLUDES=-I${CMAKE_INSTALL_FULL_INCLUDEDIR}\\n )" ) INSTALL( FILES "${PROJECT_BINARY_DIR}/MOABConfig.cmake" - DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/MOAB/ + DESTINATION lib/cmake/MOAB/ ) INSTALL( FILES "${PROJECT_SOURCE_DIR}/config/ResolveCompilerPaths.cmake" - DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/MOAB + DESTINATION lib/cmake/MOAB ) ADD_CUSTOM_TARGET( diff --git a/math/moab/pkg-plist b/math/moab/pkg-plist index 820d40b77a4d..8b3bb286b66d 100644 --- a/math/moab/pkg-plist +++ b/math/moab/pkg-plist @@ -1,144 +1,145 @@ bin/hexmodops bin/mbconvert bin/mbdepth bin/mbgsets bin/mbhonodes bin/mbmem bin/mbmerge bin/mbquality bin/mbsize bin/mbskin bin/mbslavepart bin/mbsurfplot bin/mbtagprop bin/mbumr bin/spheredecomp -%%MPI%%include/Coupler.hpp -%%MPI%%include/ElemUtil.hpp include/MBCN.h include/MBCN_protos.h include/MBEntityType.h %%MPI%%include/MBParallelConventions.h include/MBTagConventions.hpp include/MBiMesh.hpp include/iBase.h include/iBase_f.h include/iMesh.h %%MPI%%include/iMeshP.h %%MPI%%include/iMeshP_f.h %%MPI%%include/iMeshP_protos.h include/iMesh_extensions.h include/iMesh_f.h include/iMesh_protos.h +%%MPI%%include/mbcoupler/Coupler.hpp +%%MPI%%include/mbcoupler/ElemUtil.hpp include/moab/AdaptiveKDTree.hpp include/moab/BSPTree.hpp include/moab/BSPTreePoly.hpp include/moab/BVHTree.hpp include/moab/BoundBox.hpp include/moab/CN.hpp include/moab/CartVect.hpp include/moab/Compiler.hpp include/moab/Core.hpp include/moab/CpuTimer.hpp include/moab/DiscreteGeometry/DGMSolver.hpp include/moab/DiscreteGeometry/HiReconstruction.hpp include/moab/DualTool.hpp include/moab/ElemEvaluator.hpp include/moab/EntityHandle.hpp include/moab/EntityType.hpp include/moab/Error.hpp include/moab/ErrorHandler.hpp include/moab/ExoIIInterface.hpp include/moab/FBEngine.hpp include/moab/FileOptions.hpp include/moab/FindPtFuncs.h include/moab/Forward.hpp include/moab/GeomQueryTool.hpp include/moab/GeomTopoTool.hpp include/moab/GeomUtil.hpp include/moab/HalfFacetRep.hpp include/moab/HigherOrderFactory.hpp include/moab/HomXform.hpp include/moab/Interface.hpp include/moab/IntxMesh/Intx2Mesh.hpp include/moab/IntxMesh/Intx2MeshInPlane.hpp include/moab/IntxMesh/Intx2MeshOnSphere.hpp include/moab/IntxMesh/IntxRllCssphere.hpp include/moab/IntxMesh/IntxUtils.hpp include/moab/LloydSmoother.hpp include/moab/LocalDiscretization/LinearHex.hpp include/moab/LocalDiscretization/LinearQuad.hpp include/moab/LocalDiscretization/LinearTet.hpp include/moab/LocalDiscretization/LinearTri.hpp include/moab/LocalDiscretization/QuadraticHex.hpp include/moab/MOABConfig.h include/moab/Matrix3.hpp include/moab/MergeMesh.hpp include/moab/MeshGeneration.hpp include/moab/MeshTopoUtil.hpp include/moab/NestedRefine.hpp include/moab/NestedRefineTemplates.hpp include/moab/OrientedBox.hpp include/moab/OrientedBoxTreeTool.hpp +%%MPI%%include/moab/ParCommGraph.hpp %%MPI%%include/moab/ParallelComm.hpp %%MPI%%include/moab/ParallelData.hpp %%MPI%%include/moab/ParallelMergeMesh.hpp include/moab/PartitionerBase.hpp %%MPI%%include/moab/ProcConfig.hpp include/moab/ProgOptions.hpp include/moab/Range.hpp include/moab/RangeMap.hpp include/moab/ReadUtilIface.hpp include/moab/ReaderIface.hpp include/moab/ReaderWriterSet.hpp include/moab/ReorderTool.hpp include/moab/ScdInterface.hpp include/moab/SetIterator.hpp include/moab/Skinner.hpp include/moab/SpatialLocator.hpp include/moab/SpatialLocatorTimes.hpp include/moab/SpectralMeshTool.hpp include/moab/Tree.hpp include/moab/TreeStats.hpp include/moab/TupleList.hpp include/moab/Types.hpp include/moab/UnknownInterface.hpp include/moab/Util.hpp include/moab/VtkUtil.hpp include/moab/WriteUtilIface.hpp include/moab/WriterIface.hpp %%MPI%%include/moab/gs.hpp include/moab/iMOAB.h include/moab/imoab_protos.h include/moab/mhdf_public.h include/moab/point_locater/element_maps/linear_hex_map.hpp include/moab/point_locater/element_maps/linear_tet_map.hpp include/moab/point_locater/element_maps/quadratic_hex_map.hpp include/moab/point_locater/element_maps/spectral_hex_map.hpp include/moab/point_locater/io.hpp include/moab/point_locater/parametrizer.hpp include/moab/point_locater/point_locater.hpp include/moab/point_locater/tree/bvh_tree.hpp include/moab/point_locater/tree/common_tree.hpp include/moab/point_locater/tree/element_tree.hpp include/moab/verdict.h include/moab/verdict/VerdictWrapper.hpp include/moab/win32_config.h include/moab_export.h %%MPI%%include/moab_mpi.h %%MPI%%include/moab_mpi_config.h lib/cmake/MOAB/MOABConfig.cmake lib/cmake/MOAB/MOABTargets-%%CMAKE_BUILD_TYPE%%.cmake lib/cmake/MOAB/MOABTargets.cmake lib/cmake/MOAB/ResolveCompilerPaths.cmake lib/iMesh-Defs.inc lib/libMOAB.so lib/libMOAB.so.5 lib/libMOAB.so.5.3.1 lib/libiMesh.so lib/libiMesh.so.5 lib/libiMesh.so.5.3.1 %%MPI%%lib/libmbcoupler.so lib/moab.make libdata/pkgconfig/MOAB.pc share/man/man1/mbconvert.1.gz