Fix several issues with the configure script: * Allow option values to contains equal signs, like CC="/foo/arm-linux-gcc --sysroot=/foobar/usr" * Parse the option before doing the tests so that CC/CFLAGS can be used during the tests. Signed-off-by: Thomas Petazzoni --- configure | 72 +++++++++++++++++++++++++++++++------------------------------- 1 file changed, 37 insertions(+), 35 deletions(-) Index: ltrace-0.5.3/configure =================================================================== --- ltrace-0.5.3.orig/configure +++ ltrace-0.5.3/configure @@ -6,6 +6,38 @@ exit 1 fi +CC=gcc +CPPFLAGS=' -I /usr/include/libelf' +CFLAGS='-g -O2' +LIBS='-lelf ' +INSTALL='/usr/bin/install -c' +iquote='-iquote ' +iquoteend='' + +prefix=/usr/local +sysconfdir='${prefix}/etc' +bindir='${prefix}/bin' +mandir='${prefix}/share/man' +docdir='${prefix}/share/doc/ltrace' +for x_option +do + if test -n "$x_prev"; then + eval $x_prev=\$x_option + x_prev= + continue + fi + case $x_option in + --*=* | *=*) + x_var=`echo $x_option | sed 's/^--//' | sed 's/=.*//'` + x_val=`echo $x_option | sed 's/^[^=]*=//'` + eval $x_var=\"$x_val\" + ;; + --*) + x_prev=`echo $x_option | sed 's/^--//'` + ;; + esac +done + echo -n "checking package name... " PACKAGE_NAME='ltrace' echo $PACKAGE_NAME @@ -30,9 +62,10 @@ return cplus_demangle(); } EOF -if gcc conftest.c -liberty 2>/dev/null +if $CC $CFLAGS conftest.c -liberty 2>/dev/null then HAVE_LIBIBERTY=1 + LIBS="$LIBS -liberty" echo "yes" else unset HAVE_LIBIBERTY @@ -48,9 +81,10 @@ return __cxa_demangle(); } EOF -if gcc conftest.c -lsupc++ 2>/dev/null +if $CC $CFLAGS conftest.c -lsupc++ 2>/dev/null then HAVE_LIBSUPC__=1 + LIBS="$LIBS -lsupc++" echo "yes" else unset HAVE_LIBSUPC__ @@ -67,7 +101,7 @@ return 0; } EOF -if gcc conftest.c 2>/dev/null +if $CC $CFLAGS conftest.c 2>/dev/null then HAVE_ELF_C_READ_MMAP=1 echo "yes" @@ -77,38 +111,6 @@ fi rm -f conftest.c a.out -CC=gcc -CPPFLAGS=' -I /usr/include/libelf' -CFLAGS='-g -O2' -LIBS='-lelf -lsupc++ -liberty ' -INSTALL='/usr/bin/install -c' -iquote='-iquote ' -iquoteend='' - -prefix=/usr/local -sysconfdir='${prefix}/etc' -bindir='${prefix}/bin' -mandir='${prefix}/share/man' -docdir='${prefix}/share/doc/ltrace' -for x_option -do - if test -n "$x_prev"; then - eval $x_prev=\$x_option - x_prev= - continue - fi - case $x_option in - --*=* | *=*) - x_var=`echo $x_option | sed 's/^--//' | sed 's/=.*//'` - x_val=`echo $x_option | sed 's/^.*=//'` - eval $x_var=$x_val - ;; - --*) - x_prev=`echo $x_option | sed 's/^--//'` - ;; - esac -done - echo "configure: creating Makefile" # # Makefile.in -> Makefile