remove cruft for libc struct accessor function and broken visibility
[musl] / configure
index e35c9b6..1b6b464 100755 (executable)
--- a/configure
+++ b/configure
@@ -391,10 +391,12 @@ tryflag CFLAGS_AUTO -Wa,--noexecstack
 # extensions enabled by default. This is bad for making static binaries.
 # We cheat and use i486 rather than i386 because i386 really does not
 # work anyway (issues with atomic ops).
+# Some build environments pass -march and -mtune options via CC, so
+# check both CC and CFLAGS.
 #
 if test "$ARCH" = "i386" ; then
-fnmatch '-march=*|*\ -march=*' "$CFLAGS" || tryldflag CFLAGS_AUTO -march=i486
-fnmatch '-mtune=*|*\ -mtune=*' "$CFLAGS" || tryldflag CFLAGS_AUTO -mtune=generic
+fnmatch '-march=*|*\ -march=*' "$CC $CFLAGS" || tryldflag CFLAGS_AUTO -march=i486
+fnmatch '-mtune=*|*\ -mtune=*' "$CC $CFLAGS" || tryldflag CFLAGS_AUTO -mtune=generic
 fi
 
 #
@@ -429,7 +431,7 @@ echo 'int (*fp)(void);' > "$tmpc"
 echo 'int foo(void) { }' >> "$tmpc"
 echo 'int bar(void) { fp = foo; return foo(); }' >> "$tmpc"
 if $CC $CFLAGS_C99FSE $CPPFLAGS $CFLAGS \
-  -DSHARED -fPIC -include src/internal/vis.h \
+  -DSHARED -fPIC -I./src/internal -include vis.h \
   -nostdlib -shared -Wl,-Bsymbolic-functions \
   -o /dev/null "$tmpc" >/dev/null 2>&1 ; then
 visibility=yes
@@ -440,7 +442,7 @@ printf "%s\n" "$visibility"
 fi
 
 if test "x$visibility" == xyes ; then
-CFLAGS_AUTO="$CFLAGS_AUTO -include src/internal/vis.h"
+CFLAGS_AUTO="$CFLAGS_AUTO -include vis.h"
 CFLAGS_AUTO="${CFLAGS_AUTO# }"
 fi
 
@@ -466,7 +468,7 @@ printf "using compiler runtime libraries: %s\n" "$LIBCC"
 
 # Figure out arch variants for archs with variants
 SUBARCH=
-t="$CFLAGS_C99FSE $CPPFLAGS $CFLAGS_AUTO $CFLAGS"
+t="$CFLAGS_C99FSE $CPPFLAGS $CFLAGS"
 
 if test "$ARCH" = "x86_64" ; then
 trycppif __ILP32__ "$t" && ARCH=x32