summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJustin Lecher <jlec@gentoo.org>2010-06-25 17:12:36 +0000
committerJustin Lecher <jlec@gentoo.org>2010-06-25 17:12:36 +0000
commit64f040f56d9c5d24ecfa083b8de1bae885186610 (patch)
tree3c5d7cb4b5b8cc65ff311b24156a2f1b17f5ab32 /sci-physics
parentarm stable (diff)
downloadhistorical-64f040f56d9c5d24ecfa083b8de1bae885186610.tar.gz
historical-64f040f56d9c5d24ecfa083b8de1bae885186610.tar.bz2
historical-64f040f56d9c5d24ecfa083b8de1bae885186610.zip
Fixes for PYTHON ABIs
Package-Manager: portage-2.2_rc67/cvs/Linux x86_64
Diffstat (limited to 'sci-physics')
-rw-r--r--sci-physics/root/ChangeLog7
-rw-r--r--sci-physics/root/Manifest10
-rw-r--r--sci-physics/root/files/root-5.26.00-nobyte-compile.patch181
-rw-r--r--sci-physics/root/root-5.26.00-r4.ebuild307
4 files changed, 500 insertions, 5 deletions
diff --git a/sci-physics/root/ChangeLog b/sci-physics/root/ChangeLog
index c48e7c202aff..af52d14d19a4 100644
--- a/sci-physics/root/ChangeLog
+++ b/sci-physics/root/ChangeLog
@@ -1,6 +1,11 @@
# ChangeLog for sci-physics/root
# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sci-physics/root/ChangeLog,v 1.68 2010/06/22 16:07:52 bicatali Exp $
+# $Header: /var/cvsroot/gentoo-x86/sci-physics/root/ChangeLog,v 1.69 2010/06/25 17:12:36 jlec Exp $
+
+*root-5.26.00-r4 (25 Jun 2010)
+
+ 25 Jun 2010; Justin Lecher <jlec@gentoo.org> +root-5.26.00-r4.ebuild:
+ Fixes for PYTHON ABIs
22 Jun 2010; SĂ©bastien Fabbro <bicatali@gentoo.org>
root-5.26.00-r3.ebuild:
diff --git a/sci-physics/root/Manifest b/sci-physics/root/Manifest
index a4616828c5c2..3dafc353c4b6 100644
--- a/sci-physics/root/Manifest
+++ b/sci-physics/root/Manifest
@@ -5,6 +5,7 @@ AUX olbd.confd 197 RMD160 798de1808502f3e4ecfc5f024b56a419d9824057 SHA1 f2a4385f
AUX olbd.initd 714 RMD160 e2cc28474a280345f6962f890f5ddb3884d7f69f SHA1 4dcdf7ba35a834db2ac5a5bdfe4d2c31938f0552 SHA256 5d6c1b6e7b40d6842df6a6f7314fa2f49329b820ff86592d2f8d2662a414ec39
AUX proofd.confd 415 RMD160 3814aacb63d82b9d060086f9bef304d431a15b4e SHA1 31eb7af239a0042f887b5089a7c6c7ec5d6662e9 SHA256 261738817b4ba50fb07007741305d0a88e9067a45e3cbfd1d3fc8bebe70ece38
AUX proofd.initd 717 RMD160 2ff4ca04e838b171b1a60941ba3aded645a67147 SHA1 80cd4f6fd1e818edf27368b1175ed504e2c619a6 SHA256 341d1b4cd09731c506e97278959e6b669d63d65efb036070ecd4f31b01f34305
+AUX root-5.26.00-nobyte-compile.patch 7116 RMD160 0770c6024d9a4e8fcee89026417315b92b95e824 SHA1 49b674628ebeeb45bc8fe4a7a06245c68b8c8bf1 SHA256 ab8f4a3df5c3719859db1503a7548cff8254a39d603e2e2ee812a28c8edff905
AUX rootd.confd 199 RMD160 9ca9864292e7301d3feb6c36d88ba16002b7d7fa SHA1 822983a24e219bd860124f363a1e4250a17026dd SHA256 7b69f646ce0b2546ce797ec4a05949b02302dc5f4e41d2e8896ed0bc6575ac8d
AUX rootd.initd 732 RMD160 05b31561a32bc52e223b46fae6ef897ec33e3c9c SHA1 b1dfb6a0a50f151c51f4742ff2206f9430fdbba5 SHA256 7b745b606cab0212d07c9f1079d3f55c85ffc65e9da3a235d1a3c95945d28eb5
AUX xrootd.confd 200 RMD160 2344c73ca3c27adeb70b092850cfd292af7d58bd SHA1 f2b895f43d3537e8614a907c7c94642f01c084e4 SHA256 03c1191168ddea3bc6621e26eb56e509e6c9a4d58756ffbbd07ff6657200e57d
@@ -28,12 +29,13 @@ EBUILD root-5.22.00-r3.ebuild 9561 RMD160 5efdbda913f2091f316ad06cafb6e5d371768b
EBUILD root-5.24.00-r1.ebuild 9087 RMD160 de3a2f61443630b69f2182be7ba06749e47da484 SHA1 e55773b0973bf6549225603371e30341cf209733 SHA256 367de614e268c99ab953d21e97054bdfa584599b85ef7ddeef560e3e653a44d0
EBUILD root-5.26.00-r2.ebuild 8948 RMD160 2503834aee34a248c8d7110002d846b9b2782dd0 SHA1 042e84f5b2fa1d663282185167d8ecd1eab3f80e SHA256 61eeb55a31a23b6311772c35e205bcd2cc1b0d908e6e20741ff88df59abd333d
EBUILD root-5.26.00-r3.ebuild 8864 RMD160 20ada8519be05071d41e11304ef6eb8f398c9a22 SHA1 b850af775d32d17460c60dbbf239eb74041428f4 SHA256 8d72d3cd97a456b10ce482e479c5b5b23a515bbb9e469db5b24f7db2f82f8ccd
-MISC ChangeLog 19773 RMD160 fd8aa746f5b281601326cf40e4489af27bc74c22 SHA1 0e421e09f980d8d6cffa379386f7af7b6ca868a6 SHA256 8e25c577ae31a6c2fd0077108d575218a301de8b8d17a35bec45abea0bcba249
+EBUILD root-5.26.00-r4.ebuild 9207 RMD160 27eddd40d3a298fe4882d5a843c9279dffc8a5b7 SHA1 d4f17ee3581d6cd95f6435cf47f5cad0fbea90d9 SHA256 d0171c525bb365566a3e1b7dcd9387231a1a3bbf21e3660f07dae51c2a510aa7
+MISC ChangeLog 19898 RMD160 1dcd8702816cee14f1060e2f8939afedfa43005d SHA1 f8460e10190d06dc4d64e50a6692fa7986190bbf SHA256 fb599bc320bc80867a25b9fc7ebe790bed0b41808657da0f8882cec9da5eccdf
MISC metadata.xml 1570 RMD160 00e3660230a42e727d95f3533eccea61f2d88aff SHA1 dcefe31ff920ec459f68f77ffdea04264dbe4c0c SHA256 09ff2a9ee5791c9bfe4fc3c7242f8d635d0b41019e3b767cfefc41a5399855ac
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.15 (GNU/Linux)
-iEYEARECAAYFAkwg3+EACgkQ1ycZbhPLE2D/1ACfbllBD2bOsHThBn6pwvU6LDdi
-b2gAoIU+SB8hv5Tb4Q8XucmiqIyKstoT
-=jB8t
+iEYEARECAAYFAkwk44sACgkQgAnW8HDreRZsvgCgrs3uLJ33Q3SSYILcjqm1PoZ+
+Q/sAoIRaAnqpfb7KaMXp6STRIzEaE7h2
+=zpH6
-----END PGP SIGNATURE-----
diff --git a/sci-physics/root/files/root-5.26.00-nobyte-compile.patch b/sci-physics/root/files/root-5.26.00-nobyte-compile.patch
new file mode 100644
index 000000000000..98deb9741426
--- /dev/null
+++ b/sci-physics/root/files/root-5.26.00-nobyte-compile.patch
@@ -0,0 +1,181 @@
+diff --git a/Makefile b/Makefile
+index c352a18..ca938d2 100644
+--- a/Makefile
++++ b/Makefile
+@@ -1080,10 +1080,7 @@ uninstall:
+ if test "x$(RFLX_GRFLXPY)" != "x"; then \
+ rm -f $(DESTDIR)$(LIBDIR)/$(RFLX_GRFLXPY); \
+ fi; \
+- if test "x$(RFLX_GRFLXPYC)" != "x"; then \
+- rm -f $(DESTDIR)$(LIBDIR)/$(RFLX_GRFLXPYC); \
+- fi; \
+- if test "x$(RFLX_GRFLXPY)$(RFLX_GRFLXPYC)" != "x"; then \
++ if test "x$(RFLX_GRFLXPY)" != "x"; then \
+ dir=$(RFLX_GRFLXDD:lib/=); \
+ while test "x$${dir}" != "x" && \
+ test -d $(DESTDIR)$(LIBDIR)/$${dir} && \
+diff --git a/bindings/pyroot/Module.mk b/bindings/pyroot/Module.mk
+index 1b5b602..7028df2 100644
+--- a/bindings/pyroot/Module.mk
++++ b/bindings/pyroot/Module.mk
+@@ -48,8 +48,6 @@ else
+ ROOTPY := $(subst $(MODDIR),$(LPATH),$(ROOTPYS))
+ $(LPATH)/%.py: $(MODDIR)/%.py; cp $< $@
+ endif
+-ROOTPYC := $(ROOTPY:.py=.pyc)
+-ROOTPYO := $(ROOTPY:.py=.pyo)
+
+ # used in the main Makefile
+ ALLHDRS += $(patsubst $(MODDIRI)/%.h,include/%.h,$(PYROOTH))
+@@ -68,10 +66,8 @@ 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)
+ @$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
+ "$(SOFLAGS)" libPyROOT.$(SOEXT) $@ \
+@@ -112,7 +108,7 @@ clean:: clean-$(MODNAME)
+
+ distclean-$(MODNAME): clean-$(MODNAME)
+ @rm -f $(PYROOTDEP) $(PYROOTDS) $(PYROOTDH) $(PYROOTLIB) \
+- $(ROOTPY) $(ROOTPYC) $(ROOTPYO) $(PYROOTMAP) \
++ $(ROOTPY) $(PYROOTMAP) \
+ $(PYROOTPYD) $(PYTHON64DEP) $(PYTHON64)
+
+ distclean:: distclean-$(MODNAME)
+diff --git a/build/package/debian/rules b/build/package/debian/rules
+index c999032..75b51c3 100644
+--- a/build/package/debian/rules
++++ b/build/package/debian/rules
+@@ -624,10 +624,6 @@ install-arch:
+ -X$(SYSCONFDIR)/root/system.rootauthrc \
+ -X$(SYSCONFDIR)/root/system.rootdaemonrc \
+ -X$(PREFIX)/lib/root/$(SOVERS)/libAfterImage.a \
+- -X$(PREFIX)/lib/root/$(SOVERS)/PyCintex.pyc \
+- -X$(PREFIX)/lib/root/$(SOVERS)/PyCintex.pyo \
+- -X$(PREFIX)/lib/root/$(SOVERS)/ROOT.pyc \
+- -X$(PREFIX)/lib/root/$(SOVERS)/ROOT.pyo
+ # $(foreach i, \
+ # $(wildcard $(DTMP)/$(PREFIX)/lib/root/lib*.so.$(SOVERS)), \
+ # -X$(i:$(DTMP)/%=%) )
+diff --git a/cint/cintex/Module.mk b/cint/cintex/Module.mk
+index 556b37b..547b53a 100644
+--- a/cint/cintex/Module.mk
++++ b/cint/cintex/Module.mk
+@@ -31,10 +31,6 @@ else
+ CINTEXPY := $(subst $(MODDIR)/python,$(LPATH),$(CINTEXPYS))
+ $(LPATH)/%.py: $(MODDIR)/python/%.py; cp $< $@
+ endif
+-ifneq ($(BUILDPYTHON),no)
+-CINTEXPYC := $(CINTEXPY:.py=.pyc)
+-CINTEXPYO := $(CINTEXPY:.py=.pyo)
+-endif
+
+ # used in the main Makefile
+ ALLHDRS += $(patsubst $(MODDIRI)/Cintex/%.h,include/Cintex/%.h,$(CINTEXH))
+@@ -86,8 +82,6 @@ include/Cintex/%.h: $(CINTEXDIRI)/Cintex/%.h
+ fi)
+ cp $< $@
+
+-%.pyc: %.py; python -c 'import py_compile; py_compile.compile( "$<" )'
+-%.pyo: %.py; python -O -c 'import py_compile; py_compile.compile( "$<" )'
+
+ $(CINTEXLIB): $(CINTEXO) $(CINTEXPY) $(CINTEXPYC) $(CINTEXPYO) \
+ $(ORDER_) $(subst $(CINTEXLIB),,$(MAINLIBS)) $(CINTEXLIBDEP)
+diff --git a/cint/cintexcompat/Module.mk b/cint/cintexcompat/Module.mk
+index 03423b7..e7f2a3a 100644
+--- a/cint/cintexcompat/Module.mk
++++ b/cint/cintexcompat/Module.mk
+@@ -31,10 +31,6 @@ else
+ CINTEXPY := $(subst $(MODDIR)/python,$(LPATH),$(CINTEXPYS))
+ $(LPATH)/%.py: $(MODDIR)/python/%.py; cp $< $@
+ endif
+-ifneq ($(BUILDPYTHON),no)
+-CINTEXPYC := $(CINTEXPY:.py=.pyc)
+-CINTEXPYO := $(CINTEXPY:.py=.pyo)
+-endif
+
+ # used in the main Makefile
+ ALLHDRS += $(patsubst $(MODDIRI)/Cintex/%.h,include/Cintex/%.h,$(CINTEXH))
+@@ -86,12 +82,10 @@ include/Cintex/%.h: $(CINTEXDIRI)/Cintex/%.h
+ fi)
+ cp $< $@
+
+-%.pyc: %.py; python -c 'import py_compile; py_compile.compile( "$<" )'
+-%.pyo: %.py; python -O -c 'import py_compile; py_compile.compile( "$<" )'
+
+ ifeq ($(findstring $(MAKECMDGOALS),distclean maintainer-clean),)
+ # Avoid conflict with cintex/Module.mk
+-$(CINTEXLIB): $(CINTEXO) $(CINTEXPY) $(CINTEXPYC) $(CINTEXPYO) \
++$(CINTEXLIB): $(CINTEXO) $(CINTEXPY) \
+ $(ORDER_) $(subst $(CINTEXLIB),,$(MAINLIBS)) $(CINTEXLIBDEP)
+ @$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
+ "$(SOFLAGS)" libCintex.$(SOEXT) $@ "$(CINTEXO)" \
+@@ -113,7 +107,7 @@ clean-check-$(MODNAME):
+ clean:: clean-$(MODNAME)
+
+ distclean-$(MODNAME): clean-$(MODNAME)
+- @rm -f $(CINTEXDEP) $(CINTEXLIB) $(CINTEXMAP) $(CINTEXPY) $(CINTEXPYC) $(CINTEXPYO)
++ @rm -f $(CINTEXDEP) $(CINTEXLIB) $(CINTEXMAP) $(CINTEXPY)
+ @rm -rf include/Cintex
+
+ distclean:: distclean-$(MODNAME)
+diff --git a/cint/reflex/Module.mk b/cint/reflex/Module.mk
+index 71a4abc..27f3065 100644
+--- a/cint/reflex/Module.mk
++++ b/cint/reflex/Module.mk
+@@ -48,9 +48,6 @@ RFLX_GCCXMLPATHPY := $(RFLX_GRFLXDD)/gccxmlpath.py
+ RFLX_GRFLXS := $(wildcard $(RFLX_GRFLXSD)/*.py)
+ RFLX_GRFLXPY := $(patsubst $(RFLX_GRFLXSD)/%.py,$(RFLX_GRFLXDD)/%.py,$(RFLX_GRFLXS))
+ RFLX_GRFLXPY += $(RFLX_GCCXMLPATHPY)
+-ifneq ($(BUILDPYTHON),no)
+-RFLX_GRFLXPYC := $(subst .py,.pyc,$(RFLX_GRFLXPY))
+-endif
+
+ RFLX_LIBDIR = $(LIBDIR)
+
+@@ -97,7 +94,7 @@ ALLEXECS += $(RFLX_GENMAPX)
+ .PHONY: all-$(MODNAME) clean-$(MODNAME) distclean-$(MODNAME) \
+ clean-check-$(MODNAME) check-$(MODNAME) clean-genreflex
+
+-POSTBIN += $(RFLX_GRFLXPYC) $(RFLX_GRFLXPY)
++POSTBIN += $(RFLX_GRFLXPY)
+
+ include/Reflex/%.h: $(REFLEXDIRI)/Reflex/%.h
+ @(if [ ! -d "include/Reflex" ]; then \
+@@ -123,8 +120,6 @@ $(RFLX_GRFLXDD)/%.py: $(RFLX_GRFLXSD)/%.py $(RFLX_GCCXMLPATHPY)
+ mkdir -p lib/python/genreflex; fi )
+ cp $< $@
+
+-$(RFLX_GRFLXDD)/%.pyc: $(RFLX_GRFLXDD)/%.py
+- @python -c 'import py_compile; py_compile.compile( "$<" )'
+
+ $(RFLX_GENMAPO) : CXXFLAGS += -I$(REFLEXDIRS)/genmap
+
+@@ -149,7 +144,7 @@ $(REFLEXDICTMAP): bin/rlibmap$(EXEEXT) $(MAKEFILEDEP) $(REFLEXL)
+ $(RLIBMAP) -o $(REFLEXDICTMAP) -l $(REFLEXDICTLIB) \
+ -d $(REFLEXDICTLIBDEPM) -c $(REFLEXL)
+
+-all-$(MODNAME): $(REFLEXLIB) $(REFLEXDICTLIB) $(REFLEXDICTMAP) $(RFLX_GRFLXPYC) $(RFLX_GRFLXPY)
++all-$(MODNAME): $(REFLEXLIB) $(REFLEXDICTLIB) $(REFLEXDICTMAP) $(RFLX_GRFLXPY)
+
+ clean-genreflex:
+ @rm -rf lib/python/genreflex
+diff --git a/cint/reflex/python/CMakeLists.txt b/cint/reflex/python/CMakeLists.txt
+index b1faf57..55062b8 100644
+--- a/cint/reflex/python/CMakeLists.txt
++++ b/cint/reflex/python/CMakeLists.txt
+@@ -15,7 +15,7 @@ ENDIF (NOT PYTHONINTERP_FOUND)
+ ##################### sources ####################
+
+ FILE(GLOB_RECURSE GENREFLEX_SRCS RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} genreflex/*.py)
+-SET(GENREFLEX_SCRIPT ${CMAKE_CURRENT_BINARY_DIR}/genreflex/genreflex.pyc PARENT_SCOPE)
++SET(GENREFLEX_SCRIPT PARENT_SCOPE)
+
+ ##################### gccxmlpath ####################
+
diff --git a/sci-physics/root/root-5.26.00-r4.ebuild b/sci-physics/root/root-5.26.00-r4.ebuild
new file mode 100644
index 000000000000..5a0969677b19
--- /dev/null
+++ b/sci-physics/root/root-5.26.00-r4.ebuild
@@ -0,0 +1,307 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sci-physics/root/root-5.26.00-r4.ebuild,v 1.1 2010/06/25 17:12:36 jlec Exp $
+
+EAPI=3
+
+PYTHON_DEPEND="python? 2"
+
+inherit versionator eutils qt4 elisp-common fdo-mime python toolchain-funcs
+
+DOC_PV=$(get_major_version)_$(get_version_component_range 2)
+ROOFIT_DOC_PV=2.91-33
+TMVA_DOC_PV=4
+PATCH_PV=p04
+
+DESCRIPTION="C++ data analysis framework and interpreter from CERN"
+HOMEPAGE="http://root.cern.ch/"
+SRC_URI="
+ ftp://root.cern.ch/${PN}/${PN}_v${PV}.source.tar.gz
+ mirror://gentoo/${P}-patches-${PATCH_PV}.tar.bz2
+ doc? (
+ ftp://root.cern.ch/root/doc/Users_Guide_${DOC_PV}.pdf
+ ftp://root.cern.ch/root/doc/RooFit_Users_Manual_${ROOFIT_DOC_PV}.pdf
+ http://tmva.sourceforge.net/docu/TMVAUsersGuide.pdf -> TMVAUsersGuide-v${TMVA_DOC_PV}.pdf )"
+
+SLOT="0"
+LICENSE="LGPL-2.1"
+KEYWORDS="~amd64 ~hppa ~sparc ~x86"
+IUSE="afs clarens doc emacs examples fftw geant4 gsl kerberos ldap
+ +math mysql odbc +opengl openmp oracle postgres pythia6 pythia8 python
+ +reflex ruby qt4 ssl xft xml xinetd xrootd"
+
+# libafterimage ignored, to check every version
+# see https://savannah.cern.ch/bugs/?func=detailitem&item_id=30944
+# || ( >=media-libs/libafterimage-1.18 x11-wm/afterstep )
+CDEPEND=">=dev-lang/cfortran-4.4-r2
+ dev-libs/libpcre
+ >=media-libs/ftgl-2.1.3_rc5
+ media-libs/libpng
+ media-libs/jpeg
+ media-libs/giflib
+ media-libs/glew
+ media-libs/tiff
+ sys-apps/shadow
+ x11-libs/libXpm
+ x11-libs/libXft
+ afs? ( >=net-fs/openafs-1.4.7 )
+ clarens? ( dev-libs/xmlrpc-c )
+ emacs? ( virtual/emacs )
+ fftw? ( sci-libs/fftw:3.0 )
+ geant4? ( sci-physics/geant:4 )
+ gsl? ( >=sci-libs/gsl-1.8 )
+ kerberos? ( virtual/krb5 )
+ ldap? ( net-nds/openldap )
+ mysql? ( virtual/mysql )
+ odbc? ( || ( dev-db/libiodbc dev-db/unixODBC ) )
+ opengl? ( virtual/opengl virtual/glu )
+ oracle? ( dev-db/oracle-instantclient-basic )
+ postgres? ( dev-db/postgresql-base )
+ pythia6? ( sci-physics/pythia:6 )
+ pythia8? ( sci-physics/pythia:8 )
+ qt4? ( x11-libs/qt-gui:4
+ x11-libs/qt-opengl:4
+ x11-libs/qt-qt3support:4
+ x11-libs/qt-xmlpatterns:4 )
+ ruby? ( dev-lang/ruby
+ dev-ruby/rubygems )
+ ssl? ( dev-libs/openssl )
+ xml? ( dev-libs/libxml2 )"
+
+DEPEND="${CDEPEND}
+ dev-util/pkgconfig"
+
+RDEPEND="${CDEPEND}
+ xinetd? ( sys-apps/xinetd )"
+
+S="${WORKDIR}/${PN}"
+
+pkg_setup() {
+ elog
+ elog "You may want to build ROOT with these non Gentoo extra packages:"
+ elog "AliEn, castor, Chirp, dCache, gfal, gLite, Globus,"
+ elog "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=/usr/$(get_libdir)\""
+ elog
+ enewgroup rootd
+ enewuser rootd -1 -1 /var/spool/rootd rootd
+
+ if use openmp && \
+ [[ $(tc-getCC)$ == *gcc* ]] && \
+ ( [[ $(gcc-major-version)$(gcc-minor-version) -lt 42 ]] || \
+ ! has_version sys-devel/gcc[openmp] ); then
+ ewarn "You are using gcc and OpenMP is available with gcc >= 4.2"
+ ewarn "If you want to build this package with OpenMP, abort now,"
+ ewarn "and set CC to an OpenMP capable compiler"
+ epause 5
+ elif use openmp; then
+ export USE_OPENMP=1
+ use math && export USE_PARALLEL_MINUIT2=1
+ fi
+ python_set_active_version 2
+}
+
+src_prepare() {
+ epatch "${WORKDIR}"/${P}-svn33855.patch
+ epatch "${WORKDIR}"/${P}-prop-ldflags.patch
+ epatch "${WORKDIR}"/${P}-xrootd-prop-flags.patch
+ epatch "${WORKDIR}"/${P}-configure-paths.patch
+ epatch "${FILESDIR}"/${P}-nobyte-compile.patch
+
+ # use system cfortran
+ rm montecarlo/eg/inc/cfortran.h README/cfortran.doc
+
+ # take a more descriptive name for ruby libs
+ sed -i \
+ -e 's/libRuby/libRubyROOT/g' \
+ bindings/ruby/Module.mk bindings/ruby/src/drr.cxx \
+ || die "ajusting ruby libname failed"
+
+ # in gentoo, libPythia6 is called libpythia6
+ # libungif is called libgif, and libftgl_pic is libftgl
+ sed -i \
+ -e 's/libPythia6/libpythia6/g' \
+ -e 's/ungif/gif/g' \
+ configure || die "adjusting library names failed"
+
+ # libafterimage flags are hardcoded
+ sed -i \
+ -e 's/CFLAGS="-O3"//' \
+ -e 's/CFLAGS=$$ACFLAGS//' \
+ graf2d/asimage/Module.mk graf2d/asimage/src/libAfterImage/configure \
+ || die "flag propagation in libafterimage failed"
+ # QTDIR only used for qt3 in gentoo, and configure looks for it.
+ unset QTDIR
+}
+
+src_configure() {
+ # the configure script is not the standard autotools
+ ./configure \
+ --with-cc=$(tc-getCC) \
+ --with-cxx=$(tc-getCXX) \
+ --with-f77=$(tc-getFC) \
+ --fail-on-missing \
+ --prefix="${EPREFIX}"/usr \
+ --libdir="${EPREFIX}"/usr/$(get_libdir)/${PN} \
+ --docdir="${EPREFIX}"/usr/share/doc/${PF} \
+ --tutdir="${EPREFIX}"/usr/share/doc/${PF}/examples/tutorials \
+ --testdir="${EPREFIX}"/usr/share/doc/${PF}/examples/tests \
+ --with-sys-iconpath="${EPREFIX}"/usr/share/pixmaps \
+ --disable-builtin-freetype \
+ --disable-builtin-ftgl \
+ --disable-builtin-glew \
+ --disable-builtin-pcre \
+ --disable-builtin-zlib \
+ --disable-rpath \
+ --enable-asimage \
+ --enable-astiff \
+ --enable-exceptions \
+ --enable-explicitlink \
+ --enable-gdml \
+ --enable-memstat \
+ --enable-shadowpw \
+ --enable-shared \
+ --enable-soversion \
+ --enable-table \
+ --with-afs-shared=yes \
+ $(use_enable afs) \
+ $(use_enable clarens) \
+ $(use_enable clarens peac) \
+ $(use_enable fftw fftw3) \
+ $(use_enable geant4 g4root) \
+ $(use_enable kerberos krb5) \
+ $(use_enable ldap) \
+ $(use_enable gsl gsl-shared) \
+ $(use_enable math genvector) \
+ $(use_enable math mathmore) \
+ $(use_enable math minuit2) \
+ $(use_enable math roofit) \
+ $(use_enable math unuran) \
+ $(use_enable mysql) \
+ $(use_enable odbc) \
+ $(use_enable opengl) \
+ $(use_enable postgres pgsql) \
+ $(use_enable pythia6) \
+ $(use_enable pythia8) \
+ $(use_enable python) \
+ $(use_enable qt4 qt) \
+ $(use_enable qt4 qtgsi) \
+ $(use_enable reflex cintex) \
+ $(use_enable reflex) \
+ $(use_enable ruby) \
+ $(use_enable ssl) \
+ $(use_enable xft) \
+ $(use_enable xml) \
+ $(use_enable xrootd) \
+ ${EXTRA_ECONF} \
+ || die "configure failed"
+}
+
+src_compile() {
+ emake OPT="${CFLAGS}" F77OPT="${FFLAGS}" || die "emake failed"
+ if use emacs; then
+ elisp-compile build/misc/*.el || die "elisp-compile failed"
+ fi
+}
+
+doc_install() {
+ cd "${S}"
+ if use doc; then
+ einfo "Installing user's guides"
+ insinto /usr/share/doc/${PF}
+ doins \
+ "${DISTDIR}"/Users_Guide_${DOC_PV}.pdf \
+ "${DISTDIR}"/TMVAUsersGuide-v${TMVA_DOC_PV}.pdf \
+ || die "pdf install failed"
+ if use math; then
+ doins "${DISTDIR}"/RooFit_Users_Manual_${ROOFIT_DOC_PV}.pdf \
+ || die "math doc install failed"
+ fi
+ fi
+
+ if use examples; then
+ # these should really be taken care of by the root make install
+ insinto /usr/share/doc/${PF}/examples/tutorials/tmva
+ doins -r tmva/test || die
+ else
+ rm -rf "${D}"/usr/share/doc/${PF}/examples
+ fi
+}
+
+daemon_install() {
+ cd "${S}"
+ 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}
+
+ use xrootd && daemons="${daemons} xrootd olbd"
+ for i in ${daemons}; do
+ newinitd "${FILESDIR}"/${i}.initd ${i}
+ newconfd "${FILESDIR}"/${i}.confd ${i}
+ done
+ if use xinetd; then
+ insinto /etc/xinetd
+ doins etc/daemons/{rootd,proofd}.xinetd || die
+ fi
+}
+
+desktop_install() {
+ cd "${S}"
+ sed -e 's,@prefix@,/usr,' \
+ build/package/debian/root-system-bin.desktop.in > root.desktop
+ domenu root.desktop
+ doicon "${S}"/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
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die "emake install failed"
+
+ echo "LDPATH=${EPREFIX}/usr/$(get_libdir)/root" > 99root
+ use pythia8 && echo "PYTHIA8=${EPREFIX}/usr" >> 99root
+ use python && echo "PYTHONPATH=${EPREFIX}/usr/$(get_libdir)/root" >> 99root
+ use ruby && echo "RUBYLIB=${EPREFIX}/usr/$(get_libdir)/root" >> 99root
+ doenvd 99root || die "doenvd failed"
+
+ # The build system installs Emacs support unconditionally and in the wrong
+ # directory. Remove it and call elisp-install in case of USE=emacs.
+ rm -rf "${D}"/usr/share/emacs
+ if use emacs; then
+ elisp-install ${PN} build/misc/*.{el,elc} || die "elisp-install failed"
+ fi
+
+ doc_install
+ daemon_install
+ desktop_install
+
+ # Cleanup of files either already distributed or unused on Gentoo
+ rm "${ED}"usr/share/doc/${PF}/{INSTALL,LICENSE,COPYING.CINT}
+ rm "${ED}"usr/share/root/fonts/LICENSE
+ pushd "${ED}"usr/$(get_libdir)/root/cint/cint/lib > /dev/null
+ rm -f posix/mktypes dll_stl/setup \
+ G__* dll_stl/G__* dll_stl/rootcint_* posix/exten.o
+ rm -f "${ED}"usr/$(get_libdir)/root/cint/cint/include/makehpib
+ rm -f "${ED}"/etc/root/proof/*.sample
+ rm -rf "${ED}"/etc/root/daemons
+ popd > /dev/null
+}
+
+pkg_postinst() {
+ use ruby && elog "ROOT Ruby module is available as libRubyROOT"
+ fdo-mime_desktop_database_update
+ use python && python_mod_optimize "${EPREFIX}"/usr/$(get_libdir)/root
+}
+
+pkg_postrm() {
+ fdo-mime_desktop_database_update
+ use python && python_mod_optimize "${EPREFIX}"/usr/$(get_libdir)/root
+}