make configure check for visibility preinclude compatible with pcc

pcc does not search for -include relative to the working directory
unless -I. is used. rather than adding -I., which could be problematic
if there's extra junk in the top-level directory, switch back to the
old method (reverting commit 60ed988fd6)
of using -include vis.h and relying on -I./src/internal being present
on the command line (which the Makefile guarantees). to fix the
breakage that was present in trycppif checks with the old method,
$CFLAGS_AUTO is removed from the command line passed to trycppif; this
is valid since $CFLAGS_AUTO should not contain options that alter
compiler semantics or ABI, only optimizations, warnings, etc.
This commit is contained in:
Rich Felker 2015-04-22 01:41:00 -04:00
parent 873e0ec7fc
commit 428462a4c3
1 changed files with 3 additions and 3 deletions

6
configure vendored
View File

@ -431,7 +431,7 @@ echo 'int (*fp)(void);' > "$tmpc"
echo 'int foo(void) { }' >> "$tmpc" echo 'int foo(void) { }' >> "$tmpc"
echo 'int bar(void) { fp = foo; return foo(); }' >> "$tmpc" echo 'int bar(void) { fp = foo; return foo(); }' >> "$tmpc"
if $CC $CFLAGS_C99FSE $CPPFLAGS $CFLAGS \ 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 \ -nostdlib -shared -Wl,-Bsymbolic-functions \
-o /dev/null "$tmpc" >/dev/null 2>&1 ; then -o /dev/null "$tmpc" >/dev/null 2>&1 ; then
visibility=yes visibility=yes
@ -442,7 +442,7 @@ printf "%s\n" "$visibility"
fi fi
if test "x$visibility" == xyes ; then 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# }" CFLAGS_AUTO="${CFLAGS_AUTO# }"
fi fi
@ -468,7 +468,7 @@ printf "using compiler runtime libraries: %s\n" "$LIBCC"
# Figure out arch variants for archs with variants # Figure out arch variants for archs with variants
SUBARCH= SUBARCH=
t="$CFLAGS_C99FSE $CPPFLAGS $CFLAGS_AUTO $CFLAGS" t="$CFLAGS_C99FSE $CPPFLAGS $CFLAGS"
if test "$ARCH" = "x86_64" ; then if test "$ARCH" = "x86_64" ; then
trycppif __ILP32__ "$t" && ARCH=x32 trycppif __ILP32__ "$t" && ARCH=x32