From 09b85e3d919780d3a640647a2fe89ce188de0e05 Mon Sep 17 00:00:00 2001 From: Yuri Victorovich Date: Mon, 5 Nov 2018 02:13:10 +0000 Subject: [PATCH] New port: math/moab: Component for representing and evaluating mesh data --- math/Makefile | 1 + math/moab/Makefile | 26 ++++ math/moab/distinfo | 3 + math/moab/files/patch-configure.ac | 12 ++ math/moab/files/patch-src_io_NCHelper.cpp | 11 ++ math/moab/files/patch-src_io_ReadABAQUS.cpp | 11 ++ math/moab/files/patch-src_io_WriteNCDF.cpp | 13 ++ math/moab/pkg-descr | 15 +++ math/moab/pkg-plist | 134 ++++++++++++++++++++ 9 files changed, 226 insertions(+) create mode 100644 math/moab/Makefile create mode 100644 math/moab/distinfo create mode 100644 math/moab/files/patch-configure.ac create mode 100644 math/moab/files/patch-src_io_NCHelper.cpp create mode 100644 math/moab/files/patch-src_io_ReadABAQUS.cpp create mode 100644 math/moab/files/patch-src_io_WriteNCDF.cpp create mode 100644 math/moab/pkg-descr create mode 100644 math/moab/pkg-plist diff --git a/math/Makefile b/math/Makefile index aa0c72ac8e60..351573594dc5 100644 --- a/math/Makefile +++ b/math/Makefile @@ -353,6 +353,7 @@ SUBDIR += miracl SUBDIR += mkl-dnn SUBDIR += mlpack + SUBDIR += moab SUBDIR += moo SUBDIR += mosesdecoder SUBDIR += mpc diff --git a/math/moab/Makefile b/math/moab/Makefile new file mode 100644 index 000000000000..fe36c191b46e --- /dev/null +++ b/math/moab/Makefile @@ -0,0 +1,26 @@ +# $FreeBSD$ + +PORTNAME= moab +DISTVERSION= 4.6.3 +CATEGORIES= math +MASTER_SITES= http://ftp.mcs.anl.gov/pub/fathom/ + +MAINTAINER= yuri@FreeBSD.org +COMMENT= Component for representing and evaluating mesh data + +LICENSE= BSD2CLAUSE +xLICENSE_FILE= ${WRKSRC}/LICENSE.txt + +LIB_DEPENDS= libhdf5.so:science/hdf5 \ + libnetcdf.so:science/netcdf + +USES= autoreconf gmake libtool localbase:ldflags +GNU_CONFIGURE= yes +CONFIGURE_ARGS= --disable-static --with-netcdf=${LOCALBASE} +USE_LDCONFIG= yes + +OPTIONS_DEFINE= DOCS + +PORTDOCS= * + +.include diff --git a/math/moab/distinfo b/math/moab/distinfo new file mode 100644 index 000000000000..e6b9701ae78d --- /dev/null +++ b/math/moab/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1541374760 +SHA256 (moab-4.6.3.tar.gz) = a25933254a05013811d3769e5d96b01cc7b5d67026acacbaae4f3568ce18fd7f +SIZE (moab-4.6.3.tar.gz) = 21861257 diff --git a/math/moab/files/patch-configure.ac b/math/moab/files/patch-configure.ac new file mode 100644 index 000000000000..6d6a7718c8fe --- /dev/null +++ b/math/moab/files/patch-configure.ac @@ -0,0 +1,12 @@ +--- configure.ac.orig 2018-11-05 00:30:52 UTC ++++ configure.ac +@@ -31,7 +31,8 @@ LIBS="$LIBS -lm" + + AC_PROG_LN_S + AC_PROG_MAKE_SET +-AC_DISABLE_SHARED ++AC_ENABLE_SHARED ++AC_DISABLE_STATIC + AC_PROG_LIBTOOL + FATHOM_COMPILER_FLAGS + m4_ifdef([AM_SILENT_RULES],[ diff --git a/math/moab/files/patch-src_io_NCHelper.cpp b/math/moab/files/patch-src_io_NCHelper.cpp new file mode 100644 index 000000000000..1a00dedf38c6 --- /dev/null +++ b/math/moab/files/patch-src_io_NCHelper.cpp @@ -0,0 +1,11 @@ +--- src/io/NCHelper.cpp.orig 2018-11-05 01:48:41 UTC ++++ src/io/NCHelper.cpp +@@ -714,7 +714,7 @@ ErrorCode NCHelper::get_tag_to_set(ReadN + rval = mbImpl->tag_get_handle(tag_name.str().c_str(), 0, MB_TYPE_INTEGER, tagh, MB_TAG_CREAT | MB_TAG_SPARSE | MB_TAG_VARLEN); + break; + default: +- std::cerr << "Unrecognized data type for tag " << tag_name << std::endl; ++ std::cerr << "Unrecognized data type for tag " << tag_name.str() << std::endl; + rval = MB_FAILURE; + } + diff --git a/math/moab/files/patch-src_io_ReadABAQUS.cpp b/math/moab/files/patch-src_io_ReadABAQUS.cpp new file mode 100644 index 000000000000..335fd11e5769 --- /dev/null +++ b/math/moab/files/patch-src_io_ReadABAQUS.cpp @@ -0,0 +1,11 @@ +--- src/io/ReadABAQUS.cpp.orig 2018-11-04 23:41:08 UTC ++++ src/io/ReadABAQUS.cpp +@@ -105,7 +105,7 @@ void ReadABAQUS::reset() + ReadABAQUS::~ReadABAQUS() + { + mdbImpl->release_interface(readMeshIface); +- if (NULL != abFile) ++ if (abFile.is_open()) + abFile.close(); + } + diff --git a/math/moab/files/patch-src_io_WriteNCDF.cpp b/math/moab/files/patch-src_io_WriteNCDF.cpp new file mode 100644 index 000000000000..36e804036893 --- /dev/null +++ b/math/moab/files/patch-src_io_WriteNCDF.cpp @@ -0,0 +1,13 @@ +--- src/io/WriteNCDF.cpp.orig 2018-11-05 01:47:40 UTC ++++ src/io/WriteNCDF.cpp +@@ -154,8 +154,8 @@ void WriteNCDF::time_and_date(char* time + strftime(date_string, TIME_STR_LEN, "%m/%d/%Y", local_time); + + // terminate with NULL character +- time_string[10] = (char)NULL; +- date_string[10] = (char)NULL; ++ time_string[10] = (char)0; ++ date_string[10] = (char)0; + } + + ErrorCode WriteNCDF::write_file(const char *exodus_file_name, diff --git a/math/moab/pkg-descr b/math/moab/pkg-descr new file mode 100644 index 000000000000..4b44baa85061 --- /dev/null +++ b/math/moab/pkg-descr @@ -0,0 +1,15 @@ +The Mesh-Oriented datABase (MOAB) is a component for representing and evaluating +mesh data. MOAB can store structured and unstructured mesh, consisting of +elements in the finite element zoo plus polygons and polyhedra. The functional +interface to MOAB is simple yet powerful, allowing the representation of many +types of metadata commonly found on the mesh. MOAB is optimized for efficiency +in space and time, based on access to mesh in chunks rather than through +individual entities, while also versatile enough to support individual entity +access. The MOAB library can naturally represent finite element and other types +of mesh data. Various types of meta-data are often used in conjunction with +a mesh. Examples include boundary condition groupings, material types, and +provenance information for the mesh. Because the data model used in MOAB is so +abstract, conventions are useful for describing how meta-data is stored into +that data model. + +WWW: http://sigma.mcs.anl.gov/moab-library/ diff --git a/math/moab/pkg-plist b/math/moab/pkg-plist new file mode 100644 index 000000000000..7a07eb78fa11 --- /dev/null +++ b/math/moab/pkg-plist @@ -0,0 +1,134 @@ +bin/dagmc_preproc +bin/h5minfo +bin/h5mvalidate +bin/hexmodops +bin/mbconvert +bin/mbdepth +bin/mbgsets +bin/mbmem +bin/mbsize +bin/mbskin +bin/mbsurfplot +bin/mbtagprop +bin/spheredecomp +include/DagMC.hpp +include/MBAdaptiveKDTree.hpp +include/MBBSPTree.hpp +include/MBBSPTreePoly.hpp +include/MBCN.h +include/MBCN.hpp +include/MBCN_protos.h +include/MBCartVect.hpp +include/MBCore.hpp +include/MBEntityHandle.h +include/MBEntityType.h +include/MBForward.hpp +include/MBGeomUtil.hpp +include/MBInterface.hpp +include/MBOrientedBoxTreeTool.hpp +include/MBParallelComm.hpp +include/MBParallelData.hpp +include/MBProcConfig.hpp +include/MBRange.hpp +include/MBReadUtilIface.hpp +include/MBReaderIface.hpp +include/MBReaderWriterSet.hpp +include/MBSkinner.hpp +include/MBTagConventions.hpp +include/MBTypes.h +include/MBUnknownInterface.hpp +include/MBUtil.hpp +include/MBVersion.h +include/MBWriteUtilIface.hpp +include/MBWriterIface.hpp +include/MBiMesh.hpp +include/MBmpi.h +include/MOAB_FCDefs.h +include/iBase.h +include/iBase_f.h +include/iMesh.h +include/iMesh_extensions.h +include/iMesh_extensions_protos.h +include/iMesh_f.h +include/iMesh_protos.h +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/DualTool.hpp +include/moab/ElemEvaluator.hpp +include/moab/EntityHandle.hpp +include/moab/EntityType.hpp +include/moab/Error.hpp +include/moab/ExoIIInterface.hpp +include/moab/FBEngine.hpp +include/moab/FileOptions.hpp +include/moab/FindPtFuncs.h +include/moab/Forward.hpp +include/moab/GeomTopoTool.hpp +include/moab/GeomUtil.hpp +include/moab/HigherOrderFactory.hpp +include/moab/HomXform.hpp +include/moab/Interface.hpp +include/moab/LinearHex.hpp +include/moab/LinearQuad.hpp +include/moab/LinearTet.hpp +include/moab/LinearTri.hpp +include/moab/LloydSmoother.hpp +include/moab/Matrix3.hpp +include/moab/MergeMesh.hpp +include/moab/MeshTopoUtil.hpp +include/moab/OrientedBoxTreeTool.hpp +include/moab/ProgOptions.hpp +include/moab/QuadraticHex.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/Version.h +include/moab/WriteUtilIface.hpp +include/moab/WriterIface.hpp +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 +lib/MOABConfig.cmake +lib/iMesh-Defs.inc +lib/libMOAB.so +lib/libMOAB.so.0 +lib/libMOAB.so.0.0.0 +lib/libdagmc.so +lib/libdagmc.so.0 +lib/libdagmc.so.0.0.0 +lib/libiMesh.so +lib/libiMesh.so.0 +lib/libiMesh.so.0.0.0 +lib/moab.config +lib/moab.make +man/man1/mbconvert.1.gz