patches/glibc/2.6.1/180-gcc-4.3-sysinclude-path.patch
author Anthony Foiani <anthony.foiani@gmail.com>
Thu May 19 23:09:43 2011 +0200 (2011-05-19)
branch1.11
changeset 2465 5f98b7a90fbc
permissions -rw-r--r--
complibs/ppl: fix 0.11-0.11.2 to compile with --disable-shared

PPL 0.11 (through 0.11.2) had a small bug where it still tried to build
and test its Java interface even when shared libraries are disabled.
Since that's exactly what ct-ng does, it explodes.

This is the patch from the PPL authors (see final link below).

More information can be found in these messages/threads:

Anthony's initial report and analysis with Yann:
http://www.cygwin.com/ml/crossgcc/2011-05/msg00046.html

Ron Flory hit the same problem:
http://www.cygwin.com/ml/crossgcc/2011-05/msg00054.html

Anthony's report to the ppl-devel list:
http://www.cs.unipr.it/pipermail/ppl-devel/2011-May/017450.html

Roberto's reply with a link to the fix in the PPL git repo:
http://www.cs.unipr.it/pipermail/ppl-devel/2011-May/017455.html

Signed-Off-By: Anthony Foiani <anthony.foiani@gmail.com>
(transplanted from 139b85d70b623e51f7585e7c64ecb8c6a6cf4567)
     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` &&