Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 11 Oct 2021 03:56:35 GMT
From:      Yuri Victorovich <yuri@FreeBSD.org>
To:        ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org
Subject:   git: eb26b25084ca - main - science/openmc: New port: Monte Carlo neutron and photon transport simulation code
Message-ID:  <202110110356.19B3uZCk083661@gitrepo.freebsd.org>

next in thread | raw e-mail | index | archive | help
The branch main has been updated by yuri:

URL: https://cgit.FreeBSD.org/ports/commit/?id=eb26b25084ca81ec7a3df633d635337b881cf7a0

commit eb26b25084ca81ec7a3df633d635337b881cf7a0
Author:     Yuri Victorovich <yuri@FreeBSD.org>
AuthorDate: 2021-10-11 03:56:01 +0000
Commit:     Yuri Victorovich <yuri@FreeBSD.org>
CommitDate: 2021-10-11 03:56:33 +0000

    science/openmc: New port: Monte Carlo neutron and photon transport simulation code
---
 science/Makefile                          |   1 +
 science/openmc/Makefile                   |  43 ++++++++++
 science/openmc/distinfo                   |   5 ++
 science/openmc/files/patch-CMakeLists.txt |  28 ++++++
 science/openmc/pkg-descr                  |  10 +++
 science/openmc/pkg-plist                  | 138 ++++++++++++++++++++++++++++++
 6 files changed, 225 insertions(+)

diff --git a/science/Makefile b/science/Makefile
index b1371a5909d0..421d2e26b93e 100644
--- a/science/Makefile
+++ b/science/Makefile
@@ -178,6 +178,7 @@
     SUBDIR += openems
     SUBDIR += openkim
     SUBDIR += openkim-models
+    SUBDIR += openmc
     SUBDIR += openmx
     SUBDIR += opensim-core
     SUBDIR += opensph
diff --git a/science/openmc/Makefile b/science/openmc/Makefile
new file mode 100644
index 000000000000..178c65250c23
--- /dev/null
+++ b/science/openmc/Makefile
@@ -0,0 +1,43 @@
+PORTNAME=	openmc
+DISTVERSIONPREFIX=	v
+DISTVERSION=	0.12.2
+CATEGORIES=	science
+
+MAINTAINER=	yuri@FreeBSD.org
+COMMENT=	Monte Carlo neutron and photon transport simulation code
+
+LICENSE=	MIT
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+BUILD_DEPENDS=	xtensor>0:math/xtensor
+LIB_DEPENDS=	libfmt.so:devel/libfmt \
+		libhdf5.so:science/hdf5 \
+		libpugixml.so:textproc/pugixml \
+		libsz.so:science/szip
+
+USES=		cmake:noninja eigen:3 pkgconfig
+
+USE_GITHUB=	yes
+GH_ACCOUNT=	${PORTNAME}-dev
+GH_TUPLE=	martinmoene:gsl-lite:913e86d:gsl_lite/vendor/gsl-lite
+
+BINARY_ALIAS=	git=false
+
+OPTIONS_DEFINE=		LIBMESH MPI OPENMP
+OPTIONS_DEFAULT=	MPI OPENMP
+
+LIBMESH_DESC=		Support for libMesh unstructured mesh tallies
+LIBMESH_CMAKE_BOOL=	libmesh
+LIBMESH_LIB_DEPENDS=	libmesh_opt.so:math/libmesh
+LIBMESH_BROKEN=		https://github.com/openmc-dev/openmc/issues/1893
+
+MPI_VARS=		CXX=${LOCALBASE}/mpi/openmpi/bin/mpic++
+MPI_BUILD_DEPENDS=	openmpi>0:net/openmpi
+MPI_RUN_DEPENDS=	openmpi>0:net/openmpi
+
+OPENMP_CMAKE_BOOL=	openmp
+
+post-install:
+	${RM} -r ${STAGEDIR}${DOCSDIR}
+
+.include <bsd.port.mk>
diff --git a/science/openmc/distinfo b/science/openmc/distinfo
new file mode 100644
index 000000000000..cfecd2e87c2b
--- /dev/null
+++ b/science/openmc/distinfo
@@ -0,0 +1,5 @@
+TIMESTAMP = 1633803853
+SHA256 (openmc-dev-openmc-v0.12.2_GH0.tar.gz) = 29ca66d0e7140357d747516807c91cbf1aace0ebc29dfe9650e9da3c2975dd94
+SIZE (openmc-dev-openmc-v0.12.2_GH0.tar.gz) = 8316985
+SHA256 (martinmoene-gsl-lite-913e86d_GH0.tar.gz) = 53f4ad67e182d58161ec297593af4139ccb2a8fd712ba9cd77d129b6f87c6b3b
+SIZE (martinmoene-gsl-lite-913e86d_GH0.tar.gz) = 105966
diff --git a/science/openmc/files/patch-CMakeLists.txt b/science/openmc/files/patch-CMakeLists.txt
new file mode 100644
index 000000000000..039d87adf5a2
--- /dev/null
+++ b/science/openmc/files/patch-CMakeLists.txt
@@ -0,0 +1,28 @@
+- workaround for https://github.com/openmc-dev/openmc/issues/1891
+- fix xtl,xtensor dependencies
+
+--- CMakeLists.txt.orig	2021-06-14 14:22:01 UTC
++++ CMakeLists.txt
+@@ -174,7 +174,7 @@ if(GIT_FOUND AND EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/.
+ endif()
+ 
+ # Check to see if submodules exist (by checking one)
+-if(NOT EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/vendor/pugixml/CMakeLists.txt")
++if(FALSE AND NOT EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/vendor/pugixml/CMakeLists.txt")
+   message(FATAL_ERROR "The git submodules were not downloaded! GIT_SUBMODULE was \
+     turned off or failed. Please update submodules and try again.")
+ endif()
+@@ -206,9 +206,10 @@ if (NOT (CMAKE_VERSION VERSION_LESS 3.13))
+   cmake_policy(SET CMP0079 NEW)
+ endif()
+ 
+-add_subdirectory(vendor/xtl)
+-set(xtl_DIR ${CMAKE_CURRENT_BINARY_DIR}/vendor/xtl)
+-add_subdirectory(vendor/xtensor)
++#add_subdirectory(vendor/xtl)
++#set(xtl_DIR ${CMAKE_CURRENT_BINARY_DIR}/vendor/xtl)
++#add_subdirectory(vendor/xtensor)
++find_package(xtensor REQUIRED)
+ 
+ #===============================================================================
+ # GSL header-only library
diff --git a/science/openmc/pkg-descr b/science/openmc/pkg-descr
new file mode 100644
index 000000000000..5f83fbdea530
--- /dev/null
+++ b/science/openmc/pkg-descr
@@ -0,0 +1,10 @@
+OpenMC is a community-developed Monte Carlo neutron and photon transport
+simulation code. It is capable of performing fixed source, k-eigenvalue, and
+subcritical multiplication calculations on models built using either a
+constructive solid geometry or CAD representation. OpenMC supports both
+continuous-energy and multigroup transport. The continuous-energy particle
+interaction data is based on a native HDF5 format that can be generated from
+ACE files produced by NJOY. Parallelism is enabled via a hybrid MPI and OpenMP
+programming model.
+
+WWW: https://openmc.org/
diff --git a/science/openmc/pkg-plist b/science/openmc/pkg-plist
new file mode 100644
index 000000000000..58e11ae2a3d2
--- /dev/null
+++ b/science/openmc/pkg-plist
@@ -0,0 +1,138 @@
+bin/openmc
+include/faddeeva/Faddeeva.cc
+include/faddeeva/Faddeeva.hh
+include/gsl-lite/gsl-lite.hpp
+include/gsl/gsl
+include/gsl/gsl-lite.hpp
+include/openmc/angle_energy.h
+include/openmc/array.h
+include/openmc/bank.h
+include/openmc/boundary_condition.h
+include/openmc/bremsstrahlung.h
+include/openmc/capi.h
+include/openmc/cell.h
+include/openmc/cmfd_solver.h
+include/openmc/constants.h
+include/openmc/container_util.h
+include/openmc/cross_sections.h
+include/openmc/dagmc.h
+include/openmc/distribution.h
+include/openmc/distribution_angle.h
+include/openmc/distribution_energy.h
+include/openmc/distribution_multi.h
+include/openmc/distribution_spatial.h
+include/openmc/eigenvalue.h
+include/openmc/endf.h
+include/openmc/error.h
+include/openmc/event.h
+include/openmc/file_utils.h
+include/openmc/finalize.h
+include/openmc/geometry.h
+include/openmc/geometry_aux.h
+include/openmc/hdf5_interface.h
+include/openmc/initialize.h
+include/openmc/lattice.h
+include/openmc/material.h
+include/openmc/math_functions.h
+include/openmc/memory.h
+include/openmc/mesh.h
+include/openmc/message_passing.h
+include/openmc/mgxs.h
+include/openmc/mgxs_interface.h
+include/openmc/neighbor_list.h
+include/openmc/nuclide.h
+include/openmc/openmp_interface.h
+include/openmc/output.h
+include/openmc/particle.h
+include/openmc/particle_data.h
+include/openmc/particle_restart.h
+include/openmc/photon.h
+include/openmc/physics.h
+include/openmc/physics_common.h
+include/openmc/physics_mg.h
+include/openmc/plot.h
+include/openmc/position.h
+include/openmc/progress_bar.h
+include/openmc/random_dist.h
+include/openmc/random_lcg.h
+include/openmc/reaction.h
+include/openmc/reaction_product.h
+include/openmc/scattdata.h
+include/openmc/search.h
+include/openmc/secondary_correlated.h
+include/openmc/secondary_kalbach.h
+include/openmc/secondary_nbody.h
+include/openmc/secondary_thermal.h
+include/openmc/secondary_uncorrelated.h
+include/openmc/settings.h
+include/openmc/shared_array.h
+include/openmc/simulation.h
+include/openmc/source.h
+include/openmc/state_point.h
+include/openmc/string_utils.h
+include/openmc/summary.h
+include/openmc/surface.h
+include/openmc/tallies/derivative.h
+include/openmc/tallies/filter.h
+include/openmc/tallies/filter_azimuthal.h
+include/openmc/tallies/filter_cell.h
+include/openmc/tallies/filter_cell_instance.h
+include/openmc/tallies/filter_cellborn.h
+include/openmc/tallies/filter_cellfrom.h
+include/openmc/tallies/filter_collision.h
+include/openmc/tallies/filter_delayedgroup.h
+include/openmc/tallies/filter_distribcell.h
+include/openmc/tallies/filter_energy.h
+include/openmc/tallies/filter_energyfunc.h
+include/openmc/tallies/filter_legendre.h
+include/openmc/tallies/filter_match.h
+include/openmc/tallies/filter_material.h
+include/openmc/tallies/filter_mesh.h
+include/openmc/tallies/filter_meshsurface.h
+include/openmc/tallies/filter_mu.h
+include/openmc/tallies/filter_particle.h
+include/openmc/tallies/filter_polar.h
+include/openmc/tallies/filter_sph_harm.h
+include/openmc/tallies/filter_sptl_legendre.h
+include/openmc/tallies/filter_surface.h
+include/openmc/tallies/filter_universe.h
+include/openmc/tallies/filter_zernike.h
+include/openmc/tallies/tally.h
+include/openmc/tallies/tally_scoring.h
+include/openmc/tallies/trigger.h
+include/openmc/thermal.h
+include/openmc/timer.h
+include/openmc/track_output.h
+include/openmc/urr.h
+include/openmc/vector.h
+include/openmc/version.h
+include/openmc/version.h.in
+include/openmc/volume_calc.h
+include/openmc/wmp.h
+include/openmc/xml_interface.h
+include/openmc/xsdata.h
+lib/cmake/OpenMC/OpenMCConfig.cmake
+lib/cmake/OpenMC/OpenMCConfigVersion.cmake
+lib/cmake/OpenMC/OpenMCTargets-%%CMAKE_BUILD_TYPE%%.cmake
+lib/cmake/OpenMC/OpenMCTargets.cmake
+lib/cmake/gsl-lite/gsl-lite-config-version.cmake
+lib/cmake/gsl-lite/gsl-lite-config.cmake
+lib/cmake/gsl-lite/gsl-lite-targets.cmake
+lib/libfaddeeva.a
+lib/libopenmc.so
+man/man1/openmc.1.gz
+%%DATADIR%%/relaxng/cross_sections.rnc
+%%DATADIR%%/relaxng/cross_sections.rng
+%%DATADIR%%/relaxng/geometry.rnc
+%%DATADIR%%/relaxng/geometry.rng
+%%DATADIR%%/relaxng/materials.rnc
+%%DATADIR%%/relaxng/materials.rng
+%%DATADIR%%/relaxng/mg_cross_sections.rnc
+%%DATADIR%%/relaxng/mg_cross_sections.rng
+%%DATADIR%%/relaxng/plots.rnc
+%%DATADIR%%/relaxng/plots.rng
+%%DATADIR%%/relaxng/readme.rst
+%%DATADIR%%/relaxng/settings.rnc
+%%DATADIR%%/relaxng/settings.rng
+%%DATADIR%%/relaxng/tallies.rnc
+%%DATADIR%%/relaxng/tallies.rng



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202110110356.19B3uZCk083661>