geant4/geant4-data: add v10.0.4 (#41478)
* geant4/geant4-data: add builtin_clhep variant and v10.0.4. * geant4: revert addition of builtin_clhep variant. * geant4: fix vecgeom variant only being available for v10.3 and above.
This commit is contained in:
parent
ce09642922
commit
eb57d96ea9
@ -51,6 +51,7 @@ class Clhep(CMakePackage):
|
||||
version("2.2.0.8", sha256="f735e236b1f023ba7399269733b2e84eaed4de615081555b1ab3af25a1e92112")
|
||||
version("2.2.0.5", sha256="92e8b5d32ae96154edd27d0c641ba048ad33cb69dd4f1cfb72fc578770a34818")
|
||||
version("2.2.0.4", sha256="9bf7fcd9892313c8d1436bc4a4a285a016c4f8e81e1fc65bdf6783207ae57550")
|
||||
version("2.1.2.3", sha256="4353231be09c134507092161cd3ced27a065ca0ebb31ee0256e60a8163c47c3b")
|
||||
|
||||
variant(
|
||||
"cxxstd",
|
||||
|
@ -26,6 +26,7 @@ class G4emlow(Package):
|
||||
version("7.7", sha256="16dec6adda6477a97424d749688d73e9bd7d0b84d0137a67cf341f1960984663")
|
||||
version("7.3", sha256="583aa7f34f67b09db7d566f904c54b21e95a9ac05b60e2bfb794efb569dba14e")
|
||||
version("6.50", sha256="c97be73fece5fb4f73c43e11c146b43f651c6991edd0edf8619c9452f8ab1236")
|
||||
version("6.35", sha256="1564045a0acad344c8d432cd48c2c3bb2e051a81ab3099a84e0f56ba0fe82cec")
|
||||
|
||||
def install(self, spec, prefix):
|
||||
mkdirp(join_path(prefix.share, "data"))
|
||||
|
@ -21,6 +21,7 @@ class G4ensdfstate(Package):
|
||||
version("2.3", sha256="9444c5e0820791abd3ccaace105b0e47790fadce286e11149834e79c4a8e9203")
|
||||
version("2.2", sha256="dd7e27ef62070734a4a709601f5b3bada6641b111eb7069344e4f99a01d6e0a6")
|
||||
version("2.1", sha256="933e7f99b1c70f24694d12d517dfca36d82f4e95b084c15d86756ace2a2790d9")
|
||||
version("1.0", sha256="4562e7476aa2df7204a1a77263e9d2331e9ffcdb591d11814dcc2d6b605021dd")
|
||||
|
||||
def install(self, spec, prefix):
|
||||
mkdirp(join_path(prefix.share, "data"))
|
||||
|
@ -20,6 +20,7 @@ class G4ndl(Package):
|
||||
version("4.7", sha256="7e7d3d2621102dc614f753ad928730a290d19660eed96304a9d24b453d670309")
|
||||
version("4.6", sha256="9d287cf2ae0fb887a2adce801ee74fb9be21b0d166dab49bcbee9408a5145408")
|
||||
version("4.5", sha256="cba928a520a788f2bc8229c7ef57f83d0934bb0c6a18c31ef05ef4865edcdf8e")
|
||||
version("4.4", sha256="e9fe8800566a83ccaf9b5229a1fa1d2cd24530bbd2e9fcb96eb6b5b117233071")
|
||||
|
||||
def install(self, spec, prefix):
|
||||
mkdirp(join_path(prefix.share, "data"))
|
||||
|
@ -23,6 +23,7 @@ class G4photonevaporation(Package):
|
||||
version("5.3", sha256="d47ababc8cbe548065ef644e9bd88266869e75e2f9e577ebc36bc55bf7a92ec8")
|
||||
version("5.2", sha256="83607f8d36827b2a7fca19c9c336caffbebf61a359d0ef7cee44a8bcf3fc2d1f")
|
||||
version("4.3.2", sha256="d4641a6fe1c645ab2a7ecee09c34e5ea584fb10d63d2838248bfc487d34207c7")
|
||||
version("3.0", sha256="c76a843672eca21110e97a274a6b5cd9a58b66f35235301c8e1b162926e0e7cb")
|
||||
|
||||
def install(self, spec, prefix):
|
||||
mkdirp(join_path(prefix.share, "data"))
|
||||
|
@ -23,6 +23,7 @@ class G4radioactivedecay(Package):
|
||||
version("5.3", sha256="5c8992ac57ae56e66b064d3f5cdfe7c2fee76567520ad34a625bfb187119f8c1")
|
||||
version("5.2", sha256="99c038d89d70281316be15c3c98a66c5d0ca01ef575127b6a094063003e2af5d")
|
||||
version("5.1.1", sha256="f7a9a0cc998f0d946359f2cb18d30dff1eabb7f3c578891111fc3641833870ae")
|
||||
version("4.0", sha256="ed2053bddee507920a29a27db4364fbef255b951597686b0410d5458e9b38cb5")
|
||||
|
||||
def install(self, spec, prefix):
|
||||
mkdirp(join_path(prefix.share, "data"))
|
||||
|
@ -33,6 +33,7 @@ class Geant4Data(BundlePackage):
|
||||
version("10.4.3")
|
||||
version("10.4.0")
|
||||
version("10.3.3")
|
||||
version("10.0.4")
|
||||
|
||||
# Add install phase so we can create the data "view"
|
||||
phases = ["install"]
|
||||
@ -132,6 +133,18 @@ class Geant4Data(BundlePackage):
|
||||
],
|
||||
"10.3.1:10.3": ["g4photonevaporation@4.3.2", "g4radioactivedecay@5.1.1"],
|
||||
"10.3.0": ["g4photonevaporation@4.3", "g4radioactivedecay@5.1"],
|
||||
"10.0.4": [
|
||||
"g4ndl@4.4",
|
||||
"g4emlow@6.35",
|
||||
"g4photonevaporation@3.0",
|
||||
"g4radioactivedecay@4.0",
|
||||
"g4neutronxs@1.4",
|
||||
"g4pii@1.3",
|
||||
"g4realsurface@1.0",
|
||||
"g4saiddata@1.1",
|
||||
"g4abla@3.0",
|
||||
"g4ensdfstate@1.0",
|
||||
],
|
||||
}
|
||||
|
||||
for _vers, _dsets in _datasets.items():
|
||||
|
31
var/spack/repos/builtin/packages/geant4/geant4-10.0.4.patch
Normal file
31
var/spack/repos/builtin/packages/geant4/geant4-10.0.4.patch
Normal file
@ -0,0 +1,31 @@
|
||||
diff -Naur a/cmake/Modules/Geant4MakeRules_cxx.cmake b/cmake/Modules/Geant4MakeRules_cxx.cmake
|
||||
--- a/cmake/Modules/Geant4MakeRules_cxx.cmake 2016-06-10 12:04:27
|
||||
+++ b/cmake/Modules/Geant4MakeRules_cxx.cmake 2023-12-04 16:49:28
|
||||
@@ -51,7 +51,7 @@
|
||||
elseif(_gnucxx_version VERSION_LESS 4.7)
|
||||
set(_CXXSTDS "c++98" "c++0x")
|
||||
else()
|
||||
- set(_CXXSTDS "c++98" "c++0x" "c++11")
|
||||
+ set(_CXXSTDS "c++98" "c++0x" "c++11" "c++14")
|
||||
endif()
|
||||
|
||||
set(CXXSTD_IS_AVAILABLE ${_CXXSTDS} PARENT_SCOPE)
|
||||
diff -Naur a/source/visualization/HepRep/sources.cmake b/source/visualization/HepRep/sources.cmake
|
||||
--- a/source/visualization/HepRep/sources.cmake 2016-06-10 12:04:27
|
||||
+++ b/source/visualization/HepRep/sources.cmake 2023-12-04 16:12:32
|
||||
@@ -71,13 +71,13 @@
|
||||
G4HepRepMessenger.cc
|
||||
G4HepRepSceneHandler.cc
|
||||
G4HepRepViewer.cc
|
||||
- GZIPOutputStream.cc
|
||||
+ gzipoutputstream.cc
|
||||
GZIPOutputStreamBuffer.cc
|
||||
IndentPrintWriter.cc
|
||||
XMLHepRepFactory.cc
|
||||
XMLHepRepWriter.cc
|
||||
XMLWriter.cc
|
||||
- ZipOutputStream.cc
|
||||
+ zipoutputstream.cc
|
||||
ZipOutputStreamBuffer.cc
|
||||
GRANULAR_DEPENDENCIES
|
||||
G4csg
|
@ -44,6 +44,7 @@ class Geant4(CMakePackage):
|
||||
version("10.4.3", sha256="67f3bb6405a2c77e573936c2b933f5a4a33915aa379626a2eb3012009b91e1da")
|
||||
version("10.4.0", sha256="e919b9b0a88476e00c0b18ab65d40e6a714b55ee4778f66bac32a5396c22aa74")
|
||||
version("10.3.3", sha256="bcd36a453da44de9368d1d61b0144031a58e4b43a6d2d875e19085f2700a89d8")
|
||||
version("10.0.4", sha256="97f3744366b00143d1eed52f8786823034bbe523f45998106f798af61d83f863")
|
||||
|
||||
_cxxstd_values = (
|
||||
conditional("11", "14", when="@:10"),
|
||||
@ -59,7 +60,7 @@ class Geant4(CMakePackage):
|
||||
)
|
||||
|
||||
variant("threads", default=True, description="Build with multithreading")
|
||||
variant("vecgeom", default=False, description="Enable vecgeom support")
|
||||
variant("vecgeom", default=False, description="Enable vecgeom support", when="@10.3:")
|
||||
variant("opengl", default=False, description="Optional OpenGL support")
|
||||
variant("x11", default=False, description="Optional X11 support")
|
||||
variant("motif", default=False, description="Optional motif support")
|
||||
@ -73,6 +74,7 @@ class Geant4(CMakePackage):
|
||||
depends_on("cmake@3.5:", type="build")
|
||||
|
||||
for _vers in [
|
||||
"10.0.4",
|
||||
"10.3.3",
|
||||
"10.4.0",
|
||||
"10.4.3",
|
||||
@ -105,7 +107,8 @@ class Geant4(CMakePackage):
|
||||
depends_on("clhep@2.4.6.0:", when="@11.1:")
|
||||
depends_on("clhep@2.4.5.1:", when="@11.0.0:")
|
||||
depends_on("clhep@2.4.4.0:", when="@10.7.0:")
|
||||
depends_on("clhep@2.3.3.0:", when="@10.3.3:10.6")
|
||||
depends_on("clhep@2.3.3.0:", when="@10.3:10.6")
|
||||
depends_on("clhep@2.1.2.3", when="@:10.2")
|
||||
|
||||
# Vecgeom specific versions for each Geant4 version
|
||||
with when("+vecgeom"):
|
||||
@ -144,11 +147,14 @@ def std_when(values):
|
||||
depends_on("motif", when="+motif")
|
||||
depends_on("qt@5: +opengl", when="+qt")
|
||||
|
||||
# As released, 10.0.4 has inconsistently capitalised filenames
|
||||
# in the cmake files; this patch also enables cxxstd 14
|
||||
patch("geant4-10.0.4.patch", when="@10.0.4")
|
||||
# As released, 10.03.03 has issues with respect to using external
|
||||
# CLHEP.
|
||||
patch("CLHEP-10.03.03.patch", level=1, when="@10.3.3")
|
||||
patch("CLHEP-10.03.03.patch", level=1, when="@10.3")
|
||||
# These patches can be applied independent of the cxxstd value?
|
||||
patch("cxx17.patch", when="@:10.3 cxxstd=17")
|
||||
patch("cxx17.patch", when="@10.3 cxxstd=17")
|
||||
patch("cxx17_geant4_10_0.patch", level=1, when="@10.4.0 cxxstd=17")
|
||||
patch("geant4-10.4.3-cxx17-removed-features.patch", level=1, when="@10.4.3 cxxstd=17")
|
||||
|
||||
@ -231,8 +237,11 @@ def cmake_args(self):
|
||||
# Use the correct C++ standard option for the requested version
|
||||
if spec.version >= Version("11.0"):
|
||||
options.append(self.define_from_variant("CMAKE_CXX_STANDARD", "cxxstd"))
|
||||
else:
|
||||
elif spec.version >= Version("10.3"):
|
||||
options.append(self.define_from_variant("GEANT4_BUILD_CXXSTD", "cxxstd"))
|
||||
else:
|
||||
cxxstd = spec.variants["cxxstd"].value
|
||||
options.append(self.define("GEANT4_BUILD_CXXSTD", f"c++{cxxstd}"))
|
||||
|
||||
if spec.version >= Version("10.6"):
|
||||
# When building a downstream library/app outside of Spack, make
|
||||
|
Loading…
Reference in New Issue
Block a user