3 |
3 |
|
4 |
4 |
EAPI=8
|
5 |
5 |
|
6 |
|
PYTHON_COMPAT=( python3_{9..11} )
|
7 |
|
|
8 |
|
inherit cmake python-single-r1
|
|
6 |
inherit cmake
|
9 |
7 |
|
10 |
8 |
MY_P=${PN}$(ver_cut 1)-v$(ver_cut 2-4)
|
11 |
9 |
|
... | ... | |
27 |
25 |
|
28 |
26 |
LICENSE="geant4"
|
29 |
27 |
SLOT="4"
|
30 |
|
KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
|
|
28 |
KEYWORDS="amd64 ~x86 ~amd64-linux ~x86-linux"
|
31 |
29 |
IUSE="+c++17 c++20 +data debug doc examples freetype gdml geant3 hdf5 inventor motif opengl
|
32 |
|
python qt5 raytracerx static-libs tbb threads trajectories vtk"
|
|
30 |
qt5 raytracerx static-libs tbb threads vtk"
|
33 |
31 |
|
34 |
32 |
REQUIRED_USE="
|
35 |
33 |
^^ ( c++17 c++20 )
|
36 |
34 |
inventor? ( opengl )
|
37 |
35 |
motif? ( opengl )
|
38 |
|
python? ( ${PYTHON_REQUIRED_USE} )
|
39 |
36 |
qt5? ( opengl )
|
40 |
37 |
tbb? ( threads )
|
41 |
38 |
vtk? ( qt5 )
|
... | ... | |
43 |
40 |
|
44 |
41 |
RDEPEND="
|
45 |
42 |
dev-libs/expat
|
46 |
|
>=sci-physics/clhep-2.4.5.1:2=[threads?]
|
47 |
|
data? ( ~sci-physics/geant-data-4.11.0.0 )
|
|
43 |
>=sci-physics/clhep-2.4.6.2:2=[threads?]
|
|
44 |
data? ( ~sci-physics/geant-data-4.11.1.0 )
|
48 |
45 |
doc? ( app-doc/geant-docs )
|
49 |
46 |
gdml? ( dev-libs/xerces-c )
|
50 |
47 |
hdf5? ( sci-libs/hdf5[threads?] )
|
51 |
48 |
inventor? ( media-libs/SoXt )
|
52 |
49 |
motif? ( x11-libs/motif:0 )
|
53 |
50 |
opengl? ( virtual/opengl )
|
54 |
|
python? (
|
55 |
|
${PYTHON_DEPS}
|
56 |
|
$(python_gen_cond_dep '
|
57 |
|
dev-libs/boost:=[python,${PYTHON_USEDEP}]
|
58 |
|
')
|
59 |
|
)
|
60 |
51 |
qt5? (
|
61 |
52 |
dev-qt/qt3d:5
|
62 |
53 |
dev-qt/qtcore:5
|
... | ... | |
85 |
76 |
-DCMAKE_CXX_STANDARD=$( (usev c++17 || usev c++20) | cut -c4-)
|
86 |
77 |
-DGEANT4_BUILD_BUILTIN_BACKTRACE=$(usex debug)
|
87 |
78 |
-DGEANT4_BUILD_MULTITHREADED=$(usex threads)
|
88 |
|
-DGEANT4_BUILD_STORE_TRAJECTORY=$(usex trajectories)
|
|
79 |
-DGEANT4_BUILD_STORE_TRAJECTORY=OFF
|
89 |
80 |
-DGEANT4_BUILD_TLS_MODEL=$(usex threads global-dynamic initial-exec)
|
90 |
81 |
-DGEANT4_BUILD_VERBOSE_CODE=$(usex debug)
|
91 |
82 |
-DGEANT4_INSTALL_DATA=OFF
|
... | ... | |
98 |
89 |
-DGEANT4_USE_HDF5=$(usex hdf5)
|
99 |
90 |
-DGEANT4_USE_INVENTOR=$(usex inventor)
|
100 |
91 |
-DGEANT4_USE_OPENGL_X11=$(usex opengl)
|
101 |
|
-DGEANT4_USE_PYTHON=$(usex python)
|
102 |
92 |
-DGEANT4_USE_QT=$(usex qt5)
|
103 |
93 |
-DGEANT4_USE_RAYTRACER_X11=$(usex raytracerx)
|
104 |
94 |
-DGEANT4_USE_SYSTEM_CLHEP=ON
|
... | ... | |
110 |
100 |
-DBUILD_STATIC_LIBS=$(usex static-libs)
|
111 |
101 |
)
|
112 |
102 |
|
113 |
|
if use python; then
|
114 |
|
mycmakeargs+=(
|
115 |
|
-DPYTHON_EXECUTABLE="${EPREFIX}/usr/bin/${EPYTHON}"
|
116 |
|
-DCMAKE_INSTALL_PYTHONDIR="${EPREFIX}/usr/lib/${EPYTHON}/site-packages"
|
117 |
|
)
|
118 |
|
fi
|
|
103 |
[[ -v EXTRA_ECONF ]] && mycmakeargs+=( ${EXTRA_ECONF} )
|
119 |
104 |
|
120 |
105 |
cmake_src_configure
|
121 |
106 |
}
|
... | ... | |
125 |
110 |
# binmake.gmk is only useful for legacy build systems
|
126 |
111 |
sed -i -e 's/-lG4clhep/-lCLHEP/' config/binmake.gmk || die
|
127 |
112 |
cmake_src_install
|
128 |
|
use python && python_optimize
|
129 |
113 |
rm "${ED}"/usr/bin/*.{sh,csh} || die "failed to remove obsolete shell scripts"
|
130 |
114 |
einstalldocs
|
131 |
115 |
}
|