diff options
-rwxr-xr-x | configure | 82 |
1 files changed, 44 insertions, 38 deletions
@@ -20,6 +20,16 @@ TMPSDLLOG="${TMPDIR1}/qemu-conf-sdl-$$-${RANDOM}.log" trap "rm -f $TMPC $TMPO $TMPE $TMPS $TMPI $TMPSDLLOG; exit" 0 2 3 15 +compile_object() { + $cc $CFLAGS -c -o $TMPO $TMPC > /dev/null 2> /dev/null +} + +compile_prog() { + local_cflags="$1" + local_ldflags="$2" + $cc $CFLAGS $local_cflags -o $TMPE $TMPC $LDFLAGS $local_ldflags > /dev/null 2> /dev/null +} + # default parameters cpu="" prefix="" @@ -68,7 +78,7 @@ cat > $TMPC <<EOF int main(void) {} EOF -if $cc $CFLAGS -c -o $TMPO $TMPC > /dev/null 2> /dev/null ; then +if compile_object ; then : C compiler works ok else echo "ERROR: \"$cc\" either does not exist or does not work" @@ -82,7 +92,7 @@ cat > $TMPC <<EOF #endif int main(void) { return 0; } EOF - $cc $CFLAGS -c -o $TMPO $TMPC > /dev/null 2> /dev/null + compile_object } if test ! -z "$cpu" ; then @@ -778,7 +788,7 @@ int main(int argc, char ** argv){ } EOF -if $cc $CFLAGS -o $TMPE $TMPC > /dev/null 2> /dev/null ; then +if compile_prog "" "" ; then $TMPE && bigendian="yes" else echo big/little test failed @@ -824,7 +834,7 @@ void foo() } EOF -if $cc $CFLAGS -c -o $TMPO $TMPC > /dev/null 2> /dev/null ; then +if compile_object ; then : else nptl="no" @@ -837,7 +847,7 @@ cat > $TMPC << EOF #include <zlib.h> int main(void) { zlibVersion(); return 0; } EOF -if $cc $CFLAGS -o $TMPE $TMPC -lz > /dev/null 2> /dev/null ; then +if compile_prog "" "-lz" ; then : else echo @@ -857,7 +867,7 @@ if test "$xen" = "yes" ; then #include <xs.h> int main(void) { xs_daemon_open(); xc_interface_open(); return 0; } EOF - if $cc $CFLAGS -c -o $TMPO $TMPC $LDFLAGS $xen_libs 2> /dev/null > /dev/null ; then + if compile_prog "" "$xen_libs" ; then : else xen="no" @@ -878,7 +888,7 @@ int main( void ) { return SDL_Init (SDL_INIT_VIDEO); } EOF sdl_cflags=`sdl-config --cflags 2> /dev/null` sdl_libs=`sdl-config --libs 2> /dev/null` - if $cc $CFLAGS -o $TMPE $sdl_cflags $TMPC $sdl_libs > $TMPSDLLOG 2>&1 ; then + if compile_prog "$sdl_cflags" "$sdl_libs" ; then _sdlversion=`sdl-config --version | sed 's/[^0-9]//g'` if test "$_sdlversion" -lt 121 ; then sdl_too_old=yes @@ -895,7 +905,7 @@ EOF sdl_libs="$sdl_libs `aalib-config --static-libs >2 /dev/null`" sdl_cflags="$sd_cflags `aalib-config --cflags >2 /dev/null`" fi - if $cc -o $TMPE $CFLAGS $sdl_cflags $TMPC $sdl_libs > /dev/null 2> /dev/null; then + if compile_prog "$sdl_cflags" "$sdl_libs" ; then : else sdl=no @@ -914,7 +924,7 @@ if test "$sdl" = "yes" ; then #endif int main(void) { return 0; } EOF - if $cc $CFLAGS -o $TMPE $sdl_cflags $TMPC $sdl_libs > /dev/null 2>&1 ; then + if compile_prog "$sdl_cflags" "$sdl_libs" ; then sdl_libs="$sdl_libs -lX11" fi fi @@ -928,8 +938,7 @@ int main(void) { gnutls_session_t s; gnutls_init(&s, GNUTLS_SERVER); return 0; } EOF vnc_tls_cflags=`pkg-config --cflags gnutls 2> /dev/null` vnc_tls_libs=`pkg-config --libs gnutls 2> /dev/null` - if $cc $CFLAGS -o $TMPE $vnc_tls_cflags $TMPC \ - $vnc_tls_libs > /dev/null 2> /dev/null ; then + if compile_prog "$vnc_tls_cflags" "$vnc_tls_libs" ; then : else vnc_tls="no" @@ -947,8 +956,7 @@ EOF # Assuming Cyrus-SASL installed in /usr prefix vnc_sasl_cflags="" vnc_sasl_libs="-lsasl2" - if $cc $CFLAGS -o $TMPE $vnc_sasl_cflags $TMPC \ - $vnc_sasl_libs 2> /dev/null > /dev/null ; then + if compile_prog "$vnc_sasl_cflags" "$vnc_sasl_libs" ; then : else vnc_sasl="no" @@ -966,7 +974,7 @@ int main(void) return 0; } EOF -if $cc $CFLAGS -o $TMPE $TMPC > /dev/null 2> /dev/null ; then +if compile_prog "" "" ; then fnmatch="yes" fi @@ -984,7 +992,7 @@ int main(void) return 0; } EOF - if $cc $CFLAGS -o $TMPE $TMPC $vde_libs > /dev/null 2> /dev/null ; then + if compile_prog "" "$vde_libs" ; then vde=yes fi fi @@ -1003,7 +1011,7 @@ audio_drv_probe() #include <$hdr> int main(void) { $exp } EOF - if $cc $CFLAGS $cfl -o $TMPE $TMPC $lib > /dev/null 2> /dev/null ; then + if compile_prog "$cfl" "$lib" ; then : else echo @@ -1068,7 +1076,7 @@ if test "$brlapi" = "yes" ; then #include <brlapi.h> int main( void ) { return brlapi__openConnection (NULL, NULL, NULL); } EOF - if $cc $CFLAGS -o $TMPE $TMPC $brlapi_libs > /dev/null 2> /dev/null ; then + if compile_prog "" "$brlapi_libs" ; then brlapi=yes fi fi @@ -1084,9 +1092,9 @@ if test "$curses" = "yes" ; then #endif int main(void) { resize_term(0, 0); return curses_version(); } EOF - if $cc $CFLAGS -o $TMPE $TMPC -lncurses > /dev/null 2> /dev/null ; then + if compile_prog "" "-lncurses" ; then curses_libs="-lncurses" - elif $cc $CFLAGS -o $TMPE $TMPC -lcurses > /dev/null 2> /dev/null ; then + elif compile_prog "" "-lcurses" ; then curses_libs="-lcurses" else curses=no @@ -1103,7 +1111,7 @@ if test "$curl" = "yes" ; then int main(void) { return curl_easy_init(); } EOF curl_libs=`curl-config --libs 2>/dev/null` - if $cc $CFLAGS $curl_libs -o $TMPE $TMPC > /dev/null 2> /dev/null ; then + if compile_prog "" "$curl_libs" ; then curl=yes fi fi # test "$curl" @@ -1120,8 +1128,7 @@ int main(void) { return bt_error(0); } EOF bluez_cflags=`pkg-config --cflags bluez 2> /dev/null` bluez_libs=`pkg-config --libs bluez 2> /dev/null` - if $cc $CFLAGS -o $TMPE $bluez_cflags $TMPC \ - $bluez_libs > /dev/null 2> /dev/null ; then + if compile_prog "$bluez_cflags" "$bluez_libs" ; then : else bluez="no" @@ -1160,8 +1167,7 @@ EOF else kvm_cflags="" fi - if $cc $CFLAGS -o $TMPE $kvm_cflags $TMPC \ - > /dev/null 2>/dev/null ; then + if compile_prog "$kvm_cflags" "" ; then : else kvm="no"; @@ -1191,7 +1197,7 @@ cat > $TMPC << EOF int main(void) { pthread_create(0,0,0,0); return 0; } EOF for pthread_lib in $PTHREADLIBS_LIST; do - if $cc $CFLAGS -o $TMPE $TMPC $pthread_lib 2> /dev/null > /dev/null ; then + if compile_prog "" "$pthread_lib" ; then pthread=yes PTHREADLIBS="$pthread_lib" break @@ -1213,7 +1219,7 @@ cat > $TMPC <<EOF int main(void) { struct iovec iov; return 0; } EOF iovec=no -if $cc $CFLAGS -o $TMPE $TMPC > /dev/null 2> /dev/null ; then +if compile_prog "" "" ; then iovec=yes fi @@ -1226,7 +1232,7 @@ cat > $TMPC <<EOF int main(void) { preadv; } EOF preadv=no -if $cc $CFLAGS -o $TMPE $TMPC > /dev/null 2> /dev/null ; then +if compile_prog "" "" ; then preadv=yes fi @@ -1238,7 +1244,7 @@ if test "$fdt" = "yes" ; then cat > $TMPC << EOF int main(void) { return 0; } EOF - if $cc $CFLAGS -o $TMPE $TMPC $fdt_libs 2> /dev/null > /dev/null ; then + if compile_prog "" "$fdt_libs" ; then fdt=yes fi fi @@ -1262,7 +1268,7 @@ main(void) return (unlinkat(AT_FDCWD, "nonexistent_file", 0)); } EOF -if $cc $CFLAGS -o $TMPE $TMPC 2> /dev/null > /dev/null ; then +if compile_prog "" "" ; then atfile=yes fi @@ -1282,7 +1288,7 @@ main(void) return inotify_init(); } EOF -if $cc $CFLAGS -o $TMPE $TMPC 2> /dev/null > /dev/null ; then +if compile_prog "" "" ; then inotify=yes fi @@ -1301,7 +1307,7 @@ int main(void) return 0; } EOF -if $cc $CFLAGS -o $TMPE $TMPC 2> /dev/null ; then +if compile_prog "" "" ; then utimens=yes fi @@ -1319,7 +1325,7 @@ int main(void) return 0; } EOF -if $cc $CFLAGS -o $TMPE $TMPC 2> /dev/null ; then +if compile_prog "" "" ; then pipe2=yes fi @@ -1339,7 +1345,7 @@ int main(void) return 0; } EOF -if $cc $CFLAGS -o $TMPE $TMPC 2> /dev/null ; then +if compile_prog "" "" ; then splice=yes fi @@ -1354,7 +1360,7 @@ cat > $TMPC << EOF #include <byteswap.h> int main(void) { return bswap_32(0); } EOF -if $cc $CFLAGS -o $TMPE $TMPC >/dev/null 2> /dev/null ; then +if compile_prog "" "" ; then byteswap_h=yes fi @@ -1366,7 +1372,7 @@ cat > $TMPC << EOF #include <machine/bswap.h> int main(void) { return bswap32(0); } EOF -if $cc $CFLAGS -o $TMPE $TMPC >/dev/null 2> /dev/null ; then +if compile_prog "" "" ; then bswap_h=yes fi @@ -1378,9 +1384,9 @@ cat > $TMPC <<EOF int main(void) { clockid_t id; return clock_gettime(id, NULL); } EOF -if $cc $CFLAGS -o $TMPE $TMPC > /dev/null 2> /dev/null ; then +if compile_prog "" "" ; then CLOCKLIBS="" -elif $cc $CFLAGS -o $TMPE $TMPC -lrt > /dev/null 2> /dev/null ; then +elif compile_prog "" "-lrt" ; then CLOCKLIBS="-lrt" fi @@ -1391,7 +1397,7 @@ check_linker_flags() if test "$2" ; then w2=-Wl,$2 fi - $cc $CFLAGS -o $TMPE $TMPC -Wl,$1 ${w2} >/dev/null 2>/dev/null + compile_prog "" "-Wl,$1 ${w2}" } cat > $TMPC << EOF |