X-Git-Url: https://git.proxmox.com/?a=blobdiff_plain;f=configure;h=b2edb378722dacf439d009836cda278f46734a28;hb=ca35f780ac4654bfa086613c72b011448afff327;hp=172b7cfcafb897276ec646a834b81654a9822a12;hpb=a6dac6a9ab81b1052e052876a67b9fc483b8b337;p=qemu.git diff --git a/configure b/configure index 172b7cfca..b2edb3787 100755 --- a/configure +++ b/configure @@ -15,7 +15,7 @@ TMPC="${TMPDIR1}/qemu-conf-${RANDOM}-$$-${RANDOM}.c" TMPO="${TMPDIR1}/qemu-conf-${RANDOM}-$$-${RANDOM}.o" TMPE="${TMPDIR1}/qemu-conf-${RANDOM}-$$-${RANDOM}.exe" -trap "rm -f $TMPC $TMPO $TMPE ; exit" 0 2 3 15 +trap "rm -f $TMPC $TMPO $TMPE ; exit" EXIT INT QUIT TERM compile_object() { $cc $QEMU_CFLAGS -c -o $TMPO $TMPC > /dev/null 2> /dev/null @@ -65,10 +65,8 @@ path_of() { # default parameters cpu="" -prefix="" interp_prefix="/usr/gnemul/qemu-%M" static="no" -sysconfdir="" sparc_cpu="" cross_prefix="" cc="gcc" @@ -232,7 +230,8 @@ case "$cpu" in cpu="sparc" ;; *) - cpu="unknown" + echo "Unsupported CPU = $cpu" + exit 1 ;; esac @@ -275,6 +274,13 @@ 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="" @@ -449,6 +455,13 @@ if test "$mingw32" = "yes" ; then # enable C99/POSIX format strings (needs mingw32-runtime 3.15 or later) QEMU_CFLAGS="-D__USE_MINGW_ANSI_STDIO=1 $QEMU_CFLAGS" LIBS="-lwinmm -lws2_32 -liphlpapi $LIBS" + prefix="c:/Program Files/Qemu" + mandir="\${prefix}" + datadir="\${prefix}" + docdir="\${prefix}" + bindir="\${prefix}" + sysconfdir="\${prefix}" + confsuffix="" fi # find source path @@ -500,6 +513,14 @@ for opt do static="yes" LDFLAGS="-static $LDFLAGS" ;; + --mandir=*) mandir="$optarg" + ;; + --bindir=*) bindir="$optarg" + ;; + --datadir=*) datadir="$optarg" + ;; + --docdir=*) docdir="$optarg" + ;; --sysconfdir=*) sysconfdir="$optarg" ;; --disable-sdl) sdl="no" @@ -660,6 +681,8 @@ for opt do ;; --enable-vhost-net) vhost_net="yes" ;; + --*dir) + ;; *) echo "ERROR: unknown option $opt"; show_help="yes" ;; esac @@ -747,13 +770,18 @@ echo "Advanced options (experts only):" echo " --source-path=PATH path of source code [$source_path]" echo " --cross-prefix=PREFIX use PREFIX for compile tools [$cross_prefix]" echo " --cc=CC use C compiler CC [$cc]" -echo " --host-cc=CC use C compiler CC [$host_cc] for dyngen etc." +echo " --host-cc=CC use C compiler CC [$host_cc] for code run at" +echo " build time" echo " --extra-cflags=CFLAGS append extra C compiler flags QEMU_CFLAGS" echo " --extra-ldflags=LDFLAGS append extra linker flags LDFLAGS" echo " --make=MAKE use specified make [$make]" echo " --install=INSTALL use specified install [$install]" echo " --static enable static build [$static]" -echo " --sysconfdir=PATH install config in PATH" +echo " --mandir=PATH install man pages in PATH" +echo " --datadir=PATH install firmware in PATH" +echo " --docdir=PATH install documentation in PATH" +echo " --bindir=PATH install binaries in PATH" +echo " --sysconfdir=PATH install config in PATH/qemu" echo " --enable-debug-tcg enable TCG debugging" echo " --disable-debug-tcg disable TCG debugging (default)" echo " --enable-debug enable common debug build options" @@ -927,6 +955,13 @@ if test -z "$target_list" ; then echo "No targets enabled" exit 1 fi +# see if system emulation was really requested +case " $target_list " in + *"-softmmu "*) softmmu=yes + ;; + *) softmmu=no + ;; +esac feature_not_found() { feature=$1 @@ -1064,7 +1099,17 @@ fi ########################################## # SDL probe -if $pkgconfig sdl --modversion >/dev/null 2>&1; then +# Look for sdl configuration program (pkg-config or sdl-config). +# Prefer variant with cross prefix if cross compiling, +# and favour pkg-config with sdl over sdl-config. +if test -n "$cross_prefix" -a $pkgconfig != pkg-config && \ + $pkgconfig sdl --modversion >/dev/null 2>&1; then + sdlconfig="$pkgconfig sdl" + _sdlversion=`$sdlconfig --modversion 2>/dev/null | sed 's/[^0-9]//g'` +elif test -n "$cross_prefix" && has ${cross_prefix}sdl-config; then + 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'` elif has sdl-config; then @@ -1536,7 +1581,7 @@ EOF fi else if test "$vhost_net" = "yes" ; then - echo -e "NOTE: vhost-net feature requires KVM (--enable-kvm)." + echo "NOTE: vhost-net feature requires KVM (--enable-kvm)." feature_not_found "vhost-net" fi vhost_net=no @@ -1579,7 +1624,8 @@ int main(void) { io_setup(0, NULL); io_set_eventfd(NULL, 0); eventfd(0, 0); retu EOF if compile_prog "" "-laio" ; then linux_aio=yes - LIBS="$LIBS -laio" + libs_softmmu="$libs_softmmu -laio" + libs_tools="$libs_tools -laio" else if test "$linux_aio" = "yes" ; then feature_not_found "linux AIO" @@ -1943,36 +1989,34 @@ if test "$solaris" = "no" ; then fi fi -if test "$mingw32" = "yes" ; then - if test -z "$prefix" ; then - prefix="c:/Program Files/Qemu" - fi - mansuffix="" - datasuffix="" - confsuffix="" - docsuffix="" - binsuffix="" - if test -z "$sysconfdir" ; then - sysconfdir="${prefix}" - fi -else - if test -z "$prefix" ; then - prefix="/usr/local" - fi - mansuffix="/share/man" - datasuffix="/share/qemu" - docsuffix="/share/doc/qemu" - binsuffix="/bin" - if test -z "$sysconfdir" ; then - sysconfdir="${prefix}/etc" +confdir=$sysconfdir$confsuffix + +tools= +if test "$softmmu" = yes ; then + tools="qemu-img\$(EXESUF) qemu-io\$(EXESUF) $tools" + if [ "$linux" = "yes" -o "$bsd" = "yes" -o "$solaris" = "yes" ] ; then + tools="qemu-nbd\$(EXESUF) $tools" + if [ "$check_utests" = "yes" ]; then + tools="check-qint check-qstring check-qdict check-qlist $tools" + tools="check-qfloat check-qjson $tools" + fi fi fi +# Mac OS X ships with a broken assembler +roms= +if test \( "$cpu" = "i386" -o "$cpu" = "x86_64" \) -a \ + "$targetos" != "Darwin" -a "$targetos" != "SunOS" -a \ + "$softmmu" = yes ; then + roms="optionrom" +fi + + echo "Install prefix $prefix" -echo "BIOS directory $prefix$datasuffix" -echo "binary directory $prefix$binsuffix" +echo "BIOS directory `eval echo $datadir`" +echo "binary directory `eval echo $bindir`" if test "$mingw32" = "no" ; then -echo "Manual directory $prefix$mansuffix" +echo "Manual directory `eval echo $mandir`" echo "ELF interp prefix $interp_prefix" fi echo "Source path $source_path" @@ -2043,12 +2087,13 @@ printf "# Configured with:" >> $config_host_mak printf " '%s'" "$0" "$@" >> $config_host_mak echo >> $config_host_mak -echo "CONFIG_QEMU_SHAREDIR=\"$prefix$datasuffix\"" >> $config_host_mak -if test "$mingw32" = "yes" ; then - echo "CONFIG_QEMU_CONFDIR=\"$sysconfdir\"" >> $config_host_mak -else - echo "CONFIG_QEMU_CONFDIR=\"${sysconfdir}/qemu\"" >> $config_host_mak -fi +echo "prefix=$prefix" >> $config_host_mak +echo "bindir=$bindir" >> $config_host_mak +echo "mandir=$mandir" >> $config_host_mak +echo "datadir=$datadir" >> $config_host_mak +echo "sysconfdir=$sysconfdir" >> $config_host_mak +echo "docdir=$docdir" >> $config_host_mak +echo "confdir=$confdir" >> $config_host_mak case "$cpu" in i386|x86_64|alpha|cris|hppa|ia64|m68k|microblaze|mips|mips64|ppc|ppc64|s390|s390x|sparc|sparc64) @@ -2057,10 +2102,6 @@ case "$cpu" in armv4b|armv4l) ARCH=arm ;; - *) - echo "Unsupported CPU = $cpu" - exit 1 - ;; esac echo "ARCH=$ARCH" >> $config_host_mak if test "$debug_tcg" = "yes" ; then @@ -2273,34 +2314,8 @@ bsd) ;; esac -tools= -if test `expr "$target_list" : ".*softmmu.*"` != 0 ; then - tools="qemu-img\$(EXESUF) qemu-io\$(EXESUF) $tools" - if [ "$linux" = "yes" -o "$bsd" = "yes" -o "$solaris" = "yes" ] ; then - tools="qemu-nbd\$(EXESUF) $tools" - if [ "$check_utests" = "yes" ]; then - tools="check-qint check-qstring check-qdict check-qlist $tools" - tools="check-qfloat check-qjson $tools" - fi - fi -fi echo "TOOLS=$tools" >> $config_host_mak - -# Mac OS X ships with a broken assembler -roms= -if test \( "$cpu" = "i386" -o "$cpu" = "x86_64" \) -a \ - "$targetos" != "Darwin" -a "$targetos" != "SunOS" -a \ - `expr "$target_list" : ".*softmmu.*"` != 0 ; then - roms="optionrom" -fi echo "ROMS=$roms" >> $config_host_mak - -echo "prefix=$prefix" >> $config_host_mak -echo "bindir=\${prefix}$binsuffix" >> $config_host_mak -echo "mandir=\${prefix}$mansuffix" >> $config_host_mak -echo "datadir=\${prefix}$datasuffix" >> $config_host_mak -echo "sysconfdir=$sysconfdir" >> $config_host_mak -echo "docdir=\${prefix}$docsuffix" >> $config_host_mak echo "MAKE=$make" >> $config_host_mak echo "INSTALL=$install" >> $config_host_mak echo "INSTALL_DIR=$install -d -m0755 -p" >> $config_host_mak @@ -2344,6 +2359,9 @@ for d in libdis libdis-user; do ln -s $source_path/Makefile.dis $d/Makefile echo > $d/config.mak done +if test "$static" = "no" -a "$user_pie" = "yes" ; then + echo "QEMU_CFLAGS+=-fpie" > libdis-user/config.mak +fi for target in $target_list; do target_dir="$target" @@ -2415,7 +2433,7 @@ echo "# Automatically generated by configure - do not modify" > $config_target_m bflt="no" target_nptl="no" interp_prefix1=`echo "$interp_prefix" | sed "s/%M/$target_arch2/g"` -echo "CONFIG_QEMU_PREFIX=\"$interp_prefix1\"" >> $config_target_mak +echo "CONFIG_QEMU_INTERP_PREFIX=\"$interp_prefix1\"" >> $config_target_mak gdb_xml_files="" TARGET_ARCH="$target_arch2" @@ -2757,6 +2775,7 @@ done # for target in $targets if test "$source_path_used" = "yes" ; then DIRS="tests tests/cris slirp audio block net pc-bios/optionrom" DIRS="$DIRS roms/seabios roms/vgabios" + DIRS="$DIRS fsdev" FILES="Makefile tests/Makefile" FILES="$FILES tests/cris/Makefile tests/cris/.gdbinit" FILES="$FILES tests/test-mmap.c" @@ -2805,3 +2824,7 @@ ln -s $source_path/Makefile.user $d/Makefile if test "$static" = "no" -a "$user_pie" = "yes" ; then echo "QEMU_CFLAGS+=-fpie" > $d/config.mak fi + +if test "$docs" = "yes" ; then + mkdir -p QMP +fi