summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'sys-devel/gcc/files/3.3.6/gcc-3.3.6-cross-compile.patch')
-rw-r--r--sys-devel/gcc/files/3.3.6/gcc-3.3.6-cross-compile.patch62
1 files changed, 62 insertions, 0 deletions
diff --git a/sys-devel/gcc/files/3.3.6/gcc-3.3.6-cross-compile.patch b/sys-devel/gcc/files/3.3.6/gcc-3.3.6-cross-compile.patch
new file mode 100644
index 0000000..ff9b42b
--- /dev/null
+++ b/sys-devel/gcc/files/3.3.6/gcc-3.3.6-cross-compile.patch
@@ -0,0 +1,62 @@
+Some notes on the 'bootstrap with or without libc headers' debate:
+http://linuxfromscratch.org/pipermail/lfs-dev/2005-July/052409.html
+http://gcc.gnu.org/ml/gcc/2005-07/msg01195.html
+
+--- gcc/configure.in
++++ gcc/configure.in
+@@ -1276,8 +1276,9 @@
+ # This prevents libgcc2 from containing any code which requires libc
+ # support.
+ inhibit_libc=
+-if { test x$host != x$target && test "x$with_headers" = x &&
+- test "x$with_sysroot" = x ; } || test x$with_newlib = xyes ; then
++if { { test x$host != x$target && test "x$with_sysroot" = x ; } ||
++ test x$with_newlib = xyes ; } &&
++ { test "x$with_headers" = x || test "x$with_headers" = xno ; } ; then
+ inhibit_libc=-Dinhibit_libc
+ fi
+ AC_SUBST(inhibit_libc)
+--- gcc/configure
++++ gcc/configure
+@@ -1276,8 +1276,9 @@
+ # This prevents libgcc2 from containing any code which requires libc
+ # support.
+ inhibit_libc=
+-if { test x$host != x$target && test "x$with_headers" = x &&
+- test "x$with_sysroot" = x ; } || test x$with_newlib = xyes ; then
++if { { test x$host != x$target && test "x$with_sysroot" = x ; } ||
++ test x$with_newlib = xyes ; } &&
++ { test "x$with_headers" = x || test "x$with_headers" = xno ; } ; then
+ inhibit_libc=-Dinhibit_libc
+ fi
+ AC_SUBST(inhibit_libc)
+--- gcc/config/alpha/linux.h
++++ gcc/config/alpha/linux.h
+@@ -72,6 +72,7 @@
+ /* Do code reading to identify a signal frame, and set the frame
+ state data appropriately. See unwind-dw2.c for the structs. */
+
++#ifndef inhibit_libc
+ #ifdef IN_LIBGCC2
+ #include <signal.h>
+ #include <sys/ucontext.h>
+@@ -121,3 +122,4 @@
+ (FS)->retaddr_column = 64; \
+ goto SUCCESS; \
+ } while (0)
++#endif /* inhibit_libc */
+--- gcc/config/i386/linux.h
++++ gcc/config/i386/linux.h
+@@ -240,6 +240,7 @@
+ /* Do code reading to identify a signal frame, and set the frame
+ state data appropriately. See unwind-dw2.c for the structs. */
+
++#ifndef inhibit_libc
+ #ifdef IN_LIBGCC2
+ /* There's no sys/ucontext.h for some (all?) libc1, so no
+ signal-turned-exceptions for them. There's also no configure-run for
+@@ -304,3 +305,4 @@
+ } while (0)
+ #endif /* not USE_GNULIBC_1 */
+ #endif /* IN_LIBGCC2 */
++#endif /* inhibit_libc */