Index: configure =================================================================== RCS file: /sources/qemu/qemu/configure,v retrieving revision 1.112 retrieving revision 1.113 diff -u -r1.112 -r1.113 --- configure 22 Oct 2006 00:18:54 -0000 1.112 +++ configure 19 Dec 2006 03:31:34 -0000 1.113 @@ -22,6 +22,8 @@ static="no" cross_prefix="" cc="gcc" +gcc3_search="yes" +gcc3_list="gcc-3.4 gcc34 gcc-3.3 gcc33 gcc-3.2 gcc32" host_cc="gcc" ar="ar" make="make" @@ -178,6 +180,7 @@ --cross-prefix=*) cross_prefix="$optarg" ;; --cc=*) cc="$optarg" + gcc3_search="no" ;; --host-cc=*) host_cc="$optarg" ;; @@ -314,6 +317,45 @@ fi fi +# Check for gcc4, error if pre-gcc4 +if test "$check_gcc" = "yes" ; then + cat > $TMPC <&/dev/null + return $? + } + + if "$cc" -o $TMPE $TMPC 2>/dev/null ; then + echo "WARNING: \"$cc\" looks like gcc 4.x" + found_compat_cc="no" + if test "$gcc3_search" = "yes" ; then + echo "Looking for gcc 3.x" + for compat_cc in $gcc3_list ; do + if check_cc "$compat_cc" ; then + echo "Found \"$compat_cc\"" + cc="$compat_cc" + found_compat_cc="yes" + break + fi + done + if test "$found_compat_cc" = "no" ; then + echo "gcc 3.x not found!" + fi + fi + if test "$found_compat_cc" = "no" ; then + echo "QEMU is known to have problems when compiled with gcc 4.x" + echo "It is recommended that you use gcc 3.x to build QEMU" + echo "To use this compiler anyway, configure with --disable-gcc-check" + exit 1; + fi + fi +fi + # # Solaris specific configure tool chain decisions # @@ -416,23 +458,6 @@ have_gcc3_options="yes" fi -# Check for gcc4, error if pre-gcc4 -if test "$check_gcc" = "yes" ; then - cat > $TMPC </dev/null ; then - echo "ERROR: \"$cc\" looks like gcc 4.x" - echo "QEMU is known to have problems when compiled with gcc 4.x" - echo "It is recommended that you use gcc 3.x to build QEMU" - echo "To use this compiler anyway, configure with --disable-gcc-check" - exit 1; - fi -fi - ########################################## # SDL probe