diff options
author | Mike Frysinger <vapier@gentoo.org> | 2008-06-22 10:52:51 +0000 |
---|---|---|
committer | Mike Frysinger <vapier@gentoo.org> | 2008-06-22 10:52:51 +0000 |
commit | c0bb7e1d207c6a216251b4fbae5e83d86d00e52a (patch) | |
tree | 9ba146e20350212b1971654ede96c476718bf5b8 /sys-devel | |
parent | stable x86, bug 228745 (diff) | |
download | historical-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/ChangeLog | 6 | ||||
-rw-r--r-- | sys-devel/gcc/Manifest | 11 | ||||
-rw-r--r-- | sys-devel/gcc/files/3.2.3/gcc-3.2.3-poisoned-malloc.patch | 41 | ||||
-rw-r--r-- | sys-devel/gcc/gcc-3.2.3-r4.ebuild | 37 |
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. |