summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFriedrich Oslage <bluebird@gentoo.org>2008-08-07 18:42:43 +0000
committerFriedrich Oslage <bluebird@gentoo.org>2008-08-07 18:42:43 +0000
commitdfa55c08c5ed299b2a462d3d60b0d33ae9127370 (patch)
tree725f6c7a0a333a73af53fefb395703504254820c /sys-devel/icecream
parentAdd the horde applications combined within this meta package. (diff)
downloadhistorical-dfa55c08c5ed299b2a462d3d60b0d33ae9127370.tar.gz
historical-dfa55c08c5ed299b2a462d3d60b0d33ae9127370.tar.bz2
historical-dfa55c08c5ed299b2a462d3d60b0d33ae9127370.zip
Honour the ${CFLAGS_${ABI}} environment variable(bug #232931), cleanup icecream-create-env, remove old
Package-Manager: portage-2.1.4.4
Diffstat (limited to 'sys-devel/icecream')
-rw-r--r--sys-devel/icecream/ChangeLog10
-rw-r--r--sys-devel/icecream/Manifest7
-rw-r--r--sys-devel/icecream/files/icecream-create-env63
-rw-r--r--sys-devel/icecream/files/icecream-gentoo-multilib.patch59
-rw-r--r--sys-devel/icecream/icecream-0.9.1-r2.ebuild (renamed from sys-devel/icecream/icecream-0.9.1-r1.ebuild)5
5 files changed, 89 insertions, 55 deletions
diff --git a/sys-devel/icecream/ChangeLog b/sys-devel/icecream/ChangeLog
index 81fb0c9fda92..37fd500d1655 100644
--- a/sys-devel/icecream/ChangeLog
+++ b/sys-devel/icecream/ChangeLog
@@ -1,6 +1,14 @@
# ChangeLog for sys-devel/icecream
# Copyright 1999-2008 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-devel/icecream/ChangeLog,v 1.19 2008/08/02 15:12:12 bluebird Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-devel/icecream/ChangeLog,v 1.20 2008/08/07 18:42:42 bluebird Exp $
+
+*icecream-0.9.1-r2 (07 Aug 2008)
+
+ 07 Aug 2008; Friedrich Oslage <bluebird@gentoo.org>
+ files/icecream-create-env, +files/icecream-gentoo-multilib.patch,
+ -icecream-0.9.1-r1.ebuild, +icecream-0.9.1-r2.ebuild:
+ Honour the ${CFLAGS_${ABI}} environment variable(bug #232931), cleanup
+ icecream-create-env, remove old
*icecream-0.9.1-r1 (02 Aug 2008)
diff --git a/sys-devel/icecream/Manifest b/sys-devel/icecream/Manifest
index 2f80ea57fe74..424a259350eb 100644
--- a/sys-devel/icecream/Manifest
+++ b/sys-devel/icecream/Manifest
@@ -2,8 +2,9 @@ AUX 0.9.1-conf.d-verbosity.patch 463 RMD160 b08c0f5cfec00b5dcc968bac3b598892055e
AUX 0.9.1-dont-create-symlinks.patch 406 RMD160 c7454778e79367e7cfdbac07ab15af0dff772051 SHA1 7f070673b5d3576538885392ab0f025336e1288e SHA256 4800a6611cff4ca0845eb1b98aa20ab96f2949710c4249fc45c861d8936d33ee
AUX icecream 1546 RMD160 f99d695c7cfe3ee93a4ded66cb7f1d24bbbf740e SHA1 ca9270513e40d27650a823fd39f14a4fc0875419 SHA256 d122f104e141d6e0c4f368ece47a871adf01919f6fdaa4ea6785d83293040fbb
AUX icecream-config 1689 RMD160 1f49cb792ea34fb90cadb40fa4febbb02512fb46 SHA1 f52ab186856598591ecbf299bfa68912b41f21ac SHA256 f6723b36c8955f2b919445ada3bcf51862139a2a691d677133b10baa21d87410
-AUX icecream-create-env 3315 RMD160 bf034daa8775019d8aa99a178531b5527216bc96 SHA1 11019b9a659f5945fa1717fa84acf7bdb00ce22a SHA256 084243f0dfe19ba4aa4b958c3deac6bd4f219e5864be728559c10849604d679b
+AUX icecream-create-env 2085 RMD160 5eae1d583d6d0fb225e7663719dfee65026a7764 SHA1 47ed90ab8b14e6402df33608b6bdea951ca35350 SHA256 232dcd991da3f679a265c0672286d32a159aed7ec228584e7f8e0b33f722e817
+AUX icecream-gentoo-multilib.patch 1579 RMD160 35671f69f782e326749f8ff50bd25ede3ffca628 SHA1 64c2f0c7b54911735792c5f14c78549d2c3f9a4e SHA256 0efa29f5cb350aa8118cb9c4ba8d62cf675b6af5692ee18e25021f463465fc8a
DIST icecc-0.9.1.tar.bz2 355333 RMD160 ac25c70186960c06f92b66ce794e188fd9bcf996 SHA1 3741badedc15b1fe780b3a93ac434846b9cdc6ff SHA256 1facf28f7356405bf85f7d31d7ce2cd52e59ed509866c2c095e2e2fbe01f1ef4
-EBUILD icecream-0.9.1-r1.ebuild 4238 RMD160 91434b0596aa8be4ed07fb455960d3416b776cca SHA1 edc056ced39d63dd28acce88f9d66d21c1d09a55 SHA256 c4595101eac9bcfaaf262db86386de1e99163779f919a713e1f3170094fcc36f
-MISC ChangeLog 4506 RMD160 9a737d7ef4dc75cecba477ca2e48681c2c6b64bd SHA1 ecee82ebf5ae6fc4bf2070b4e0a0f842e0691876 SHA256 61dedc8d83cbeeafe9b3fa116c0d68ece9ecfe180a72018b066e0ff4f3179717
+EBUILD icecream-0.9.1-r2.ebuild 4350 RMD160 545c91fb7d25de8735ca827d4ca063c88d268be3 SHA1 e6e0de9828f82f770dd43bde6adfbbf9d4b20ac9 SHA256 7ec2f912f63e73c5bdd181a76c93b93c5809330db02f2577a1eadba4e3f11b75
+MISC ChangeLog 4826 RMD160 c42cf1a01f4110fe20d80b88f6201852c4a8cd52 SHA1 ef83efea27b105aa18f4951930011d86d05f7364 SHA256 3db8bfb30fc131af181cbb6365078ba0cd0ba8403191ecce39f3fc1bb183c5d0
MISC metadata.xml 227 RMD160 7155b031dbc4292fbe0c64b51a6ef7d51f4788cb SHA1 126258ae6d52b655b4cafbf037d68d7f4b98399c SHA256 280f0489d26db834f76dd978c65c87644670e968026df54877242cf1a28d1c10
diff --git a/sys-devel/icecream/files/icecream-create-env b/sys-devel/icecream/files/icecream-create-env
index 801f07afc6c4..92b08364d908 100644
--- a/sys-devel/icecream/files/icecream-create-env
+++ b/sys-devel/icecream/files/icecream-create-env
@@ -35,57 +35,30 @@ then
exit 1
fi
+gxxbin=`which ${prefix}-g++ 2>/dev/null`
+if [ ! -e "${gxxbin}" ]
+then
+ echo "Can't find ${prefix}-g++!"
+ exit 2
+fi
+
version="`${prefix}-gcc -dumpversion`"
tmpdir=`mktemp -d`
tmpfile=`mktemp`
-echo "Creating icecc environment for ${prefix}..."
-
-mkdir -p ${tmpdir}/usr/bin
-
-echo "Adding `which ${prefix}-as`... as /usr/bin/as"
-cp -p `which ${prefix}-as` ${tmpdir}/usr/bin/as
-
if [ "`gcc -dumpmachine`" = "${prefix}" ]
then
- echo "Adding /usr/${prefix}/gcc-bin/${version}/g++ as /usr/bin/g++..."
- cp -p /usr/${prefix}/gcc-bin/${version}/g++ ${tmpdir}/usr/bin
- echo "Adding /usr/${prefix}/gcc-bin/${version}/gcc as /usr/bin/gcc..."
- cp -p /usr/${prefix}/gcc-bin/${version}/gcc ${tmpdir}/usr/bin
+ /usr/lib/icecc/icecc-create-env /usr/${prefix}/gcc-bin/${version}/gcc /usr/${prefix}/gcc-bin/${version}/g++ | tee ${tmpfile}
else
- echo "Adding /usr/${CHOST}/${prefix}/gcc-bin/${version}/${prefix}-g++ as /usr/bin/g++..."
- cp -p /usr/${CHOST}/${prefix}/gcc-bin/${version}/${prefix}-g++ ${tmpdir}/usr/bin/g++
- echo "Adding /usr/${CHOST}/${prefix}/gcc-bin/${version}/${prefix}-gcc as /usr/bin/gcc..."
- cp -p /usr/${CHOST}/${prefix}/gcc-bin/${version}/${prefix}-gcc ${tempdir}/usr/bin/gcc
+ /usr/lib/icecc/icecc-create-env /usr/${CHOST}/${prefix}/gcc-bin/${version}/${prefix}-gcc /usr/${CHOST}/${prefix}/gcc-bin/${version}/${prefix}-g++ | tee ${tmpfile}
fi
-echo "Adding /usr/libexec/gcc/${prefix}/${version}/cc1 as /usr/bin/cc1..."
-cp -p /usr/libexec/gcc/${prefix}/${version}/cc1 ${tmpdir}/usr/bin/
-
-echo "Adding /usr/libexec/gcc/${prefix}/${version}/cc1plus as /usr/bin/cc1plus.."
-cp -p /usr/libexec/gcc/${prefix}/${version}/cc1plus ${tmpdir}/usr/bin/
-
-# binaries are there, now copy libs
-for binary in `ls ${tmpdir}/usr/bin/`
-do
- for library in `ldd ${tmpdir}/usr/bin/${binary} | tr '=>' ' ' | awk '{print $1" "$2}'`
- do
- if [ ! -e "${tmpdir}/${library}" ] && [ -e "${library}" ]
- then
- echo "Adding ${library}..."
- cp --parents "${library}" ${tmpdir}/
- fi
- done
-done
-
-# rebuild ld.so.cache
-echo "Creating /etc/ld.so.cache..."
-cp --parents /etc/ld.so.conf ${tmpdir}/
-ldconfig -r ${tmpdir}
-rm ${tmpdir}/etc/ld.so.conf
+# figure out the name of the archive
+icecc_envname=`grep "creating" ${tmpfile} | awk '{print $2}'`
echo "Testing icecc environment..."
+tar -x -z -f ${icecc_envname} -C ${tmpdir}
touch ${tmpdir}/empty.c
chroot ${tmpdir}/ /usr/bin/gcc -c /empty.c
tested=${?}
@@ -96,17 +69,7 @@ then
echo ""
echo "Creating icecc environment failed. Please see error message(s) above! The temporary directory is: ${tmpdir}/"
else
- # pack
- echo "Compressing files..."
- tar -c -z -C ${tmpdir} -f ${tmpfile} `ls ${tmpdir}/`
-
- newname="`md5sum ${tmpfile} | awk '{print $1}'`.tar.gz"
- mv ${tmpfile} ${newname}
-
- # cleanup
- rm -rf ${tmpdir}
-
echo ""
- echo "Icecc environment has been created. It has been saved as ${newname}!"
+ echo "Icecc environment has been created. It has been saved as ${icecc_envname}!"
fi
diff --git a/sys-devel/icecream/files/icecream-gentoo-multilib.patch b/sys-devel/icecream/files/icecream-gentoo-multilib.patch
new file mode 100644
index 000000000000..94c6a41b3af6
--- /dev/null
+++ b/sys-devel/icecream/files/icecream-gentoo-multilib.patch
@@ -0,0 +1,59 @@
+Index: services/job.h
+===================================================================
+--- services/job.h (revision 843731)
++++ services/job.h (working copy)
+@@ -57,6 +57,10 @@
+
+ unsigned int argumentFlags() const;
+
++ const ArgumentsList getFlags() {
++ return m_flags;
++ }
++
+ void setFlags( const ArgumentsList &flags ) {
+ m_flags = flags;
+ }
+Index: client/main.cpp
+===================================================================
+--- client/main.cpp (revision 843731)
++++ client/main.cpp (working copy)
+@@ -218,6 +218,39 @@
+
+ local |= analyse_argv( argv, job );
+
++ /* honour Gentoo's ${CFLAGS_${ABI}} environment variable */
++ if (getenv("ABI") != NULL) {
++ char* envar = (char*) malloc(sizeof(char) *
++ (strlen("CFLAGS_") + strlen(getenv("ABI")) + 1));
++
++ if (!envar)
++ return 1;
++
++ /* We use CFLAGS_${ABI} for gcc, g++, g77, etc as they are
++ * the same no matter which compiler we are using.
++ */
++ sprintf(envar, "CFLAGS_%s", getenv("ABI"));
++
++ if (getenv(envar)) {
++ ArgumentsList args = job.getFlags();
++
++ char* pch = strtok(getenv(envar)," \t");
++ while (pch != NULL) {
++ #if CLIENT_DEBUG
++ log_info() << "adding CFLAG '" << pch << "' as specified in environment variable ${CFLAGS_${ABI}}" << endl;
++ #endif
++ args.append(pch, Arg_Remote);
++ pch = strtok(NULL, " \t");
++ }
++
++ job.setFlags(args);
++
++ free(pch);
++ }
++
++ free(envar);
++ }
++
+ /* if ICECC is set to no, then run job locally */
+ char* icecc = getenv("ICECC");
+ if ( icecc && !strcasecmp(icecc, "no") )
diff --git a/sys-devel/icecream/icecream-0.9.1-r1.ebuild b/sys-devel/icecream/icecream-0.9.1-r2.ebuild
index 0e0a3f81eadf..b16d981d6436 100644
--- a/sys-devel/icecream/icecream-0.9.1-r1.ebuild
+++ b/sys-devel/icecream/icecream-0.9.1-r2.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2008 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-devel/icecream/icecream-0.9.1-r1.ebuild,v 1.1 2008/08/02 15:12:12 bluebird Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-devel/icecream/icecream-0.9.1-r2.ebuild,v 1.1 2008/08/07 18:42:42 bluebird Exp $
inherit autotools eutils flag-o-matic
@@ -28,6 +28,9 @@ src_unpack() {
epatch "${FILESDIR}/${PV}-dont-create-symlinks.patch"
epatch "${FILESDIR}/${PV}-conf.d-verbosity.patch"
+ # honour ${CFLAGS_${ABI}} environment variable, bug #232931
+ epatch "${FILESDIR}/${PN}-gentoo-multilib.patch"
+
use amd64 && append-flags -fPIC -DPIC
eautoreconf