diff options
author | Thomas Vander Stichele <thomas@apestaart.org> | 2002-10-19 14:30:49 +0000 |
---|---|---|
committer | Thomas Vander Stichele <thomas@apestaart.org> | 2002-10-19 14:30:49 +0000 |
commit | 1ca7d9a20180cab830f4383cde5ba932338e50b1 (patch) | |
tree | 89bc64eb4e370c8ee01603da6593e8c83f8442cb | |
parent | cd050468e0d9e0d1b9134eb3081e2ab3228f0c01 (diff) |
macro to scrub CFLAGSRELEASE-0_4_2-TOESWIDEOPENBRANCH-RELEASE_0_4_2-ROOTBRANCH-RELEASE-0_4_2-ROOTBRANCH-RELEASE_0_4_2BRANCH-RELEASE-0_4_2
Original commit message from CVS:
macro to scrub CFLAGS
-rw-r--r-- | m4/as-scrub-include.m4 | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/m4/as-scrub-include.m4 b/m4/as-scrub-include.m4 new file mode 100644 index 0000000..f559ee8 --- /dev/null +++ b/m4/as-scrub-include.m4 @@ -0,0 +1,33 @@ +dnl as-scrub-include.m4 0.0.1 +dnl autostars m4 macro for scrubbing CFLAGS of system include dirs +dnl because gcc 3.x complains about including system including dirs +dnl +dnl thomas@apestaart.org +dnl +dnl This macro uses output of cpp -v and expects it to contain text that +dnl looks a little bit like this: +dnl #include <...> search starts here: +dnl /usr/local/include +dnl /usr/lib/gcc-lib/i386-redhat-linux/3.2/include +dnl /usr/include +dnl End of search list. + +dnl AS_SCRUB_INCLUDE(VAR) +dnl example +dnl AS_SCRUB_INCLUDE(CFLAGS) +dnl will remove all system include dirs from the given CFLAGS + +AC_DEFUN(AS_SCRUB_INCLUDE, +[ + GIVEN_CFLAGS=$[$1] + INCLUDE_DIRS=`echo | cpp -v 2>&1` + + dnl remove everything from this output between the "starts here" and "End of" + dnl line + INCLUDE_DIRS=`echo $INCLUDE_DIRS | sed -e 's/.*<...> search starts here://' | sed -e 's/End of search list.*//'` + for dir in $INCLUDE_DIRS; do + command="sed -e s#-I$dir##" + GIVEN_CFLAGS=`echo $GIVEN_CFLAGS | $command` + done + [$1]=$GIVEN_CFLAGS +]) |