summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sci-physics/root/Manifest2
-rw-r--r--sci-physics/root/files/root-6.14.06-oracle.patch24
-rw-r--r--sci-physics/root/metadata.xml3
-rw-r--r--sci-physics/root/root-6.14.06.ebuild (renamed from sci-physics/root/root-6.14.04-r3.ebuild)47
4 files changed, 57 insertions, 19 deletions
diff --git a/sci-physics/root/Manifest b/sci-physics/root/Manifest
index 91e7e9b5c730..dc5a9f7f3466 100644
--- a/sci-physics/root/Manifest
+++ b/sci-physics/root/Manifest
@@ -1,2 +1,2 @@
DIST root_v6.12.06.source.tar.gz 162284452 BLAKE2B 944b5e899677bab40842d7ec969ff08cfa470e63be9a02b948a49ae088e8da72ce433a5071d9196bfd98f71e6861b1bda285354012620eee6c61cffcee71a0c8 SHA512 3d44749ccfc3d40a2f516ae53ef40fb244ed785eee0dbc18ff822bbb811a15b943039d30282ef5358a283d485e62531880c877ec77a86089503b06d6f37e42e1
-DIST root_v6.14.04.source.tar.gz 162451369 BLAKE2B c7af9cf18736c900f71c35b7f9df91784058406c738ac49cf93aa6d1caee13b79e1f68be53ea600fc7311a5af76207f9de71f8438bf6eb43681c93f1815b39a7 SHA512 eb8f3fe89f70b222962ecec7bb7a1ff107dd600bc7ad63cbefc5d4e00561cc80b6430da90d1e59f70dbff69158929eec54614bb5df9894d342482b41c051353f
+DIST root_v6.14.06.source.tar.gz 162462837 BLAKE2B a6904b67d1f5964768fa884bd2b5c648390d0b3626b5be8f39ff0e311bf14690d2aff7eb9d6047fa8d5a9de894935067ea8c033592b9795fc34b61aa5f65fcdb SHA512 83698e1213ae9bd4a87ef3160b459c962199585bed7378efc0cfefdc352e6651a17286a11cd925dbcb5d04e1b832d47a3a69849d048731ea9d0d84f9b0f996a4
diff --git a/sci-physics/root/files/root-6.14.06-oracle.patch b/sci-physics/root/files/root-6.14.06-oracle.patch
new file mode 100644
index 000000000000..232d3b08cfa3
--- /dev/null
+++ b/sci-physics/root/files/root-6.14.06-oracle.patch
@@ -0,0 +1,24 @@
+From: Guilherme Amadio <amadio@cern.ch>
+Date: Wed, 14 Nov 2018 11:36:49 +0100
+Subject: Fix FindOracle.cmake to find version 18.x
+
+---
+ cmake/modules/FindOracle.cmake | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/cmake/modules/FindOracle.cmake b/cmake/modules/FindOracle.cmake
+index b7c8cfbb99..6672cb1bbd 100644
+--- a/cmake/modules/FindOracle.cmake
++++ b/cmake/modules/FindOracle.cmake
+@@ -55,7 +55,7 @@ FIND_LIBRARY(
+ )
+ FIND_LIBRARY(
+ ORACLE_LIBRARY_LNNZ
+- NAMES libnnz10 nnz10 libnnz11 nnz11 libnnz12 nnz12 ociw32
++ NAMES libnnz10 nnz10 libnnz11 nnz11 libnnz12 nnz12 nnz18 ociw32
+ PATHS ${ORACLE_LIB_LOCATION}
+ )
+
+--
+2.19.1
+
diff --git a/sci-physics/root/metadata.xml b/sci-physics/root/metadata.xml
index 6d5558e76bbf..3c004c040558 100644
--- a/sci-physics/root/metadata.xml
+++ b/sci-physics/root/metadata.xml
@@ -21,6 +21,9 @@
</longdescription>
<use>
<flag name="asimage">Enable support for <pkg>media-libs/libafterimage</pkg></flag>
+ <flag name="c++11">Build using the C++11 standard</flag>
+ <flag name="c++14">Build using the C++14 standard</flag>
+ <flag name="c++17">Build using the C++17 standard</flag>
<flag name="cuda">Enable support for nVidia CUDA</flag>
<flag name="davix">Enable support for DAVIX Data Management Client (https://cern.ch/davix)</flag>
<flag name="fits">Enable support for images and data from FITS files with <pkg>sci-libs/cfitsio</pkg></flag>
diff --git a/sci-physics/root/root-6.14.04-r3.ebuild b/sci-physics/root/root-6.14.06.ebuild
index 0a144e280c73..57b14c7e31dc 100644
--- a/sci-physics/root/root-6.14.04-r3.ebuild
+++ b/sci-physics/root/root-6.14.06.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@@ -16,21 +16,24 @@ DESCRIPTION="C++ data analysis framework and interpreter from CERN"
HOMEPAGE="https://root.cern"
SRC_URI="https://root.cern/download/${PN}_v${PV}.source.tar.gz"
-IUSE="+X avahi aqua +asimage cuda +davix emacs +examples fits fftw fortran
- +gdml graphviz +gsl http jemalloc kerberos ldap libcxx memstat
- +minuit mysql odbc +opengl oracle postgres prefix pythia6 pythia8
- +python qt5 R +roofit root7 shadow sqlite +ssl table +tbb test
- +threads +tiff +tmva +unuran vc xinetd +xml xrootd"
+IUSE="+X avahi aqua +asimage c++11 +c++14 c++17 cuda +davix emacs
+ +examples fits fftw fortran +gdml graphviz +gsl http jemalloc
+ kerberos ldap libcxx memstat +minuit mysql odbc +opengl oracle
+ postgres prefix pythia6 pythia8 +python qt5 R +roofit root7
+ shadow sqlite +ssl table +tbb test +threads +tiff +tmva +unuran
+ vc xinetd +xml xrootd"
SLOT="$(ver_cut 1-2)/$(ver_cut 3)"
LICENSE="LGPL-2.1 freedist MSttfEULA LGPL-3 libpng UoI-NCSA"
KEYWORDS="~amd64 ~x86"
REQUIRED_USE="
+ ^^ ( c++11 c++14 c++17 )
!X? ( !asimage !opengl !qt5 !tiff )
davix? ( ssl xml )
python? ( ${PYTHON_REQUIRED_USE} )
qt5? ( root7 )
+ root7? ( || ( c++14 c++17 ) )
tmva? ( gsl )
"
@@ -109,21 +112,19 @@ RDEPEND="${CDEPEND}
PATCHES=(
"${FILESDIR}"/${PN}-6.12.04-no-ocaml.patch
"${FILESDIR}"/${PN}-6.12.06_cling-runtime-sysroot.patch
- "${FILESDIR}"/${PN}-6.13.02-hsimple.patch
+ "${FILESDIR}"/${PN}-6.14.06-oracle.patch
)
pkg_setup() {
use fortran && fortran-2_pkg_setup
use python && python-single-r1_pkg_setup
- echo
elog "There are extra options on packages not yet in Gentoo:"
elog "Afdsmgrd, AliEn, castor, Chirp, dCache, gfal, Globus, gLite,"
elog "HDFS, Monalisa, MaxDB/SapDB, SRP, VecCore."
- elog "You can use the env variable EXTRA_ECONF variable for this."
+ elog "You can use the environment variable EXTRA_ECONF for this."
elog "For example, for Chirp, you would set: "
elog "EXTRA_ECONF=\"-Dchirp=ON\""
- echo
}
src_prepare() {
@@ -137,16 +138,18 @@ src_prepare() {
# Note: ROOT uses bundled clang because it is patched and API-incompatible
# with vanilla clang. The patches enable the C++ interpreter to work.
-# Since ROOT installs many small files into /etc (~100MB in total),
-# we install it into another directory to avoid making /etc too big.
+# Since ROOT installs many files into /etc (~100MB in total) that don't
+# really belong there, we install it into another directory to avoid
+# making /etc too big.
src_configure() {
local mycmakeargs=(
-DCMAKE_C_FLAGS="${CFLAGS}"
-DCMAKE_CXX_FLAGS="${CXXFLAGS}"
+ -DPYTHON_EXECUTABLE="${PYTHON}"
-DCMAKE_INSTALL_PREFIX="${EPREFIX%/}/usr/$(get_libdir)/${PN}/$(ver_cut 1-2)"
-DCMAKE_INSTALL_MANDIR="${EPREFIX%/}/usr/$(get_libdir)/${PN}/$(ver_cut 1-2)/share/man"
- -DMCAKE_INSTALL_LIBDIR=$(get_libdir)
+ -DCMAKE_INSTALL_LIBDIR=$(get_libdir)
-DDEFAULT_SYSROOT="${EPREFIX}"
-DCLING_BUILD_PLUGINS=OFF
-Dexplicitlink=ON
@@ -190,10 +193,13 @@ src_configure() {
-Dccache=OFF # use ccache via portage
-Dcastor=OFF
-Dchirp=OFF
+ -Dclad=OFF
-Dcling=ON # cling=OFF is broken
-Dcocoa=$(usex aqua)
-Dcuda=$(usex cuda)
- -Dcxx14=$(usex root7)
+ -Dcxx11=$(usex c++11)
+ -Dcxx14=$(usex c++14)
+ -Dcxx17=$(usex c++17)
-Dcxxmodules=OFF # requires clang, unstable
-Ddavix=$(usex davix)
-Ddcache=OFF
@@ -239,7 +245,7 @@ src_configure() {
-Droofit=$(usex roofit)
-Droot7=$(usex root7)
-Drootbench=OFF
- -Droottest=$(usex test)
+ -Droottest=OFF
-Drpath=OFF
-Druby=OFF # deprecated and broken
-Druntime_cxxmodules=OFF # does not work yet
@@ -250,7 +256,6 @@ src_configure() {
-Dsrp=OFF # not implemented
-Dssl=$(usex ssl)
-Dtable=$(usex table)
- -Dtbb=$(usex tbb)
-Dtcmalloc=OFF
-Dtesting=$(usex test)
-Dthread=$(usex threads)
@@ -269,6 +274,12 @@ src_configure() {
cmake-utils_src_configure
}
+src_compile() {
+ # needed for hsimple.root
+ addwrite /dev/random
+ cmake-utils_src_compile
+}
+
src_install() {
cmake-utils_src_install
@@ -300,7 +311,7 @@ src_install() {
fi
if ! use examples; then
- rm -r test tutorials || die
+ rm -r tutorials || die
fi
if ! use tmva; then
@@ -308,5 +319,5 @@ src_install() {
fi
# clean up unnecessary files from installation
- rm -r emacs || die
+ rm -r emacs test || die
}