gcc-4.2.4: fix gcc build for sh4 and uclibc
authorHenning Heinold <heinold@inf.fu-berlin.de>
Sat, 4 Oct 2008 14:44:56 +0000 (14:44 +0000)
committerHenning Heinold <heinold@inf.fu-berlin.de>
Sat, 4 Oct 2008 14:44:56 +0000 (14:44 +0000)
* add sh_unwind.patch which fixes gcc/config/sh/linux-unwind.h
  like mips or i386
* add cppdefaults_cross.patch which removes /usr/include path from
  gcc/cppdefault.c when, this is needed because sh4 uses fixheader
  and fixproto and then zeckes no-host-include code yelling
  at the /usr/include
* ATTENTION this may break sh4-native gcc, but I do not
  believe that someone would use gcc directly on sh4 arch,
  if there iare some crazy people doing it, I will fix it in
  another way
* do not bump PR because it only affects sh4 arch

packages/gcc/gcc-4.2.4.inc
packages/gcc/gcc-4.2.4/cppdefault_cross.patch [new file with mode: 0644]
packages/gcc/gcc-4.2.4/sh_unwind.patch [new file with mode: 0644]

index ccca770..b21569b 100644 (file)
@@ -63,6 +63,11 @@ PACKAGE_ARCH_ep93xx = "${MACHINE_ARCH}"
 
 SRC_URI_append_sh3  = " file://sh3-installfix-fixheaders.patch;patch=1 "
 
+SRC_URI_append_sh4  = " file://sh_unwind.patch;patch=1 \
+                       file://cppdefault_cross.patch;patch=1 \
+                     "
+
+
 # Language Overrides
 FORTRAN = ""
 FORTRAN_linux-gnueabi = ",fortran"
diff --git a/packages/gcc/gcc-4.2.4/cppdefault_cross.patch b/packages/gcc/gcc-4.2.4/cppdefault_cross.patch
new file mode 100644 (file)
index 0000000..dfdbeb3
--- /dev/null
@@ -0,0 +1,12 @@
+Index: gcc-4.2.4/gcc/cppdefault.c
+===================================================================
+--- gcc-4.2.4.orig/gcc/cppdefault.c    2008-10-04 00:07:13.161548578 +0200
++++ gcc-4.2.4/gcc/cppdefault.c 2008-10-04 00:07:32.548205652 +0200
+@@ -39,6 +39,7 @@
+ # undef STANDARD_INCLUDE_DIR
+ #else
+ # undef CROSS_INCLUDE_DIR
++# undef STANDARD_INCLUDE_DIR
+ #endif
+ const struct default_include cpp_include_defaults[]
diff --git a/packages/gcc/gcc-4.2.4/sh_unwind.patch b/packages/gcc/gcc-4.2.4/sh_unwind.patch
new file mode 100644 (file)
index 0000000..9492163
--- /dev/null
@@ -0,0 +1,18 @@
+Index: gcc-4.2.4/gcc/config/sh/linux-unwind.h
+===================================================================
+--- gcc-4.2.4.orig/gcc/config/sh/linux-unwind.h        2008-10-04 00:05:29.434889757 +0200
++++ gcc-4.2.4/gcc/config/sh/linux-unwind.h     2008-10-04 00:06:02.594883544 +0200
+@@ -26,6 +26,7 @@
+ the Free Software Foundation, 51 Franklin Street, Fifth Floor,
+ Boston, MA 02110-1301, USA.  */
++#ifndef inhibit_libc
+ /* Do code reading to identify a signal frame, and set the frame
+    state data appropriately.  See unwind-dw2.c for the structs.  */
+@@ -251,3 +252,5 @@
+   return _URC_NO_REASON;
+ }
+ #endif /* defined (__SH5__) */
++
++#endif /* defined inhibit_libc */