Skip to content

Commit

Permalink
science/geant4: update to 11.1.0
Browse files Browse the repository at this point in the history
PR:		268993
Reported by:	erik@tenku.dk (maintainer)
  • Loading branch information
Erik Jensen authored and fernape committed Apr 5, 2023
1 parent e933541 commit c766dfa
Show file tree
Hide file tree
Showing 4 changed files with 57,230 additions and 50,934 deletions.
109 changes: 64 additions & 45 deletions science/geant4/Makefile
@@ -1,21 +1,11 @@
PORTNAME= geant4
DISTVERSION= 11.0.3
CATEGORIES= science parallel python devel cad
# Supplementary data files for Geant4 fetched from MASTER_SITES:n with "n"= "data" - Geant4 itself is fetched from GL_SITE defined further down
MASTER_SITES= https://cern.ch/geant4-data/datasets/:data
# Names of supplementary data files for Geant4 defined in DISTFILES:n with "n"= "data"
DISTFILES+= G4ABLA.3.1.tar.gz:data \
G4EMLOW.8.0.tar.gz:data \
G4ENSDFSTATE.2.3.tar.gz:data \
G4INCL.1.0.tar.gz:data \
G4NDL.4.6.tar.gz:data \
G4PARTICLEXS.4.0.tar.gz:data \
G4PhotonEvaporation.5.7.tar.gz:data \
G4PII.1.3.tar.gz:data \
G4RadioactiveDecay.5.6.tar.gz:data \
G4RealSurface.2.2.tar.gz:data \
G4SAIDDATA.2.0.tar.gz:data
DIST_SUBDIR= ${PORTNAME}-${DISTVERSION}
PORTNAME= geant4
DISTVERSIONPREFIX= v
DISTVERSION= 11.1.0
CATEGORIES= science parallel devel cad
MASTER_SITES= https://cern.ch/geant4-data/releases/ \
https://cern.ch/geant4-data/datasets/:data
DISTFILES= ${PORTNAME}-${DISTVERSIONPREFIX}${DISTVERSION}${EXTRACT_SUFX}
DIST_SUBDIR= ${PORTNAME} # dataset versions generally span several release versions

MAINTAINER= erik@tenku.dk
COMMENT= Simulate the passage of particles through matter
Expand All @@ -26,54 +16,83 @@ LICENSE_NAME= Geant4 Software License
LICENSE_FILE= ${WRKSRC}/LICENSE
LICENSE_PERMS= dist-mirror pkg-mirror auto-accept

BUILD_DEPENDS= git:devel/git
LIB_DEPENDS= libexpat.so:textproc/expat2 \
LIB_DEPENDS= libCLHEP.so:science/clhep \
libexpat.so:textproc/expat2 \
libfontconfig.so:x11-fonts/fontconfig \
libfreetype.so:print/freetype2 \
libpng.so:graphics/png \
libxcb-icccm.so:x11/xcb-util-wm \
libxcb-util.so:x11/xcb-util \
libptl.so:devel/ptl \
libtbb.so:devel/onetbb \
libxerces-c.so:textproc/xerces-c3 \
libxkbcommon.so:x11/libxkbcommon \
${PY_BOOST}
libxkbcommon.so:x11/libxkbcommon

USES= cmake \
compiler:c++17-lang \
gl \
motif \
python:3.9+ \
qt:5 \
xorg
CMAKE_ON= GEANT4_BUILD_MULTITHREADED \
GEANT4_USE_GDML \
GEANT4_USE_OPENGL_X11 \
GEANT4_USE_PYTHON \
GEANT4_USE_RAYTRACER_X11 \
GEANT4_USE_XM \
GEANT4_USE_FREETYPE
USE_GITLAB= yes
GL_SITE= https://gitlab.cern.ch/
GL_COMMIT= 3136fa97238bf2b24eba982206fb72b32b898d96
USE_GL= egl gl glu opengl
USE_LDCONFIG= yes
USE_QT= 3d buildtools core gui network \
opengl printsupport qmake widgets
USE_XORG= ice sm x11 xau xaw xcb xcomposite \
xcursor xdamage xdmcp xext xfixes \
xfont xfont2 xft xi xinerama \
xkbfile xmu xpm xrandr xrender \
xres xscrnsaver xt xtst xv xxf86vm

CONFIGURE_WRKSRC?= ${WRKDIR}/.build
STAGEDIR?= ${WRKDIR}/stage
CMAKE_ARGS+= -DGEANT4_BUILD_TLS_MODEL=global-dynamic
CMAKE_ON= GEANT4_BUILD_MULTITHREADED \
GEANT4_USE_SYSTEM_CLHEP \
GEANT4_USE_SYSTEM_PTL \
GEANT4_USE_SYSTEM_ZLIB \
GEANT4_USE_FREETYPE \
GEANT4_USE_GDML \
GEANT4_USE_OPENGL_X11 \
GEANT4_USE_QT \
GEANT4_USE_RAYTRACER_X11 \
GEANT4_USE_TBB \
GEANT4_USE_XM

G4ABLA_VERSION= 3.1
G4EMLOW_VERSION= 8.2
G4ENSDFSTATE_VERSION= 2.3
G4INCL_VERSION= 1.0
G4NDL_VERSION= 4.7
G4PARTICLEXS_VERSION= 4.0
G4PhotonEvaporation_VERSION= 5.7
G4PII_VERSION= 1.3
G4RadioactiveDecay_VERSION= 5.6
G4RealSurface_VERSION= 2.2
G4SAIDDATA_VERSION= 2.0
G4TENDL_VERSION= 1.4
G4_DATASETS= G4ABLA.${G4ABLA_VERSION} G4EMLOW.${G4EMLOW_VERSION} G4ENSDFSTATE.${G4ENSDFSTATE_VERSION} G4INCL.${G4INCL_VERSION} \
G4NDL.${G4NDL_VERSION} G4PARTICLEXS.${G4PARTICLEXS_VERSION} G4PhotonEvaporation.${G4PhotonEvaporation_VERSION} G4PII.${G4PII_VERSION} \
G4RadioactiveDecay.${G4RadioactiveDecay_VERSION} G4RealSurface.${G4RealSurface_VERSION} G4SAIDDATA.${G4SAIDDATA_VERSION} G4TENDL.${G4TENDL_VERSION}
.for dataset in ${G4_DATASETS}
DISTFILES+= ${dataset}${EXTRACT_SUFX}:data
.endfor

PLIST_SUB+= G4ABLA_VERSION="${G4ABLA_VERSION}" \
G4EMLOW_VERSION="${G4EMLOW_VERSION}" \
G4ENSDFSTATE_VERSION="${G4ENSDFSTATE_VERSION}" \
G4INCL_VERSION="${G4INCL_VERSION}" \
G4NDL_VERSION="${G4NDL_VERSION}" \
G4PARTICLEXS_VERSION="${G4PARTICLEXS_VERSION}" \
G4PhotonEvaporation_VERSION="${G4PhotonEvaporation_VERSION}" \
G4PII_VERSION="${G4PII_VERSION}" \
G4RadioactiveDecay_VERSION="${G4RadioactiveDecay_VERSION}" \
G4RealSurface_VERSION="${G4RealSurface_VERSION}" \
G4SAIDDATA_VERSION="${G4SAIDDATA_VERSION}" \
G4TENDL_VERSION="${G4TENDL_VERSION}" \
SHLIB_VER="${DISTVERSION}"

G4_DATADIRS= G4ABLA3.1 G4EMLOW8.0 G4ENSDFSTATE2.3 \
G4INCL1.0 G4NDL4.6 G4PARTICLEXS4.0 \
G4PII1.3 G4SAIDDATA2.0 \
PhotonEvaporation5.7 \
RadioactiveDecay5.6 RealSurface2.2
G4_DATADIRS= G4ABLA${G4ABLA_VERSION} G4EMLOW${G4EMLOW_VERSION} G4ENSDFSTATE${G4ENSDFSTATE_VERSION} G4INCL${G4INCL_VERSION} \
G4NDL${G4NDL_VERSION} G4PARTICLEXS${G4PARTICLEXS_VERSION} PhotonEvaporation${G4PhotonEvaporation_VERSION} G4PII${G4PII_VERSION} \
RadioactiveDecay${G4RadioactiveDecay_VERSION} RealSurface${G4RealSurface_VERSION} G4SAIDDATA${G4SAIDDATA_VERSION} G4TENDL${G4TENDL_VERSION}

post-install:
.for dir in ${G4_DATADIRS}
cd ${WRKDIR} && ${COPYTREE_SHARE} ${dir} ${STAGEDIR}${PREFIX}/share/Geant4-${DISTVERSION}/data/
cd ${WRKDIR} && ${COPYTREE_SHARE} ${dir} ${STAGEDIR}${PREFIX}/share/Geant4/data/
.endfor

.include <bsd.port.mk>
52 changes: 27 additions & 25 deletions science/geant4/distinfo
@@ -1,25 +1,27 @@
TIMESTAMP = 1672014081
SHA256 (geant4-11.0.3/G4ABLA.3.1.tar.gz) = 7698b052b58bf1b9886beacdbd6af607adc1e099fc730ab6b21cf7f090c027ed
SIZE (geant4-11.0.3/G4ABLA.3.1.tar.gz) = 107286
SHA256 (geant4-11.0.3/G4EMLOW.8.0.tar.gz) = d919a8e5838688257b9248a613910eb2a7633059e030c8b50c0a2c2ad9fd2b3b
SIZE (geant4-11.0.3/G4EMLOW.8.0.tar.gz) = 326834565
SHA256 (geant4-11.0.3/G4ENSDFSTATE.2.3.tar.gz) = 9444c5e0820791abd3ccaace105b0e47790fadce286e11149834e79c4a8e9203
SIZE (geant4-11.0.3/G4ENSDFSTATE.2.3.tar.gz) = 290745
SHA256 (geant4-11.0.3/G4INCL.1.0.tar.gz) = 716161821ae9f3d0565fbf3c2cf34f4e02e3e519eb419a82236eef22c2c4367d
SIZE (geant4-11.0.3/G4INCL.1.0.tar.gz) = 95840
SHA256 (geant4-11.0.3/G4NDL.4.6.tar.gz) = 9d287cf2ae0fb887a2adce801ee74fb9be21b0d166dab49bcbee9408a5145408
SIZE (geant4-11.0.3/G4NDL.4.6.tar.gz) = 599862135
SHA256 (geant4-11.0.3/G4PARTICLEXS.4.0.tar.gz) = 9381039703c3f2b0fd36ab4999362a2c8b4ff9080c322f90b4e319281133ca95
SIZE (geant4-11.0.3/G4PARTICLEXS.4.0.tar.gz) = 12242648
SHA256 (geant4-11.0.3/G4PhotonEvaporation.5.7.tar.gz) = 761e42e56ffdde3d9839f9f9d8102607c6b4c0329151ee518206f4ee9e77e7e5
SIZE (geant4-11.0.3/G4PhotonEvaporation.5.7.tar.gz) = 10089240
SHA256 (geant4-11.0.3/G4PII.1.3.tar.gz) = 6225ad902675f4381c98c6ba25fc5a06ce87549aa979634d3d03491d6616e926
SIZE (geant4-11.0.3/G4PII.1.3.tar.gz) = 4293607
SHA256 (geant4-11.0.3/G4RadioactiveDecay.5.6.tar.gz) = 3886077c9c8e5a98783e6718e1c32567899eeb2dbb33e402d4476bc2fe4f0df1
SIZE (geant4-11.0.3/G4RadioactiveDecay.5.6.tar.gz) = 1059792
SHA256 (geant4-11.0.3/G4RealSurface.2.2.tar.gz) = 9954dee0012f5331267f783690e912e72db5bf52ea9babecd12ea22282176820
SIZE (geant4-11.0.3/G4RealSurface.2.2.tar.gz) = 132506346
SHA256 (geant4-11.0.3/G4SAIDDATA.2.0.tar.gz) = 1d26a8e79baa71e44d5759b9f55a67e8b7ede31751316a9e9037d80090c72e91
SIZE (geant4-11.0.3/G4SAIDDATA.2.0.tar.gz) = 38502
SHA256 (geant4-11.0.3/geant4-geant4-3136fa97238bf2b24eba982206fb72b32b898d96_GL0.tar.gz) = 403573c6028b7dbd01858980846565ec5a9b4030ce968e46503369f7bdb37da6
SIZE (geant4-11.0.3/geant4-geant4-3136fa97238bf2b24eba982206fb72b32b898d96_GL0.tar.gz) = 35651209
TIMESTAMP = 1676675889
SHA256 (geant4/geant4-v11.1.0.tar.gz) = 051e43066152c373f74746bdffe6f0c9e4175ad9cf1eb7b67da0dc1a05d0b985
SIZE (geant4/geant4-v11.1.0.tar.gz) = 36412990
SHA256 (geant4/G4ABLA.3.1.tar.gz) = 7698b052b58bf1b9886beacdbd6af607adc1e099fc730ab6b21cf7f090c027ed
SIZE (geant4/G4ABLA.3.1.tar.gz) = 107286
SHA256 (geant4/G4EMLOW.8.2.tar.gz) = 3d7768264ff5a53bcb96087604bbe11c60b7fea90aaac8f7d1252183e1a8e427
SIZE (geant4/G4EMLOW.8.2.tar.gz) = 329428359
SHA256 (geant4/G4ENSDFSTATE.2.3.tar.gz) = 9444c5e0820791abd3ccaace105b0e47790fadce286e11149834e79c4a8e9203
SIZE (geant4/G4ENSDFSTATE.2.3.tar.gz) = 290745
SHA256 (geant4/G4INCL.1.0.tar.gz) = 716161821ae9f3d0565fbf3c2cf34f4e02e3e519eb419a82236eef22c2c4367d
SIZE (geant4/G4INCL.1.0.tar.gz) = 95840
SHA256 (geant4/G4NDL.4.7.tar.gz) = 7e7d3d2621102dc614f753ad928730a290d19660eed96304a9d24b453d670309
SIZE (geant4/G4NDL.4.7.tar.gz) = 1114928821
SHA256 (geant4/G4PARTICLEXS.4.0.tar.gz) = 9381039703c3f2b0fd36ab4999362a2c8b4ff9080c322f90b4e319281133ca95
SIZE (geant4/G4PARTICLEXS.4.0.tar.gz) = 12242648
SHA256 (geant4/G4PhotonEvaporation.5.7.tar.gz) = 761e42e56ffdde3d9839f9f9d8102607c6b4c0329151ee518206f4ee9e77e7e5
SIZE (geant4/G4PhotonEvaporation.5.7.tar.gz) = 10089240
SHA256 (geant4/G4PII.1.3.tar.gz) = 6225ad902675f4381c98c6ba25fc5a06ce87549aa979634d3d03491d6616e926
SIZE (geant4/G4PII.1.3.tar.gz) = 4293607
SHA256 (geant4/G4RadioactiveDecay.5.6.tar.gz) = 3886077c9c8e5a98783e6718e1c32567899eeb2dbb33e402d4476bc2fe4f0df1
SIZE (geant4/G4RadioactiveDecay.5.6.tar.gz) = 1059792
SHA256 (geant4/G4RealSurface.2.2.tar.gz) = 9954dee0012f5331267f783690e912e72db5bf52ea9babecd12ea22282176820
SIZE (geant4/G4RealSurface.2.2.tar.gz) = 132506346
SHA256 (geant4/G4SAIDDATA.2.0.tar.gz) = 1d26a8e79baa71e44d5759b9f55a67e8b7ede31751316a9e9037d80090c72e91
SIZE (geant4/G4SAIDDATA.2.0.tar.gz) = 38502
SHA256 (geant4/G4TENDL.1.4.tar.gz) = 4b7274020cc8b4ed569b892ef18c2e088edcdb6b66f39d25585ccee25d9721e0
SIZE (geant4/G4TENDL.1.4.tar.gz) = 912261874
@@ -0,0 +1,35 @@
--- cmake/Modules/G4OptionalComponents.cmake.orig 2023-03-31 14:13:37 UTC
+++ cmake/Modules/G4OptionalComponents.cmake
@@ -38,8 +38,31 @@ endif()

option(GEANT4_USE_SYSTEM_CLHEP "Use system CLHEP library" ${_default_use_system_clhep})

+#[[CLHEP installs CMake Config files not, e.g., to '<prefix>/libdata/CLHEP/' (where CMake
+ would have no trouble finding the files), but to '<prefix>/libdata/CLHEP-<VERSION>/'.
+ There is no straight-forward way to communicate this to CMake's `find_package`, but
+ we can provide a list of additional PATHS for CMake to try as *prefixes*.
+ We find all absolute paths from the system's pre-defined prefixes to directories
+ containing a file "CLHEPConfig.cmake" and provide these paths as prefixes, slightly
+ abusing the fact that one of CMake's search paths is just '<prefix>/'.
+ See https://cmake.org/cmake/help/latest/command/find_package.html#config-mode-search-procedure.]]
+unset(_paths)
+foreach(_prefix ${CMAKE_SYSTEM_PREFIX_PATH})
+ file(GLOB _find_results ${_prefix}/*/CLHEP*)
+ list(APPEND _paths ${_find_results})
+endforeach()
+list(REMOVE_DUPLICATES _paths)
+foreach(_path ${_paths})
+ file(GLOB _find_results ${_path}/CLHEPConfig.cmake)
+ if("${_find_results}" STREQUAL "")
+ list(REMOVE_ITEM _paths ${_path})
+ endif()
+endforeach()
+unset(_find_results)
if(GEANT4_USE_SYSTEM_CLHEP)
- find_package(CLHEP 2.4.6.0 REQUIRED CONFIG)
+ find_package(CLHEP 2.4.6.0 REQUIRED CONFIG
+ PATHS ${_paths})
+ unset(_paths)
geant4_save_package_variables(CLHEP CLHEP_DIR)
else()
set(CLHEP_FOUND TRUE)

0 comments on commit c766dfa

Please sign in to comment.