summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOliver Freyermuth <o.freyermuth@googlemail.com>2019-07-15 19:49:20 +0200
committerMichał Górny <mgorny@gentoo.org>2019-07-18 20:00:20 +0200
commitb51e1f9fa3c5575fba3fc672822e2bff468409ee (patch)
treeb41caa30c55916321a80a889665e34e52da4e509 /sci-physics/vgm
parentsys-libs/musl: version bump to 1.1.23 (diff)
downloadgentoo-b51e1f9fa3c5575fba3fc672822e2bff468409ee.tar.gz
gentoo-b51e1f9fa3c5575fba3fc672822e2bff468409ee.tar.bz2
gentoo-b51e1f9fa3c5575fba3fc672822e2bff468409ee.zip
sci-physics/vgm: Add patch for vgm-4.4, correct dependency.
Patch needed to correctly find CLHEP on 17.1 profile, upstreamed. sci-physics/root now has c++11 to depend on. Revbump for EAPI bump. Package-Manager: Portage-2.3.69, Repoman-2.3.16 Signed-off-by: Oliver Freyermuth <o.freyermuth@googlemail.com> Signed-off-by: Michał Górny <mgorny@gentoo.org>
Diffstat (limited to 'sci-physics/vgm')
-rw-r--r--sci-physics/vgm/files/vgm-fix-FindCLHEP.patch64
-rw-r--r--sci-physics/vgm/vgm-4.4-r1.ebuild82
-rw-r--r--sci-physics/vgm/vgm-9999.ebuild7
3 files changed, 150 insertions, 3 deletions
diff --git a/sci-physics/vgm/files/vgm-fix-FindCLHEP.patch b/sci-physics/vgm/files/vgm-fix-FindCLHEP.patch
new file mode 100644
index 000000000000..d3bf3d0d4f31
--- /dev/null
+++ b/sci-physics/vgm/files/vgm-fix-FindCLHEP.patch
@@ -0,0 +1,64 @@
+diff -Naur vgm/cmake/FindCLHEP.cmake vgm.patched/cmake/FindCLHEP.cmake
+--- vgm/cmake/FindCLHEP.cmake 2019-01-25 18:46:25.000000000 +0100
++++ vgm.patched/cmake/FindCLHEP.cmake 2019-06-29 19:50:18.092076913 +0200
+@@ -4,13 +4,13 @@
+ # The configuration file for CMake build for Virtual Geometry Model
+ # Copyright (C) 2012, Ivana Hrivnacova
+ # All rights reserved.
+-#
++#
+ # For the licensing terms see vgm/LICENSE.
+ # Contact: ivana@ipno.in2p3.fr
+ # ------------------------------------------------------------------------------
+
+-# The CMake build for Virtual Geometry Model is a result of a merge
+-# of the CMake configuration files kindly provided
++# The CMake build for Virtual Geometry Model is a result of a merge
++# of the CMake configuration files kindly provided
+ # by Florian Uhlig, GSI and Pere Mato, CERN.
+
+ # - Try to find CLHEP
+@@ -36,28 +36,29 @@
+ $ENV{CLHEP_BASE_DIR}/include
+ )
+
+-# CLHEP library external to Geant4
+-find_path(EXTERNAL_CLHEP_LIBRARY_DIR NAMES libCLHEP.so libCLHEP.dylib PATHS
++# CLHEP library external to Geant4
++find_library(EXTERNAL_CLHEP_LIBRARY NAMES libCLHEP.so libCLHEP.dylib PATHS
+ ${CLHEP_LIB_DIR}
+ ${CLHEP_DIR}/lib
+ $ENV{CLHEP_BASE_DIR}/lib
+ )
+-if (EXTERNAL_CLHEP_LIBRARY_DIR)
+- set(CLHEP_LIBRARY_DIR ${EXTERNAL_CLHEP_LIBRARY_DIR})
+- set(CLHEP_LIBRARY_NAME CLHEP)
+-endif()
+-
+-# CLHEP library within Geant4
+-if (NOT EXTERNAL_CLHEP_LIBRARY_DIR)
+- find_path(CLHEP_LIBRARY_DIR NAMES libG4clhep.so libG4clhep.dylib PATHS
++if (EXTERNAL_CLHEP_LIBRARY)
++ get_filename_component(CLHEP_LIBRARY_DIR "${EXTERNAL_CLHEP_LIBRARY}" DIRECTORY)
++ set(CLHEP_LIBRARY_NAME CLHEP)
++endif()
++
++# CLHEP library within Geant4
++if (NOT EXTERNAL_CLHEP_LIBRARY)
++ find_library(CLHEP_LIBRARY NAMES libG4clhep.so libG4clhep.dylib PATHS
+ ${Geant4_DIR}/..
+ ${GEANT4_LIBRARY_DIR}
+ )
+- if (CLHEP_LIBRARY_DIR)
++ if (CLHEP_LIBRARY)
++ get_filename_component(CLHEP_LIBRARY_DIR "${CLHEP_LIBRARY}" DIRECTORY)
+ set(CLHEP_LIBRARY_NAME G4clhep)
+- endif(CLHEP_LIBRARY_DIR)
+-endif()
+-
++ endif(CLHEP_LIBRARY)
++endif()
++
+ if (CLHEP_INCLUDE_DIRS AND CLHEP_LIBRARY_DIR)
+ set(CLHEP_FOUND TRUE)
+ endif (CLHEP_INCLUDE_DIRS AND CLHEP_LIBRARY_DIR)
diff --git a/sci-physics/vgm/vgm-4.4-r1.ebuild b/sci-physics/vgm/vgm-4.4-r1.ebuild
new file mode 100644
index 000000000000..89f9a9ec1384
--- /dev/null
+++ b/sci-physics/vgm/vgm-4.4-r1.ebuild
@@ -0,0 +1,82 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cmake-utils
+
+if [[ ${PV} == *9999* ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/vmc-project/${PN}.git"
+else
+ SRC_URI="http://ivana.home.cern.ch/ivana/${PN}.${PV}.tar.gz"
+ KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+ S="${WORKDIR}/${PN}.${PV}"
+fi
+
+DESCRIPTION="Virtual Geometry Model for High Energy Physics Experiments"
+HOMEPAGE="http://ivana.home.cern.ch/ivana/VGM.html"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="doc examples +geant4 +root test"
+
+# sci-physics/root[c++11] required to match sci-physics/geant
+RDEPEND="
+ sci-physics/clhep:=
+ root? ( sci-physics/root:=[c++11] )
+ geant4? ( >=sci-physics/geant-4.10.03 )"
+DEPEND="${RDEPEND}
+ doc? ( app-doc/doxygen[dot] )
+ test? ( sci-physics/geant-vmc[g4root] )"
+RESTRICT="
+ !geant4? ( test )
+ !root? ( test )
+ !test? ( test )"
+
+DOCS=(
+ doc/README
+ doc/todo.txt
+ doc/VGMhistory.txt
+ doc/VGM.html
+ doc/VGMversions.html
+)
+PATCHES=(
+ "${FILESDIR}"/"${PN}-fix-FindCLHEP.patch"
+)
+
+src_configure() {
+ local mycmakeargs=(
+ -DCLHEP_DIR="${EROOT}usr"
+ -DWITH_EXAMPLES="$(usex examples)"
+ -DINSTALL_EXAMPLES="$(usex examples)"
+ -DWITH_GEANT4="$(usex geant4)"
+ -DWITH_ROOT="$(usex root)"
+ -DWITH_TEST="$(usex test)"
+ )
+ if use test && use root && use geant4; then
+ mycmakeargs+=( -DWITH_G4ROOT=yes )
+ else
+ mycmakeargs+=( -DWITH_G4ROOT=no )
+ fi
+ cmake-utils_src_configure
+}
+
+src_compile() {
+ cmake-utils_src_compile
+ if use doc; then
+ cd packages
+ doxygen || die
+ fi
+}
+
+src_test() {
+ cd "${BUILD_DIR}"/test || die
+ ./test_suite.sh || die
+}
+
+src_install() {
+ cmake-utils_src_install
+ use doc && local HTML_DOCS=( doc/html/. )
+ einstalldocs
+}
diff --git a/sci-physics/vgm/vgm-9999.ebuild b/sci-physics/vgm/vgm-9999.ebuild
index b303e23a06c6..00846ae113bd 100644
--- a/sci-physics/vgm/vgm-9999.ebuild
+++ b/sci-physics/vgm/vgm-9999.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=7
inherit cmake-utils
@@ -21,9 +21,10 @@ LICENSE="GPL-2"
SLOT="0"
IUSE="doc examples +geant4 +root test"
+# sci-physics/root[c++11] required to match sci-physics/geant
RDEPEND="
sci-physics/clhep:=
- root? ( sci-physics/root:= )
+ root? ( sci-physics/root:=[c++11] )
geant4? ( >=sci-physics/geant-4.10.03 )"
DEPEND="${RDEPEND}
doc? ( app-doc/doxygen[dot] )