[PATCH 1 of 5] cc/gcc: fix C++ headers location

Yann E. MORIN yann.morin.1998@anciens.enib.fr
Fri Oct 8 22:32:00 GMT 2010


# HG changeset patch
# User "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
# Date 1286573832 -7200
# Node ID a0924619112015bdaa81a0a2313d21ef38607bc2
# Parent  bf9fa67629cd6cb386245adc83c4e1b286ca3ee6
cc/gcc: fix C++ headers location

In case we build the C++ compiler, we have to tell gcc where to put the C++
headers, or else it will try to # put it in prefix/tuple/include, which we
make a symlink to sysroot/usr/include during the build, and that we delete
(the symlink!) after the build, but gcc will not look in sysroot/usr/inlcude
for C++ headers by default.

Implements a fix suggested by: Bryan Hundven <bryanhundven@gmail.com>

Reported-by: Anthony Foiani <anthony.foiani@gmail.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>

diff --git a/scripts/build/cc/gcc.sh b/scripts/build/cc/gcc.sh
--- a/scripts/build/cc/gcc.sh
+++ b/scripts/build/cc/gcc.sh
@@ -324,6 +324,15 @@
     CT_Test "Building ${CT_CC_LANG_OTHERS//,/ } language(s) is not yet supported. Will try..." -n "${CT_CC_LANG_OTHERS}"
     lang_opt=$(echo "${lang_opt},${CT_CC_LANG_OTHERS}" |sed -r -e 's/,+/,/g; s/,*$//;')
 
+    # In case we build the C++ compiler, we have to tell gcc where to put the
+    # C++ headers, or else it will try to put it in prefix/tuple/include,
+    # which we make a symlink to sysroot/usr/include during the build, and
+    # that we delete (the symlink!) after the build, but gcc will not look
+    # in sysroot/usr/inlcude for C++ headers by default
+    if [ "${CT_CC_LANG_CXX}" = "y"   ]; then
+        extra_config+=("--with-gxx-include-dir=${CT_SYSROOT_DIR}/usr/include")
+    fi
+
     extra_config+=("--enable-languages=${lang_opt}")
     extra_config+=("--disable-multilib")
     for tmp in ARCH ABI CPU TUNE FPU FLOAT; do



--
For unsubscribe information see http://sourceware.org/lists.html#faq



More information about the crossgcc mailing list