patches/glibc/2.6.1/180-gcc-4.3-sysinclude-path.patch
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Sun Jul 17 22:46:47 2011 +0200 (2011-07-17)
changeset 2892 aa934ec4b4ee
permissions -rw-r--r--
cc/gcc: add the backend/frontend infra for final gcc

Currently, we issue the bare-metal compiler from the pass_1 & pass_2
core compilers, because the final gcc breaks while doing so.

This implies we have to build some libces during the start_files step,
instead of the standard libc step. This is the case for newlib.

By adding a backend/frontend infra to the final gcc, we can abstract
what backend to call: the standard backend for non-bare-metal gcc,
and the core backend for bare-metal.

This patch is just an no-op, it just adds the final backend and
frontend without changing the way bare-metal is built, to come in a
subsequent patch.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
     1 Patch pointed to by Ryan ARNOLD on the libc-help ML.
     2 See: http://sourceware.org/ml/libc-help/2008-06/msg00063.html
     3 
     4 Forwarded to crosstool-NG by Ioannis E. VENETIS:
     5 See: http://sourceware.org/ml/libc-help/2008-06/msg00063.html
     6 
     7 GCC 4.3 changed the location of some of the header files.  I don't
     8 understand why you'd be getting these errors while building GCC since
     9 it provides them.
    10 
    11 With regard to GLIBC, Roland checked in some changes so that the GLIBC
    12 build system could find the new locations of the GCC provided header
    13 files.
    14 
    15 diff -durN glibc-2.6.1.orig/configure.in glibc-2.6.1/configure.in
    16 --- glibc-2.6.1.orig/configure.in	2007-06-08 05:16:36.000000000 +0200
    17 +++ glibc-2.6.1/configure.in	2008-06-24 18:38:46.000000000 +0200
    18 @@ -911,8 +911,12 @@
    19  # header directory and add that to the list.  NOTE: Only does the right
    20  # thing on a system that doesn't need fixincludes.  (Not presently a problem.)
    21  if test -n "$sysheaders"; then
    22 -  ccheaders=`$CC -print-file-name=include`
    23 -  SYSINCLUDES="-nostdinc -isystem $ccheaders \
    24 +  SYSINCLUDES=-nostdinc
    25 +  for d in include include-fixed; do
    26 +    i=`$CC -print-file-name="$d"` && test "x$i" != x && test "x$i" != "x$d" &&
    27 +    SYSINCLUDES="$SYSINCLUDES -isystem $i"
    28 +  done
    29 +  SYSINCLUDES="$SYSINCLUDES \
    30  -isystem `echo $sysheaders | sed 's/:/ -isystem /g'`"
    31    if test -n "$CXX"; then
    32      cxxversion=`$CXX -dumpversion 2>&AS_MESSAGE_LOG_FD` &&
    33 diff -durN glibc-2.6.1.orig/configure glibc-2.6.1/configure
    34 --- glibc-2.6.1.orig/configure	2008-06-24 18:35:34.000000000 +0200
    35 +++ glibc-2.6.1/configure	2008-06-24 18:38:46.000000000 +0200
    36 @@ -4562,8 +4562,12 @@
    37  # header directory and add that to the list.  NOTE: Only does the right
    38  # thing on a system that doesn't need fixincludes.  (Not presently a problem.)
    39  if test -n "$sysheaders"; then
    40 -  ccheaders=`$CC -print-file-name=include`
    41 -  SYSINCLUDES="-nostdinc -isystem $ccheaders \
    42 +  SYSINCLUDES=-nostdinc
    43 +  for d in include include-fixed; do
    44 +    i=`$CC -print-file-name="$d"` && test "x$i" != "x$d" &&
    45 +    SYSINCLUDES="$SYSINCLUDES -isystem $i"
    46 +  done
    47 +  SYSINCLUDES="$SYSINCLUDES \
    48  -isystem `echo $sysheaders | sed 's/:/ -isystem /g'`"
    49    if test -n "$CXX"; then
    50      cxxversion=`$CXX -dumpversion 2>&5` &&