diff options
author | 2015-04-12 16:54:53 +0300 | |
---|---|---|
committer | 2015-04-12 16:54:53 +0300 | |
commit | a10464578b87f8847a60df6c1aced2690de9fa0b (patch) | |
tree | 63ccb634c2a63e05bf5c8a2fe3ca6cad0a45a00c /sci-physics/root | |
parent | sci-physics/root: fix clang runtime mismatch (diff) | |
download | sci-a10464578b87f8847a60df6c1aced2690de9fa0b.tar.gz sci-a10464578b87f8847a60df6c1aced2690de9fa0b.tar.bz2 sci-a10464578b87f8847a60df6c1aced2690de9fa0b.zip |
fix issue #238
Regenerate PCH headers for Gentoo include files layout and remove
extra $PORTAGE_TMPDIR from /etc.
Diffstat (limited to 'sci-physics/root')
-rw-r--r-- | sci-physics/root/ChangeLog | 7 | ||||
-rw-r--r-- | sci-physics/root/files/root-6.02.05-dictpch.patch | 31 | ||||
-rw-r--r-- | sci-physics/root/root-6.02.05-r2.ebuild (renamed from sci-physics/root/root-6.02.05-r1.ebuild) | 18 |
3 files changed, 56 insertions, 0 deletions
diff --git a/sci-physics/root/ChangeLog b/sci-physics/root/ChangeLog index b1b0b0a08..4fc73e890 100644 --- a/sci-physics/root/ChangeLog +++ b/sci-physics/root/ChangeLog @@ -2,6 +2,13 @@ # Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2 # $Header: /var/cvsroot/gentoo-x86/sci-physics/root/ChangeLog,v 1.96 2012/03/29 18:21:49 bicatali Exp $ +*root-6.02.05-r2 (12 Apr 2015) + + 12 Apr 2015; Andrew Savchenko <bircoph@gentoo.org> -root-6.02.05-r1.ebuild, + +root-6.02.05-r2.ebuild, +files/root-6.02.05-dictpch.patch: + Regenerate PCH headers for Gentoo include files layout and remove + extra $PORTAGE_TMPDIR from /etc (github issue #238). + *root-6.02.05-r1 (11 Apr 2015) 11 Apr 2015; Andrew Savchenko <bircoph@gentoo.org> -root-6.02.05.ebuild, diff --git a/sci-physics/root/files/root-6.02.05-dictpch.patch b/sci-physics/root/files/root-6.02.05-dictpch.patch new file mode 100644 index 000000000..80a416e1a --- /dev/null +++ b/sci-physics/root/files/root-6.02.05-dictpch.patch @@ -0,0 +1,31 @@ +--- etc/dictpch/makepch-gentoo.sh.orig 2015-04-08 14:27:07.781026830 +0300 ++++ etc/dictpch/makepch-gentoo.sh 2015-04-12 13:40:48.226060739 +0300 +@@ -13,8 +13,8 @@ + # Copyright (c) 2014 Rene Brun and Fons Rademakers + # Author: Axel Naumann <axel@cern.ch>, 2014-10-16 + +-rootdir=. +-cfgdir=etc/dictpch ++rootdir=ROOTDIR_TEMPLATE ++cfgdir=etc/root/dictpch + allheaders=$cfgdir/allHeaders.h + alllinkdefs=$cfgdir/allLinkDefs.h + cppflags=$cfgdir/allCppflags.txt +@@ -36,7 +36,7 @@ + rootbuild=-rootbuild + fi + +-cxxflags="-D__CLING__ -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -DROOT_PCH -I$rootdir/include -I$rootdir/etc -I$rootdir/$cfgdir -I$rootdir/etc/cling `cat $rootdir/$cppflags`" ++cxxflags="-D__CLING__ -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -DROOT_PCH -I$rootdir/usr/include/root -I$rootdir/etc/root -I$rootdir/$cfgdir -I$rootdir/etc/root/cling `cat $rootdir/$cppflags`" + + if ! [ "x$1" = "x" ]; then + cxxflags="$cxxflags $1" +@@ -44,7 +44,7 @@ + + # generate pch + touch allDict.cxx.h +-$rootdir/bin/rootcling $rootbuild -1 -f allDict.cxx -noDictSelection -c $cxxflags $allheaders $@ $alllinkdefs ++$rootdir/usr/bin/rootcling -1 -f allDict.cxx -noDictSelection -c $cxxflags $allheaders $@ $alllinkdefs + res=$? + if [ $res -eq 0 ] ; then + mv allDict_rdict.pch $pch diff --git a/sci-physics/root/root-6.02.05-r1.ebuild b/sci-physics/root/root-6.02.05-r2.ebuild index 2d7388b7d..9069f3aa1 100644 --- a/sci-physics/root/root-6.02.05-r1.ebuild +++ b/sci-physics/root/root-6.02.05-r2.ebuild @@ -207,6 +207,13 @@ pkg_setup() { } src_prepare() { + # Second version of makepch is required in order to generate + # PCH file appropriate for Gentoo include headers layout. + # This can be done only at install stage, when files are placed + # as appropriate. Premature modification of makepch.sh will + # broke build process, however. + cp "etc/dictpch/makepch.sh" "etc/dictpch/makepch-gentoo.sh" || die + epatch \ "${FILESDIR}"/${PN}-5.28.00b-glibc212.patch \ "${FILESDIR}"/${PN}-5.32.00-afs.patch \ @@ -219,6 +226,7 @@ src_prepare() { "${FILESDIR}"/${PN}-6.00.01-llvm.patch \ "${FILESDIR}"/${PN}-6.00.01-nobyte-compile.patch \ "${FILESDIR}"/${PN}-6.00.01-prop-flags.patch \ + "${FILESDIR}"/${PN}-6.02.05-dictpch.patch \ "${FILESDIR}"/${PN}-6.02.05-xrootd4.patch # make sure we use system libs and headers @@ -410,6 +418,16 @@ cleanup_install() { mv etc/root/proof/utils/pq2/pq2* usr/bin/ || die rm ${DOC_DIR#/}/{INSTALL,LICENSE} || die use examples || rm -r ${DOC_DIR#/}/examples || die + + # clean hardcoded sandbox paths + rm etc/root/dictpch/allCppflags.txt.tmp || die + sed -i "s|${S}/||" etc/root/cling/llvm/Config/llvm-config.h || die + # regenerate pch for Gentoo headers layout + rm "etc/root/allDict.cxx.pch" || die + sed -i 's|etc/dictpch|etc/root/dictpch|' etc/root/dictpch/allLinkDefs.h || die + sed -i 's|etc/cling|etc/root/cling|' etc/root/dictpch/allHeaders.h || die + sed -i "s|ROOTDIR_TEMPLATE|${ED}|" etc/root/dictpch/makepch-gentoo.sh || die + etc/root/dictpch/makepch-gentoo.sh etc/root/allDict.cxx.pch || die "PCH generation failed" } src_install() { |