patches/gcc/4.3.5/350-sh-without-headers.patch
author "Yann E. MORIN" <yann.morin.1998@free.fr>
Tue Oct 16 20:57:44 2012 +0200 (2012-10-16)
changeset 3079 37831a33e07e
parent 1461 35b30f8fb307
permissions -rw-r--r--
kernel/linux: fix using custom location

Currently, extract and patch are skipped as thus:
- using a custom directory of pre-installed headers
- a correctly named directory already exists

Otherwise, extract and patch are done.

The current second condition is wrong, because it allows the following
sequence to happen:
- a non-custom kernel is used
- a previous build only partially extracted the non-custom sources
- that p[revious build broke during extraction (eg. incomplete tarball...)
- a subsequent build will find a properly named directory, and will
thus skip extract and patch, which is wrong

Fix that by following the conditions in this table:

Type | Extract | Patch
----------------------+---------+-------
Pre-installed headers | N | N
custom directory | N | N
custom tarball | Y | N
mainstream tarball | Y | Y

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: David Holsgrove <david.holsgrove@xilinx.com>
thomas@1461
     1
Original patch from: ../4.3.2/350-sh-without-headers.patch
thomas@1461
     2
thomas@1461
     3
-= BEGIN original header =-
thomas@1461
     4
On 20081011, Khem RAJ writes:
thomas@1461
     5
 You have to bar gcc trying to build unwinding at stage 1. Try the
thomas@1461
     6
 attached patch and see if it helps.
thomas@1461
     7
thomas@1461
     8
 gcc/config/sh/linux-unwind.h |    3 +++
thomas@1461
     9
 1 file changed, 3 insertions(+)
thomas@1461
    10
thomas@1461
    11
-= END original header =-
thomas@1461
    12
thomas@1461
    13
diff -durN gcc-4.3.3.orig/gcc/config/sh/linux-unwind.h gcc-4.3.3/gcc/config/sh/linux-unwind.h
thomas@1461
    14
--- gcc-4.3.3.orig/gcc/config/sh/linux-unwind.h	2007-09-12 08:59:06.000000000 +0200
thomas@1461
    15
+++ gcc-4.3.3/gcc/config/sh/linux-unwind.h	2009-01-27 22:28:57.000000000 +0100
thomas@1461
    16
@@ -26,6 +26,8 @@
thomas@1461
    17
 the Free Software Foundation, 51 Franklin Street, Fifth Floor,
thomas@1461
    18
 Boston, MA 02110-1301, USA.  */
thomas@1461
    19
 
thomas@1461
    20
+#ifndef inhibit_libc
thomas@1461
    21
+
thomas@1461
    22
 /* Do code reading to identify a signal frame, and set the frame
thomas@1461
    23
    state data appropriately.  See unwind-dw2.c for the structs.  */
thomas@1461
    24
 
thomas@1461
    25
@@ -251,3 +253,4 @@
thomas@1461
    26
   return _URC_NO_REASON;
thomas@1461
    27
 }
thomas@1461
    28
 #endif /* defined (__SH5__) */
thomas@1461
    29
+#endif /* ifndef inhibit_libc */