X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=configure;h=a296f8ab0a10e3b9fdb831a112668ed0d94e5e3e;hb=c18d05f0e8909ec54252b251c441b5dd903268f8;hp=fcfdc1587559ce8e168ce8723b59348b46a3a739;hpb=2f853dd6b9a95d5b13ee8f9df762125e0588df5d;p=musl diff --git a/configure b/configure index fcfdc158..a296f8ab 100755 --- a/configure +++ b/configure @@ -338,7 +338,7 @@ __attribute__((__may_alias__)) #endif x; EOF -if $CC $CFLAGS_C99FSE -I$srcdir/arch/$ARCH -I$srcdir/include $CPPFLAGS $CFLAGS \ +if $CC $CFLAGS_C99FSE $CPPFLAGS $CFLAGS \ -c -o /dev/null "$tmpc" >/dev/null 2>&1 ; then printf "no\n" else @@ -517,7 +517,7 @@ int foo(void) { } int bar(void) { fp = foo; return foo(); } EOF if $CC $CFLAGS_C99FSE $CPPFLAGS $CFLAGS \ - -DSHARED -fPIC -I./src/internal -include vis.h \ + -DSHARED -fPIC -I$srcdir/src/internal -include vis.h \ -nostdlib -shared -Wl,-Bsymbolic-functions \ -o /dev/null "$tmpc" >/dev/null 2>&1 ; then visibility=yes @@ -532,6 +532,15 @@ CFLAGS_AUTO="$CFLAGS_AUTO -include vis.h" CFLAGS_AUTO="${CFLAGS_AUTO# }" fi +# Determine if the compiler produces position-independent code (PIC) +# by default. If so, we don't need to compile separate object files +# for libc.a and libc.so. +if trycppif __PIC__ "$CFLAGS_C99FSE $CPPFLAGS $CFLAGS" ; then +pic_default=yes +else +pic_default=no +fi + # Reduce space lost to padding for alignment purposes by sorting data # objects according to their alignment reqirements. This approximates # optimal packing. @@ -642,8 +651,9 @@ echo '#include ' > "$tmpc" echo '#if LDBL_MANT_DIG == 53' >> "$tmpc" echo 'typedef char ldcheck[9-(int)sizeof(long double)];' >> "$tmpc" echo '#endif' >> "$tmpc" -if $CC $CFLAGS_C99FSE -I$srcdir/arch/$ARCH -I$srcdir/include $CPPFLAGS $CFLAGS \ - -c -o /dev/null "$tmpc" >/dev/null 2>&1 ; then +if $CC $CFLAGS_C99FSE \ + -I$srcdir/arch/$ARCH -I$srcdir/arch/generic -I$srcdir/include \ + $CPPFLAGS $CFLAGS -c -o /dev/null "$tmpc" >/dev/null 2>&1 ; then printf "yes\n" else printf "no\n" @@ -692,6 +702,7 @@ test "x$static" = xno && echo "STATIC_LIBS =" test "x$shared" = xno && echo "SHARED_LIBS =" test "x$cc_family" = xgcc && echo 'WRAPCC_GCC = $(CC)' test "x$cc_family" = xclang && echo 'WRAPCC_CLANG = $(CC)' +test "x$pic_default" = xyes && echo 'AOBJS = $(LOBJS)' exec 1>&3 3>&- test "$srcdir" = "." || ln -sf $srcdir/Makefile .