diff options
author | Adam Conrad <adconrad@0c3.net> | 2012-11-24 23:58:38 -0700 |
---|---|---|
committer | Adam Conrad <adconrad@0c3.net> | 2012-11-24 23:58:38 -0700 |
commit | 6706074627da7734d21f0024b6f7fb58b5629d6b (patch) | |
tree | 2778204c50c60008f0aae9e50ba1cefe42d8472c /configure.in | |
parent | 800938a1268309932c20dc523bb226bcab4bfe18 (diff) | |
download | glibc-6706074627da7734d21f0024b6f7fb58b5629d6b.tar.gz glibc-6706074627da7734d21f0024b6f7fb58b5629d6b.tar.xz glibc-6706074627da7734d21f0024b6f7fb58b5629d6b.zip |
Fix C++ header directory detection for non-standard paths.
Stop assuming specific path layouts for C++ headers, and instead use an autodetection method that looks for paths with '/[cg]++' in the g++ include list.
Diffstat (limited to 'configure.in')
-rw-r--r-- | configure.in | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/configure.in b/configure.in index a7f7198818..d369382264 100644 --- a/configure.in +++ b/configure.in @@ -995,12 +995,11 @@ if test -n "$sysheaders"; then -isystem `echo $sysheaders | sed 's/:/ -isystem /g'`" if test -n "$CXX"; then CXX_SYSINCLUDES= - cxxmachine=`$CXX -dumpmachine 2>&AS_MESSAGE_LOG_FD` && - cxxheaders=`$CXX -v -S -x c++ /dev/null -o /dev/null 2>&1 \ - | sed -n -e '1,/#include/d' -e '/^ \//{p;q;}' | sed 's/ //'` - test "x$cxxheaders" != x && test "x$i" != "x$cxxheaders" && - CXX_SYSINCLUDES="$CXX_SYSINCLUDES -isystem $cxxheaders \ --isystem $cxxheaders/$cxxmachine -isystem $cxxheaders/backward" + for cxxheaders in `$CXX -v -S -x c++ /dev/null -o /dev/null 2>&1 \ + | sed -n -e '1,/#include/d' -e 's/^ \(\/.*\/[cg]++\)/\1/p'`; do + test "x$cxxheaders" != x && + CXX_SYSINCLUDES="$CXX_SYSINCLUDES -isystem $cxxheaders" + done fi fi AC_SUBST(SYSINCLUDES) |