Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 79233 - Minor fix for sci-libs/root-4.02.00
Summary: Minor fix for sci-libs/root-4.02.00
Status: RESOLVED UPSTREAM
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All All
: High normal (vote)
Assignee: Gentoo Science Related Packages
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-01-23 10:10 UTC by Dan Boline
Modified: 2005-06-05 21:10 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
new ebuild for root-4.02.00 (root-4.02.00.ebuild,4.85 KB, text/plain)
2005-01-23 10:12 UTC, Dan Boline
Details
patch to xrootd makefile (root-4.02.00-xrootdppc.patch,363 bytes, patch)
2005-01-23 10:13 UTC, Dan Boline
Details | Diff
this is the patchfile used by the xrootd makefile (ARCH.PATCH,1020 bytes, patch)
2005-01-23 10:14 UTC, Dan Boline
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Dan Boline 2005-01-23 10:10:24 UTC
Building root on PPC-Linux fails.  The problem is that the sub-program xrootd has a static file xrootd/src/xrootd/config/ARCH which lists ppc-linux as unsupported, but the listing shows egcs as the compiler.  Compiling xrootd with gcc works.  Patching this is somewhat ubnoxious, as xrootd is a gzipped tarball within the main root tarball, and is extracted by the makefile itself.  Thus I'm submitting a new ebuild which patches the makefile and copies a patch file, which then patches xrootd after its extracted but before its built.
Comment 1 Dan Boline 2005-01-23 10:12:34 UTC
Created attachment 49307 [details]
new ebuild for root-4.02.00

This is the ebuild
Comment 2 Dan Boline 2005-01-23 10:13:28 UTC
Created attachment 49308 [details, diff]
patch to xrootd makefile

This is the patch to the makefile
Comment 3 Dan Boline 2005-01-23 10:14:48 UTC
Created attachment 49309 [details, diff]
this is the patchfile used by the xrootd makefile 

this is the patch applied by the xrootd makefile after extracting the xrootd
tarball
Comment 4 Dan Boline 2005-01-23 12:02:51 UTC
Comment on attachment 49307 [details]
new ebuild for root-4.02.00

># Copyright 1999-2005 Gentoo Foundation
># Distributed under the terms of the GNU General Public License v2
># $Header: /var/cvsroot/gentoo-x86/sci-libs/root/root-4.02.00.ebuild,v 1.1 2005/01/16 02:43:45 ribosome Exp $
>
>inherit flag-o-matic eutils
>
>S=${WORKDIR}/${PN}
>DESCRIPTION="An Object-Oriented Data Analysis Framework"
>MY_VER=${PV%[a-z]}
>MY_PATCH=${PV##"${MY_VER}"}
>SRC_URI="ftp://root.cern.ch/root/root_v${MY_VER}.source${MY_PATCH}.tar.gz"
>HOMEPAGE="http://root.cern.ch/"
>
>SLOT="0"
>LICENSE="as-is"
>KEYWORDS="~ppc"
>IUSE="afs kerberos ldap mysql opengl postgres python qt"
>
>DEPEND="virtual/x11
>	>=media-libs/freetype-2.0.9
>	sys-apps/shadow
>	opengl? ( virtual/opengl virtual/glu )
>	mysql? ( >=dev-db/mysql-3.23.49 )
>	postgres? ( >=dev-db/postgresql-7.1.3-r4 )
>	!amd64? ( afs? ( net-fs/openafs ) )
>	kerberos? ( app-crypt/mit-krb5 )
>	ldap? ( net-nds/openldap )
>	qt? ( x11-libs/qt )
>	python? ( dev-lang/python )"
>
>
>src_unpack() {
>	unpack ${A}
>	cd ${S}
>	epatch ${FILESDIR}/${PN}-${PV}-xrootdppc.patch
>	cp ${FILESDIR}/ARCH.PATCH ${S}/
>}
>
>src_compile() {
>
>	local myconf
>
>	if [ "x$CERNLIB" = "x" ]
>	then
>		einfo "No support for cernlib, (h/g)2root will not be build."
>		einfo "To install root with cernlib support, use:"
>		einfo "    export CERNLIB=<directory>/lib"
>		einfo "where <directory>/lib contains libpacklib.[so,a] and libkernlib.[so,a]"
>		USECERN="--disable-cern"
>	else
>		if [ -e $CERNLIB/libpacklib.[so,a] -a -e $CERNLIB/libkernlib.[so,a] ]
>		then
>			einfo "Support for cernlib found."
>			USECERN="--enable-cern --with-cern-libdir=$CERNLIB"
>		else
>			einfo "No support for cernlib, (h/g)2root will not be build."
>			einfo "CERNLIB = $CERNLIB has no libpacklib.[so,a] or no libkernlib.[so,a]"
>			USECERN="--disable-cern"
>		fi
>	fi
>	einfo
>	if [ "x$PYTHIA" = "x" ]
>	then
>		einfo "No support for pythia."
>		einfo "To install root with pythia support, use:"
>		einfo "    export PYTHIA=<directory>/lib"
>		einfo "where <directory>/lib contains libPythia.[so,a]"
>		USEPYTHIA="--disable-pythia"
>	else
>		if [ -e $PYTHIA/libPythia.[so,a] ]
>		then
>			einfo "Support for pythia found."
>			USEPYTHIA="--enable-pythia --with-pythia-libdir=$PYTHIA"
>		else
>			einfo "No support for pythia."
>			einfo "PYTHIA = $PYTHIA has no libPythia.[so,a]"
>			USEPYTHIA="--disable-pythia"
>		fi
>	fi
>	einfo
>	if [ "x$PYTHIA6" = "x" ]
>	then
>		einfo "No support for pythia6."
>		einfo "To install root with pythia6 support, use:"
>		einfo "    export PYTHIA6=<directory>/lib"
>		einfo "where <directory>/lib contains libPythia6.[so,a]"
>		USEPYTHIA6="--disable-pythia6"
>	else
>		if [ -e $PYTHIA6/libPythia6.[so,a] ]
>		then
>			einfo "Support for pythia6 found."
>			USEPYTHIA6="--enable-pythia6 --with-pythia6-libdir=$PYTHIA6"
>		else
>			einfo "No support for pythia6."
>			einfo "PYTHIA6 = $PYTHIA6 has no libPythia6.[so,a]"
>			USEPYTHIA6="--disable-pythia6"
>		fi
>	fi
>	einfo
>	if [ "x$VENUS" = "x" ]
>	then
>		einfo "No support for venus."
>		einfo "To install root with venus support, use:"
>		einfo "    export VENUS=<directory>/lib"
>		einfo "where <directory>/lib contains libVenus.[so,a]"
>		USEVENUS="--disable-venus"
>	else
>		if [ -e $VENUS/libVenus.[so,a] ]
>		then
>			einfo "Support for venus found."
>			USEVENUS="--enable-venus --with-venus-libdir=$VENUS"
>		else
>			einfo "No support for venus."
>			einfo "VENUS = $VENUS has no libVenus.[so,a]"
>			USEVENUS="--disable-venus"
>		fi
>	fi
>
>	case $SYSTEM_ARCH in
>		ppc)
>			append-flags "-fsigned-char";;
>	esac
>
>	if ! use amd64; then
>		myconf="${myconf} $(use_enable afs)"
>	else
>		myconf="${myconf} --disable-afs"
>	fi
>
>	./configure linux \
>		--aclocaldir=/usr/share/aclocal/ \
>		--bindir=/usr/bin \
>		--cintincdir=/usr/share/root/cint \
>		--datadir=/usr/share/root \
>		--docdir=/usr/share/doc/${P} \
>		--elispdir=/usr/share/emacs/site-lisp \
>		--etcdir=/etc/root \
>		--fontdir=/usr/share/root/fonts \
>		--iconpath=/usr/share/root/icons \
>		--incdir=/usr/include/root \
>		--libdir=/usr/lib/root \
>		--macrodir=/usr/share/root/macros \
>		--mandir=/usr/share/man/man1 \
>		--prefix=/usr \
>		--proofdir=/usr/share/root/proof \
>		--srcdir=/usr/share/root/src \
>		--testdir=/usr/share/doc/${P}/test \
>		--tutdir=/usr/share/doc/${P}/tutorial \
>		--disable-alien \
>		--disable-asimage \
>		$USECERN \
>		--disable-chirp \
>		--disable-dcache \
>		--disable-exceptions \
>		--disable-explicitlink \
>		--disable-globus \
>		`use_enable kerberos krb5` \
>		`use_enable ldap` \
>		`use_enable mysql` \
>		`use_enable opengl` \
>		`use_enable postgres pgsql` \
>		$USEPYTHIA \
>		$USEPYTHIA6 \
>		`use_enable qt` \
>		`use_enable python` \
>		--disable-rfio \
>		--disable-rpath \
>		--disable-sapdb \
>		--enable-shadowpw \
>		--enable-shared \
>		--enable-soversion \
>		--disable-srp \
>		--disable-table \
>		--enable-thread \
>		$USEVENUS \
>		${myconf} || die "configure failed"
>	emake OPT="$CFLAGS" || die "make failed"
>}
>
>src_install() {
>	make DESTDIR=${D} INSTALL="install" install || die "install failed"
>	dodir /etc/env.d
>	echo > ${D}/etc/env.d/99root "LDPATH=\"/usr/lib/root\""
>}
Comment 5 Dan Boline 2005-01-23 12:04:28 UTC
Comment on attachment 49308 [details, diff]
patch to xrootd makefile

diff -u -r test/root/xrootd/Module.mk new/root/xrootd/Module.mk
--- xrootd/Module.mk  2004-12-08 05:58:35.000000000 -0500
+++ xrootd/Module.mk   2005-01-23 13:55:23.613000624 -0500
@@ -50,6 +50,7 @@
				gunzip -c $(XROOTDVERS).src.tgz | tar xf -; \
			fi; \
		fi; \
+		patch -p0 < ARCH.PATCH;\
		RELE=`uname -r`; \
		 case "$(ARCH):$$RELE" in \
		freebsd*:*)	 xopt="--ccflavour=gcc";; \
Comment 6 Dan Boline 2005-01-23 12:06:04 UTC
Comment on attachment 49309 [details, diff]
this is the patchfile used by the xrootd makefile 

diff -u -r test/root/xrootd/Module.mk new/root/xrootd/Module.mk
--- xrootd/Module.mk  2004-12-08 05:58:35.000000000 -0500
+++ xrootd/Module.mk   2005-01-23 13:55:23.613000624 -0500
@@ -50,6 +50,7 @@
				gunzip -c $(XROOTDVERS).src.tgz | tar xf -; \
			fi; \
		fi; \
+		patch -p0 < ARCH.PATCH;\
		RELE=`uname -r`; \
		 case "$(ARCH):$$RELE" in \
		freebsd*:*)	 xopt="--ccflavour=gcc";; \
Comment 7 Olivier Fisette (RETIRED) gentoo-dev 2005-06-05 12:51:22 UTC
Maybe the PPC arch team could look into this? 
Comment 8 Dan Boline 2005-06-05 21:10:49 UTC
Um, this problem seems to be fixed upstream in the latest release (4.04/02).