Diff for /qemu/configure between versions 1.1.1.13 and 1.1.1.14

version 1.1.1.13, 2018/04/24 18:24:03 version 1.1.1.14, 2018/04/24 18:33:57
Line 15  TMPC="${TMPDIR1}/qemu-conf-${RANDOM}-$$- Line 15  TMPC="${TMPDIR1}/qemu-conf-${RANDOM}-$$-
 TMPO="${TMPDIR1}/qemu-conf-${RANDOM}-$$-${RANDOM}.o"  TMPO="${TMPDIR1}/qemu-conf-${RANDOM}-$$-${RANDOM}.o"
 TMPE="${TMPDIR1}/qemu-conf-${RANDOM}-$$-${RANDOM}.exe"  TMPE="${TMPDIR1}/qemu-conf-${RANDOM}-$$-${RANDOM}.exe"
   
 trap "rm -f $TMPC $TMPO $TMPE ; exit" EXIT INT QUIT TERM  # NB: do not call "exit" in the trap handler; this is buggy with some shells;
   # see <1285349658-3122-1-git-send-email-loic.minier@linaro.org>
   trap "rm -f $TMPC $TMPO $TMPE" EXIT INT QUIT TERM
   rm -f config.log
   
 compile_object() {  compile_object() {
   $cc $QEMU_CFLAGS -c -o $TMPO $TMPC > /dev/null 2> /dev/null    echo $cc $QEMU_CFLAGS -c -o $TMPO $TMPC >> config.log
     $cc $QEMU_CFLAGS -c -o $TMPO $TMPC >> config.log 2>&1
 }  }
   
 compile_prog() {  compile_prog() {
   local_cflags="$1"    local_cflags="$1"
   local_ldflags="$2"    local_ldflags="$2"
   $cc $QEMU_CFLAGS $local_cflags -o $TMPE $TMPC $LDFLAGS $local_ldflags > /dev/null 2> /dev/null    echo $cc $QEMU_CFLAGS $local_cflags -o $TMPE $TMPC $LDFLAGS $local_ldflags >> config.log
     $cc $QEMU_CFLAGS $local_cflags -o $TMPE $TMPC $LDFLAGS $local_ldflags >> config.log 2>&1
   }
   
   # symbolically link $1 to $2.  Portable version of "ln -sf".
   symlink() {
     rm -f $2
     ln -s $1 $2
 }  }
   
 # check whether a command is available to this shell (may be either an  # check whether a command is available to this shell (may be either an
Line 64  path_of() { Line 75  path_of() {
 }  }
   
 # default parameters  # default parameters
   source_path=`dirname "$0"`
 cpu=""  cpu=""
 interp_prefix="/usr/gnemul/qemu-%M"  interp_prefix="/usr/gnemul/qemu-%M"
 static="no"  static="no"
 sparc_cpu=""  sparc_cpu=""
 cross_prefix=""  cross_prefix=""
 cc="gcc"  
 audio_drv_list=""  audio_drv_list=""
 audio_card_list="ac97 es1370 sb16"  audio_card_list="ac97 es1370 sb16 hda"
 audio_possible_cards="ac97 es1370 sb16 cs4231a adlib gus"  audio_possible_cards="ac97 es1370 sb16 cs4231a adlib gus hda"
 block_drv_whitelist=""  block_drv_whitelist=""
 host_cc="gcc"  host_cc="gcc"
 ar="ar"  
 make="make"  
 install="install"  
 objcopy="objcopy"  
 ld="ld"  
 helper_cflags=""  helper_cflags=""
 libs_softmmu=""  libs_softmmu=""
 libs_tools=""  libs_tools=""
 audio_pt_int=""  audio_pt_int=""
 audio_win_int=""  audio_win_int=""
   cc_i386=i386-pc-linux-gnu-gcc
   
   target_list=""
   
   # Default value for a variable defining feature "foo".
   #  * foo="no"  feature will only be used if --enable-foo arg is given
   #  * foo=""    feature will be searched for, and if found, will be used
   #              unless --disable-foo is given
   #  * foo="yes" this value will only be set by --enable-foo flag.
   #              feature will searched for,
   #              if not found, configure exits with error
   #
   # Always add --enable-foo and --disable-foo command line args.
   # Distributions want to ensure that several features are compiled in, and it
   # is impossible without a --enable-foo that exits if a feature is not found.
   
   bluez=""
   brlapi=""
   curl=""
   curses=""
   docs=""
   fdt=""
   kvm=""
   kvm_para=""
   nptl=""
   sdl=""
   sparse="no"
   uuid=""
   vde=""
   vnc_tls=""
   vnc_sasl=""
   vnc_jpeg=""
   vnc_png=""
   vnc_thread="no"
   xen=""
   linux_aio=""
   attr=""
   vhost_net=""
   xfs=""
   
   gprof="no"
   debug_tcg="no"
   debug_mon="no"
   debug="no"
   strip_opt="yes"
   bigendian="no"
   mingw32="no"
   EXESUF=""
   prefix="/usr/local"
   mandir="\${prefix}/share/man"
   datadir="\${prefix}/share/qemu"
   docdir="\${prefix}/share/doc/qemu"
   bindir="\${prefix}/bin"
   sysconfdir="\${prefix}/etc"
   confsuffix="/qemu"
   slirp="yes"
   fmod_lib=""
   fmod_inc=""
   oss_lib=""
   bsd="no"
   linux="no"
   solaris="no"
   profiler="no"
   cocoa="no"
   softmmu="yes"
   linux_user="no"
   darwin_user="no"
   bsd_user="no"
   guest_base=""
   uname_release=""
   io_thread="no"
   mixemu="no"
   kerneldir=""
   aix="no"
   blobs="yes"
   pkgversion=""
   check_utests="no"
   user_pie="no"
   zero_malloc=""
   trace_backend="nop"
   trace_file="trace"
   spice=""
   rbd=""
   
 # parse CC options first  # parse CC options first
 for opt do  for opt do
Line 92  for opt do Line 181  for opt do
   case "$opt" in    case "$opt" in
   --cross-prefix=*) cross_prefix="$optarg"    --cross-prefix=*) cross_prefix="$optarg"
   ;;    ;;
   --cc=*) cc="$optarg"    --cc=*) CC="$optarg"
     ;;
     --source-path=*) source_path="$optarg"
   ;;    ;;
   --cpu=*) cpu="$optarg"    --cpu=*) cpu="$optarg"
   ;;    ;;
Line 121  done Line 212  done
 # Using uname is really, really broken.  Once we have the right set of checks  # Using uname is really, really broken.  Once we have the right set of checks
 # we can eliminate it's usage altogether  # we can eliminate it's usage altogether
   
 cc="${cross_prefix}${cc}"  cc="${cross_prefix}${CC-gcc}"
 ar="${cross_prefix}${ar}"  ar="${cross_prefix}${AR-ar}"
 objcopy="${cross_prefix}${objcopy}"  objcopy="${cross_prefix}${OBJCOPY-objcopy}"
 ld="${cross_prefix}${ld}"  ld="${cross_prefix}${LD-ld}"
   strip="${cross_prefix}${STRIP-strip}"
   windres="${cross_prefix}${WINDRES-windres}"
   pkg_config="${cross_prefix}${PKG_CONFIG-pkg-config}"
   sdl_config="${cross_prefix}${SDL_CONFIG-sdl-config}"
   
 # default flags for all hosts  # default flags for all hosts
 QEMU_CFLAGS="-fno-strict-aliasing $QEMU_CFLAGS"  QEMU_CFLAGS="-fno-strict-aliasing $QEMU_CFLAGS"
Line 133  QEMU_CFLAGS="-Wall -Wundef -Wendif-label Line 228  QEMU_CFLAGS="-Wall -Wundef -Wendif-label
 QEMU_CFLAGS="-Wstrict-prototypes -Wredundant-decls $QEMU_CFLAGS"  QEMU_CFLAGS="-Wstrict-prototypes -Wredundant-decls $QEMU_CFLAGS"
 QEMU_CFLAGS="-D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE $QEMU_CFLAGS"  QEMU_CFLAGS="-D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE $QEMU_CFLAGS"
 QEMU_CFLAGS="-D_FORTIFY_SOURCE=2 $QEMU_CFLAGS"  QEMU_CFLAGS="-D_FORTIFY_SOURCE=2 $QEMU_CFLAGS"
 QEMU_CFLAGS="-I. -I\$(SRC_PATH) $QEMU_CFLAGS"  QEMU_INCLUDES="-I. -I\$(SRC_PATH)"
 LDFLAGS="-g $LDFLAGS"  LDFLAGS="-g $LDFLAGS"
   
 gcc_flags="-Wold-style-declaration -Wold-style-definition -fstack-protector-all"  # make source path absolute
 cat > $TMPC << EOF  source_path=`cd "$source_path"; pwd`
 int main(void) { return 0; }  
 EOF  
 for flag in $gcc_flags; do  
     if compile_prog "-Werror $QEMU_CFLAGS" "-Werror $flag" ; then  
         QEMU_CFLAGS="$flag $QEMU_CFLAGS"  
     fi  
 done  
   
 # check that the C compiler works.  
 cat > $TMPC <<EOF  
 int main(void) {}  
 EOF  
   
 if compile_object ; then  
   : C compiler works ok  
 else  
     echo "ERROR: \"$cc\" either does not exist or does not work"  
     exit 1  
 fi  
   
 check_define() {  check_define() {
 cat > $TMPC <<EOF  cat > $TMPC <<EOF
Line 203  else Line 279  else
   cpu=`uname -m`    cpu=`uname -m`
 fi  fi
   
 target_list=""  
 case "$cpu" in  case "$cpu" in
   alpha|cris|ia64|m68k|microblaze|ppc|ppc64|sparc64)    alpha|cris|ia64|m68k|microblaze|ppc|ppc64|sparc64)
     cpu="$cpu"      cpu="$cpu"
Line 241  case "$cpu" in Line 316  case "$cpu" in
   ;;    ;;
 esac  esac
   
 # Default value for a variable defining feature "foo".  
 #  * foo="no"  feature will only be used if --enable-foo arg is given  
 #  * foo=""    feature will be searched for, and if found, will be used  
 #              unless --disable-foo is given  
 #  * foo="yes" this value will only be set by --enable-foo flag.  
 #              feature will searched for,  
 #              if not found, configure exits with error  
 #  
 # Always add --enable-foo and --disable-foo command line args.  
 # Distributions want to ensure that several features are compiled in, and it  
 # is impossible without a --enable-foo that exits if a feature is not found.  
   
 bluez=""  
 brlapi=""  
 curl=""  
 curses=""  
 docs=""  
 fdt=""  
 kvm=""  
 kvm_para=""  
 nptl=""  
 sdl=""  
 sparse="no"  
 uuid=""  
 vde=""  
 vnc_tls=""  
 vnc_sasl=""  
 vnc_jpeg=""  
 vnc_png=""  
 vnc_thread="no"  
 xen=""  
 linux_aio=""  
 attr=""  
 vhost_net=""  
   
 gprof="no"  
 debug_tcg="no"  
 debug_mon="no"  
 debug="no"  
 strip_opt="yes"  
 bigendian="no"  
 mingw32="no"  
 EXESUF=""  
 prefix="/usr/local"  
 mandir="\${prefix}/share/man"  
 datadir="\${prefix}/share/qemu"  
 docdir="\${prefix}/share/doc/qemu"  
 bindir="\${prefix}/bin"  
 sysconfdir="\${prefix}/etc"  
 confsuffix="/qemu"  
 slirp="yes"  
 fmod_lib=""  
 fmod_inc=""  
 oss_lib=""  
 bsd="no"  
 linux="no"  
 solaris="no"  
 profiler="no"  
 cocoa="no"  
 softmmu="yes"  
 linux_user="no"  
 darwin_user="no"  
 bsd_user="no"  
 guest_base=""  
 uname_release=""  
 io_thread="no"  
 mixemu="no"  
 kerneldir=""  
 aix="no"  
 blobs="yes"  
 pkgversion=""  
 check_utests="no"  
 user_pie="no"  
 zero_malloc=""  
   
 # OS specific  # OS specific
 if check_define __linux__ ; then  if check_define __linux__ ; then
   targetos="Linux"    targetos="Linux"
Line 325  elif check_define __OpenBSD__ ; then Line 325  elif check_define __OpenBSD__ ; then
   targetos='OpenBSD'    targetos='OpenBSD'
 elif check_define __sun__ ; then  elif check_define __sun__ ; then
   targetos='SunOS'    targetos='SunOS'
   elif check_define __HAIKU__ ; then
     targetos='Haiku'
 else  else
   targetos=`uname -s`    targetos=`uname -s`
 fi  fi
Line 348  GNU/kFreeBSD) Line 350  GNU/kFreeBSD)
 ;;  ;;
 FreeBSD)  FreeBSD)
   bsd="yes"    bsd="yes"
   make="gmake"    make="${MAKE-gmake}"
   audio_drv_list="oss"    audio_drv_list="oss"
   audio_possible_drivers="oss sdl esd pa"    audio_possible_drivers="oss sdl esd pa"
   # needed for kinfo_getvmmap(3) in libutil.h    # needed for kinfo_getvmmap(3) in libutil.h
Line 356  FreeBSD) Line 358  FreeBSD)
 ;;  ;;
 DragonFly)  DragonFly)
   bsd="yes"    bsd="yes"
   make="gmake"    make="${MAKE-gmake}"
   audio_drv_list="oss"    audio_drv_list="oss"
   audio_possible_drivers="oss sdl esd pa"    audio_possible_drivers="oss sdl esd pa"
 ;;  ;;
 NetBSD)  NetBSD)
   bsd="yes"    bsd="yes"
   make="gmake"    make="${MAKE-gmake}"
   audio_drv_list="oss"    audio_drv_list="oss"
   audio_possible_drivers="oss sdl esd"    audio_possible_drivers="oss sdl esd"
   oss_lib="-lossaudio"    oss_lib="-lossaudio"
 ;;  ;;
 OpenBSD)  OpenBSD)
   bsd="yes"    bsd="yes"
   make="gmake"    make="${MAKE-gmake}"
   audio_drv_list="oss"    audio_drv_list="oss"
   audio_possible_drivers="oss sdl esd"    audio_possible_drivers="oss sdl esd"
   oss_lib="-lossaudio"    oss_lib="-lossaudio"
Line 398  Darwin) Line 400  Darwin)
 ;;  ;;
 SunOS)  SunOS)
   solaris="yes"    solaris="yes"
   make="gmake"    make="${MAKE-gmake}"
   install="ginstall"    install="${INSTALL-ginstall}"
   ld="gld"    ld="gld"
   needs_libsunmath="no"    needs_libsunmath="no"
   solarisrev=`uname -r | cut -f2 -d.`    solarisrev=`uname -r | cut -f2 -d.`
Line 438  SunOS) Line 440  SunOS)
 ;;  ;;
 AIX)  AIX)
   aix="yes"    aix="yes"
   make="gmake"    make="${MAKE-gmake}"
   ;;
   Haiku)
     haiku="yes"
     QEMU_CFLAGS="-DB_USE_POSITIVE_POSIX_ERRORS $QEMU_CFLAGS"
     LIBS="-lposix_error_mapper -lnetwork $LIBS"
 ;;  ;;
 *)  *)
   audio_drv_list="oss"    audio_drv_list="oss"
Line 459  if [ "$bsd" = "yes" ] ; then Line 466  if [ "$bsd" = "yes" ] ; then
   bsd_user="yes"    bsd_user="yes"
 fi  fi
   
   : ${make=${MAKE-make}}
   : ${install=${INSTALL-install}}
   
 if test "$mingw32" = "yes" ; then  if test "$mingw32" = "yes" ; then
   EXESUF=".exe"    EXESUF=".exe"
   QEMU_CFLAGS="-DWIN32_LEAN_AND_MEAN -DWINVER=0x501 $QEMU_CFLAGS"    QEMU_CFLAGS="-DWIN32_LEAN_AND_MEAN -DWINVER=0x501 $QEMU_CFLAGS"
Line 474  if test "$mingw32" = "yes" ; then Line 484  if test "$mingw32" = "yes" ; then
   confsuffix=""    confsuffix=""
 fi  fi
   
 # find source path  
 source_path=`dirname "$0"`  
 source_path_used="no"  
 workdir=`pwd`  
 if [ -z "$source_path" ]; then  
     source_path=$workdir  
 else  
     source_path=`cd "$source_path"; pwd`  
 fi  
 [ -f "$workdir/vl.c" ] || source_path_used="yes"  
   
 werror=""  werror=""
   
 for opt do  for opt do
Line 496  for opt do Line 495  for opt do
   ;;    ;;
   --interp-prefix=*) interp_prefix="$optarg"    --interp-prefix=*) interp_prefix="$optarg"
   ;;    ;;
   --source-path=*) source_path="$optarg"    --source-path=*)
   source_path_used="yes"  
   ;;    ;;
   --cross-prefix=*)    --cross-prefix=*)
   ;;    ;;
Line 517  for opt do Line 515  for opt do
   ;;    ;;
   --target-list=*) target_list="$optarg"    --target-list=*) target_list="$optarg"
   ;;    ;;
     --enable-trace-backend=*) trace_backend="$optarg"
     ;;
     --with-trace-file=*) trace_file="$optarg"
     ;;
   --enable-gprof) gprof="yes"    --enable-gprof) gprof="yes"
   ;;    ;;
   --static)    --static)
Line 616  for opt do Line 618  for opt do
   ;;    ;;
   --enable-kvm) kvm="yes"    --enable-kvm) kvm="yes"
   ;;    ;;
     --disable-spice) spice="no"
     ;;
     --enable-spice) spice="yes"
     ;;
   --enable-profiler) profiler="yes"    --enable-profiler) profiler="yes"
   ;;    ;;
   --enable-cocoa)    --enable-cocoa)
Line 709  for opt do Line 715  for opt do
   ;;    ;;
   --*dir)    --*dir)
   ;;    ;;
     --disable-rbd) rbd="no"
     ;;
     --enable-rbd) rbd="yes"
     ;;
   *) echo "ERROR: unknown option $opt"; show_help="yes"    *) echo "ERROR: unknown option $opt"; show_help="yes"
   ;;    ;;
   esac    esac
Line 758  case "$cpu" in Line 768  case "$cpu" in
     i386)      i386)
            QEMU_CFLAGS="-m32 $QEMU_CFLAGS"             QEMU_CFLAGS="-m32 $QEMU_CFLAGS"
            LDFLAGS="-m32 $LDFLAGS"             LDFLAGS="-m32 $LDFLAGS"
              cc_i386='$(CC) -m32'
            helper_cflags="-fomit-frame-pointer"             helper_cflags="-fomit-frame-pointer"
            host_guest_base="yes"             host_guest_base="yes"
            ;;             ;;
     x86_64)      x86_64)
            QEMU_CFLAGS="-m64 $QEMU_CFLAGS"             QEMU_CFLAGS="-m64 $QEMU_CFLAGS"
            LDFLAGS="-m64 $LDFLAGS"             LDFLAGS="-m64 $LDFLAGS"
              cc_i386='$(CC) -m32'
            host_guest_base="yes"             host_guest_base="yes"
            ;;             ;;
     arm*)      arm*)
Line 895  echo "  --enable-docs            enable  Line 907  echo "  --enable-docs            enable 
 echo "  --disable-docs           disable documentation build"  echo "  --disable-docs           disable documentation build"
 echo "  --disable-vhost-net      disable vhost-net acceleration support"  echo "  --disable-vhost-net      disable vhost-net acceleration support"
 echo "  --enable-vhost-net       enable vhost-net acceleration support"  echo "  --enable-vhost-net       enable vhost-net acceleration support"
   echo "  --enable-trace-backend=B Set trace backend"
   echo "                           Available backends:" $("$source_path"/scripts/tracetool --list-backends)
   echo "  --with-trace-file=NAME   Full PATH,NAME of file to store traces"
   echo "                           Default:trace-<pid>"
   echo "  --disable-spice          disable spice"
   echo "  --enable-spice           enable spice"
   echo "  --enable-rbd             enable building the rados block device (rbd)"
 echo ""  echo ""
 echo "NOTE: The object files are built at the place where configure is launched"  echo "NOTE: The object files are built at the place where configure is launched"
 exit 1  exit 1
 fi  fi
   
   # check that the C compiler works.
   cat > $TMPC <<EOF
   int main(void) {}
   EOF
   
   if compile_object ; then
     : C compiler works ok
   else
       echo "ERROR: \"$cc\" either does not exist or does not work"
       exit 1
   fi
   
   gcc_flags="-Wold-style-declaration -Wold-style-definition -Wtype-limits"
   gcc_flags="-Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers $gcc_flags"
   gcc_flags="-Wmissing-include-dirs -Wempty-body -Wnested-externs $gcc_flags"
   gcc_flags="-fstack-protector-all $gcc_flags"
   cat > $TMPC << EOF
   int main(void) { return 0; }
   EOF
   for flag in $gcc_flags; do
       if compile_prog "-Werror $QEMU_CFLAGS" "-Werror $flag" ; then
           QEMU_CFLAGS="$QEMU_CFLAGS $flag"
       fi
   done
   
 #  #
 # Solaris specific configure tool chain decisions  # Solaris specific configure tool chain decisions
 #  #
Line 1043  esac Line 1087  esac
   
 fi  fi
   
 # host long bits test  # host long bits test, actually a pointer size test
 hostlongbits="32"  cat > $TMPC << EOF
 case "$cpu" in  int sizeof_pointer_is_8[sizeof(void *) == 8 ? 1 : -1];
   x86_64|alpha|ia64|sparc64|ppc64|s390x)  EOF
     hostlongbits=64  if compile_object; then
   ;;  hostlongbits=64
 esac  else
   hostlongbits=32
   fi
   
   
 ##########################################  ##########################################
Line 1116  EOF Line 1162  EOF
 fi  fi
   
 ##########################################  ##########################################
 # pkgconfig probe  # pkg-config probe
   
 pkgconfig="${cross_prefix}pkg-config"  if ! has $pkg_config; then
 if ! has $pkgconfig; then    echo warning: proceeding without "$pkg_config" >&2
   # likely not cross compiling, or hope for the best    pkg_config=/bin/false
   pkgconfig=pkg-config  
 fi  fi
   
 ##########################################  ##########################################
Line 1140  fi Line 1185  fi
 ##########################################  ##########################################
 # SDL probe  # SDL probe
   
 # Look for sdl configuration program (pkg-config or sdl-config).  # Look for sdl configuration program (pkg-config or sdl-config).  Try
 # Prefer variant with cross prefix if cross compiling,  # sdl-config even without cross prefix, and favour pkg-config over sdl-config.
 # and favour pkg-config with sdl over sdl-config.  if test "`basename $sdl_config`" != sdl-config && ! has ${sdl_config}; then
 if test -n "$cross_prefix" -a $pkgconfig != pkg-config && \    sdl_config=sdl-config
      $pkgconfig sdl --modversion >/dev/null 2>&1; then  fi
   sdlconfig="$pkgconfig sdl"  
   _sdlversion=`$sdlconfig --modversion 2>/dev/null | sed 's/[^0-9]//g'`  if $pkg_config sdl --modversion >/dev/null 2>&1; then
 elif test -n "$cross_prefix" && has ${cross_prefix}sdl-config; then    sdlconfig="$pkg_config sdl"
   sdlconfig="${cross_prefix}sdl-config"  
   _sdlversion=`$sdlconfig --version | sed 's/[^0-9]//g'`  
 elif $pkgconfig sdl --modversion >/dev/null 2>&1; then  
   sdlconfig="$pkgconfig sdl"  
   _sdlversion=`$sdlconfig --modversion 2>/dev/null | sed 's/[^0-9]//g'`    _sdlversion=`$sdlconfig --modversion 2>/dev/null | sed 's/[^0-9]//g'`
 elif has sdl-config; then  elif has ${sdl_config}; then
   sdlconfig='sdl-config'    sdlconfig="$sdl_config"
   _sdlversion=`$sdlconfig --version | sed 's/[^0-9]//g'`    _sdlversion=`$sdlconfig --version | sed 's/[^0-9]//g'`
 else  else
   if test "$sdl" = "yes" ; then    if test "$sdl" = "yes" ; then
Line 1162  else Line 1203  else
   fi    fi
   sdl=no    sdl=no
 fi  fi
   if test -n "$cross_prefix" && test "`basename $sdlconfig`" = sdl-config; then
     echo warning: using "\"$sdlconfig\"" to detect cross-compiled sdl >&2
   fi
   
 sdl_too_old=no  sdl_too_old=no
 if test "$sdl" != "no" ; then  if test "$sdl" != "no" ; then
Line 1231  if test "$vnc_tls" != "no" ; then Line 1275  if test "$vnc_tls" != "no" ; then
 #include <gnutls/gnutls.h>  #include <gnutls/gnutls.h>
 int main(void) { gnutls_session_t s; gnutls_init(&s, GNUTLS_SERVER); return 0; }  int main(void) { gnutls_session_t s; gnutls_init(&s, GNUTLS_SERVER); return 0; }
 EOF  EOF
   vnc_tls_cflags=`$pkgconfig --cflags gnutls 2> /dev/null`    vnc_tls_cflags=`$pkg_config --cflags gnutls 2> /dev/null`
   vnc_tls_libs=`$pkgconfig --libs gnutls 2> /dev/null`    vnc_tls_libs=`$pkg_config --libs gnutls 2> /dev/null`
   if compile_prog "$vnc_tls_cflags" "$vnc_tls_libs" ; then    if compile_prog "$vnc_tls_cflags" "$vnc_tls_libs" ; then
     vnc_tls=yes      vnc_tls=yes
     libs_softmmu="$vnc_tls_libs $libs_softmmu"      libs_softmmu="$vnc_tls_libs $libs_softmmu"
Line 1293  if test "$vnc_png" != "no" ; then Line 1337  if test "$vnc_png" != "no" ; then
 cat > $TMPC <<EOF  cat > $TMPC <<EOF
 //#include <stdio.h>  //#include <stdio.h>
 #include <png.h>  #include <png.h>
   #include <stddef.h>
 int main(void) {  int main(void) {
     png_structp png_ptr;      png_structp png_ptr;
     png_ptr = png_create_write_struct(PNG_LIBPNG_VER_STRING, NULL, NULL, NULL);      png_ptr = png_create_write_struct(PNG_LIBPNG_VER_STRING, NULL, NULL, NULL);
Line 1353  EOF Line 1398  EOF
 fi  fi
   
 ##########################################  ##########################################
   # xfsctl() probe, used for raw-posix
   if test "$xfs" != "no" ; then
     cat > $TMPC << EOF
   #include <xfs/xfs.h>
   int main(void)
   {
       xfsctl(NULL, 0, 0, NULL);
       return 0;
   }
   EOF
     if compile_prog "" "" ; then
       xfs="yes"
     else
       if test "$xfs" = "yes" ; then
         feature_not_found "xfs"
       fi
       xfs=no
     fi
   fi
   
   ##########################################
 # vde libraries probe  # vde libraries probe
 if test "$vde" != "no" ; then  if test "$vde" != "no" ; then
   vde_libs="-lvdeplug"    vde_libs="-lvdeplug"
Line 1477  if test "$brlapi" != "no" ; then Line 1543  if test "$brlapi" != "no" ; then
   brlapi_libs="-lbrlapi"    brlapi_libs="-lbrlapi"
   cat > $TMPC << EOF    cat > $TMPC << EOF
 #include <brlapi.h>  #include <brlapi.h>
   #include <stddef.h>
 int main( void ) { return brlapi__openConnection (NULL, NULL, NULL); }  int main( void ) { return brlapi__openConnection (NULL, NULL, NULL); }
 EOF  EOF
   if compile_prog "" "$brlapi_libs" ; then    if compile_prog "" "$brlapi_libs" ; then
Line 1523  fi Line 1590  fi
 ##########################################  ##########################################
 # curl probe  # curl probe
   
 if $pkgconfig libcurl --modversion >/dev/null 2>&1; then  if $pkg_config libcurl --modversion >/dev/null 2>&1; then
   curlconfig="$pkgconfig libcurl"    curlconfig="$pkg_config libcurl"
 else  else
   curlconfig=curl-config    curlconfig=curl-config
 fi  fi
Line 1556  if test "$check_utests" != "no" ; then Line 1623  if test "$check_utests" != "no" ; then
 #include <check.h>  #include <check.h>
 int main(void) { suite_create("qemu test"); return 0; }  int main(void) { suite_create("qemu test"); return 0; }
 EOF  EOF
   check_libs=`$pkgconfig --libs check`    check_libs=`$pkg_config --libs check`
   if compile_prog "" $check_libs ; then    if compile_prog "" $check_libs ; then
     check_utests=yes      check_utests=yes
     libs_tools="$check_libs $libs_tools"      libs_tools="$check_libs $libs_tools"
Line 1575  if test "$bluez" != "no" ; then Line 1642  if test "$bluez" != "no" ; then
 #include <bluetooth/bluetooth.h>  #include <bluetooth/bluetooth.h>
 int main(void) { return bt_error(0); }  int main(void) { return bt_error(0); }
 EOF  EOF
   bluez_cflags=`$pkgconfig --cflags bluez 2> /dev/null`    bluez_cflags=`$pkg_config --cflags bluez 2> /dev/null`
   bluez_libs=`$pkgconfig --libs bluez 2> /dev/null`    bluez_libs=`$pkg_config --libs bluez 2> /dev/null`
   if compile_prog "$bluez_cflags" "$bluez_libs" ; then    if compile_prog "$bluez_cflags" "$bluez_libs" ; then
     bluez=yes      bluez=yes
     libs_softmmu="$bluez_libs $libs_softmmu"      libs_softmmu="$bluez_libs $libs_softmmu"
Line 1596  if test "$kvm" != "no" ; then Line 1663  if test "$kvm" != "no" ; then
 #if !defined(KVM_API_VERSION) || KVM_API_VERSION < 12 || KVM_API_VERSION > 12  #if !defined(KVM_API_VERSION) || KVM_API_VERSION < 12 || KVM_API_VERSION > 12
 #error Invalid KVM version  #error Invalid KVM version
 #endif  #endif
 #if !defined(KVM_CAP_USER_MEMORY)  EOF
 #error Missing KVM capability KVM_CAP_USER_MEMORY      must_have_caps="KVM_CAP_USER_MEMORY \
 #endif                      KVM_CAP_DESTROY_MEMORY_REGION_WORKS \
 #if !defined(KVM_CAP_SET_TSS_ADDR)                      KVM_CAP_COALESCED_MMIO \
 #error Missing KVM capability KVM_CAP_SET_TSS_ADDR                      KVM_CAP_SYNC_MMU \
 #endif                     "
 #if !defined(KVM_CAP_DESTROY_MEMORY_REGION_WORKS)      if test \( "$cpu" = "i386" -o "$cpu" = "x86_64" \) ; then
 #error Missing KVM capability KVM_CAP_DESTROY_MEMORY_REGION_WORKS        must_have_caps="$caps \
                         KVM_CAP_SET_TSS_ADDR \
                         KVM_CAP_EXT_CPUID \
                         KVM_CAP_CLOCKSOURCE \
                         KVM_CAP_NOP_IO_DELAY \
                         KVM_CAP_PV_MMU \
                         KVM_CAP_MP_STATE \
                         KVM_CAP_USER_NMI \
                        "
       fi
       for c in $must_have_caps ; do
         cat >> $TMPC <<EOF
   #if !defined($c)
   #error Missing KVM capability $c
 #endif  #endif
   EOF
       done
       cat >> $TMPC <<EOF
 int main(void) { return 0; }  int main(void) { return 0; }
 EOF  EOF
   if test "$kerneldir" != "" ; then    if test "$kerneldir" != "" ; then
Line 1620  EOF Line 1703  EOF
             kvm_cflags="$kvm_cflags -I$kerneldir/arch/$cpu/include"              kvm_cflags="$kvm_cflags -I$kerneldir/arch/$cpu/include"
       fi        fi
   else    else
     kvm_cflags=`$pkgconfig --cflags kvm-kmod 2>/dev/null`      kvm_cflags=`$pkg_config --cflags kvm-kmod 2>/dev/null`
   fi    fi
   if compile_prog "$kvm_cflags" "" ; then    if compile_prog "$kvm_cflags" "" ; then
     kvm=yes      kvm=yes
Line 1639  EOF Line 1722  EOF
         | awk -F "error: " '{if (NR>1) printf(", "); printf("%s",$2);}'`          | awk -F "error: " '{if (NR>1) printf(", "); printf("%s",$2);}'`
         if test "$kvmerr" != "" ; then          if test "$kvmerr" != "" ; then
           echo -e "${kvmerr}\n\            echo -e "${kvmerr}\n\
       NOTE: To enable KVM support, update your kernel to 2.6.29+ or install \  NOTE: To enable KVM support, update your kernel to 2.6.29+ or install \
   recent kvm-kmod from http://sourceforge.net/projects/kvm."  recent kvm-kmod from http://sourceforge.net/projects/kvm."
         fi          fi
       fi        fi
       feature_not_found "kvm"        feature_not_found "kvm"
Line 1684  cat > $TMPC << EOF Line 1767  cat > $TMPC << EOF
 #include <pthread.h>  #include <pthread.h>
 int main(void) { pthread_create(0,0,0,0); return 0; }  int main(void) { pthread_create(0,0,0,0); return 0; }
 EOF  EOF
 for pthread_lib in $PTHREADLIBS_LIST; do  if compile_prog "" "" ; then
   if compile_prog "" "$pthread_lib" ; then    pthread=yes
     pthread=yes  else
     LIBS="$pthread_lib $LIBS"    for pthread_lib in $PTHREADLIBS_LIST; do
     break      if compile_prog "" "$pthread_lib" ; then
   fi        pthread=yes
 done        LIBS="$pthread_lib $LIBS"
         break
       fi
     done
   fi
   
 if test "$mingw32" != yes -a "$pthread" = no; then  if test "$mingw32" != yes -a "$pthread" = no; then
   echo    echo
Line 1701  if test "$mingw32" != yes -a "$pthread"  Line 1788  if test "$mingw32" != yes -a "$pthread" 
 fi  fi
   
 ##########################################  ##########################################
   # rbd probe
   if test "$rbd" != "no" ; then
     cat > $TMPC <<EOF
   #include <stdio.h>
   #include <rados/librados.h>
   int main(void) { rados_initialize(0, NULL); return 0; }
   EOF
     rbd_libs="-lrados -lcrypto"
     if compile_prog "" "$rbd_libs" ; then
       librados_too_old=no
       cat > $TMPC <<EOF
   #include <stdio.h>
   #include <rados/librados.h>
   #ifndef CEPH_OSD_TMAP_SET
   #error missing CEPH_OSD_TMAP_SET
   #endif
   int main(void) {
       int (*func)(const rados_pool_t pool, uint64_t *snapid) = rados_selfmanaged_snap_create;
       rados_initialize(0, NULL);
       return 0;
   }
   EOF
       if compile_prog "" "$rbd_libs" ; then
         rbd=yes
         libs_tools="$rbd_libs $libs_tools"
         libs_softmmu="$rbd_libs $libs_softmmu"
       else
         rbd=no
         librados_too_old=yes
       fi
     else
       if test "$rbd" = "yes" ; then
         feature_not_found "rados block device"
       fi
       rbd=no
     fi
     if test "$librados_too_old" = "yes" ; then
       echo "-> Your librados version is too old - upgrade needed to have rbd support"
     fi
   fi
   
   ##########################################
 # linux-aio probe  # linux-aio probe
   
 if test "$linux_aio" != "no" ; then  if test "$linux_aio" != "no" ; then
   cat > $TMPC <<EOF    cat > $TMPC <<EOF
 #include <libaio.h>  #include <libaio.h>
 #include <sys/eventfd.h>  #include <sys/eventfd.h>
   #include <stddef.h>
 int main(void) { io_setup(0, NULL); io_set_eventfd(NULL, 0); eventfd(0, 0); return 0; }  int main(void) { io_setup(0, NULL); io_set_eventfd(NULL, 0); eventfd(0, 0); return 0; }
 EOF  EOF
   if compile_prog "" "-laio" ; then    if compile_prog "" "-laio" ; then
Line 1848  fi Line 1978  fi
 utimens=no  utimens=no
 cat > $TMPC << EOF  cat > $TMPC << EOF
 #define _ATFILE_SOURCE  #define _ATFILE_SOURCE
 #define _GNU_SOURCE  
 #include <stddef.h>  #include <stddef.h>
 #include <fcntl.h>  #include <fcntl.h>
   
Line 1866  fi Line 1995  fi
 # check if pipe2 is there  # check if pipe2 is there
 pipe2=no  pipe2=no
 cat > $TMPC << EOF  cat > $TMPC << EOF
 #define _GNU_SOURCE  
 #include <unistd.h>  #include <unistd.h>
 #include <fcntl.h>  #include <fcntl.h>
   
Line 1884  fi Line 2012  fi
 # check if accept4 is there  # check if accept4 is there
 accept4=no  accept4=no
 cat > $TMPC << EOF  cat > $TMPC << EOF
 #define _GNU_SOURCE  
 #include <sys/socket.h>  #include <sys/socket.h>
 #include <stddef.h>  #include <stddef.h>
   
Line 1901  fi Line 2028  fi
 # check if tee/splice is there. vmsplice was added same time.  # check if tee/splice is there. vmsplice was added same time.
 splice=no  splice=no
 cat > $TMPC << EOF  cat > $TMPC << EOF
 #define _GNU_SOURCE  
 #include <unistd.h>  #include <unistd.h>
 #include <fcntl.h>  #include <fcntl.h>
 #include <limits.h>  #include <limits.h>
Line 1918  if compile_prog "" "" ; then Line 2044  if compile_prog "" "" ; then
   splice=yes    splice=yes
 fi  fi
   
   ##########################################
   # signalfd probe
   signalfd="no"
   cat > $TMPC << EOF
   #define _GNU_SOURCE
   #include <unistd.h>
   #include <sys/syscall.h>
   #include <signal.h>
   int main(void) { return syscall(SYS_signalfd, -1, NULL, _NSIG / 8); }
   EOF
   
   if compile_prog "" "" ; then
     signalfd=yes
   fi
   
 # check if eventfd is supported  # check if eventfd is supported
 eventfd=no  eventfd=no
 cat > $TMPC << EOF  cat > $TMPC << EOF
Line 1948  if compile_prog "$ARCH_CFLAGS" "" ; then Line 2089  if compile_prog "$ARCH_CFLAGS" "" ; then
   fallocate=yes    fallocate=yes
 fi  fi
   
   # check for sync_file_range
   sync_file_range=no
   cat > $TMPC << EOF
   #include <fcntl.h>
   
   int main(void)
   {
       sync_file_range(0, 0, 0, 0);
       return 0;
   }
   EOF
   if compile_prog "$ARCH_CFLAGS" "" ; then
     sync_file_range=yes
   fi
   
   # check for linux/fiemap.h and FS_IOC_FIEMAP
   fiemap=no
   cat > $TMPC << EOF
   #include <sys/ioctl.h>
   #include <linux/fs.h>
   #include <linux/fiemap.h>
   
   int main(void)
   {
       ioctl(0, FS_IOC_FIEMAP, 0);
       return 0;
   }
   EOF
   if compile_prog "$ARCH_CFLAGS" "" ; then
     fiemap=yes
   fi
   
 # check for dup3  # check for dup3
 dup3=no  dup3=no
 cat > $TMPC << EOF  cat > $TMPC << EOF
Line 2012  elif compile_prog "" "-lrt" ; then Line 2185  elif compile_prog "" "-lrt" ; then
 fi  fi
   
 if test "$darwin" != "yes" -a "$mingw32" != "yes" -a "$solaris" != yes -a \  if test "$darwin" != "yes" -a "$mingw32" != "yes" -a "$solaris" != yes -a \
         "$aix" != "yes" ; then          "$aix" != "yes" -a "$haiku" != "yes" ; then
     libs_softmmu="-lutil $libs_softmmu"      libs_softmmu="-lutil $libs_softmmu"
 fi  fi
   
Line 2045  if compile_prog "" ""; then Line 2218  if compile_prog "" ""; then
     gcc_attribute_warn_unused_result=yes      gcc_attribute_warn_unused_result=yes
 fi  fi
   
   # spice probe
   if test "$spice" != "no" ; then
     cat > $TMPC << EOF
   #include <spice.h>
   int main(void) { spice_server_new(); return 0; }
   EOF
     spice_cflags=$($pkg_config --cflags spice-protocol spice-server 2>/dev/null)
     spice_libs=$($pkg_config --libs spice-protocol spice-server 2>/dev/null)
     if $pkg_config --atleast-version=0.5.3 spice-server >/dev/null 2>&1 && \
        compile_prog "$spice_cflags" "$spice_libs" ; then
       spice="yes"
       libs_softmmu="$libs_softmmu $spice_libs"
       QEMU_CFLAGS="$QEMU_CFLAGS $spice_cflags"
     else
       if test "$spice" = "yes" ; then
         feature_not_found "spice"
       fi
       spice="no"
     fi
   fi
   
   ##########################################
   
 ##########################################  ##########################################
 # check if we have fdatasync  # check if we have fdatasync
   
Line 2057  if compile_prog "" "" ; then Line 2253  if compile_prog "" "" ; then
     fdatasync=yes      fdatasync=yes
 fi  fi
   
   ##########################################
   # check if we have madvise
   
   madvise=no
   cat > $TMPC << EOF
   #include <sys/types.h>
   #include <sys/mman.h>
   #include <stddef.h>
   int main(void) { return madvise(NULL, 0, MADV_DONTNEED); }
   EOF
   if compile_prog "" "" ; then
       madvise=yes
   fi
   
   ##########################################
   # check if we have posix_madvise
   
   posix_madvise=no
   cat > $TMPC << EOF
   #include <sys/mman.h>
   #include <stddef.h>
   int main(void) { return posix_madvise(NULL, 0, POSIX_MADV_DONTNEED); }
   EOF
   if compile_prog "" "" ; then
       posix_madvise=yes
   fi
   
   ##########################################
   # check if trace backend exists
   
   sh "$source_path/scripts/tracetool" "--$trace_backend" --check-backend > /dev/null 2> /dev/null
   if test "$?" -ne 0 ; then
     echo
     echo "Error: invalid trace backend"
     echo "Please choose a supported trace backend."
     echo
     exit 1
   fi
   
   ##########################################
   # For 'ust' backend, test if ust headers are present
   if test "$trace_backend" = "ust"; then
     cat > $TMPC << EOF
   #include <ust/tracepoint.h>
   #include <ust/marker.h>
   int main(void) { return 0; }
   EOF
     if compile_prog "" "" ; then
       LIBS="-lust $LIBS"
     else
       echo
       echo "Error: Trace backend 'ust' missing libust header files"
       echo
       exit 1
     fi
   fi
   
   ##########################################
   # For 'dtrace' backend, test if 'dtrace' command is present
   if test "$trace_backend" = "dtrace"; then
     if ! has 'dtrace' ; then
       echo
       echo "Error: dtrace command is not found in PATH $PATH"
       echo
       exit 1
     fi
     trace_backend_stap="no"
     if has 'stap' ; then
       trace_backend_stap="yes"
     fi
   fi
   
   ##########################################
 # End of CC checks  # End of CC checks
 # After here, no more $cc or $ld runs  # After here, no more $cc or $ld runs
   
Line 2097  if test "$solaris" = "no" ; then Line 2366  if test "$solaris" = "no" ; then
     fi      fi
 fi  fi
   
   # Use ASLR, no-SEH and DEP if available
   if test "$mingw32" = "yes" ; then
       for flag in --dynamicbase --no-seh --nxcompat; do
           if $ld --help 2>/dev/null | grep ".$flag" >/dev/null 2>/dev/null ; then
               LDFLAGS="-Wl,$flag $LDFLAGS"
           fi
       done
   fi
   
 confdir=$sysconfdir$confsuffix  confdir=$sysconfdir$confsuffix
   
 tools=  tools=
Line 2185  echo "KVM support       $kvm" Line 2463  echo "KVM support       $kvm"
 echo "fdt support       $fdt"  echo "fdt support       $fdt"
 echo "preadv support    $preadv"  echo "preadv support    $preadv"
 echo "fdatasync         $fdatasync"  echo "fdatasync         $fdatasync"
   echo "madvise           $madvise"
   echo "posix_madvise     $posix_madvise"
 echo "uuid support      $uuid"  echo "uuid support      $uuid"
 echo "vhost-net support $vhost_net"  echo "vhost-net support $vhost_net"
   echo "Trace backend     $trace_backend"
   echo "Trace output file $trace_file-<pid>"
   echo "spice support     $spice"
   echo "rbd support       $rbd"
   echo "xfsctl support    $xfs"
   
 if test $sdl_too_old = "yes"; then  if test $sdl_too_old = "yes"; then
 echo "-> Your SDL version is too old - please upgrade to have SDL support"  echo "-> Your SDL version is too old - please upgrade to have SDL support"
Line 2200  printf "# Configured with:" >> $config_h Line 2485  printf "# Configured with:" >> $config_h
 printf " '%s'" "$0" "$@" >> $config_host_mak  printf " '%s'" "$0" "$@" >> $config_host_mak
 echo >> $config_host_mak  echo >> $config_host_mak
   
   echo all: >> $config_host_mak
 echo "prefix=$prefix" >> $config_host_mak  echo "prefix=$prefix" >> $config_host_mak
 echo "bindir=$bindir" >> $config_host_mak  echo "bindir=$bindir" >> $config_host_mak
 echo "mandir=$mandir" >> $config_host_mak  echo "mandir=$mandir" >> $config_host_mak
Line 2227  if test "$debug" = "yes" ; then Line 2513  if test "$debug" = "yes" ; then
   echo "CONFIG_DEBUG_EXEC=y" >> $config_host_mak    echo "CONFIG_DEBUG_EXEC=y" >> $config_host_mak
 fi  fi
 if test "$strip_opt" = "yes" ; then  if test "$strip_opt" = "yes" ; then
   echo "STRIP_OPT=-s" >> $config_host_mak    echo "STRIP=${strip}" >> $config_host_mak
 fi  fi
 if test "$bigendian" = "yes" ; then  if test "$bigendian" = "yes" ; then
   echo "HOST_WORDS_BIGENDIAN=y" >> $config_host_mak    echo "HOST_WORDS_BIGENDIAN=y" >> $config_host_mak
Line 2235  fi Line 2521  fi
 echo "HOST_LONG_BITS=$hostlongbits" >> $config_host_mak  echo "HOST_LONG_BITS=$hostlongbits" >> $config_host_mak
 if test "$mingw32" = "yes" ; then  if test "$mingw32" = "yes" ; then
   echo "CONFIG_WIN32=y" >> $config_host_mak    echo "CONFIG_WIN32=y" >> $config_host_mak
     rc_version=`cat $source_path/VERSION`
     version_major=${rc_version%%.*}
     rc_version=${rc_version#*.}
     version_minor=${rc_version%%.*}
     rc_version=${rc_version#*.}
     version_subminor=${rc_version%%.*}
     version_micro=0
     echo "CONFIG_FILEVERSION=$version_major,$version_minor,$version_subminor,$version_micro" >> $config_host_mak
     echo "CONFIG_PRODUCTVERSION=$version_major,$version_minor,$version_subminor,$version_micro" >> $config_host_mak
 else  else
   echo "CONFIG_POSIX=y" >> $config_host_mak    echo "CONFIG_POSIX=y" >> $config_host_mak
 fi  fi
Line 2258  if test "$solaris" = "yes" ; then Line 2553  if test "$solaris" = "yes" ; then
     echo "CONFIG_NEEDS_LIBSUNMATH=y" >> $config_host_mak      echo "CONFIG_NEEDS_LIBSUNMATH=y" >> $config_host_mak
   fi    fi
 fi  fi
   if test "$haiku" = "yes" ; then
     echo "CONFIG_HAIKU=y" >> $config_host_mak
   fi
 if test "$static" = "yes" ; then  if test "$static" = "yes" ; then
   echo "CONFIG_STATIC=y" >> $config_host_mak    echo "CONFIG_STATIC=y" >> $config_host_mak
 fi  fi
Line 2266  if test $profiler = "yes" ; then Line 2564  if test $profiler = "yes" ; then
 fi  fi
 if test "$slirp" = "yes" ; then  if test "$slirp" = "yes" ; then
   echo "CONFIG_SLIRP=y" >> $config_host_mak    echo "CONFIG_SLIRP=y" >> $config_host_mak
   QEMU_CFLAGS="-I\$(SRC_PATH)/slirp $QEMU_CFLAGS"    QEMU_INCLUDES="-I\$(SRC_PATH)/slirp $QEMU_INCLUDES"
 fi  fi
 if test "$vde" = "yes" ; then  if test "$vde" = "yes" ; then
   echo "CONFIG_VDE=y" >> $config_host_mak    echo "CONFIG_VDE=y" >> $config_host_mak
Line 2319  fi Line 2617  fi
 if test "$uuid" = "yes" ; then  if test "$uuid" = "yes" ; then
   echo "CONFIG_UUID=y" >> $config_host_mak    echo "CONFIG_UUID=y" >> $config_host_mak
 fi  fi
   if test "$xfs" = "yes" ; then
     echo "CONFIG_XFS=y" >> $config_host_mak
   fi
 qemu_version=`head $source_path/VERSION`  qemu_version=`head $source_path/VERSION`
 echo "VERSION=$qemu_version" >>$config_host_mak  echo "VERSION=$qemu_version" >>$config_host_mak
 echo "PKGVERSION=$pkgversion" >>$config_host_mak  echo "PKGVERSION=$pkgversion" >>$config_host_mak
Line 2358  fi Line 2659  fi
 if test "$fallocate" = "yes" ; then  if test "$fallocate" = "yes" ; then
   echo "CONFIG_FALLOCATE=y" >> $config_host_mak    echo "CONFIG_FALLOCATE=y" >> $config_host_mak
 fi  fi
   if test "$sync_file_range" = "yes" ; then
     echo "CONFIG_SYNC_FILE_RANGE=y" >> $config_host_mak
   fi
   if test "$fiemap" = "yes" ; then
     echo "CONFIG_FIEMAP=y" >> $config_host_mak
   fi
 if test "$dup3" = "yes" ; then  if test "$dup3" = "yes" ; then
   echo "CONFIG_DUP3=y" >> $config_host_mak    echo "CONFIG_DUP3=y" >> $config_host_mak
 fi  fi
Line 2414  fi Line 2721  fi
 if test "$fdt" = "yes" ; then  if test "$fdt" = "yes" ; then
   echo "CONFIG_FDT=y" >> $config_host_mak    echo "CONFIG_FDT=y" >> $config_host_mak
 fi  fi
   if test "$signalfd" = "yes" ; then
     echo "CONFIG_SIGNALFD=y" >> $config_host_mak
   fi
 if test "$need_offsetof" = "yes" ; then  if test "$need_offsetof" = "yes" ; then
   echo "CONFIG_NEED_OFFSETOF=y" >> $config_host_mak    echo "CONFIG_NEED_OFFSETOF=y" >> $config_host_mak
 fi  fi
Line 2423  fi Line 2733  fi
 if test "$fdatasync" = "yes" ; then  if test "$fdatasync" = "yes" ; then
   echo "CONFIG_FDATASYNC=y" >> $config_host_mak    echo "CONFIG_FDATASYNC=y" >> $config_host_mak
 fi  fi
   if test "$madvise" = "yes" ; then
     echo "CONFIG_MADVISE=y" >> $config_host_mak
   fi
   if test "$posix_madvise" = "yes" ; then
     echo "CONFIG_POSIX_MADVISE=y" >> $config_host_mak
   fi
   
   if test "$spice" = "yes" ; then
     echo "CONFIG_SPICE=y" >> $config_host_mak
   fi
   
 # XXX: suppress that  # XXX: suppress that
 if [ "$bsd" = "yes" ] ; then  if [ "$bsd" = "yes" ] ; then
Line 2434  echo "CONFIG_UNAME_RELEASE=\"$uname_rele Line 2754  echo "CONFIG_UNAME_RELEASE=\"$uname_rele
 if test "$zero_malloc" = "yes" ; then  if test "$zero_malloc" = "yes" ; then
   echo "CONFIG_ZERO_MALLOC=y" >> $config_host_mak    echo "CONFIG_ZERO_MALLOC=y" >> $config_host_mak
 fi  fi
   if test "$rbd" = "yes" ; then
     echo "CONFIG_RBD=y" >> $config_host_mak
   fi
   
 # USB host support  # USB host support
 case "$usb" in  case "$usb" in
Line 2448  bsd) Line 2771  bsd)
 ;;  ;;
 esac  esac
   
   echo "TRACE_BACKEND=$trace_backend" >> $config_host_mak
   if test "$trace_backend" = "simple"; then
     echo "CONFIG_SIMPLE_TRACE=y" >> $config_host_mak
   fi
   # Set the appropriate trace file.
   if test "$trace_backend" = "simple"; then
     trace_file="\"$trace_file-%u\""
   fi
   if test "$trace_backend" = "dtrace" -a "$trace_backend_stap" = "yes" ; then
     echo "CONFIG_SYSTEMTAP_TRACE=y" >> $config_host_mak
   fi
   echo "CONFIG_TRACE_FILE=$trace_file" >> $config_host_mak
   
 echo "TOOLS=$tools" >> $config_host_mak  echo "TOOLS=$tools" >> $config_host_mak
 echo "ROMS=$roms" >> $config_host_mak  echo "ROMS=$roms" >> $config_host_mak
 echo "MAKE=$make" >> $config_host_mak  echo "MAKE=$make" >> $config_host_mak
Line 2456  echo "INSTALL_DIR=$install -d -m0755 -p" Line 2792  echo "INSTALL_DIR=$install -d -m0755 -p"
 echo "INSTALL_DATA=$install -m0644 -p" >> $config_host_mak  echo "INSTALL_DATA=$install -m0644 -p" >> $config_host_mak
 echo "INSTALL_PROG=$install -m0755 -p" >> $config_host_mak  echo "INSTALL_PROG=$install -m0755 -p" >> $config_host_mak
 echo "CC=$cc" >> $config_host_mak  echo "CC=$cc" >> $config_host_mak
   echo "CC_I386=$cc_i386" >> $config_host_mak
 echo "HOST_CC=$host_cc" >> $config_host_mak  echo "HOST_CC=$host_cc" >> $config_host_mak
 if test "$sparse" = "yes" ; then  
   echo "CC      := REAL_CC=\"\$(CC)\" cgcc"       >> $config_host_mak  
   echo "HOST_CC := REAL_CC=\"\$(HOST_CC)\" cgcc"  >> $config_host_mak  
   echo "QEMU_CFLAGS  += -Wbitwise -Wno-transparent-union -Wno-old-initializer -Wno-non-pointer-null" >> $config_host_mak  
 fi  
 echo "AR=$ar" >> $config_host_mak  echo "AR=$ar" >> $config_host_mak
 echo "OBJCOPY=$objcopy" >> $config_host_mak  echo "OBJCOPY=$objcopy" >> $config_host_mak
 echo "LD=$ld" >> $config_host_mak  echo "LD=$ld" >> $config_host_mak
   echo "WINDRES=$windres" >> $config_host_mak
 echo "CFLAGS=$CFLAGS" >> $config_host_mak  echo "CFLAGS=$CFLAGS" >> $config_host_mak
 echo "QEMU_CFLAGS=$QEMU_CFLAGS" >> $config_host_mak  echo "QEMU_CFLAGS=$QEMU_CFLAGS" >> $config_host_mak
   echo "QEMU_INCLUDES=$QEMU_INCLUDES" >> $config_host_mak
   if test "$sparse" = "yes" ; then
     echo "CC           := REAL_CC=\"\$(CC)\" cgcc"       >> $config_host_mak
     echo "HOST_CC      := REAL_CC=\"\$(HOST_CC)\" cgcc"  >> $config_host_mak
     echo "QEMU_CFLAGS  += -Wbitwise -Wno-transparent-union -Wno-old-initializer -Wno-non-pointer-null" >> $config_host_mak
   fi
 echo "HELPER_CFLAGS=$helper_cflags" >> $config_host_mak  echo "HELPER_CFLAGS=$helper_cflags" >> $config_host_mak
 echo "LDFLAGS=$LDFLAGS" >> $config_host_mak  echo "LDFLAGS=$LDFLAGS" >> $config_host_mak
 echo "ARLIBS_BEGIN=$arlibs_begin" >> $config_host_mak  echo "ARLIBS_BEGIN=$arlibs_begin" >> $config_host_mak
Line 2489  fi Line 2828  fi
   
 for d in libdis libdis-user; do  for d in libdis libdis-user; do
     mkdir -p $d      mkdir -p $d
     rm -f $d/Makefile      symlink $source_path/Makefile.dis $d/Makefile
     ln -s $source_path/Makefile.dis $d/Makefile  
     echo > $d/config.mak      echo > $d/config.mak
 done  done
 if test "$static" = "no" -a "$user_pie" = "yes" ; then  if test "$static" = "no" -a "$user_pie" = "yes" ; then
Line 2554  mkdir -p $target_dir/ide Line 2892  mkdir -p $target_dir/ide
 if test "$target" = "arm-linux-user" -o "$target" = "armeb-linux-user" -o "$target" = "arm-bsd-user" -o "$target" = "armeb-bsd-user" ; then  if test "$target" = "arm-linux-user" -o "$target" = "armeb-linux-user" -o "$target" = "arm-bsd-user" -o "$target" = "armeb-bsd-user" ; then
   mkdir -p $target_dir/nwfpe    mkdir -p $target_dir/nwfpe
 fi  fi
   symlink $source_path/Makefile.target $target_dir/Makefile
 #  
 # don't use ln -sf as not all "ln -sf" over write the file/link  
 #  
 rm -f $target_dir/Makefile  
 ln -s $source_path/Makefile.target $target_dir/Makefile  
   
   
 echo "# Automatically generated by configure - do not modify" > $config_target_mak  echo "# Automatically generated by configure - do not modify" > $config_target_mak
Line 2745  if test ! -z "$gdb_xml_files" ; then Line 3078  if test ! -z "$gdb_xml_files" ; then
 fi  fi
   
 case "$target_arch2" in  case "$target_arch2" in
   alpha|arm|armeb|m68k|microblaze|mips|mipsel|mipsn32|mipsn32el|mips64|mips64el|ppc|ppc64|ppc64abi32|ppcemb|s390x|sparc|sparc64|sparc32plus)    i386|x86_64)
     echo "CONFIG_SOFTFLOAT=y" >> $config_target_mak      echo "CONFIG_NOSOFTFLOAT=y" >> $config_target_mak
     ;;      ;;
   *)    *)
     echo "CONFIG_NOSOFTFLOAT=y" >> $config_target_mak      echo "CONFIG_SOFTFLOAT=y" >> $config_target_mak
     ;;      ;;
 esac  esac
   
Line 2770  fi Line 3103  fi
 # generate QEMU_CFLAGS/LDFLAGS for targets  # generate QEMU_CFLAGS/LDFLAGS for targets
   
 cflags=""  cflags=""
   includes=""
 ldflags=""  ldflags=""
   
 if test "$ARCH" = "sparc64" ; then  if test "$ARCH" = "sparc64" ; then
   cflags="-I\$(SRC_PATH)/tcg/sparc $cflags"    includes="-I\$(SRC_PATH)/tcg/sparc $includes"
 elif test "$ARCH" = "s390x" ; then  elif test "$ARCH" = "s390x" ; then
   cflags="-I\$(SRC_PATH)/tcg/s390 $cflags"    includes="-I\$(SRC_PATH)/tcg/s390 $includes"
 elif test "$ARCH" = "x86_64" ; then  elif test "$ARCH" = "x86_64" ; then
   cflags="-I\$(SRC_PATH)/tcg/i386 $cflags"    includes="-I\$(SRC_PATH)/tcg/i386 $includes"
 else  else
   cflags="-I\$(SRC_PATH)/tcg/\$(ARCH) $cflags"    includes="-I\$(SRC_PATH)/tcg/\$(ARCH) $includes"
 fi  fi
 cflags="-I\$(SRC_PATH)/tcg $cflags"  includes="-I\$(SRC_PATH)/tcg $includes"
 cflags="-I\$(SRC_PATH)/fpu $cflags"  includes="-I\$(SRC_PATH)/fpu $includes"
   
 if test "$target_user_only" = "yes" ; then  if test "$target_user_only" = "yes" ; then
     libdis_config_mak=libdis-user/config.mak      libdis_config_mak=libdis-user/config.mak
Line 2907  fi Line 3241  fi
   
 echo "LDFLAGS+=$ldflags" >> $config_target_mak  echo "LDFLAGS+=$ldflags" >> $config_target_mak
 echo "QEMU_CFLAGS+=$cflags" >> $config_target_mak  echo "QEMU_CFLAGS+=$cflags" >> $config_target_mak
   echo "QEMU_INCLUDES+=$includes" >> $config_target_mak
   
 done # for target in $targets  done # for target in $targets
   
 # build tree in object directory if source path is different from current one  # build tree in object directory in case the source is not in the current directory
 if test "$source_path_used" = "yes" ; then  DIRS="tests tests/cris slirp audio block net pc-bios/optionrom"
     DIRS="tests tests/cris slirp audio block net pc-bios/optionrom"  DIRS="$DIRS roms/seabios roms/vgabios"
     DIRS="$DIRS roms/seabios roms/vgabios"  DIRS="$DIRS fsdev ui"
     DIRS="$DIRS fsdev ui"  FILES="Makefile tests/Makefile"
     FILES="Makefile tests/Makefile"  FILES="$FILES tests/cris/Makefile tests/cris/.gdbinit"
     FILES="$FILES tests/cris/Makefile tests/cris/.gdbinit"  FILES="$FILES pc-bios/optionrom/Makefile pc-bios/keymaps"
     FILES="$FILES tests/test-mmap.c"  FILES="$FILES roms/seabios/Makefile roms/vgabios/Makefile"
     FILES="$FILES pc-bios/optionrom/Makefile pc-bios/keymaps pc-bios/video.x"  for bios_file in $source_path/pc-bios/*.bin $source_path/pc-bios/*.dtb $source_path/pc-bios/openbios-*; do
     FILES="$FILES roms/seabios/Makefile roms/vgabios/Makefile"      FILES="$FILES pc-bios/`basename $bios_file`"
     for bios_file in $source_path/pc-bios/*.bin $source_path/pc-bios/*.dtb $source_path/pc-bios/openbios-*; do  done
         FILES="$FILES pc-bios/`basename $bios_file`"  mkdir -p $DIRS
     done  for f in $FILES ; do
     for dir in $DIRS ; do      test -e $f || symlink $source_path/$f $f
             mkdir -p $dir  done
     done  
     # remove the link and recreate it, as not all "ln -sf" overwrite the link  
     for f in $FILES ; do  
         rm -f $f  
         ln -s $source_path/$f $f  
     done  
 fi  
   
 # temporary config to build submodules  # temporary config to build submodules
 for rom in seabios vgabios ; do  for rom in seabios vgabios ; do
Line 2943  for rom in seabios vgabios ; do Line 3271  for rom in seabios vgabios ; do
     echo "CPP=${cross_prefix}cpp" >> $config_mak      echo "CPP=${cross_prefix}cpp" >> $config_mak
     echo "OBJCOPY=objcopy" >> $config_mak      echo "OBJCOPY=objcopy" >> $config_mak
     echo "IASL=iasl" >> $config_mak      echo "IASL=iasl" >> $config_mak
     echo "HOST_CC=$host_cc" >> $config_mak  
     echo "LD=$ld" >> $config_mak      echo "LD=$ld" >> $config_mak
 done  done
   
Line 2951  for hwlib in 32 64; do Line 3278  for hwlib in 32 64; do
   d=libhw$hwlib    d=libhw$hwlib
   mkdir -p $d    mkdir -p $d
   mkdir -p $d/ide    mkdir -p $d/ide
   rm -f $d/Makefile    symlink $source_path/Makefile.hw $d/Makefile
   ln -s $source_path/Makefile.hw $d/Makefile  
   echo "QEMU_CFLAGS+=-DTARGET_PHYS_ADDR_BITS=$hwlib" > $d/config.mak    echo "QEMU_CFLAGS+=-DTARGET_PHYS_ADDR_BITS=$hwlib" > $d/config.mak
 done  done
   
 d=libuser  d=libuser
 mkdir -p $d  mkdir -p $d
 rm -f $d/Makefile  symlink $source_path/Makefile.user $d/Makefile
 ln -s $source_path/Makefile.user $d/Makefile  
 if test "$static" = "no" -a "$user_pie" = "yes" ; then  if test "$static" = "no" -a "$user_pie" = "yes" ; then
   echo "QEMU_CFLAGS+=-fpie" > $d/config.mak    echo "QEMU_CFLAGS+=-fpie" > $d/config.mak
 fi  fi

Removed from v.1.1.1.13  
changed lines
  Added in v.1.1.1.14


unix.superglobalmegacorp.com