Makefile: add INCLUDEDIR and DOCDIR_OLSRD
[olsrd.git] / ld-warnings
old mode 100644 (file)
new mode 100755 (executable)
index baafbc3..4d81eb4
@@ -3,7 +3,6 @@
 # We expect warning options for gcc as arguments and return the ones which are
 # accepted by the given gcc.
 #
 # We expect warning options for gcc as arguments and return the ones which are
 # accepted by the given gcc.
 #
-# $Id: ld-warnings,v 1.1 2007/12/06 20:10:19 bernd67 Exp $
 
 set -ue
 #set -vx
 
 set -ue
 #set -vx
@@ -20,7 +19,7 @@ for param; do
 done
 
 testcompile() {
 done
 
 testcompile() {
-    $CC $OPTS -x c - 2>&1 <<- EOF
+    $CC $OPTS -x c -o /dev/null - 2>&1 <<- EOF
        int main(void) {
            return 0;
        }
        int main(void) {
            return 0;
        }
@@ -33,9 +32,20 @@ parsetest() {
         *ld:\ unrecognized\ *option\ \'*)
             opt="${error#*\'}"
             opt="${opt%\'*}"
         *ld:\ unrecognized\ *option\ \'*)
             opt="${error#*\'}"
             opt="${opt%\'*}"
-            OPTS="${OPTS//-Wl,$opt}"
+            ;;
+        *) continue
             ;;
        esac
             ;;
        esac
+       # if we come here, we have in $opt the option to remove. and
+       # we remove all instances. And we save agoinst leading "-"
+       NEW_OPTS=""
+       for o in $OPTS; do
+           case "$o" in
+               -Wl,$opt) : echo "Removed $o" >&2;;
+               *)        NEW_OPTS="$NEW_OPTS $o";;
+           esac
+       done
+       OPTS="$NEW_OPTS"
     done
     echo $OPTS
 }
     done
     echo $OPTS
 }