X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;ds=sidebyside;f=configure;h=1d734726a4b8abb1d55e653ec44eb6cf1c5e2878;hb=926272ddffa293ee68ffeb01422fc8c792acf428;hp=327863c857c037e49f937ab6fee11262e73d7cc2;hpb=a80847d86a8865a78fdbebe7f9e2533f7a74e010;p=musl diff --git a/configure b/configure index 327863c8..1d734726 100755 --- a/configure +++ b/configure @@ -104,6 +104,7 @@ fi CFLAGS_C99FSE= CFLAGS_AUTO= +CFLAGS_MEMOPS= LDFLAGS_AUTO= OPTIMIZE_GLOBS= prefix=/usr/local/musl @@ -236,6 +237,14 @@ tryflag CFLAGS_C99FSE -fexcess-precision=standard \ || { test "$ARCH" = i386 && tryflag CFLAGS_C99FSE -ffloat-store ; } tryflag CFLAGS_C99FSE -frounding-math +# +# Check for options that may be needed to prevent the compiler from +# generating self-referential versions of memcpy,, memmove, memcmp, +# and memset. Really, we should add a check to determine if this +# option is sufficient, and if not, add a macro to cripple these +# functions with volatile... +# +tryflag CFLAGS_MEMOPS -fno-tree-loop-distribute-patterns # # If debugging is explicitly enabled, don't auto-enable optimizations @@ -264,7 +273,7 @@ xno|x) printf "disabled\n" ; optimize=no ;; esac test "$optimize" = no || tryflag CFLAGS_AUTO -Os || tryflag CFLAGS_AUTO -O2 -test "$optimize" = yes && optimize="internal,malloc,math,string" +test "$optimize" = yes && optimize="internal,malloc,string" if fnmatch 'no|size' "$optimize" ; then : else @@ -403,6 +412,7 @@ syslibdir = $syslibdir CC = $CC CFLAGS= $CFLAGS_AUTO $CFLAGS CFLAGS_C99FSE = $CFLAGS_C99FSE +CFLAGS_MEMOPS = $CFLAGS_MEMOPS CPPFLAGS = $CPPFLAGS LDFLAGS = $LDFLAGS_AUTO $LDFLAGS CROSS_COMPILE = $CROSS_COMPILE