diff options
author | sbd <sbd@pkgsrc.org> | 2012-04-27 04:53:02 +0000 |
---|---|---|
committer | sbd <sbd@pkgsrc.org> | 2012-04-27 04:53:02 +0000 |
commit | 2de26ceba68185a77a064ac8da66629939cf1937 (patch) | |
tree | c80556283cabf09d5053bc6f36a9e67dca0cce7d /lang | |
parent | cfa25c7b985e6bec0f61c2b9bdb0a5f85b91e318 (diff) | |
download | pkgsrc-2de26ceba68185a77a064ac8da66629939cf1937.tar.gz |
Improve the patch that adds the %M spec string to handle multilib_os_dir
being NULL.
When building a single ABI capable gcc (e.g. 32bit systems), multilib_os_dir
may be NULL and this would cause gcc to segfault when trying to link libgcc.
Thanks to Filip Hajny for isolating the problem to the %M patch.
Diffstat (limited to 'lang')
-rw-r--r-- | lang/gcc47/distinfo | 4 | ||||
-rw-r--r-- | lang/gcc47/patches/patch-gcc_gcc.c | 9 |
2 files changed, 8 insertions, 5 deletions
diff --git a/lang/gcc47/distinfo b/lang/gcc47/distinfo index 79bd1fbb9cf..fc5c81dbb99 100644 --- a/lang/gcc47/distinfo +++ b/lang/gcc47/distinfo @@ -1,4 +1,4 @@ -$NetBSD: distinfo,v 1.2 2012/04/17 04:11:11 sbd Exp $ +$NetBSD: distinfo,v 1.3 2012/04/27 04:53:02 sbd Exp $ SHA1 (ecj-4.5.jar) = 58c1d79c64c8cd718550f32a932ccfde8d1e6449 RMD160 (ecj-4.5.jar) = d3f4da657f086b6423f74e93f001132f4855368a @@ -10,7 +10,7 @@ SHA1 (patch-gcc_Makefile.in) = 2372899a37259c89281e6bd1223e39df9b53a7e3 SHA1 (patch-gcc_config.gcc) = 0fd91e83b97886589280d94457a71c0c551e93a3 SHA1 (patch-gcc_config_netbsd-stdint.h) = 025fc883101a187e84ed4c0772406720d645d550 SHA1 (patch-gcc_fortran_f95-lang.c) = 06470dbee79f8c762675d3060a870b7dd9ba38f8 -SHA1 (patch-gcc_gcc.c) = 67a74bf3a5fc4cc9d9b3c7b79807fe11e2b002b3 +SHA1 (patch-gcc_gcc.c) = f23ddf1ad4decd086dd41a70046b4a870a39516f SHA1 (patch-gcc_ginclude_stddef.h) = 635e3e7579e9395fa017ac38e8b768d98937a80e SHA1 (patch-libgfortran_configure) = b3bbc7d9201073a1bed0b7e10141465bab52c8be SHA1 (patch-libgo_Makefile.in) = c06e3f0deb9f906d2c158262cffdc3fb7af95602 diff --git a/lang/gcc47/patches/patch-gcc_gcc.c b/lang/gcc47/patches/patch-gcc_gcc.c index 2ea6c4e0bad..7e5c93a152f 100644 --- a/lang/gcc47/patches/patch-gcc_gcc.c +++ b/lang/gcc47/patches/patch-gcc_gcc.c @@ -1,4 +1,4 @@ -$NetBSD: patch-gcc_gcc.c,v 1.1.1.1 2012/04/16 04:27:18 sbd Exp $ +$NetBSD: patch-gcc_gcc.c,v 1.2 2012/04/27 04:53:03 sbd Exp $ Add %M spec string. @@ -6,12 +6,15 @@ Submitted to GCC: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53002 --- gcc/gcc.c.orig 2012-02-28 17:31:38.000000000 +0000 +++ gcc/gcc.c -@@ -5115,6 +5115,10 @@ do_spec_1 (const char *spec, int inswitc +@@ -5115,6 +5115,13 @@ do_spec_1 (const char *spec, int inswitc return value; break; + case 'M': -+ obstack_grow (&obstack, multilib_os_dir, strlen (multilib_os_dir)); ++ if (multilib_os_dir == NULL) ++ obstack_1grow (&obstack, '.'); ++ else ++ obstack_grow (&obstack, multilib_os_dir, strlen(multilib_os_dir)); + break; + case 'G': |