From 18066a823662ba9f21093ba36f978dd72aa007c1 Mon Sep 17 00:00:00 2001 From: Oliver Freyermuth Date: Sun, 3 May 2020 21:51:04 +0200 Subject: [PATCH] sci-physics/geant-vmc: Version bump to 4.5.1_p1 New version is now compatible with sci-physics/vmc. Closes: https://github.com/gentoo/gentoo/pull/15631 Package-Manager: Portage-2.3.89, Repoman-2.3.20 RepoMan-Options: --force Signed-off-by: Oliver Freyermuth Signed-off-by: Guilherme Amadio --- sci-physics/geant-vmc/Manifest | 1 + .../geant-vmc/geant-vmc-4.5.1_p1.ebuild | 92 +++++++++++++++++++ sci-physics/geant-vmc/geant-vmc-9999.ebuild | 43 +++++---- sci-physics/geant-vmc/metadata.xml | 8 ++ 4 files changed, 124 insertions(+), 20 deletions(-) create mode 100644 sci-physics/geant-vmc/geant-vmc-4.5.1_p1.ebuild diff --git a/sci-physics/geant-vmc/Manifest b/sci-physics/geant-vmc/Manifest index bdc478d40f68..173a1bead9d4 100644 --- a/sci-physics/geant-vmc/Manifest +++ b/sci-physics/geant-vmc/Manifest @@ -1 +1,2 @@ +DIST geant-vmc-4.5.1_p1.tar.gz 7441504 BLAKE2B 2bcb844a8fc79c800eec50f914cd7238a68ba0c1ffa1e8d185adcded70583118e39efbac3330f7942a098fc64f990c1e9e0eeb1796f71ebd98f97d121aa6c121 SHA512 760611c1df481ea3d9f9069061678677ffc2bcf9edd7cfd44789a6359b945bc341f705da0ee85ecda7f8ac2b096cd5b7aa9ea2c44b464e3085c16eeb33ee1316 DIST geant4_vmc.4.0.tar.gz 7118838 BLAKE2B 5edbd13adeeb560188deb54c1f5d52fda371dd5f3dc04d676bcaf7edad0bbf8eb573d6345e5c3626b5b64c229d49b7f02aafec77a2587e525cf3f407444391b5 SHA512 faf5fed17b317399b97f77ff1c2a1bf1cead8f0b02a3a89244f01f8ae04ce621763e52b40000e481b3826796bb4d94216368d2e3c98a62f02048c5979f4ee648 diff --git a/sci-physics/geant-vmc/geant-vmc-4.5.1_p1.ebuild b/sci-physics/geant-vmc/geant-vmc-4.5.1_p1.ebuild new file mode 100644 index 000000000000..b28eff16cc8b --- /dev/null +++ b/sci-physics/geant-vmc/geant-vmc-4.5.1_p1.ebuild @@ -0,0 +1,92 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit cmake + +if [[ ${PV} == *9999* ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/vmc-project/geant4_vmc.git" + KEYWORDS="" +else + MY_PV=$(ver_rs 1-2 - $(ver_cut 2-)) + SRC_URI="https://github.com/vmc-project/geant4-vmc/archive/v${MY_PV}.tar.gz -> ${P}.tar.gz" + S="${WORKDIR}/geant4_vmc-${MY_PV}" + KEYWORDS="~amd64 ~x86" +fi + +DESCRIPTION="Virtual Monte Carlo Geant4 implementation" +HOMEPAGE="http://root.cern.ch/root/vmc/VirtualMC.html" + +LICENSE="GPL-3" +SLOT="4" +IUSE="+c++11 c++14 c++17 doc examples geant3 +g4root +mtroot rootvmc vgm test" + +REQUIRED_USE="^^ ( c++11 c++14 c++17 )" + +RDEPEND=" + rootvmc? ( + >=sci-physics/root-6.18:=[vmc] + !!sci-physics/vmc + ) + !rootvmc? ( + >=sci-physics/root-6.18:=[-vmc] + sci-physics/vmc:=[c++11?,c++14?,c++17?] + ) + >=sci-physics/geant-4.10.6[c++11?,c++14?,c++17?,opengl,geant3?] + >=sci-physics/root-6.18:=[c++11?,c++14?,c++17?] + vgm? ( >=sci-physics/vgm-4.8:=[c++11?,c++14?,c++17?] )" +DEPEND="${RDEPEND} + doc? ( app-doc/doxygen )" +RESTRICT=" + !examples? ( test ) + !geant3? ( test ) + !g4root? ( test ) + !mtroot? ( test ) + !test? ( test ) + !vgm? ( test )" + +DOCS=(history README.md) + +src_configure() { + local mycmakeargs=( + -DGeant4VMC_USE_VGM="$(usex vgm)" + -DGeant4VMC_USE_GEANT4_G3TOG4="$(usex geant3)" + -DGeant4VMC_USE_G4Root="$(usex g4root)" + -DGeant4VMC_BUILD_MTRoot="$(usex mtroot)" + -DGeant4VMC_BUILD_EXAMPLES="$(usex test)" + -DGeant4VMC_INSTALL_EXAMPLES="$(usex examples)" + ) + cmake_src_configure +} + +src_compile() { + cmake_src_compile + if use doc ; then + local dirs=( + source + $(usev g4root) + $(usev mtroot) + $(usev examples) + ) + local d + for d in "${dirs[@]}"; do + pushd "${d}" > /dev/null || die + doxygen || die + popd > /dev/null || die + done + fi +} + +src_test() { + cd examples || die + ./test_suite.sh --debug --g3=off --garfield=off --builddir="${BUILD_DIR}" || die + ./test_suite_exe.sh --g3=off --garfield=off --garfield=off --builddir="${BUILD_DIR}" || die +} + +src_install() { + cmake_src_install + use doc && local HTML_DOCS=(doc/.) + einstalldocs +} diff --git a/sci-physics/geant-vmc/geant-vmc-9999.ebuild b/sci-physics/geant-vmc/geant-vmc-9999.ebuild index 9c27c2d98efa..b28eff16cc8b 100644 --- a/sci-physics/geant-vmc/geant-vmc-9999.ebuild +++ b/sci-physics/geant-vmc/geant-vmc-9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2019 Gentoo Authors +# Copyright 1999-2020 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -8,26 +8,35 @@ inherit cmake if [[ ${PV} == *9999* ]]; then inherit git-r3 EGIT_REPO_URI="https://github.com/vmc-project/geant4_vmc.git" + KEYWORDS="" else - DOWN_PV=$(ver_cut 2-) - SRC_URI="http://root.cern.ch/download/vmc/geant4_vmc.${DOWN_PV}.tar.gz" - SOURCE_PV=$(ver_rs 1- . ${DOWN_PV}) - S="${WORKDIR}/geant4_vmc.${SOURCE_PV}" - KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" + MY_PV=$(ver_rs 1-2 - $(ver_cut 2-)) + SRC_URI="https://github.com/vmc-project/geant4-vmc/archive/v${MY_PV}.tar.gz -> ${P}.tar.gz" + S="${WORKDIR}/geant4_vmc-${MY_PV}" + KEYWORDS="~amd64 ~x86" fi DESCRIPTION="Virtual Monte Carlo Geant4 implementation" HOMEPAGE="http://root.cern.ch/root/vmc/VirtualMC.html" -LICENSE="GPL-2" +LICENSE="GPL-3" SLOT="4" -IUSE="doc examples geant3 +g4root +mtroot vgm test" +IUSE="+c++11 c++14 c++17 doc examples geant3 +g4root +mtroot rootvmc vgm test" + +REQUIRED_USE="^^ ( c++11 c++14 c++17 )" -# sci-physics/root[c++11] required to match sci-physics/geant flags. RDEPEND=" - >=sci-physics/geant-4.10.03:=[opengl,geant3?] - sci-physics/root:=[c++11,vmc] - vgm? ( >=sci-physics/vgm-4.4:= )" + rootvmc? ( + >=sci-physics/root-6.18:=[vmc] + !!sci-physics/vmc + ) + !rootvmc? ( + >=sci-physics/root-6.18:=[-vmc] + sci-physics/vmc:=[c++11?,c++14?,c++17?] + ) + >=sci-physics/geant-4.10.6[c++11?,c++14?,c++17?,opengl,geant3?] + >=sci-physics/root-6.18:=[c++11?,c++14?,c++17?] + vgm? ( >=sci-physics/vgm-4.8:=[c++11?,c++14?,c++17?] )" DEPEND="${RDEPEND} doc? ( app-doc/doxygen )" RESTRICT=" @@ -38,10 +47,7 @@ RESTRICT=" !test? ( test ) !vgm? ( test )" -DOCS=( - history - README.md -) +DOCS=(history README.md) src_configure() { local mycmakeargs=( @@ -74,12 +80,9 @@ src_compile() { } src_test() { - # Required by sci-physics/root for pointer validity checking, - # see e.g. https://sft.its.cern.ch/jira/browse/ROOT-8146 . - addwrite /dev/random cd examples || die ./test_suite.sh --debug --g3=off --garfield=off --builddir="${BUILD_DIR}" || die - ./test_suite_exe.sh -debug --g3=off --garfield=off --builddir="${BUILD_DIR}" || die + ./test_suite_exe.sh --g3=off --garfield=off --garfield=off --builddir="${BUILD_DIR}" || die } src_install() { diff --git a/sci-physics/geant-vmc/metadata.xml b/sci-physics/geant-vmc/metadata.xml index ef4bdfb269e8..02aa869b861c 100644 --- a/sci-physics/geant-vmc/metadata.xml +++ b/sci-physics/geant-vmc/metadata.xml @@ -5,6 +5,10 @@ o.freyermuth@googlemail.com Oliver Freyermuth + + amadio@gentoo.org + Guilherme Amadio + proxy-maint@gentoo.org Proxy Maintainers @@ -13,9 +17,13 @@ vmc-project/geant4_vmc + Build using the C++11 standard + Build using the C++14 standard + Build using the C++17 standard Enable the Virtual Geometry Model (sci-physics/vgm) Build G4Root (interface for GEANT4 simulation with a ROOT geometry) Build with Geant4 G3toG4 library Build MTRoot (provides ROOT IO manager classes with multi-threading support) + Use sci-physics/root[vmc] (deprecated) instead of sci-physics/vmc as VMC provider -- 2.26.2