From 854e59ed4c4d28e6e165da84022274fb7675d401 Mon Sep 17 00:00:00 2001 From: Justin Bronder Date: Fri, 6 Jul 2018 10:06:24 -0400 Subject: sci-physics/root: in main tree Removal per https://bugs.gentoo.org/573264 Package-Manager: Portage-2.3.40, Repoman-2.3.9 RepoMan-Options: --force --- sci-physics/root/files/proofd.confd | 12 - sci-physics/root/files/proofd.initd | 25 -- .../root/files/root-5.28.00b-glibc212.patch | 11 - sci-physics/root/files/root-5.32.00-afs.patch | 33 -- sci-physics/root/files/root-5.32.00-cfitsio.patch | 13 - sci-physics/root/files/root-5.32.00-chklib64.patch | 24 -- sci-physics/root/files/root-5.34.13-unuran.patch | 40 -- sci-physics/root/files/root-6.00.01-dotfont.patch | 58 --- sci-physics/root/files/root-6.00.01-llvm.patch | 13 - .../root/files/root-6.06.00-nobyte-compile.patch | 39 -- sci-physics/root/files/rootd.confd | 8 - sci-physics/root/files/rootd.initd | 27 -- sci-physics/root/metadata.xml | 29 -- sci-physics/root/root-9999.ebuild | 444 --------------------- 14 files changed, 776 deletions(-) delete mode 100644 sci-physics/root/files/proofd.confd delete mode 100644 sci-physics/root/files/proofd.initd delete mode 100644 sci-physics/root/files/root-5.28.00b-glibc212.patch delete mode 100644 sci-physics/root/files/root-5.32.00-afs.patch delete mode 100644 sci-physics/root/files/root-5.32.00-cfitsio.patch delete mode 100644 sci-physics/root/files/root-5.32.00-chklib64.patch delete mode 100644 sci-physics/root/files/root-5.34.13-unuran.patch delete mode 100644 sci-physics/root/files/root-6.00.01-dotfont.patch delete mode 100644 sci-physics/root/files/root-6.00.01-llvm.patch delete mode 100644 sci-physics/root/files/root-6.06.00-nobyte-compile.patch delete mode 100644 sci-physics/root/files/rootd.confd delete mode 100644 sci-physics/root/files/rootd.initd delete mode 100644 sci-physics/root/metadata.xml delete mode 100644 sci-physics/root/root-9999.ebuild diff --git a/sci-physics/root/files/proofd.confd b/sci-physics/root/files/proofd.confd deleted file mode 100644 index 81720a7eb..000000000 --- a/sci-physics/root/files/proofd.confd +++ /dev/null @@ -1,12 +0,0 @@ -# conf.d file for proof daemon -# -# Please refer to the proofd(1) man(1) page for more information on -# command line parameters. -# -PROOFD_OPTS= - -# Specify your base of your PROOF directory here. If left blank, it -# will use the system default (e.g., /usr/share/root/proof). -# Note, however, that ROOT recommends that this directory is shared (via -# NFS or similar) among all the nodes of the cluster. -PROOF_DIR= diff --git a/sci-physics/root/files/proofd.initd b/sci-physics/root/files/proofd.initd deleted file mode 100644 index b0839466b..000000000 --- a/sci-physics/root/files/proofd.initd +++ /dev/null @@ -1,25 +0,0 @@ -#!/sbin/openrc-run -# Copyright 1999-2017 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -depend() { - need root-file-server - use logger -} - -start() { - ebegin "Starting parallel ROOT facility server" - start-stop-daemon --start --quiet \ - --pidfile /var/run/proofd.pid \ - --exec /usr/bin/proofd -- ${PROOFD_OPTS} ${PROOF_DIR} - pidof /usr/bin/proofd > /var/run/proofd.pid - eend $? -} - -stop() { - ebegin "Stopping parallel ROOT facility server" - start-stop-daemon --stop --quiet \ - --pidfile /var/run/proofd.pid \ - --exec /usr/bin/proofd - eend $? -} diff --git a/sci-physics/root/files/root-5.28.00b-glibc212.patch b/sci-physics/root/files/root-5.28.00b-glibc212.patch deleted file mode 100644 index a36543139..000000000 --- a/sci-physics/root/files/root-5.28.00b-glibc212.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- root.orig/net/auth/src/TAFS.cxx 2010-09-14 03:22:22.647915854 +0400 -+++ root/net/auth/src/TAFS.cxx 2010-09-14 03:22:39.034599899 +0400 -@@ -11,6 +11,7 @@ - - #ifndef WIN32 - # include -+# include - #else - # define ssize_t int - # include - diff --git a/sci-physics/root/files/root-5.32.00-afs.patch b/sci-physics/root/files/root-5.32.00-afs.patch deleted file mode 100644 index 2bf31798e..000000000 --- a/sci-physics/root/files/root-5.32.00-afs.patch +++ /dev/null @@ -1,33 +0,0 @@ ---- root/net/auth/src/TAFS.cxx.orig 2011-12-04 00:56:29.405007770 +0400 -+++ root/net/auth/src/TAFS.cxx 2011-12-04 00:56:35.534709259 +0400 -@@ -138,7 +138,7 @@ - } else { - if (isatty(0) != 0 && isatty(1) != 0) { - Gl_config("noecho", 1); -- pw = Getline((char *) prompt.Data()); -+ pw = const_cast( Getline((char *) prompt.Data()) ); - Gl_config("noecho", 0); - } else { - Warning("TAFS", "not tty: cannot prompt for passwd: failure"); ---- root/core/clib/src/strlcat.c.orig 2011-12-04 01:49:26.495179487 +0400 -+++ root/core/clib/src/strlcat.c 2011-12-04 01:50:41.407524763 +0400 -@@ -38,7 +38,7 @@ - * Returns strlen(src) + MIN(siz, strlen(initial dst)). - * If retval >= siz, truncation occurred. - */ --size_t -+size_t __attribute__((weak)) - strlcat(char *dst, const char *src, size_t siz) - { - register char *d = dst; ---- root/core/clib/src/strlcpy.c.orig 2011-12-04 01:49:34.329797251 +0400 -+++ root/core/clib/src/strlcpy.c 2011-12-04 01:50:49.051151843 +0400 -@@ -36,7 +36,7 @@ - * will be copied. Always NUL terminates (unless siz == 0). - * Returns strlen(src); if retval >= siz, truncation occurred. - */ --size_t -+size_t __attribute__((weak)) - strlcpy(char *dst, const char *src, size_t siz) - { - register char *d = dst; diff --git a/sci-physics/root/files/root-5.32.00-cfitsio.patch b/sci-physics/root/files/root-5.32.00-cfitsio.patch deleted file mode 100644 index 853c3f39f..000000000 --- a/sci-physics/root/files/root-5.32.00-cfitsio.patch +++ /dev/null @@ -1,13 +0,0 @@ ---- configure.orig 2012-01-19 23:44:44.127607638 +0100 -+++ configure 2012-01-20 00:19:20.420652913 +0100 -@@ -3435,9 +3435,7 @@ - cfitsioinc=$found_hdr - cfitsioincdir=$found_dir - -- # At this time, libcfitsio.a should always be prefered over .so, -- # to avoid forcing users to install cfitsio. -- check_library "libcfitsio cfitsio" "no" "$cfitsiolibdir" \ -+ check_library "libcfitsio cfitsio" "yes" "$cfitsiolibdir" \ - $CFITSIO ${CFITSIO:+$CFITSIO/lib} ${CFITSIO:+$CFITSIO/.libs} \ - ${finkdir:+$finkdir/lib} \ - /usr/local/lib /usr/lib /opt/cfitsio/lib diff --git a/sci-physics/root/files/root-5.32.00-chklib64.patch b/sci-physics/root/files/root-5.32.00-chklib64.patch deleted file mode 100644 index 979220f02..000000000 --- a/sci-physics/root/files/root-5.32.00-chklib64.patch +++ /dev/null @@ -1,24 +0,0 @@ -bug fix for #406817 ---- configure.orig 2012-02-29 19:46:41.000000000 +0400 -+++ configure 2012-03-22 03:28:43.458968696 +0400 -@@ -441,14 +441,13 @@ - fi - else - if file $filearg $chklib64 | grep 'ASCII' > /dev/null 2>& 1 ; then -- check_link $chklib64 -- ret=$link_result -- else -- logmsg " file $filearg $chklib64 | grep '64-bit'" -- if file $filearg $chklib64 | grep '64-bit' > /dev/null 2>& 1 ; then -- ret=1 -- fi -+ # get real binary .so name from .so ld script -+ chklib64=$(gawk '($1 == "GROUP") { print $3 }' $chklib64) - fi -+ logmsg " file $filearg $chklib64 | grep '64-bit'" -+ if file $filearg $chklib64 | grep '64-bit' > /dev/null 2>& 1 ; then -+ ret=1 -+ fi - fi - logmsg " result: $ret" - if test $ret -eq 1 ; then diff --git a/sci-physics/root/files/root-5.34.13-unuran.patch b/sci-physics/root/files/root-5.34.13-unuran.patch deleted file mode 100644 index 826231318..000000000 --- a/sci-physics/root/files/root-5.34.13-unuran.patch +++ /dev/null @@ -1,40 +0,0 @@ -diff --git a/math/unuran/Module.mk b/math/unuran/Module.mk -index 00a530b..7cd22dc 100644 ---- a/math/unuran/Module.mk -+++ b/math/unuran/Module.mk -@@ -31,7 +31,7 @@ UNRS := $(wildcard $(UNRDIRS)/src/utils/*.c) \ - $(wildcard $(UNRDIRS)/src/uniform/*.c) \ - $(wildcard $(UNRDIRS)/src/urng/*.c) - else --UNRTARCONTENT:=$(subst $(UNRVERS),$(UNRDIRS),$(shell mkdir -p $(UNRDIR); cd $(UNRDIR); gunzip -c $(UNRSRCS) | tar tf -)) -+UNRTARCONTENT:= - UNRS := $(filter %.c, \ - $(filter $(UNRDIRS)/src/utils/%,$(UNRTARCONTENT)) \ - $(filter $(UNRDIRS)/src/methods/%,$(UNRTARCONTENT)) \ -@@ -81,10 +81,9 @@ INCLUDEFILES += $(UNURANDEP) - ##### local rules ##### - .PHONY: all-$(MODNAME) clean-$(MODNAME) distclean-$(MODNAME) - --include/%.h: $(UNURANDIRI)/%.h $(UNURANETAG) -+include/%.h: $(UNURANDIRI)/%.h - cp $< $@ - --$(UNURANDEP): $(UNRCFG) - $(UNRS): $(UNURANETAG) - - $(UNURANETAG): $(UNRSRCS) -@@ -137,12 +136,12 @@ $(UNRCFG): $(UNURANETAG) - GNUMAKE=$(MAKE) ./configure CC="$$ACC" \ - CFLAGS="$$ACFLAGS"); - --$(UNURANLIB): $(UNRCFG) $(UNRO) $(UNURANO) $(UNURANDO) $(ORDER_) \ -+$(UNURANLIB): $(UNURANO) $(UNURANDO) $(ORDER_) \ - $(MAINLIBS) $(UNURANLIBDEP) - @$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \ - "$(SOFLAGS)" libUnuran.$(SOEXT) $@ \ - "$(UNURANO) $(UNURANDO)" \ -- "$(UNURANLIBEXTRA) $(UNRO)" -+ "$(UNURANLIBEXTRA) -lunuran" - - $(UNURANDS): $(UNRINIT) $(UNURANDH1) $(UNURANL) $(ROOTCINTTMPDEP) - $(MAKEDIR) diff --git a/sci-physics/root/files/root-6.00.01-dotfont.patch b/sci-physics/root/files/root-6.00.01-dotfont.patch deleted file mode 100644 index 6c765f75a..000000000 --- a/sci-physics/root/files/root-6.00.01-dotfont.patch +++ /dev/null @@ -1,58 +0,0 @@ ---- root/html/src/TClassDocOutput.cxx.orig 2012-06-08 02:13:51.000000000 +0400 -+++ root/html/src/TClassDocOutput.cxx 2012-06-08 02:34:45.705436577 +0400 -@@ -625,7 +625,7 @@ - << "size=\"8,10\";" << std::endl - << "ratio=auto;" << std::endl - << "margin=0;" << std::endl -- << "node [shape=plaintext,fontsize=40,width=4,height=0.75];" << std::endl -+ << "node [shape=plaintext,fontsize=40,width=4,height=0.75,fontname=\"DejaVu Serif\"];" << std::endl - << "\"" << fCurrentClass->GetName() << "\" [shape=ellipse];" << std::endl; - - std::stringstream ssDep; -@@ -704,7 +704,7 @@ - outdot << ";" << std::endl; - } else if (writeAndMoreFor) { - outdot << " \"...andmore" << writeAndMoreFor->GetName() -- << "\" [label=\"...and more\",fontname=\"Times-Italic\",fillcolor=lightgrey,style=filled];" << std::endl; -+ << "\" [label=\"...and more\",fontname=\"DejaVu Serif Italic\",fillcolor=lightgrey,style=filled];" << std::endl; - } - } - if (!levelExists) break; -@@ -733,7 +733,7 @@ - << "ranksep=0.1;" << std::endl - << "nodesep=0;" << std::endl - << "margin=0;" << std::endl; -- outdot << " node [style=filled,width=0.7,height=0.15,fixedsize=true,shape=plaintext,fontsize=10];" << std::endl; -+ outdot << " node [style=filled,width=0.7,height=0.15,fixedsize=true,shape=plaintext,fontsize=10,fontname=\"DejaVu Serif\"];" << std::endl; - - std::stringstream ssDep; - const int numColumns = 3; -@@ -939,7 +939,7 @@ - << "ranksep=0;" << std::endl - << "nodesep=0;" << std::endl - << "size=\"8,10\";" << std::endl -- << "node [fontsize=20,shape=plaintext];" << std::endl; -+ << "node [fontsize=20,shape=plaintext,fontname=\"DejaVu Serif\"];" << std::endl; - - for (std::list::iterator iFile = listFilesToParse.begin(); - iFile != listFilesToParse.end(); ++iFile) { -@@ -999,7 +999,8 @@ - << "ranksep=0.7;" << std::endl - << "nodesep=0.3;" << std::endl - << "size=\"8,8\";" << std::endl -- << "ratio=compress;" << std::endl; -+ << "ratio=compress;" << std::endl -+ << "node [fontname=\"DejaVu Serif\"];" << std::endl; - - TString libs(fCurrentClass->GetSharedLibs()); - outdot << "\"All Libraries\" [URL=\"LibraryDependencies.html\",shape=box,rank=max,fillcolor=lightgray,style=filled];" << std::endl; -@@ -1109,7 +1110,8 @@ - - dotout << "digraph G {" << std::endl - << "ratio=auto;" << std::endl -- << "rankdir=RL;" << std::endl; -+ << "rankdir=RL;" << std::endl -+ << "node [fontname=\"DejaVu Serif\"];" << std::endl; - - // loop on all classes - TClassDocInfo* cdi = 0; diff --git a/sci-physics/root/files/root-6.00.01-llvm.patch b/sci-physics/root/files/root-6.00.01-llvm.patch deleted file mode 100644 index c6abb353e..000000000 --- a/sci-physics/root/files/root-6.00.01-llvm.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/interpreter/llvm/src/Makefile.config.in b/interpreter/llvm/src/Makefile.config.in -index 7633be2..c8756b1 100644 ---- a/interpreter/llvm/src/Makefile.config.in -+++ b/interpreter/llvm/src/Makefile.config.in -@@ -170,6 +170,8 @@ CXXFLAGS += @CXXFLAGS@ - - # Linker flags. - LDFLAGS += @LDFLAGS@ -+NOUNDEF := -Wl,--no-undefined -+LDFLAGS := $(filter-out $(NOUNDEF),$(LDFLAGS)) - - # Path to the library archiver program. - AR_PATH = @AR@ diff --git a/sci-physics/root/files/root-6.06.00-nobyte-compile.patch b/sci-physics/root/files/root-6.06.00-nobyte-compile.patch deleted file mode 100644 index 61ffef7ac..000000000 --- a/sci-physics/root/files/root-6.06.00-nobyte-compile.patch +++ /dev/null @@ -1,39 +0,0 @@ -diff --git a/bindings/pyroot/Module.mk b/bindings/pyroot/Module.mk -index 8c2782d..f41e0aa 100644 ---- a/bindings/pyroot/Module.mk -+++ b/bindings/pyroot/Module.mk -@@ -65,10 +65,6 @@ $(LPATH)/ROOTaaS/%: $(MODDIR)/ROOTaaS/% - @[ -d $(dir $@) ] || mkdir -p $(dir $@) - cp -R $< $@ - endif --ROOTPYC := $(ROOTPY:.py=.pyc) --ROOTPYO := $(ROOTPY:.py=.pyo) --ROOTAASC := $(ROOTAAS:.py=.pyc) --ROOTAASO := $(ROOTAAS:.py=.pyo) - - # used in the main Makefile - ALLHDRS += $(patsubst $(MODDIRI)/%.h,include/%.h,$(PYROOTH)) -@@ -87,12 +83,9 @@ INCLUDEFILES += $(PYROOTDEP) - include/%.h: $(PYROOTDIRI)/%.h - cp $< $@ - --%.pyc: %.py; python -c 'import py_compile; py_compile.compile( "$<" )' --%.pyo: %.py; python -O -c 'import py_compile; py_compile.compile( "$<" )' -- --$(PYROOTLIB): $(PYROOTO) $(PYROOTDO) $(ROOTPY) $(ROOTPYC) $(ROOTPYO) \ -+$(PYROOTLIB): $(PYROOTO) $(PYROOTDO) $(ROOTPY) \ - $(ROOTLIBSDEP) $(PYTHONLIBDEP) \ -- $(ROOTAAS) $(ROOTAASC) $(ROOTAASO) -+ $(ROOTAAS) - - @$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \ - "$(SOFLAGS)" libPyROOT.$(SOEXT) $@ \ -@@ -138,7 +131,7 @@ clean:: clean-$(MODNAME) - - distclean-$(MODNAME): clean-$(MODNAME) - @rm -f $(PYROOTDEP) $(PYROOTDS) $(PYROOTDH) $(PYROOTLIB) \ -- $(ROOTPY) $(ROOTPYC) $(ROOTPYO) $(PYROOTMAP) \ -+ $(ROOTPY) $(PYROOTMAP) \ - $(PYROOTPYD) $(PYTHON64DEP) $(PYTHON64) - @rm -rf $(LPATH)/ROOTaaS bin/ROOTaaS - diff --git a/sci-physics/root/files/rootd.confd b/sci-physics/root/files/rootd.confd deleted file mode 100644 index 7516b8c9b..000000000 --- a/sci-physics/root/files/rootd.confd +++ /dev/null @@ -1,8 +0,0 @@ -# conf.d file for root daemon - -# User to run as (default is `rootd') -ROOTD_USER="rootd" - -# Please refer to the rootd(1) man(1) page for more information on -# command line parameters. -ROOTD_OPTS="" diff --git a/sci-physics/root/files/rootd.initd b/sci-physics/root/files/rootd.initd deleted file mode 100644 index b79d7bbed..000000000 --- a/sci-physics/root/files/rootd.initd +++ /dev/null @@ -1,27 +0,0 @@ -#!/sbin/openrc-run -# Copyright 1999-2017 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -depend() { - need net - use logger - provide root-file-server -} - -start() { - ebegin "Starting ROOT file server" - pid=$(start-stop-daemon --start --quiet --user ${ROOTD_USER} \ - --pidfile /var/run/rootd.pid \ - --exec /usr/bin/rootd -- ${ROOTD_OPTS}) - retval=$? - echo ${ROOTD_PID} > /var/run/rootd.pid - eend ${retval} -} - -stop() { - ebegin "Stopping ROOT file server" - start-stop-daemon --stop --quiet \ - --pidfile /var/run/rootd.pid \ - --exec /usr/bin/rootd - eend $? -} diff --git a/sci-physics/root/metadata.xml b/sci-physics/root/metadata.xml deleted file mode 100644 index 6c223c096..000000000 --- a/sci-physics/root/metadata.xml +++ /dev/null @@ -1,29 +0,0 @@ - - - - - bircoph@gentoo.org - Andrew Savchenko - - - sci-physics@gentoo.org - Gentoo Physics Project - - -ROOT Object Oriented Technologies is an object oriented data -analysis framework written in C++ by the CERN. Widely used in -high energy physics, but also in other data analysis applications. It -contains the CINT C/C++ interpreter and many classes such as -statistics, serialization, optimization, linear algebra, graphics, -GUI toolkit, and a complete visualization framework. - - - Support for images and data from FITS files with sci-libs/cfitsio - Enable ROOT-CAD interface using sci-libs/opencascade - Enable http server support including but not limited to fastcgi support - Build all math related libraries plugins, needs sci-libs/gsl - Build the interface for sci-physics/pythia version 6.x - Build the interface for sci-physics/pythia version 8.x - Build the interface for net-libs/xrootd - - diff --git a/sci-physics/root/root-9999.ebuild b/sci-physics/root/root-9999.ebuild deleted file mode 100644 index bb5692c84..000000000 --- a/sci-physics/root/root-9999.ebuild +++ /dev/null @@ -1,444 +0,0 @@ -# Copyright 1999-2017 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -if [[ ${PV} == "9999" ]] ; then - inherit git-r3 - EGIT_REPO_URI="http://root.cern.ch/git/root.git" - KEYWORDS="" -else - SRC_URI="ftp://root.cern.ch/${PN}/${PN}_v${PV}.source.tar.gz" - KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" - S="${WORKDIR}/${PN}" -fi - -PYTHON_COMPAT=( python2_7 ) - -inherit elisp-common eutils fdo-mime fortran-2 multilib python-single-r1 \ - toolchain-funcs user versionator - -DESCRIPTION="C++ data analysis framework and interpreter from CERN" -HOMEPAGE="http://root.cern.ch/" -DOC_URI="ftp://root.cern.ch/${PN}/doc" - -SLOT="0/$(get_version_component_range 1-3 ${PV})" -LICENSE="LGPL-2.1 freedist MSttfEULA LGPL-3 libpng UoI-NCSA" -IUSE="+X afs avahi doc emacs examples fits fftw geocad graphviz - http kerberos ldap +math minimal mpi mysql odbc +opengl openmp - oracle postgres prefix pythia6 pythia8 python qt4 sqlite ssl - xinetd xml xrootd" - -# TODO: add support for: davix -# TODO: ROOT-6 supports x32 ABI, but half of its dependencies doesn't -# TODO: unbundle: cling, vdt - -REQUIRED_USE=" - mpi? ( math !openmp ) - opengl? ( X ) - openmp? ( math !mpi ) - python? ( ${PYTHON_REQUIRED_USE} ) - qt4? ( X ) -" - -CDEPEND=" - app-arch/xz-utils:0= - >=dev-lang/cfortran-4.4-r2 - dev-libs/libpcre:3= - media-fonts/dejavu - media-libs/freetype:2= - media-libs/giflib:0= - media-libs/libpng:0= - media-libs/tiff:0= - >=sys-devel/clang-3.4:= - sys-libs/zlib:0= - virtual/jpeg:0 - virtual/shadow - X? ( - media-libs/ftgl:0= - media-libs/glew:0= - x11-libs/libX11:0= - x11-libs/libXext:0= - x11-libs/libXpm:0= - !minimal? ( - opengl? ( virtual/opengl virtual/glu x11-libs/gl2ps:0= ) - qt4? ( - dev-qt/qtgui:4= - dev-qt/qtopengl:4= - dev-qt/qt3support:4= - dev-qt/qtsvg:4= - dev-qt/qtwebkit:4= - dev-qt/qtxmlpatterns:4= - ) - x11-libs/libXft:0= - ) - ) - !minimal? ( - afs? ( net-fs/openafs ) - avahi? ( net-dns/avahi:0= ) - emacs? ( virtual/emacs ) - fits? ( sci-libs/cfitsio:0= ) - fftw? ( sci-libs/fftw:3.0= ) - geocad? ( sci-libs/opencascade:= ) - graphviz? ( media-gfx/graphviz:0= ) - http? ( dev-libs/fcgi:0= ) - kerberos? ( virtual/krb5 ) - ldap? ( net-nds/openldap:0= ) - math? ( - sci-libs/gsl:0= - sci-mathematics/unuran:0= - mpi? ( virtual/mpi ) - ) - mysql? ( virtual/mysql ) - odbc? ( || ( dev-db/libiodbc:0 dev-db/unixODBC:0 ) ) - oracle? ( dev-db/oracle-instantclient-basic:0= ) - postgres? ( dev-db/postgresql:= ) - pythia6? ( sci-physics/pythia:6= ) - pythia8? ( >=sci-physics/pythia-8.1.80:8= ) - python? ( ${PYTHON_DEPS} ) - sqlite? ( dev-db/sqlite:3= ) - ssl? ( dev-libs/openssl:0= ) - xml? ( dev-libs/libxml2:2= ) - xrootd? ( >=net-libs/xrootd-3.3.5:0= ) - )" - -# TODO: ruby is not yet ported to ROOT-6, reenable when (if?) ready -# ruby? ( -# dev-lang/ruby -# dev-ruby/rubygems -# ) -# -# TODO: root-6.00.01 crashes with system libafterimage -# || ( -# media-libs/libafterimage:0=[gif,jpeg,png,tiff] -# >=x11-wm/afterstep-2.2.11:0=[gif,jpeg,png,tiff] -# ) -# --disable-builtin-afterimage - -DEPEND="${CDEPEND} - virtual/pkgconfig" - -RDEPEND="${CDEPEND} - xinetd? ( sys-apps/xinetd )" - -PDEPEND="doc? ( ~app-doc/root-docs-${PV}[http=,math=] )" - -# install stuff in ${P} and not ${PF} for easier tracking in root-docs -DOC_DIR="/usr/share/doc/${P}" - -die_compiler() { - die "Need one of the following C++11 capable compilers:"\ - " >=sys-devel/gcc[cxx]-4.8"\ - " >=sys-devel/clang-3.4"\ - " >=dev-lang/icc-13" -} - -pkg_setup() { - 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." - elog "You can use the env variable EXTRA_ECONF variable for this." - elog "For example, for SRP, you would set: " - elog "EXTRA_ECONF=\"--enable-srp --with-srp-libdir=${EROOT%/}/usr/$(get_libdir)\"" - echo - - enewgroup rootd - enewuser rootd -1 -1 /var/spool/rootd rootd - - use minimal && return - - if use math; then - if use openmp; then - if [[ $(tc-getCXX)$ == *g++* ]] && ! tc-has-openmp; then - ewarn "You are using a g++ without OpenMP capabilities" - die "Need an OpenMP capable compiler" - else - export USE_OPENMP=1 USE_PARALLEL_MINUIT2=1 - fi - elif use mpi; then - export USE_MPI=1 USE_PARALLEL_MINUIT2=1 - fi - fi - - # check for supported compilers - case $(tc-getCXX) in - *g++*) - if ! version_is_at_least "4.8" "$(gcc-version)"; then - eerror "You are using a g++ without C++11 capabilities" - die_compiler - fi - ;; - *clang++*) - # >=clang-3.4 is already in DEPEND - ;; - *icc*|*icpc*) - if ! version_is_at_least "13" "$(has_version dev-lang/icc)"; then - eerror "You are using an icc without C++11 capabilities" - die_compiler - fi - ;; - *) - ewarn "You are using an unsupported compiler." - ewarn "Please report any issues upstream." - ;; - esac -} - -src_prepare() { - epatch \ - "${FILESDIR}"/${PN}-5.28.00b-glibc212.patch \ - "${FILESDIR}"/${PN}-5.32.00-afs.patch \ - "${FILESDIR}"/${PN}-5.32.00-cfitsio.patch \ - "${FILESDIR}"/${PN}-5.32.00-chklib64.patch \ - "${FILESDIR}"/${PN}-5.34.13-unuran.patch \ - "${FILESDIR}"/${PN}-6.00.01-dotfont.patch \ - "${FILESDIR}"/${PN}-6.06.00-nobyte-compile.patch \ - "${FILESDIR}"/${PN}-6.00.01-llvm.patch - - # make sure we use system libs and headers - rm montecarlo/eg/inc/cfortran.h README/cfortran.doc || die - #rm -r graf2d/asimage/src/libAfterImage || die - rm -r graf3d/ftgl/{inc,src} || die - rm -r graf2d/freetype/src || die - rm -r graf3d/glew/{inc,src} || die - rm -r core/pcre/src || die - rm -r math/unuran/src/unuran-*.tar.gz || die - LANG=C LC_ALL=C find core/zip -type f -name "[a-z]*" -print0 | \ - xargs -0 rm || die - rm -r core/lzma/src/*.tar.gz || die - rm graf3d/gl/src/gl2ps.* || die - sed -i -e 's/^GLLIBS *:= .* $(OPENGLLIB)/& -lgl2ps/' \ - graf3d/gl/Module.mk || die - - # In Gentoo, libPythia6 is called libpythia6 - # iodbc is in /usr/include/iodbc - # pg_config.h is checked instead of libpq-fe.h - sed -i \ - -e 's:libPythia6:libpythia6:g' \ - -e 's:$ODBCINCDIR:$ODBCINCDIR /usr/include/iodbc:' \ - -e 's:libpq-fe.h:pg_config.h:' \ - configure || die "adjusting configure for Gentoo failed" - - # prefixify the configure script - sed -i \ - -e 's:/usr:${EPREFIX}/usr:g' \ - configure || die "prefixify configure failed" - - # CSS should use local images - sed -i -e 's,http://.*/images/,,' etc/html/ROOT.css || die "html sed failed" -} - -# NB: ROOT uses bundled LLVM, because it is patched and API-incompatible with -# system LLVM. -# NB: As of 6.00.0.1 cmake is not ready as it can't fully replace configure, -# e.g. for afs and geocad. - -src_configure() { - local -a myconf - # Some compilers need special care - case $(tc-getCXX) in - *clang++*) - myconf=( - --with-clang - --with-f77="$(tc-getFC)" - ) - ;; - *icc*|*icpc*) - # For icc we need to provide architecture manually - # and not to tamper with tc-get* - use x86 && myconf=( linuxicc ) - use amd64 && myconf=( linuxx8664icc ) - ;; - *) # gcc goes here too - myconf=( - --with-cc="$(tc-getCC)" - --with-cxx="$(tc-getCXX)" - --with-f77="$(tc-getFC)" - --with-ld="$(tc-getCXX)" - ) - ;; - esac - - # the configure script is not the standard autotools - myconf+=( - --prefix="${EPREFIX}/usr" - --etcdir="${EPREFIX}/etc/root" - --libdir="${EPREFIX}/usr/$(get_libdir)/${PN}" - --docdir="${EPREFIX}${DOC_DIR}" - --tutdir="${EPREFIX}${DOC_DIR}/examples/tutorials" - --testdir="${EPREFIX}${DOC_DIR}/examples/tests" - --disable-werror - --nohowto - ) - - if use minimal; then - myconf+=( $(usex X --gminimal --minimal) ) - else - myconf+=( - --with-afs-shared=yes - --with-sys-iconpath="${EPREFIX}/usr/share/pixmaps" - --disable-builtin-ftgl - --disable-builtin-freetype - --disable-builtin-glew - --disable-builtin-pcre - --disable-builtin-zlib - --disable-builtin-lzma - --enable-astiff - --enable-explicitlink - --enable-gdml - --enable-memstat - --enable-shadowpw - --enable-shared - --enable-soversion - --enable-table - --fail-on-missing - --cflags='${CFLAGS}' - --cxxflags='${CXXFLAGS}' - $(use_enable X x11) - $(use_enable X asimage) - $(use_enable X xft) - $(use_enable afs) - $(use_enable avahi bonjour) - $(use_enable fits fitsio) - $(use_enable fftw fftw3) - $(use_enable geocad) - $(use_enable graphviz gviz) - $(use_enable http) - $(use_enable kerberos krb5) - $(use_enable ldap) - $(use_enable math genvector) - $(use_enable math gsl-shared) - $(use_enable math mathmore) - $(use_enable math minuit2) - $(use_enable math roofit) - $(use_enable math tmva) - $(use_enable math vc) - $(use_enable math vdt) - $(use_enable math unuran) - $(use_enable mysql) - $(usex mysql \ - "--with-mysql-incdir=${EPREFIX}/usr/include/mysql" "") - $(use_enable odbc) - $(use_enable opengl) - $(use_enable oracle) - $(use_enable postgres pgsql) - $(usex postgres \ - "--with-pgsql-incdir=$(pg_config --includedir)" "") - $(use_enable prefix rpath) - $(use_enable pythia6) - $(use_enable pythia8) - $(use_enable python) - $(use_enable qt4 qt) - $(use_enable qt4 qtgsi) - $(use_enable sqlite) - $(use_enable ssl) - $(use_enable xml) - $(use_enable xrootd) - ${EXTRA_ECONF} - ) - fi - - ./configure ${myconf[@]} || die "configure failed" -} - -src_compile() { - emake \ - OPT="${CXXFLAGS}" \ - F77OPT="${FFLAGS}" \ - ROOTSYS="${S}" \ - LD_LIBRARY_PATH="${S}/lib" - use emacs && ! use minimal && elisp-compile build/misc/*.el -} - -daemon_install() { - local daemons="rootd proofd" - dodir /var/spool/rootd - fowners rootd:rootd /var/spool/rootd - dodir /var/spool/rootd/{pub,tmp} - fperms 1777 /var/spool/rootd/{pub,tmp} - - for i in ${daemons}; do - newinitd "${FILESDIR}"/${i}.initd ${i} - newconfd "${FILESDIR}"/${i}.confd ${i} - done - if use xinetd; then - insinto /etc/xinetd - doins "${S}"/etc/daemons/{rootd,proofd}.xinetd - fi -} - -desktop_install() { - cd "${S}" - echo "Icon=root-system-bin" >> etc/root.desktop - domenu etc/root.desktop - doicon build/package/debian/root-system-bin.png - - insinto /usr/share/icons/hicolor/48x48/mimetypes - doins build/package/debian/application-x-root.png - - insinto /usr/share/icons/hicolor/48x48/apps - doicon build/package/debian/root-system-bin.xpm -} - -cleanup_install() { - # Cleanup of files either already distributed or unused on Gentoo - pushd "${ED}" > /dev/null - rm usr/share/root/fonts/LICENSE || die - rm etc/root/proof/*.sample || die - rm -r etc/root/daemons || die - # these should be in PATH - mv etc/root/proof/utils/pq2/pq2* usr/bin/ || die - rm ${DOC_DIR#/}/{INSTALL,LICENSE} || die - use examples || rm -r ${DOC_DIR#/}/examples || die -} - -src_install() { - # Write access to /dev/random is required to run root.exe - # More information at https://sft.its.cern.ch/jira/browse/ROOT-8146 - addwrite /dev/random - - DOCS=($(find README/* -maxdepth 1 -type f)) - default - dodoc README.md - - echo "LDPATH=${EPREFIX%/}/usr/$(get_libdir)/root" > 99root - - if ! use minimal; then - use pythia8 && echo "PYTHIA8=${EPREFIX%/}/usr" >> 99root - if use python; then - echo "PYTHONPATH=${EPREFIX%/}/usr/$(get_libdir)/root" >> 99root - python_optimize "${D}/usr/$(get_libdir)/root" - fi - use emacs && elisp-install ${PN} build/misc/*.{el,elc} - if use examples; then - # these should really be taken care of by the root make install - insinto ${DOC_DIR}/examples/tutorials/tmva - doins -r tmva/test - fi - fi - doenvd 99root - - # The build system installs Emacs support unconditionally in the wrong - # directory. Remove it and call elisp-install in case of USE=emacs. - rm -r "${ED}"/usr/share/emacs || die - - daemon_install - desktop_install - cleanup_install - - # do not copress files used by ROOT's CLI (.credit, .demo, .license) - docompress -x "${DOC_DIR}"/{CREDITS,LICENSE,examples/tutorials} - # needed for .license command to work - dosym "${ED}"usr/portage/licenses/LGPL-2.1 "${DOC_DIR}/LICENSE" -} - -pkg_postinst() { - fdo-mime_desktop_database_update -} - -pkg_postrm() { - fdo-mime_desktop_database_update -} -- cgit v1.2.3-65-gdbad