diff options
author | V3n3RiX <venerix@redcorelinux.org> | 2019-05-07 11:18:59 +0100 |
---|---|---|
committer | V3n3RiX <venerix@redcorelinux.org> | 2019-05-07 11:18:59 +0100 |
commit | a2810985afabcc31d3eace5e61d8ea25b852ba17 (patch) | |
tree | d254e77a7aeadd875db2dc73532da78094238ffd /sci-physics/root/root-9999.ebuild | |
parent | eab5731cdf11d4ae8cdf111461d46fd96c5bdd37 (diff) |
gentoo resync : 07.05.2019
Diffstat (limited to 'sci-physics/root/root-9999.ebuild')
-rw-r--r-- | sci-physics/root/root-9999.ebuild | 111 |
1 files changed, 59 insertions, 52 deletions
diff --git a/sci-physics/root/root-9999.ebuild b/sci-physics/root/root-9999.ebuild index df57dd82e74a..77c8e057cd0c 100644 --- a/sci-physics/root/root-9999.ebuild +++ b/sci-physics/root/root-9999.ebuild @@ -10,18 +10,7 @@ FORTRAN_NEEDED="fortran" PYTHON_COMPAT=( python2_7 python3_{5,6,7} ) inherit cmake-utils cuda eapi7-ver elisp-common eutils fortran-2 \ - prefix python-single-r1 toolchain-funcs - -if [[ ${PV} == "9999" ]] ; then - inherit git-r3 - KEYWORDS="" - EGIT_REPO_URI="http://root.cern/git/root.git" - SLOT=0 -else - KEYWORDS="~amd64 ~x86" - SRC_URI="https://root.cern/download/${PN}_v${PV}.source.tar.gz" - SLOT="$(ver_cut 1-2)/$(ver_cut 3)" -fi + llvm prefix python-single-r1 toolchain-funcs DESCRIPTION="C++ data analysis framework and interpreter from CERN" HOMEPAGE="https://root.cern" @@ -33,10 +22,26 @@ IUSE="+X aqua +asimage +c++11 c++14 c++17 cuda +davix emacs +examples table +tbb test +threads +tiff +tmva +unuran vc xinetd +xml xrootd zeroconf" +if [[ ${PV} =~ "9999" ]] ; then + inherit git-r3 + KEYWORDS="" + EGIT_REPO_URI="http://root.cern/git/root.git" + if [[ ${PV} == "9999" ]]; then + SLOT="0" + else + SLOT="$(ver_cut 1-2)/$(ver_cut 3)" + EGIT_BRANCH="v$(ver_cut 1)-$(ver_cut 2)-00-patches" + fi +else + KEYWORDS="~amd64 ~x86" + SRC_URI="https://root.cern/download/${PN}_v${PV}.source.tar.gz" +fi + LICENSE="LGPL-2.1 freedist MSttfEULA LGPL-3 libpng UoI-NCSA" REQUIRED_USE=" ^^ ( c++11 c++14 c++17 ) + cuda? ( tmva !c++17 ) !X? ( !asimage !opengl !qt5 !tiff ) davix? ( ssl xml ) python? ( ${PYTHON_REQUIRED_USE} ) @@ -49,19 +54,19 @@ CDEPEND=" app-arch/lz4 app-arch/xz-utils fortran? ( dev-lang/cfortran ) - dev-libs/libpcre:3= + dev-libs/libpcre:3 dev-libs/xxhash media-fonts/dejavu - media-libs/freetype:2= + media-libs/freetype:2 media-libs/libpng:0= sys-devel/llvm:5= sys-libs/ncurses:= sys-libs/zlib X? ( - x11-libs/libX11:0= - x11-libs/libXext:0= - x11-libs/libXft:0= - x11-libs/libXpm:0= + x11-libs/libX11:0 + x11-libs/libXext:0 + x11-libs/libXft:0 + x11-libs/libXpm:0 opengl? ( media-libs/ftgl:0= media-libs/glew:0= @@ -75,18 +80,15 @@ CDEPEND=" dev-qt/qtwebengine:5[widgets] ) ) - asimage? ( || ( - media-libs/libafterimage[gif,jpeg,png,tiff?] - >=x11-wm/afterstep-2.2.11[gif,jpeg,png,tiff?] - ) ) + asimage? ( media-libs/libafterimage[gif,jpeg,png,tiff?] ) zeroconf? ( net-dns/avahi[mdnsresponder-compat] ) cuda? ( >=dev-util/nvidia-cuda-toolkit-9.0 ) davix? ( net-libs/davix ) emacs? ( virtual/emacs ) fftw? ( sci-libs/fftw:3.0= ) fits? ( sci-libs/cfitsio:0= ) - graphviz? ( media-gfx/graphviz:0= ) - gsl? ( sci-libs/gsl ) + graphviz? ( media-gfx/graphviz ) + gsl? ( sci-libs/gsl:= ) http? ( dev-libs/fcgi:0= ) jemalloc? ( dev-libs/jemalloc ) kerberos? ( virtual/krb5 ) @@ -98,8 +100,8 @@ CDEPEND=" odbc? ( || ( dev-db/libiodbc dev-db/unixODBC ) ) oracle? ( dev-db/oracle-instantclient-basic ) postgres? ( dev-db/postgresql:= ) - pythia6? ( sci-physics/pythia:6= ) - pythia8? ( sci-physics/pythia:8= ) + pythia6? ( sci-physics/pythia:6 ) + pythia8? ( sci-physics/pythia:8 ) python? ( ${PYTHON_DEPS} ) R? ( dev-lang/R ) shadow? ( virtual/shadow ) @@ -107,7 +109,7 @@ CDEPEND=" ssl? ( dev-libs/openssl:0= ) tbb? ( >=dev-cpp/tbb-2018 ) tmva? ( dev-python/numpy[${PYTHON_USEDEP}] ) - vc? ( dev-libs/vc ) + vc? ( dev-libs/vc:= ) xml? ( dev-libs/libxml2:2= ) xrootd? ( net-libs/xrootd:0= ) " @@ -123,15 +125,15 @@ PATCHES=( ) pkg_setup() { + LLVM_MAX_SLOT=5 llvm_pkg_setup + use fortran && fortran-2_pkg_setup use python && python-single-r1_pkg_setup - 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 environment variable EXTRA_ECONF for this." - elog "For example, for Chirp, you would set: " - elog "EXTRA_ECONF=\"-Dchirp=ON\"" + elog "There are extra options on packages not available in Gentoo." + elog "You can use the environment variable EXTRA_ECONF to enable" + elog "these packages. For example, for Vdt you would set:" + elog "EXTRA_ECONF=\"-Dbuiltin_vdt=ON -Dvdt=ON\"" } src_prepare() { @@ -141,11 +143,13 @@ src_prepare() { # CSS should use local images sed -i -e 's,http://.*/,,' etc/html/ROOT.css || die "html sed failed" + + hprefixify core/clingutils/CMakeLists.txt } # 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 files into /etc (~100MB in total) that don't +# 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. @@ -154,11 +158,11 @@ src_configure() { -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" - -DCMAKE_INSTALL_LIBDIR=$(get_libdir) + -DLLVM_CONFIG="$(type -P "${CHOST}-llvm-config")" + -DCMAKE_INSTALL_PREFIX="${EPREFIX%/}/usr/lib/${PN}/$(ver_cut 1-2)" + -DCMAKE_INSTALL_MANDIR="${EPREFIX%/}/usr/lib/${PN}/$(ver_cut 1-2)/share/man" + -DCMAKE_INSTALL_LIBDIR="lib" -DDEFAULT_SYSROOT="${EPREFIX}" - -DLLVM_CONFIG="${EPREFIX%/}/usr/lib/llvm/5/bin/llvm-config" -DCLING_BUILD_PLUGINS=OFF -Dexplicitlink=ON -Dexceptions=ON @@ -291,41 +295,44 @@ src_compile() { src_install() { cmake-utils_src_install - ROOTSYS=${EPREFIX%/}/usr/$(get_libdir)/${PN}/$(ver_cut 1-2) - ROOTENV=9900${PN}-$(ver_cut 1-2) + ROOTSYS=${EPREFIX%/}/usr/lib/${PN}/$(ver_cut 1-2) - # ROOT fails without this symlink because it only looks in lib - if [[ ! -d ${D}/${ROOTSYS}/lib ]]; then - dosym $(get_libdir) /usr/$(get_libdir)/${PN}/$(ver_cut 1-2)/lib + if [[ ${PV} == "9999" ]]; then + ROOTENV="9900${PN}-git" + else + ROOTENV="$((9999 - $(ver_cut 2)))${PN}-$(ver_cut 1-2)-git" fi cat > ${ROOTENV} <<- EOF || die MANPATH="${ROOTSYS}/share/man" PATH="${ROOTSYS}/bin" ROOTPATH="${ROOTSYS}/bin" - LDPATH="${ROOTSYS}/$(get_libdir)" + LDPATH="${ROOTSYS}/lib" EOF if use python; then - echo "PYTHONPATH=${ROOTSYS}/$(get_libdir)" >> ${ROOTENV} || die + echo "PYTHONPATH=\"${ROOTSYS}/lib\"" >> ${ROOTENV} || die fi doenvd ${ROOTENV} - pushd "${D}/${ROOTSYS}" > /dev/null - if use emacs; then elisp-install ${PN}-$(ver_cut 1-2) "${BUILD_DIR}"/root-help.el fi + pushd "${D}/${ROOTSYS}" > /dev/null + + rm -r emacs bin/*.{csh,sh,fish} || die + if ! use examples; then rm -r tutorials || die fi - if ! use tmva; then - rm -r tmva || die + # create versioned symlinks for binaries + if [[ ! ${PV} == "9999" ]]; then + cd bin; + for exe in *; do + dosym "${exe}" "/usr/lib/${PN}/$(ver_cut 1-2)/bin/${exe}-$(ver_cut 1-2)" + done fi - - # clean up unnecessary files from installation - rm -r emacs test || die } |