diff options
Diffstat (limited to 'sci-physics')
-rw-r--r-- | sci-physics/geant/Manifest | 1 | ||||
-rw-r--r-- | sci-physics/geant/geant-4.11.2.1.ebuild | 111 |
2 files changed, 112 insertions, 0 deletions
diff --git a/sci-physics/geant/Manifest b/sci-physics/geant/Manifest index 36e3e573f470..a222cbac8258 100644 --- a/sci-physics/geant/Manifest +++ b/sci-physics/geant/Manifest @@ -1 +1,2 @@ DIST geant4-v11.2.0.tar.gz 36652313 BLAKE2B 41b5138b778be1302776961c0e029efd6143ceed9f3e81b0b1aeb542e1999f746b85dfe66b02421ce38e9475fd95ac0b2513944e13e4689a2e5ec627fa5b9e45 SHA512 57b31fd4125d992754e7ce2770d7427355d204cb0b28708429f8c7983aeb0b41897aa3f5fd345489b343232f459eede6b153752fece96146a7ee59660363acf9 +DIST geant4-v11.2.1.tar.gz 36631774 BLAKE2B e7c8f97f9ceaa32b38954f4ae9b49e2236134a8f5b9cb720d207ece002e7e2f1eb993888b2c53a09aa5293709502a3ab2b13332083a4332c466adaa59110905e SHA512 bdbf4e6ecc4ba5119b5364707cc256e92ea1a245f1c14a434bb7ad748649b27b6b0e20fb1b0624cfe2c66b4267c8a3ff25069794a47d348242cd5664e72812ab diff --git a/sci-physics/geant/geant-4.11.2.1.ebuild b/sci-physics/geant/geant-4.11.2.1.ebuild new file mode 100644 index 000000000000..2e384cbf7fc8 --- /dev/null +++ b/sci-physics/geant/geant-4.11.2.1.ebuild @@ -0,0 +1,111 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake + +MY_P=${PN}$(ver_cut 1)-v$(ver_cut 2-4) + +case ${PV} in +*_beta*) + DOCS="ReleaseNotes/Beta.$(ver_cut 2-3)-*.txt" + ;; +*) + if [[ $(ver_cut 4) -gt 0 ]]; then + DOCS="ReleaseNotes/Patch.$(ver_cut 2-3)-*.txt" + fi + HTML_DOCS="ReleaseNotes/ReleaseNotes.$(ver_cut 2-3).html" + ;; +esac + +DESCRIPTION="Toolkit for simulation of passage of particles through matter" +HOMEPAGE="https://geant4.web.cern.ch/" +SRC_URI="https://geant4-data.web.cern.ch/geant4-data/releases/${MY_P}.tar.gz" + +S="${WORKDIR}/${MY_P}" + +LICENSE="geant4" +SLOT="4/$(ver_cut 1-4)" + +KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" +IUSE="+data debug doc examples freetype gdml geant3 hdf5 inventor motif opengl + qt5 raytracerx static-libs tbb threads trajectories vtk" + +REQUIRED_USE=" + inventor? ( opengl ) + motif? ( opengl ) + qt5? ( opengl ) + tbb? ( threads ) + vtk? ( qt5 ) +" + +RDEPEND=" + dev-libs/expat + >=sci-physics/clhep-2.4.7.1:2=[threads?] + data? ( ~sci-physics/geant-data-4.11.2.0 ) + doc? ( app-doc/geant-docs ) + gdml? ( dev-libs/xerces-c ) + hdf5? ( sci-libs/hdf5[threads?] ) + inventor? ( media-libs/SoXt ) + motif? ( x11-libs/motif:0 ) + opengl? ( virtual/opengl ) + qt5? ( + dev-qt/qt3d:5 + dev-qt/qtcore:5 + dev-qt/qtgui:5 + dev-qt/qtwidgets:5 + opengl? ( dev-qt/qtopengl:5 ) + ) + raytracerx? ( + x11-libs/libX11 + x11-libs/libXmu + ) + vtk? ( + sci-libs/vtk:=[qt5] + )" + +PATCHES=( + "${FILESDIR}"/${PN}-4.11.0.2-musl-avoid-execinfo.patch +) + +src_configure() { + local mycmakeargs=( + -DCMAKE_INSTALL_DATADIR="${EPREFIX}/usr/share/geant4" + -DGEANT4_BUILD_BUILTIN_BACKTRACE=$(usex debug) + -DGEANT4_BUILD_MULTITHREADED=$(usex threads) + -DGEANT4_BUILD_STORE_TRAJECTORY=$(usex trajectories) + -DGEANT4_BUILD_TLS_MODEL=$(usex threads global-dynamic initial-exec) + -DGEANT4_BUILD_VERBOSE_CODE=$(usex debug) + -DGEANT4_INSTALL_DATA=OFF + -DGEANT4_INSTALL_DATADIR="${EPREFIX}/usr/share/geant4/data" + -DGEANT4_INSTALL_EXAMPLES=$(usex examples) + -DGEANT4_INSTALL_PACKAGE_CACHE=OFF + -DGEANT4_USE_FREETYPE=$(usex freetype) + -DGEANT4_USE_G3TOG4=$(usex geant3) + -DGEANT4_USE_GDML=$(usex gdml) + -DGEANT4_USE_HDF5=$(usex hdf5) + -DGEANT4_USE_INVENTOR=$(usex inventor) + -DGEANT4_USE_OPENGL_X11=$(usex opengl) + -DGEANT4_USE_QT=$(usex qt5) + -DGEANT4_USE_RAYTRACER_X11=$(usex raytracerx) + -DGEANT4_USE_SYSTEM_CLHEP=ON + -DGEANT4_USE_SYSTEM_EXPAT=ON + -DGEANT4_USE_SYSTEM_ZLIB=ON + -DGEANT4_USE_TBB=$(usex tbb) + -DGEANT4_USE_XM=$(usex motif) + -DGEANT4_USE_VTK=$(usex vtk) + -DBUILD_STATIC_LIBS=$(usex static-libs) + ) + + cmake_src_configure +} + +src_install() { + # adjust clhep linking flags for system clhep + # binmake.gmk is only useful for legacy build systems + sed -i -e 's/-lG4clhep/-lCLHEP/' config/binmake.gmk || die + cmake_src_install + rm "${ED}"/usr/bin/*.{sh,csh} || die "failed to remove obsolete shell scripts" + einstalldocs +} |