summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2008-06-22 10:52:51 +0000
committerMike Frysinger <vapier@gentoo.org>2008-06-22 10:52:51 +0000
commitc0bb7e1d207c6a216251b4fbae5e83d86d00e52a (patch)
tree9ba146e20350212b1971654ede96c476718bf5b8 /sys-devel
parentstable x86, bug 228745 (diff)
downloadhistorical-c0bb7e1d207c6a216251b4fbae5e83d86d00e52a.tar.gz
historical-c0bb7e1d207c6a216251b4fbae5e83d86d00e52a.tar.bz2
historical-c0bb7e1d207c6a216251b4fbae5e83d86d00e52a.zip
Fix for building with newer gcc versions #225743 by Emil Wojak.
Package-Manager: portage-2.2_rc1/cvs/Linux 2.6.25 x86_64 RepoMan-Options: --force
Diffstat (limited to 'sys-devel')
-rw-r--r--sys-devel/gcc/ChangeLog6
-rw-r--r--sys-devel/gcc/Manifest11
-rw-r--r--sys-devel/gcc/files/3.2.3/gcc-3.2.3-poisoned-malloc.patch41
-rw-r--r--sys-devel/gcc/gcc-3.2.3-r4.ebuild37
4 files changed, 55 insertions, 40 deletions
diff --git a/sys-devel/gcc/ChangeLog b/sys-devel/gcc/ChangeLog
index 8f8c9d042af3..6ca5ffb68af4 100644
--- a/sys-devel/gcc/ChangeLog
+++ b/sys-devel/gcc/ChangeLog
@@ -1,6 +1,10 @@
# ChangeLog for sys-devel/gcc
# Copyright 1999-2008 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-devel/gcc/ChangeLog,v 1.653 2008/06/21 04:23:11 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-devel/gcc/ChangeLog,v 1.654 2008/06/22 10:52:50 vapier Exp $
+
+ 22 Jun 2008; Mike Frysinger <vapier@gentoo.org>
+ +files/3.2.3/gcc-3.2.3-poisoned-malloc.patch, gcc-3.2.3-r4.ebuild:
+ Fix for building with newer gcc versions #225743 by Emil Wojak.
21 Jun 2008; Mike Frysinger <vapier@gentoo.org> gcc-4.3.0.ebuild,
gcc-4.3.1.ebuild:
diff --git a/sys-devel/gcc/Manifest b/sys-devel/gcc/Manifest
index df2b721c18d0..28fe7e4da30e 100644
--- a/sys-devel/gcc/Manifest
+++ b/sys-devel/gcc/Manifest
@@ -14,6 +14,7 @@ AUX 3.2.2/gcc32-pr8213.patch 2036 RMD160 d55cdd9534f77cfe760fa0ff350e72e6766ec58
AUX 3.2.2/gcc322-ggc_page-speedup.patch 872 RMD160 5e0bbda0b528b34939f5e27e0caa97779c59d749 SHA1 570324e7640c5f68cf387ebb008542be1fef1d04 SHA256 a193b395aff6dd272de5a92e83ef65c05ae5b42d382647ff847a2b25388d3006
AUX 3.2.3/gcc-3.2.3-mergel-fix.patch 2749 RMD160 4d001a659923382134f9616fe6da2caec684fad1 SHA1 153b81de69f9929628ba616ff3360a266c459613 SHA256 7958b2db54d4805ba7656628df6d9c00406eae54b566e1bfb0a882e9070a120c
AUX 3.2.3/gcc-3.2.3-move-propolice-into-glibc.patch 3534 RMD160 29517ec355d7c00137b6dea9f7882f07772be7e9 SHA1 8a1a1732157e71a8807f0d248ad2480337867dbc SHA256 8f904a2d638d40faa0c41200963bf0a86f2161ed26f0cf4307ab0d5d1c07b68d
+AUX 3.2.3/gcc-3.2.3-poisoned-malloc.patch 1217 RMD160 7ccd1b55565632face858aef661f2625870d038f SHA1 da1e9799df4ef6458e464406c93f301e907c381d SHA256 713e779ec708de4b341c9fd0b0c9c790170d221b4765fdc2d5bd2955e3f3e5b6
AUX 3.2.3/gcc-323-propolice-version.patch 700 RMD160 3b29427a70e6167ff8bec10910c0143f178a6cd5 SHA1 51e6a8fe9b6bb105c454e3108f5a50e6f021eb8e SHA256 fc963759d98c659fc96b33995d527456b20c37db3166d50d15454595d993ba84
AUX 3.2.3/gcc32-c++-classfn-member-template.patch 3219 RMD160 82918f7456c782dd12c84077e5cfc24ef07c606a SHA1 902e3558b92858cea03f23aae4b9740d2c7bdfe2 SHA256 c923b09eb0f16224c964d417280f80be0736cafe0ecb88796d3c4e27aaa24dc3
AUX 3.2.3/gcc32-mklibgcc-serialize-crtfiles.patch 926 RMD160 d1284118b22478ee9143262bbe037b47c6703ad5 SHA1 a56334b3d56d12d11e8a57f96219b9e51e7f8fa8 SHA256 ad3f723715298a85bc0080ec8661f76e549a02bfd052be349774f4eb15eabdf0
@@ -105,7 +106,7 @@ EBUILD gcc-2.95.3-r10.ebuild 1202 RMD160 8199972a39cfc93ee6a0922826acfd430111b54
EBUILD gcc-2.95.3-r9.ebuild 7864 RMD160 e045bc69182bb0531317ec3d8f04da7da1d44cf0 SHA1 84771ad4d945143a7483c764bc0abf8d013c7150 SHA256 6a471d851a3c0e5aca1f2f61005875e6b10e271836f177bc5911d755d273a247
EBUILD gcc-3.1.1-r2.ebuild 9210 RMD160 206881516627ab93359924637597ea1675c132fd SHA1 1743ac9b185d94574d55170cdaab3305ba052260 SHA256 86f05a36ba0410c596362c239179a15d6e27efeb8dafb05eb607df4b57b1c8b2
EBUILD gcc-3.2.2.ebuild 764 RMD160 0b34c75dc19bd62bb0fd7cb9df492e84c7668087 SHA1 8c5172d19da4a454be3175496541fab5df6c68f3 SHA256 ab928e3853e60027de0e9d243c5f64e8436e4378d6c9d1b19095be5cd6d1e343
-EBUILD gcc-3.2.3-r4.ebuild 19586 RMD160 3d8a3431f79d5c2260ab9937f5d5a062eea5651f SHA1 27cbe4f14ec13c234d87563d99e0f0f49117cfba SHA256 c126e93889037dcc6e49c85cb1bae25908b9e81c9b5c56164e8eeae456f53b71
+EBUILD gcc-3.2.3-r4.ebuild 17649 RMD160 aecbd724a1fa19583ee698ae4d4830e3f24584cd SHA1 75a60060bdbe92aa15f105b5929d204efeeddbc0 SHA256 07ff62c0fc364fd9d2475e1d1fc53a2e1efdd723f9d65604969f56e4879c2f95
EBUILD gcc-3.3.6-r1.ebuild 3034 RMD160 1bc231c7233bf8dfef63a3d340917b175f018b7d SHA1 487cf95ce0cc943e2ea50b98540320e47ccd3911 SHA256 7a5427f30ae8ed2bf42c1dc6880eb2bcd63fba221d726af018d8e5d4ec4eb445
EBUILD gcc-3.4.6-r2.ebuild 4971 RMD160 f09a9bef26f8e3fff4cac10cc046558f9a101d08 SHA1 cbbeae05295366e8dce2622e9419dd97bf373513 SHA256 af0cb45af3d506360bd12326e7d26fa5dd5d25b8ef87f154c70f584f297cfd5b
EBUILD gcc-4.0.4.ebuild 1734 RMD160 3953be8492c74240714ce06a2bd68ea50c934c99 SHA1 cb4b12b4267513211a6723be0459efdb20ee37f6 SHA256 0d7702ffa051eac77908f8fb5d6030b5526823c2929bf924924a3777dbe8ce81
@@ -115,12 +116,12 @@ EBUILD gcc-4.2.3.ebuild 1769 RMD160 16752e4a1c72dd6aa1143882f43aa412fd72fb43 SHA
EBUILD gcc-4.2.4.ebuild 1769 RMD160 0af4f09a3847ac051dda0b0e5e20d697e1a2c09b SHA1 bb67abfb574eb7aa758c97728f1432f4cb61bf1b SHA256 65ec615fac911b8586e9a04ef6e8bb0df0424b4b606a0484f7d5009b53455d2d
EBUILD gcc-4.3.0.ebuild 1699 RMD160 fd909faa401f16e47bd2c1b38a4d2a79e4925098 SHA1 f4aa6a50eb8247a43cc29cdafb5132420755421c SHA256 f39c784180f65d9e150b6651be28dc2a35937cf91cefe04c837e9968180e633e
EBUILD gcc-4.3.1.ebuild 1739 RMD160 2c9a0d8e561a20c9b9dd57b9ce164819207aaf65 SHA1 8a3eced23988be4eb76b7647df6e12d82de60c6d SHA256 e3ebd5a15fbf4cde5f10fe13092f298178dbbdda2ffd8cda2f66096d6e96bad2
-MISC ChangeLog 119509 RMD160 3e5ca59d75bcea9d5f490e1ef84635a16f496d25 SHA1 1df0d861263a99efbab8d813611ccde85dadf6a8 SHA256 14ebbd8e29b9d997fcd7593cb24b471846b9f3258b3059027d86ade20f3726ac
+MISC ChangeLog 119695 RMD160 d2511250f3b14004c13c18c64d5226f191ae1980 SHA1 3e87b958fb82cf66a13800391b8bd48b603a8613 SHA256 e11febd63bca5bff67f3b3229b5fff413dfe01b85f1082e16ca11eca5ebc320a
MISC metadata.xml 254 RMD160 60385b0c366defb69c143de944cf493ae827159a SHA1 ed95d876046d97d214e8694c6c3ec5da02872354 SHA256 23239f4f1c5656fc1f22cc2da40e602ea2351b9403e7f32ed7113debc1d1b139
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.9 (GNU/Linux)
-iEYEARECAAYFAkhcgjYACgkQ67wieSYcaxdTMACgsfJ7xrzwQfs1NL1FQDb0OI/A
-b1wAniFBr8z9d/f+bCDbgSTvuP2wQbcu
-=n9wB
+iEYEARECAAYFAkheLwwACgkQ67wieSYcaxe5DQCdFtsEvkeNjzfJoTmcJcPp1Ecr
+KWIAoOgkuR7aMQ3eb/Ie8wckmW7sUeDS
+=Ut6g
-----END PGP SIGNATURE-----
diff --git a/sys-devel/gcc/files/3.2.3/gcc-3.2.3-poisoned-malloc.patch b/sys-devel/gcc/files/3.2.3/gcc-3.2.3-poisoned-malloc.patch
new file mode 100644
index 000000000000..2bdd26df4e39
--- /dev/null
+++ b/sys-devel/gcc/files/3.2.3/gcc-3.2.3-poisoned-malloc.patch
@@ -0,0 +1,41 @@
+fix building gcc-3.2.3 with newer versions of gcc
+
+http://bugs.gentoo.org/225743
+http://gcc.gnu.org/ml/gcc-help/2008-01/msg00040.html
+http://www.archivum.info/gnu.gcc.help/2008-05/msg00093.html
+
+--- gcc-3.2.3/gcc/read-rtl.c
++++ gcc-3.2.3/gcc/read-rtl.c
+@@ -659,7 +659,7 @@
+ {
+ ungetc (c, infile);
+ list_counter++;
+- obstack_ptr_grow (&vector_stack, (PTR) read_rtx (infile));
++ obstack_ptr_grow (&vector_stack, read_rtx (infile));
+ }
+ if (list_counter > 0)
+ {
+--- gcc-3.2.3/gcc/system.h
++++ gcc-3.2.3/gcc/system.h
+@@ -589,7 +589,9 @@
+ #undef realloc
+ #undef calloc
+ #undef strdup
++#if ! (defined(FLEX_SCANNER) || defined(YYBISON) || defined(YYBYACC))
+ #pragma GCC poison malloc realloc calloc strdup
++#endif
+
+ /* Old target macros that have moved to the target hooks structure. */
+ #pragma GCC poison ASM_OPEN_PAREN ASM_CLOSE_PAREN \
+@@ -628,4 +630,11 @@
+
+ #endif /* GCC >= 3.0 */
+
++#if defined(FLEX_SCANNER) || defined(YYBISON) || defined(YYBYACC)
++/* Flex and bison use malloc and realloc. Yuk. Note that this means
++ really_call_* cannot be used in a .l or .y file. */
++#define malloc xmalloc
++#define realloc xrealloc
++#endif
++
+ #endif /* ! GCC_SYSTEM_H */
diff --git a/sys-devel/gcc/gcc-3.2.3-r4.ebuild b/sys-devel/gcc/gcc-3.2.3-r4.ebuild
index 4c2fb916305a..3b65333dd2bd 100644
--- a/sys-devel/gcc/gcc-3.2.3-r4.ebuild
+++ b/sys-devel/gcc/gcc-3.2.3-r4.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/gcc/gcc-3.2.3-r4.ebuild,v 1.26 2008/03/20 20:39:50 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-devel/gcc/gcc-3.2.3-r4.ebuild,v 1.27 2008/06/22 10:52:50 vapier Exp $
inherit eutils flag-o-matic libtool versionator
@@ -206,39 +206,7 @@ src_unpack() {
cp ${WORKDIR}/protector.h ${WORKDIR}/${P}/gcc/ || die "protector.h not found"
version_patch ${FILESDIR}/3.2.3/gcc-323-propolice-version.patch
- # check for the glibc to have the guard
- if [ "$(readelf -s /lib/libc.so.6 | grep GLOBAL | grep OBJECT | grep '__guard')" ] &&
- [ "$(readelf -s /lib/libc.so.6 | grep GLOBAL | grep FUNC | grep '__stack_smash_handler')" ]
- then
- ewarn "this sys-libs/glibc has __guard object and __stack_smash_handler functions"
- ewarn "scanning the system for binaries with __guard - this may take 5-10 minutes"
- ewarn "please do not press crtl-C or crtl-Z during this period - it will continue"
- SCANPATH="$(for i in $(cat /etc/ld.so.conf | grep -v '/usr/lib/gcc-lib' | grep -v '^\#'); do echo -n $i; echo -n ' '; done) $(echo ${PATH} | sed 's,:, ,g')"
- if [ "$(find ${SCANPATH} -type f -perm -1 -maxdepth 9 -exec readelf -s {} \; 2>&1 | grep "__guard\@GCC" 2>&1 1>/dev/null; echo $?)" == "0" ]
- then
- eerror "found binaries that are dynamically linked to the libgcc with __guard@@GCC"
- eerror "you need to compile these binaries without CFLAGS -fstack-protector/hcc -r"
- echo
- eerror "also you have to make sure that using ccache needs the cache to be flushed"
- eerror "wipe out /var/tmp/ccache or /root/.ccache, this will remove possible saved"
- eerror "-fstack-protector arguments that still may reside in such a compiler cache"
- echo
- eerror "when such binaries are found, gcc cannot remove libgcc propolice functions"
- eerror "leading to gcc -static -fstack-protector breaking, see gentoo bug id 25299"
- einfo "you can run 'qpkg -f' from the gentoolkit package and reemerge the program"
- einfo "to do a full scan on your system, enter this following command in a shell:"
- echo
- einfo "find / -type f -perm -1 -maxdepth 9 -exec echo -n '__guard at GCC check in: {} ' \; -exec qpkg -f {} \; -exec readelf -s {} \; 2>&1 | grep __guard | grep -B1 '__guard\@GCC'"
- echo
- exit 1
- else
- echo
- einfo "no binaries with suspicious libgcc __guard@GCC dependencies in ${SCANPATH}"
- echo
- epatch ${FILESDIR}/3.2.3/gcc-3.2.3-move-propolice-into-glibc.patch
- fi
- fi
- # end of check for the glibc to have the guard
+ epatch ${FILESDIR}/3.2.3/gcc-3.2.3-move-propolice-into-glibc.patch
fi
# Patches from Mandrake/Suse ...
@@ -251,6 +219,7 @@ src_unpack() {
# GCC bugfixes ...
epatch ${FILESDIR}/3.2.2/gcc32-pr7768.patch
epatch ${FILESDIR}/3.2.2/gcc32-pr8213.patch
+ epatch ${FILESDIR}/3.2.3/gcc-3.2.3-poisoned-malloc.patch #225743
# Get gcc to decreases the number of times the collector has to be run
# by increasing its memory workspace, bug #16548.