X-Git-Url: http://nsz.repo.hu/git/?p=musl;a=blobdiff_plain;f=configure;h=96f93b24cc705bde21bd3308bbeb0efacab09d5c;hp=08ef19a2c098c2b75e2008a8a15a8fb4d737675b;hb=1a70198b3e5a7866bf4c62d090d8a8e28b12521a;hpb=8bb181622222f2ee3462c8b021bcae4fcdbbd37a diff --git a/configure b/configure index 08ef19a2..96f93b24 100755 --- a/configure +++ b/configure @@ -145,7 +145,7 @@ i=0 set -C while : ; do i=$(($i+1)) tmpc="./conf$$-$PPID-$i.c" -2>/dev/null > "$tmpc" && break +2>|/dev/null > "$tmpc" && break test "$i" -gt 50 && fail "$0: cannot create temporary file $tmpc" done set +C @@ -270,9 +270,19 @@ fnmatch '-march=*|*\ -march=*' "$CFLAGS" || tryldflag CFLAGS_AUTO -march=i486 fnmatch '-mtune=*|*\ -mtune=*' "$CFLAGS" || tryldflag CFLAGS_AUTO -mtune=generic fi +# +# Even with -std=c99, gcc accepts some constructs which are constraint +# violations. We want to treat these as errors regardless of whether +# other purely stylistic warnings are enabled -- especially implicit +# function declarations, which are a dangerous programming error. +# +tryflag CFLAGS_AUTO -Werror=implicit-function-declaration +tryflag CFLAGS_AUTO -Werror=implicit-int +tryflag CFLAGS_AUTO -Werror=pointer-sign +tryflag CFLAGS_AUTO -Werror=pointer-arith + if test "x$warnings" = xyes ; then tryflag CFLAGS_AUTO -Wall -tryflag CFLAGS_AUTO -Wpointer-arith tryflag CFLAGS_AUTO -Wcast-align tryflag CFLAGS_AUTO -Wno-parentheses tryflag CFLAGS_AUTO -Wno-uninitialized