X-Git-Url: http://git.maemo.org/git/?a=blobdiff_plain;f=configure;h=c45bd7523fbab80d88d58be19825ae7a08f4f513;hb=f779a8e4e8ee999968a0827992ef46def8b03331;hp=5886ea03eabffe68ddfb0efdd746fc41879e4d6a;hpb=f48879196272e8e966d4666e05ed4c11422f3baf;p=qemu diff --git a/configure b/configure index 5886ea0..c45bd75 100755 --- a/configure +++ b/configure @@ -16,6 +16,9 @@ TMPO="${TMPDIR1}/qemu-conf-${RANDOM}-$$-${RANDOM}.o" TMPE="${TMPDIR1}/qemu-conf-${RANDOM}-$$-${RANDOM}" TMPS="${TMPDIR1}/qemu-conf-${RANDOM}-$$-${RANDOM}.S" TMPI="${TMPDIR1}/qemu-conf-${RANDOM}-$$-${RANDOM}.i" +TMPSDLLOG="${TMPDIR1}/qemu-conf-sdl-$$-${RANDOM}.log" + +trap "rm -f $TMPC $TMPO $TMPE $TMPS $TMPI $TMPSDLLOG; exit" 0 2 3 15 # default parameters prefix="" @@ -23,16 +26,78 @@ interp_prefix="/usr/gnemul/qemu-%M" static="no" cross_prefix="" cc="gcc" -gcc3_search="yes" -gcc3_list="gcc-3.4.6 gcc-3.4 gcc34 gcc-3.3.6 gcc-3.3 gcc33 gcc-3.2 gcc32" audio_drv_list="" -audio_card_list="" +audio_card_list="ac97 es1370 sb16" +audio_possible_cards="ac97 es1370 sb16 cs4231a adlib gus" host_cc="gcc" ar="ar" make="make" install="install" strip="strip" -cpu=`test $(uname -s) = AIX && uname -p || uname -m` + +# parse CC options first +for opt do + optarg=`expr "x$opt" : 'x[^=]*=\(.*\)'` + case "$opt" in + --cross-prefix=*) cross_prefix="$optarg" + ;; + --cc=*) cc="$optarg" + ;; + esac +done + +# OS specific +# Using uname is really, really broken. Once we have the right set of checks +# we can eliminate it's usage altogether + +cc="${cross_prefix}${cc}" +ar="${cross_prefix}${ar}" +strip="${cross_prefix}${strip}" + +# check that the C compiler works. +cat > $TMPC < /dev/null 2> /dev/null ; then + : C compiler works ok +else + echo "ERROR: \"$cc\" either does not exist or does not work" + exit 1 +fi + +check_define() { +cat > $TMPC < /dev/null 2> /dev/null +} + +if check_define __i386__ ; then + cpu="i386" +elif check_define __x86_64__ ; then + cpu="x86_64" +elif check_define __sparc__ ; then + # We can't check for 64 bit (when gcc is biarch) or V8PLUSA + # They must be specified using --sparc_cpu + if check_define __arch64__ ; then + cpu="sparc64" + else + cpu="sparc" + fi +elif check_define _ARCH_PPC ; then + if check_define _ARCH_PPC64 ; then + cpu="ppc64" + else + cpu="ppc" + fi +else + cpu=`uname -m` +fi + target_list="" case "$cpu" in i386|i486|i586|i686|i86pc|BePC) @@ -68,8 +133,11 @@ case "$cpu" in mips64) cpu="mips64" ;; - "Power Macintosh"|ppc|ppc64|powerpc) - cpu="powerpc" + ppc) + cpu="ppc" + ;; + ppc64) + cpu="ppc64" ;; s390*) cpu="s390" @@ -85,7 +153,9 @@ case "$cpu" in ;; esac gprof="no" +debug_tcg="no" sparse="no" +strip_opt="yes" bigendian="no" mingw32="no" EXESUF="" @@ -96,6 +166,7 @@ fmod_lib="" fmod_inc="" oss_lib="" vnc_tls="yes" +vnc_sasl="yes" bsd="no" linux="no" solaris="no" @@ -103,24 +174,41 @@ kqemu="no" profiler="no" cocoa="no" check_gfx="yes" -check_gcc="yes" softmmu="yes" linux_user="no" darwin_user="no" bsd_user="no" +guest_base="no" build_docs="no" uname_release="" curses="yes" +pthread="yes" aio="yes" +io_thread="no" nptl="yes" mixemu="no" bluez="yes" kvm="yes" kerneldir="" aix="no" +blobs="yes" +fdt="yes" +sdl_x11="no" +xen="yes" +pkgversion="" # OS specific -targetos=`uname -s` +if check_define __linux__ ; then + targetos="Linux" +elif check_define _WIN32 ; then + targetos='MINGW32' +elif check_define __OpenBSD__ ; then + targetos='OpenBSD' +elif check_define __sun__ ; then + targetos='SunOS' +else + targetos=`uname -s` +fi case $targetos in CYGWIN*) mingw32="yes" @@ -148,17 +236,24 @@ FreeBSD) bsd="yes" audio_drv_list="oss" audio_possible_drivers="oss sdl esd pa" -aio_lib="-lpthread" if [ "$cpu" = "i386" -o "$cpu" = "x86_64" ] ; then kqemu="yes" fi ;; +DragonFly) +bsd="yes" +audio_drv_list="oss" +audio_possible_drivers="oss sdl esd pa" +if [ "$cpu" = "i386" -o "$cpu" = "x86_64" ] ; then + kqemu="yes" +fi +aio="no" +;; NetBSD) bsd="yes" audio_drv_list="oss" audio_possible_drivers="oss sdl esd" oss_lib="-lossaudio" -aio_lib="-lrt -lpthread" ;; OpenBSD) bsd="yes" @@ -166,24 +261,33 @@ openbsd="yes" audio_drv_list="oss" audio_possible_drivers="oss sdl esd" oss_lib="-lossaudio" -aio_lib="-lpthread" ;; Darwin) bsd="yes" darwin="yes" +# on Leopard most of the system is 32-bit, so we have to ask the kernel it if we can run 64-bit userspace code +if [ "$cpu" = "i386" ] ; then + is_x86_64=`sysctl -n hw.optional.x86_64` + [ "$is_x86_64" = "1" ] && cpu=x86_64 +fi +if [ "$cpu" = "x86_64" ] ; then + OS_CFLAGS="-arch x86_64" + LDFLAGS="-arch x86_64" +else + OS_CFLAGS="-mdynamic-no-pic" +fi darwin_user="yes" cocoa="yes" audio_drv_list="coreaudio" audio_possible_drivers="coreaudio sdl fmod" -OS_CFLAGS="-mdynamic-no-pic" OS_LDFLAGS="-framework CoreFoundation -framework IOKit" -aio_lib="-lpthread" ;; SunOS) solaris="yes" make="gmake" install="ginstall" needs_libsunmath="no" + kvm="no" solarisrev=`uname -r | cut -f2 -d.` # have to select again, because `uname -m` returns i86pc # even on an x86_64 box. @@ -211,6 +315,7 @@ SunOS) audio_drv_list="oss" fi audio_possible_drivers="oss sdl" + OS_CFLAGS=-std=gnu99 ;; AIX) aix="yes" @@ -266,10 +371,9 @@ for opt do --source-path=*) source_path="$optarg" source_path_used="yes" ;; - --cross-prefix=*) cross_prefix="$optarg" + --cross-prefix=*) ;; - --cc=*) cc="$optarg" - gcc3_search="no" + --cc=*) ;; --host-cc=*) host_cc="$optarg" ;; @@ -301,18 +405,28 @@ for opt do ;; --audio-drv-list=*) audio_drv_list="$optarg" ;; + --enable-debug-tcg) debug_tcg="yes" + ;; + --disable-debug-tcg) debug_tcg="no" + ;; --enable-sparse) sparse="yes" ;; --disable-sparse) sparse="no" ;; + --disable-strip) strip_opt="no" + ;; --disable-vnc-tls) vnc_tls="no" ;; + --disable-vnc-sasl) vnc_sasl="no" + ;; --disable-slirp) slirp="no" ;; --disable-vde) vde="no" ;; --disable-kqemu) kqemu="no" ;; + --disable-xen) xen="no" + ;; --disable-brlapi) brlapi="no" ;; --disable-bluez) bluez="no" @@ -328,8 +442,6 @@ for opt do ;; --disable-gfx-check) check_gfx="no" ;; - --disable-gcc-check) check_gcc="no" - ;; --disable-system) softmmu="no" ;; --enable-system) softmmu="yes" @@ -346,6 +458,8 @@ for opt do ;; --enable-bsd-user) bsd_user="yes" ;; + --enable-guest-base) guest_base="yes" + ;; --enable-uname-release=*) uname_release="$optarg" ;; --sparc_cpu=*) @@ -370,10 +484,18 @@ for opt do ;; --enable-mixemu) mixemu="yes" ;; + --disable-pthread) pthread="no" + ;; --disable-aio) aio="no" ;; + --enable-io-thread) io_thread="yes" + ;; + --disable-blobs) blobs="no" + ;; --kerneldir=*) kerneldir="$optarg" ;; + --with-pkgversion=*) pkgversion=" ($optarg)" + ;; *) echo "ERROR: unknown option $opt"; show_help="yes" ;; esac @@ -381,7 +503,7 @@ done # default flags for all hosts CFLAGS="$CFLAGS -O2 -g -fno-strict-aliasing" -CFLAGS="$CFLAGS -Wall -Wundef -Wendif-labels -Wwrite-strings" +CFLAGS="$CFLAGS -Wall -Wundef -Wendif-labels -Wwrite-strings -Wmissing-prototypes -Wstrict-prototypes -Wredundant-decls" LDFLAGS="$LDFLAGS -g" if test "$werror" = "yes" ; then CFLAGS="$CFLAGS -Werror" @@ -405,6 +527,10 @@ case "$cpu" in ARCH_CFLAGS="${SP_CFLAGS}" ARCH_LDFLAGS="${SP_LDFLAGS}" fi + ARCH_CFLAGS="$ARCH_CFLAGS -ffixed-g2 -ffixed-g3" + if test "$solaris" = "no" ; then + ARCH_CFLAGS="$ARCH_CFLAGS -ffixed-g1 -ffixed-g6" + fi ;; sparc64) if test -z "$sparc_cpu" ; then ARCH_CFLAGS="-m64 -mcpu=ultrasparc -D__sparc_v9__" @@ -413,6 +539,11 @@ case "$cpu" in ARCH_CFLAGS="${SP_CFLAGS}" ARCH_LDFLAGS="${SP_LDFLAGS}" fi + if test "$solaris" = "no" ; then + ARCH_CFLAGS="$ARCH_CFLAGS -ffixed-g5 -ffixed-g6 -ffixed-g7" + else + ARCH_CFLAGS="$ARCH_CFLAGS -ffixed-g1 -ffixed-g5 -ffixed-g6 -ffixed-g7" + fi ;; s390) ARCH_CFLAGS="-march=z900" @@ -449,21 +580,28 @@ 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 " --extra-cflags=CFLAGS add C compiler flags CFLAGS" +echo " --extra-ldflags=LDFLAGS add linker flags LDFLAGS" echo " --make=MAKE use specified make [$make]" echo " --install=INSTALL use specified install [$install]" echo " --static enable static build [$static]" +echo " --enable-debug-tcg enable TCG debugging" +echo " --disable-debug-tcg disable TCG debugging (default)" echo " --enable-sparse enable sparse checker" echo " --disable-sparse disable sparse checker (default)" +echo " --disable-strip disable stripping binaries" echo " --disable-werror disable compilation abort on warning" echo " --disable-sdl disable SDL" echo " --enable-cocoa enable COCOA (Mac OS X only)" echo " --audio-drv-list=LIST set audio drivers list:" echo " Available drivers: $audio_possible_drivers" -echo " --audio-card-list=LIST set list of additional emulated audio cards" -echo " Available cards: ac97 adlib cs4231a gus" +echo " --audio-card-list=LIST set list of emulated audio cards [$audio_card_list]" +echo " Available cards: $audio_possible_cards" echo " --enable-mixemu enable mixer emulation" +echo " --disable-xen disable xen backend driver support" echo " --disable-brlapi disable BrlAPI" echo " --disable-vnc-tls disable TLS encryption for VNC server" +echo " --disable-vnc-sasl disable SASL encryption for VNC server" echo " --disable-curses disable curses output" echo " --disable-bluez disable bluez stack connectivity" echo " --disable-kvm disable KVM acceleration support" @@ -476,97 +614,31 @@ echo " --enable-darwin-user enable all darwin usermode emulation targets" echo " --disable-darwin-user disable all darwin usermode emulation targets" echo " --enable-bsd-user enable all BSD usermode emulation targets" echo " --disable-bsd-user disable all BSD usermode emulation targets" +echo " --enable-guest-base enable GUEST_BASE support for usermode" +echo " emulation targets" echo " --fmod-lib path to FMOD library" echo " --fmod-inc path to FMOD includes" echo " --oss-lib path to OSS library" echo " --enable-uname-release=R Return R for uname -r in usermode emulation" echo " --sparc_cpu=V Build qemu for Sparc architecture v7, v8, v8plus, v8plusa, v9" echo " --disable-vde disable support for vde network" +echo " --disable-pthread disable pthread support" echo " --disable-aio disable AIO support" +echo " --enable-io-thread enable IO thread" +echo " --disable-blobs disable installing provided firmware blobs" echo " --kerneldir=PATH look for kernel includes in PATH" echo "" echo "NOTE: The object files are built at the place where configure is launched" exit 1 fi -cc="${cross_prefix}${cc}" -ar="${cross_prefix}${ar}" -strip="${cross_prefix}${strip}" - -# check that the C compiler works. -cat > $TMPC < /dev/null ; then - : C compiler works ok -else - echo "ERROR: \"$cc\" either does not exist or does not work" - exit 1 -fi - -# check compiler to see if we're on mingw32 -cat > $TMPC < -#ifndef _WIN32 -#error not windows -#endif -int main(void) {} -EOF - -if $cc $ARCH_CFLAGS -c -o $TMPO $TMPC 2> /dev/null ; then - mingw32="yes" -fi - if test "$mingw32" = "yes" ; then linux="no" EXESUF=".exe" oss="no" linux_user="no" bsd_user="no" -fi - -if [ "$darwin" = "yes" -o "$mingw32" = "yes" ] ; then - AIOLIBS= -elif [ "$bsd" = "yes" ]; then - AIOLIBS="$aio_lib" -else - # Some Linux architectures (e.g. s390) don't imply -lpthread automatically. - AIOLIBS="-lrt -lpthread" -fi - -# Check for gcc4, error if pre-gcc4 -if test "$check_gcc" = "yes" ; then - cat > $TMPC < /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 "$cross_prefix$compat_cc" --version 2> /dev/null | fgrep '(GCC) 3.' > /dev/null 2>&1 ; then - echo "Found \"$compat_cc\"" - cc="$cross_prefix$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 + OS_CFLAGS="$OS_CFLAGS -DWIN32_LEAN_AND_MEAN -DWINVER=0x501" fi if test ! -x "$(which cgcc 2>/dev/null)"; then @@ -577,19 +649,6 @@ fi # Solaris specific configure tool chain decisions # if test "$solaris" = "yes" ; then - # - # gcc for solaris 10/fcs in /usr/sfw/bin doesn't compile qemu correctly - # override the check with --disable-gcc-check - # - if test "$solarisrev" -eq 10 -a "$check_gcc" = "yes" ; then - solgcc=`which $cc` - if test "$solgcc" = "/usr/sfw/bin/gcc" ; then - echo "Solaris 10/FCS gcc in /usr/sfw/bin will not compiled qemu correctly." - echo "please get gcc-3.4.3 or later, from www.blastwave.org using pkg-get -i gcc3" - echo "or get the latest patch from SunSolve for gcc" - exit 1 - fi - fi solinst=`which $install 2> /dev/null | /usr/bin/grep -v "no $install in"` if test -z "$solinst" ; then echo "Solaris install program not found. Use --install=/usr/ucb/install or" @@ -659,11 +718,14 @@ sparc32plus-linux-user \ fi # the following are Darwin specific if [ "$darwin_user" = "yes" ] ; then - target_list="$target_list i386-darwin-user ppc-darwin-user" + target_list="$target_list i386-darwin-user ppc-darwin-user " fi # the following are BSD specific if [ "$bsd_user" = "yes" ] ; then target_list="${target_list}\ +i386-bsd-user \ +x86_64-bsd-user \ +sparc-bsd-user \ sparc64-bsd-user \ " fi @@ -687,7 +749,7 @@ int main(int argc, char ** argv){ } EOF -if $cc $ARCH_CFLAGS -o $TMPE $TMPC 2> /dev/null ; then +if $cc $ARCH_CFLAGS -o $TMPE $TMPC > /dev/null 2> /dev/null ; then $TMPE && bigendian="yes" else echo big/little test failed @@ -701,7 +763,8 @@ if test "$cpu" = "armv4b" \ -o "$cpu" = "m68k" \ -o "$cpu" = "mips" \ -o "$cpu" = "mips64" \ - -o "$cpu" = "powerpc" \ + -o "$cpu" = "ppc" \ + -o "$cpu" = "ppc64" \ -o "$cpu" = "s390" \ -o "$cpu" = "sparc" \ -o "$cpu" = "sparc64"; then @@ -715,26 +778,11 @@ hostlongbits="32" if test "$cpu" = "x86_64" \ -o "$cpu" = "alpha" \ -o "$cpu" = "ia64" \ - -o "$cpu" = "sparc64"; then + -o "$cpu" = "sparc64" \ + -o "$cpu" = "ppc64"; then hostlongbits="64" fi -# ppc specific hostlongbits selection -if test "$cpu" = "powerpc" ; then - if $cc $ARCH_CFLAGS -dM -E - -o $TMPI 2>/dev/null $TMPC < $TMPC < @@ -747,7 +795,7 @@ void foo() } EOF -if $cc $ARCH_CFLAGS -c -o $TMPO $TMPC 2> /dev/null ; then +if $cc $ARCH_CFLAGS -c -o $TMPO $TMPC > /dev/null 2> /dev/null ; then : else nptl="no" @@ -760,7 +808,7 @@ cat > $TMPC << EOF #include int main(void) { zlibVersion(); return 0; } EOF -if $cc $ARCH_CFLAGS -o $TMPE ${OS_CFLAGS} $TMPC -lz 2> /dev/null ; then +if $cc $ARCH_CFLAGS -o $TMPE ${OS_CFLAGS} $TMPC -lz > /dev/null 2> /dev/null ; then : else echo @@ -771,6 +819,22 @@ else fi ########################################## +# xen probe + +if test "$xen" = "yes" ; then +cat > $TMPC < +#include +int main(void) { xs_daemon_open; xc_interface_open; } +EOF + if $cc $ARCH_CFLAGS -c -o $TMPO $TMPC -lxenstore -lxenctrl 2> /dev/null > /dev/null ; then + : + else + xen="no" + fi +fi + +########################################## # SDL probe sdl_too_old=no @@ -785,7 +849,7 @@ cat > $TMPC << EOF #undef main /* We don't want SDL to override our main() */ int main( void ) { return SDL_Init (SDL_INIT_VIDEO); } EOF - if $cc $ARCH_CFLAGS -o $TMPE ${OS_CFLAGS} `$sdl_config --cflags 2> /dev/null` $TMPC `$sdl_config --libs 2> /dev/null` 2> /tmp/qemu-$$-sdl-config.log ; then + if $cc $ARCH_CFLAGS -o $TMPE ${OS_CFLAGS} `$sdl_config --cflags 2> /dev/null` $TMPC `$sdl_config --libs 2> /dev/null` > $TMPSDLLOG 2>&1 ; then _sdlversion=`$sdl_config --version | sed 's/[^0-9]//g'` if test "$_sdlversion" -lt 121 ; then sdl_too_old=yes @@ -804,7 +868,7 @@ EOF sdl_static_libs="$sdl_static_libs `aalib-config --static-libs`" fi - if $cc -o $TMPE ${OS_CFLAGS} `$sdl_config --cflags 2> /dev/null` $TMPC $sdl_static_libs 2> /dev/null; then + if $cc -o $TMPE ${OS_CFLAGS} `$sdl_config --cflags 2> /dev/null` $TMPC $sdl_static_libs > /dev/null 2> /dev/null; then sdl_static=yes fi fi # static link @@ -817,6 +881,21 @@ else fi fi # -z $sdl +if test "$sdl" = "yes" ; then +cat > $TMPC < +#if defined(SDL_VIDEO_DRIVER_X11) +#include +#else +#error No x11 support +#endif +int main(void) { return 0; } +EOF + if $cc $ARCH_CFLAGS -o $TMPE ${OS_CFLAGS} `$sdl_config --cflags 2> /dev/null` $TMPC `$sdl_config --libs 2> /dev/null` > /dev/null 2>&1 ; then + sdl_x11="yes" + fi +fi + ########################################## # VNC TLS detection if test "$vnc_tls" = "yes" ; then @@ -827,7 +906,7 @@ EOF vnc_tls_cflags=`pkg-config --cflags gnutls 2> /dev/null` vnc_tls_libs=`pkg-config --libs gnutls 2> /dev/null` if $cc $ARCH_CFLAGS -o $TMPE ${OS_CFLAGS} $vnc_tls_cflags $TMPC \ - $vnc_tls_libs 2> /dev/null ; then + $vnc_tls_libs > /dev/null 2> /dev/null ; then : else vnc_tls="no" @@ -835,6 +914,40 @@ EOF fi ########################################## +# VNC SASL detection +if test "$vnc_sasl" = "yes" ; then +cat > $TMPC < +#include +int main(void) { sasl_server_init(NULL, "qemu"); return 0; } +EOF + # Assuming Cyrus-SASL installed in /usr prefix + vnc_sasl_cflags="" + vnc_sasl_libs="-lsasl2" + if $cc $ARCH_CFLAGS -o $TMPE ${OS_CFLAGS} $vnc_sasl_cflags $TMPC \ + $vnc_sasl_libs 2> /dev/null > /dev/null ; then + : + else + vnc_sasl="no" + fi +fi + +########################################## +# fnmatch() probe, used for ACL routines +fnmatch="no" +cat > $TMPC << EOF +#include +int main(void) +{ + fnmatch("foo", "foo", 0); + return 0; +} +EOF +if $cc $ARCH_CFLAGS -o $TMPE $TMPC > /dev/null 2> /dev/null ; then + fnmatch="yes" +fi + +########################################## # vde libraries probe if test "$vde" = "yes" ; then cat > $TMPC << EOF @@ -846,7 +959,7 @@ int main(void) return 0; } EOF - if $cc $ARCH_CFLAGS -o $TMPE $TMPC -lvdeplug 2> /dev/null ; then + if $cc $ARCH_CFLAGS -o $TMPE $TMPC -lvdeplug > /dev/null 2> /dev/null ; then : else vde="no" @@ -867,7 +980,7 @@ audio_drv_probe() #include <$hdr> int main(void) { $exp } EOF - if $cc $ARCH_CFLAGS $cfl -o $TMPE $TMPC $lib 2> /dev/null ; then + if $cc $ARCH_CFLAGS $cfl -o $TMPE $TMPC $lib > /dev/null 2> /dev/null ; then : else echo @@ -931,7 +1044,7 @@ cat > $TMPC << EOF #include int main( void ) { return brlapi__openConnection (NULL, NULL, NULL); } EOF - if $cc ${ARCH_CFLAGS} -o $TMPE ${OS_CFLAGS} $TMPC -lbrlapi 2> /dev/null ; then + if $cc ${ARCH_CFLAGS} -o $TMPE ${OS_CFLAGS} $TMPC -lbrlapi > /dev/null 2> /dev/null ; then brlapi=yes fi # brlapi compile test fi # -z $brlapi @@ -943,9 +1056,12 @@ if test "$curses" = "yes" ; then curses=no cat > $TMPC << EOF #include -int main(void) { return curses_version(); } +#ifdef __OpenBSD__ +#define resize_term resizeterm +#endif +int main(void) { resize_term(0, 0); return curses_version(); } EOF - if $cc $ARCH_CFLAGS -o $TMPE $TMPC -lcurses 2> /dev/null ; then + if $cc $ARCH_CFLAGS -o $TMPE $TMPC -lcurses > /dev/null 2> /dev/null ; then curses=yes fi fi # test "$curses" @@ -953,17 +1069,17 @@ fi # test "$curses" ########################################## # bluez support probe if test "$bluez" = "yes" ; then - `pkg-config bluez` || bluez="no" + `pkg-config bluez 2> /dev/null` || bluez="no" fi if test "$bluez" = "yes" ; then cat > $TMPC << EOF #include int main(void) { return bt_error(0); } EOF - bluez_cflags=`pkg-config --cflags bluez` - bluez_libs=`pkg-config --libs bluez` + bluez_cflags=`pkg-config --cflags bluez 2> /dev/null` + bluez_libs=`pkg-config --libs bluez 2> /dev/null` if $cc $ARCH_CFLAGS -o $TMPE ${OS_CFLAGS} $bluez_cflags $TMPC \ - $bluez_libs 2> /dev/null ; then + $bluez_libs > /dev/null 2> /dev/null ; then : else bluez="no" @@ -975,47 +1091,201 @@ fi if test "$kvm" = "yes" ; then cat > $TMPC < -#if !defined(KVM_API_VERSION) || \ - KVM_API_VERSION < 12 || \ - KVM_API_VERSION > 12 || \ - !defined(KVM_CAP_USER_MEMORY) || \ - !defined(KVM_CAP_SET_TSS_ADDR) +#if !defined(KVM_API_VERSION) || KVM_API_VERSION < 12 || KVM_API_VERSION > 12 #error Invalid KVM version #endif +#if !defined(KVM_CAP_USER_MEMORY) +#error Missing KVM capability KVM_CAP_USER_MEMORY +#endif +#if !defined(KVM_CAP_SET_TSS_ADDR) +#error Missing KVM capability KVM_CAP_SET_TSS_ADDR +#endif +#if !defined(KVM_CAP_DESTROY_MEMORY_REGION_WORKS) +#error Missing KVM capability KVM_CAP_DESTROY_MEMORY_REGION_WORKS +#endif int main(void) { return 0; } EOF if test "$kerneldir" != "" ; then kvm_cflags=-I"$kerneldir"/include + if test \( "$cpu" = "i386" -o "$cpu" = "x86_64" \) \ + -a -d "$kerneldir/arch/x86/include" ; then + kvm_cflags="$kvm_cflags -I$kerneldir/arch/x86/include" + elif test "$cpu" = "ppc" -a -d "$kerneldir/arch/powerpc/include" ; then + kvm_cflags="$kvm_cflags -I$kerneldir/arch/powerpc/include" + elif test -d "$kerneldir/arch/$cpu/include" ; then + kvm_cflags="$kvm_cflags -I$kerneldir/arch/$cpu/include" + fi else kvm_cflags="" fi if $cc $ARCH_CFLAGS -o $TMPE ${OS_CFLAGS} $kvm_cflags $TMPC \ - 2>/dev/null ; then + > /dev/null 2>/dev/null ; then : else - kvm="no" + kvm="no"; + if [ -x "`which awk 2>/dev/null`" ] && \ + [ -x "`which grep 2>/dev/null`" ]; then + kvmerr=`LANG=C $cc $ARCH_CFLAGS -o $TMPE ${OS_CFLAGS} $kvm_cflags $TMPC 2>&1 \ + | grep "error: " \ + | awk -F "error: " '{if (NR>1) printf(", "); printf("%s",$2);}'` + if test "$kvmerr" != "" ; then + kvm="no - (${kvmerr})" + fi + fi fi fi ########################################## -# AIO probe -if test "$aio" = "yes" ; then - aio=no +# pthread probe +PTHREADLIBS="" + +if test "$pthread" = yes; then + pthread=no +cat > $TMPC << EOF +#include +int main(void) { pthread_mutex_t lock; return 0; } +EOF + if $cc $ARCH_CFLAGS -o $TMPE $PTHREADLIBS $TMPC 2> /dev/null > /dev/null ; then + pthread=yes + PTHREADLIBS="-lpthread" + fi +fi + +if test "$pthread" = no; then + aio=no + io_thread=no +fi + +########################################## +# iovec probe +cat > $TMPC < +#include +#include +int main(void) { struct iovec iov; return 0; } +EOF +iovec=no +if $cc $ARCH_CFLAGS -o $TMPE $TMPC > /dev/null 2> /dev/null ; then + iovec=yes +fi + +########################################## +# preadv probe +cat > $TMPC < +#include +#include +int main(void) { preadv; } +EOF +preadv=no +if $cc $ARCH_CFLAGS -o $TMPE $TMPC > /dev/null 2> /dev/null ; then + preadv=yes +fi + +########################################## +# fdt probe +if test "$fdt" = "yes" ; then + fdt=no + cat > $TMPC << EOF +int main(void) { return 0; } +EOF + if $cc $ARCH_CFLAGS -o $TMPE ${OS_CFLAGS} $TMPC -lfdt 2> /dev/null > /dev/null ; then + fdt=yes + fi +fi + +# +# Check for xxxat() functions when we are building linux-user +# emulator. This is done because older glibc versions don't +# have syscall stubs for these implemented. +# +atfile=no +if [ "$linux_user" = "yes" ] ; then cat > $TMPC << EOF -#include -int main(void) { return aio_write(NULL); } +#define _ATFILE_SOURCE +#include +#include +#include + +int +main(void) +{ + /* try to unlink nonexisting file */ + return (unlinkat(AT_FDCWD, "nonexistent_file", 0)); +} EOF - if $cc $ARCH_CFLAGS -o $TMPE $AIOLIBS $TMPC 2> /dev/null ; then - aio=yes + if $cc $ARCH_CFLAGS -o $TMPE $TMPC 2> /dev/null > /dev/null ; then + atfile=yes fi fi +# Check for inotify functions when we are building linux-user +# emulator. This is done because older glibc versions don't +# have syscall stubs for these implemented. In that case we +# don't provide them even if kernel supports them. +# +inotify=no +if [ "$linux_user" = "yes" ] ; then + cat > $TMPC << EOF +#include + +int +main(void) +{ + /* try to start inotify */ + return inotify_init(); +} +EOF + if $cc $ARCH_CFLAGS -o $TMPE $TMPC 2> /dev/null > /dev/null ; then + inotify=yes + fi +fi + +# check if utimensat and futimens are supported +utimens=no +cat > $TMPC << EOF +#define _ATFILE_SOURCE +#define _GNU_SOURCE +#include +#include + +int main(void) +{ + utimensat(AT_FDCWD, "foo", NULL, 0); + futimens(0, NULL); + return 0; +} +EOF +if $cc $ARCH_CFLAGS -o $TMPE $TMPC 2> /dev/null ; then + utimens=yes +fi + # Check if tools are available to build documentation. if [ -x "`which texi2html 2>/dev/null`" ] && \ [ -x "`which pod2man 2>/dev/null`" ]; then build_docs="yes" fi +########################################## +# Do we need librt +CLOCKLIBS="" +cat > $TMPC < +#include +int main(void) { clockid_t id; return clock_gettime(id, NULL); } +EOF + +rt=no +if $cc $ARCH_CFLAGS -o $TMPE $TMPC > /dev/null 2> /dev/null ; then + : +elif $cc $ARCH_CFLAGS -o $TMPE $TMPC -lrt > /dev/null 2> /dev/null ; then + rt=yes +fi + +if test "$rt" = "yes" ; then + CLOCKLIBS="-lrt" +fi + if test "$mingw32" = "yes" ; then if test -z "$prefix" ; then prefix="c:\\\\Program Files\\\\Qemu" @@ -1050,8 +1320,10 @@ echo "install $install" echo "host CPU $cpu" echo "host big endian $bigendian" echo "target list $target_list" +echo "tcg debug enabled $debug_tcg" echo "gprof enabled $gprof" echo "sparse enabled $sparse" +echo "strip binaries $strip_opt" echo "profiler $profiler" echo "static build $static" echo "-Werror enabled $werror" @@ -1072,27 +1344,37 @@ if test "$vnc_tls" = "yes" ; then echo " TLS CFLAGS $vnc_tls_cflags" echo " TLS LIBS $vnc_tls_libs" fi +echo "VNC SASL support $vnc_sasl" +if test "$vnc_sasl" = "yes" ; then + echo " SASL CFLAGS $vnc_sasl_cflags" + echo " SASL LIBS $vnc_sasl_libs" +fi if test -n "$sparc_cpu"; then echo "Target Sparc Arch $sparc_cpu" fi echo "kqemu support $kqemu" +echo "xen support $xen" echo "brlapi support $brlapi" echo "Documentation $build_docs" [ ! -z "$uname_release" ] && \ echo "uname -r $uname_release" echo "NPTL support $nptl" +echo "GUEST_BASE $guest_base" echo "vde support $vde" echo "AIO support $aio" +echo "IO thread $io_thread" +echo "Install blobs $blobs" echo "KVM support $kvm" +echo "fdt support $fdt" +echo "preadv support $preadv" if test $sdl_too_old = "yes"; then echo "-> Your SDL version is too old - please upgrade to have SDL support" fi -if [ -s /tmp/qemu-$$-sdl-config.log ]; then +if [ -s $TMPSDLLOG ]; then echo "The error log from compiling the libSDL test is: " - cat /tmp/qemu-$$-sdl-config.log + cat $TMPSDLLOG fi -rm -f /tmp/qemu-$$-sdl-config.log #if test "$sdl_static" = "no"; then # echo "WARNING: cannot compile statically with SDL - qemu-fast won't have a graphical output" #fi @@ -1104,7 +1386,9 @@ config_h="config-host.h" test -f $config_h && mv $config_h ${config_h}~ echo "# Automatically generated by configure - do not modify" > $config_mak -echo "# Configured with: $0 $@" >> $config_mak +printf "# Configured with:" >> $config_mak +printf " '%s'" "$0" "$@" >> $config_mak +echo >> $config_mak echo "/* Automatically generated by configure - do not modify */" > $config_h echo "prefix=$prefix" >> $config_mak @@ -1115,10 +1399,12 @@ echo "docdir=\${prefix}$docsuffix" >> $config_mak echo "#define CONFIG_QEMU_SHAREDIR \"$prefix$datasuffix\"" >> $config_h echo "MAKE=$make" >> $config_mak echo "INSTALL=$install" >> $config_mak +echo "INSTALL_DIR=$install -d -m0755 -p" >> $config_mak +echo "INSTALL_DATA=$install -m0644 -p" >> $config_mak +echo "INSTALL_PROG=$install -m0755 -p" >> $config_mak echo "CC=$cc" >> $config_mak echo "HOST_CC=$host_cc" >> $config_mak echo "AR=$ar" >> $config_mak -echo "STRIP=$strip -s -R .comment -R .note" >> $config_mak # XXX: only use CFLAGS and LDFLAGS ? # XXX: should export HOST_CFLAGS and HOST_LDFLAGS for cross # compilation of dyngen tool (useful for win32 build on Linux host) @@ -1129,7 +1415,8 @@ echo "ARCH_LDFLAGS=$ARCH_LDFLAGS" >> $config_mak echo "CFLAGS=$CFLAGS" >> $config_mak echo "LDFLAGS=$LDFLAGS" >> $config_mak echo "EXESUF=$EXESUF" >> $config_mak -echo "AIOLIBS=$AIOLIBS" >> $config_mak +echo "PTHREADLIBS=$PTHREADLIBS" >> $config_mak +echo "CLOCKLIBS=$CLOCKLIBS" >> $config_mak case "$cpu" in i386) echo "ARCH=i386" >> $config_mak @@ -1175,14 +1462,13 @@ case "$cpu" in echo "ARCH=mips64" >> $config_mak echo "#define HOST_MIPS64 1" >> $config_h ;; - powerpc) - if test "$hostlongbits" = "32"; then - echo "ARCH=ppc" >> $config_mak - echo "#define HOST_PPC 1" >> $config_h - else - echo "ARCH=ppc64" >> $config_mak - echo "#define HOST_PPC64 1" >> $config_h - fi + ppc) + echo "ARCH=ppc" >> $config_mak + echo "#define HOST_PPC 1" >> $config_h + ;; + ppc64) + echo "ARCH=ppc64" >> $config_mak + echo "#define HOST_PPC64 1" >> $config_h ;; s390) echo "ARCH=s390" >> $config_mak @@ -1201,11 +1487,17 @@ case "$cpu" in exit 1 ;; esac +if test "$debug_tcg" = "yes" ; then + echo "#define DEBUG_TCG 1" >> $config_h +fi if test "$sparse" = "yes" ; then echo "CC := REAL_CC=\"\$(CC)\" cgcc" >> $config_mak echo "HOST_CC := REAL_CC=\"\$(HOST_CC)\" cgcc" >> $config_mak echo "CFLAGS += -Wbitwise -Wno-transparent-union -Wno-old-initializer -Wno-non-pointer-null" >> $config_mak fi +if test "$strip_opt" = "yes" ; then + echo "STRIP_OPT=-s" >> $config_mak +fi if test "$bigendian" = "yes" ; then echo "WORDS_BIGENDIAN=yes" >> $config_mak echo "#define WORDS_BIGENDIAN 1" >> $config_h @@ -1219,9 +1511,18 @@ else #include int main(void) { return bswap_32(0); } EOF - if $cc $ARCH_CFLAGS -o $TMPE $TMPC 2> /dev/null ; then + if $cc $ARCH_CFLAGS -o $TMPE $TMPC >/dev/null 2> /dev/null ; then echo "#define HAVE_BYTESWAP_H 1" >> $config_h fi + cat > $TMPC << EOF +#include +#include +#include +int main(void) { return bswap32(0); } +EOF + if $cc $ARCH_CFLAGS -o $TMPE $TMPC >/dev/null 2> /dev/null ; then + echo "#define HAVE_MACHINE_BSWAP_H 1" >> $config_h + fi fi if [ "$openbsd" = "yes" ] ; then @@ -1302,10 +1603,21 @@ if test "$vnc_tls" = "yes" ; then echo "CONFIG_VNC_TLS_LIBS=$vnc_tls_libs" >> $config_mak echo "#define CONFIG_VNC_TLS 1" >> $config_h fi +if test "$vnc_sasl" = "yes" ; then + echo "CONFIG_VNC_SASL=yes" >> $config_mak + echo "CONFIG_VNC_SASL_CFLAGS=$vnc_sasl_cflags" >> $config_mak + echo "CONFIG_VNC_SASL_LIBS=$vnc_sasl_libs" >> $config_mak + echo "#define CONFIG_VNC_SASL 1" >> $config_h +fi +if test "$fnmatch" = "yes" ; then + echo "#define HAVE_FNMATCH_H 1" >> $config_h +fi qemu_version=`head $source_path/VERSION` echo "VERSION=$qemu_version" >>$config_mak echo "#define QEMU_VERSION \"$qemu_version\"" >> $config_h +echo "#define QEMU_PKGVERSION \"$pkgversion\"" >> $config_h + echo "SRC_PATH=$source_path" >> $config_mak if [ "$source_path_used" = "yes" ]; then echo "VPATH=$source_path" >> $config_mak @@ -1324,6 +1636,8 @@ if test "$sdl1" = "yes" ; then echo "CONFIG_SDL=yes" >> $config_mak if test "$target_softmmu" = "no" -o "$static" = "yes"; then echo "SDL_LIBS=$sdl_static_libs" >> $config_mak + elif test "$sdl_x11" = "yes" ; then + echo "SDL_LIBS=`$sdl_config --libs` -lX11" >> $config_mak else echo "SDL_LIBS=`$sdl_config --libs`" >> $config_mak fi @@ -1342,6 +1656,15 @@ if test "$curses" = "yes" ; then echo "CONFIG_CURSES=yes" >> $config_mak echo "CURSES_LIBS=-lcurses" >> $config_mak fi +if test "$atfile" = "yes" ; then + echo "#define CONFIG_ATFILE 1" >> $config_h +fi +if test "$utimens" = "yes" ; then + echo "#define CONFIG_UTIMENSAT 1" >> $config_h +fi +if test "$inotify" = "yes" ; then + echo "#define CONFIG_INOTIFY 1" >> $config_h +fi if test "$brlapi" = "yes" ; then echo "CONFIG_BRLAPI=yes" >> $config_mak echo "#define CONFIG_BRLAPI 1" >> $config_h @@ -1353,16 +1676,36 @@ if test "$bluez" = "yes" ; then echo "CONFIG_BLUEZ_LIBS=$bluez_libs" >> $config_mak echo "#define CONFIG_BLUEZ 1" >> $config_h fi +if test "$xen" = "yes" ; then + echo "XEN_LIBS=-lxenstore -lxenctrl -lxenguest" >> $config_mak +fi if test "$aio" = "yes" ; then echo "#define CONFIG_AIO 1" >> $config_h echo "CONFIG_AIO=yes" >> $config_mak fi +if test "$io_thread" = "yes" ; then + echo "CONFIG_IOTHREAD=yes" >> $config_mak + echo "#define CONFIG_IOTHREAD 1" >> $config_h +fi +if test "$blobs" = "yes" ; then + echo "INSTALL_BLOBS=yes" >> $config_mak +fi +if test "$iovec" = "yes" ; then + echo "#define HAVE_IOVEC 1" >> $config_h +fi +if test "$preadv" = "yes" ; then + echo "#define HAVE_PREADV 1" >> $config_h +fi +if test "$fdt" = "yes" ; then + echo "#define HAVE_FDT 1" >> $config_h + echo "FDT_LIBS=-lfdt" >> $config_mak +fi # XXX: suppress that if [ "$bsd" = "yes" ] ; then echo "#define O_LARGEFILE 0" >> $config_h echo "#define MAP_ANONYMOUS MAP_ANON" >> $config_h - echo "#define _BSD 1" >> $config_h + echo "#define HOST_BSD 1" >> $config_h fi echo "#define CONFIG_UNAME_RELEASE \"$uname_release\"" >> $config_h @@ -1384,7 +1727,7 @@ tools= if test `expr "$target_list" : ".*softmmu.*"` != 0 ; then tools="qemu-img\$(EXESUF) $tools" if [ "$linux" = "yes" ] ; then - tools="qemu-nbd\$(EXESUF) $tools" + tools="qemu-nbd\$(EXESUF) qemu-io\$(EXESUF) $tools" fi fi echo "TOOLS=$tools" >> $config_mak @@ -1480,6 +1823,7 @@ gdb_xml_files="" # Make sure the target and host cpus are compatible if test "$kvm" = "yes" -a ! \( "$target_cpu" = "$cpu" -o \ + \( "$target_cpu" = "ppcemb" -a "$cpu" = "ppc" \) -o \ \( "$target_cpu" = "x86_64" -a "$cpu" = "i386" \) -o \ \( "$target_cpu" = "i386" -a "$cpu" = "x86_64" \) \) ; then kvm="no" @@ -1496,19 +1840,18 @@ case "$target_cpu" in echo "#define TARGET_I386 1" >> $config_h if test $kqemu = "yes" -a "$target_softmmu" = "yes" then - echo "#define USE_KQEMU 1" >> $config_h + echo "CONFIG_KQEMU=yes" >> $config_mak + echo "#define CONFIG_KQEMU 1" >> $config_h fi if test "$kvm" = "yes" ; then echo "CONFIG_KVM=yes" >> $config_mak echo "KVM_CFLAGS=$kvm_cflags" >> $config_mak echo "#define CONFIG_KVM 1" >> $config_h fi - gcc3minver=`$cc --version 2> /dev/null| fgrep "(GCC) 3." | awk '{ print $3 }' | cut -f2 -d.` - if test -n "$gcc3minver" && test $gcc3minver -gt 3 + if test "$xen" = "yes" -a "$target_softmmu" = "yes"; then - echo "HAVE_GT_GCC_3_3=true" >> $config_mak - else - echo "HAVE_GT_GCC_3_3=false" >> $config_mak + echo "CONFIG_XEN=yes" >> $config_mak + echo "#define CONFIG_XEN 1" >> $config_h fi ;; x86_64) @@ -1518,13 +1861,19 @@ case "$target_cpu" in echo "#define TARGET_X86_64 1" >> $config_h if test $kqemu = "yes" -a "$target_softmmu" = "yes" -a $cpu = "x86_64" then - echo "#define USE_KQEMU 1" >> $config_h + echo "CONFIG_KQEMU=yes" >> $config_mak + echo "#define CONFIG_KQEMU 1" >> $config_h fi if test "$kvm" = "yes" ; then echo "CONFIG_KVM=yes" >> $config_mak echo "KVM_CFLAGS=$kvm_cflags" >> $config_mak echo "#define CONFIG_KVM 1" >> $config_h fi + if test "$xen" = "yes" -a "$target_softmmu" = "yes" + then + echo "CONFIG_XEN=yes" >> $config_mak + echo "#define CONFIG_XEN 1" >> $config_h + fi ;; alpha) echo "TARGET_ARCH=alpha" >> $config_mak @@ -1543,6 +1892,7 @@ case "$target_cpu" in echo "TARGET_ARCH=cris" >> $config_mak echo "#define TARGET_ARCH \"cris\"" >> $config_h echo "#define TARGET_CRIS 1" >> $config_h + target_nptl="yes" ;; m68k) echo "TARGET_ARCH=m68k" >> $config_mak @@ -1572,39 +1922,40 @@ case "$target_cpu" in ;; ppc) echo "TARGET_ARCH=ppc" >> $config_mak - echo "CONFIG_DYNGEN_OP=yes" >> $config_mak echo "#define TARGET_ARCH \"ppc\"" >> $config_h echo "#define TARGET_PPC 1" >> $config_h - echo "#define CONFIG_DYNGEN_OP 1" >> $config_h + gdb_xml_files="power-core.xml power-fpu.xml power-altivec.xml power-spe.xml" ;; ppcemb) echo "TARGET_ARCH=ppcemb" >> $config_mak echo "TARGET_ABI_DIR=ppc" >> $config_mak - echo "CONFIG_DYNGEN_OP=yes" >> $config_mak echo "#define TARGET_ARCH \"ppcemb\"" >> $config_h echo "#define TARGET_PPC 1" >> $config_h echo "#define TARGET_PPCEMB 1" >> $config_h - echo "#define CONFIG_DYNGEN_OP 1" >> $config_h + if test "$kvm" = "yes" ; then + echo "CONFIG_KVM=yes" >> $config_mak + echo "KVM_CFLAGS=$kvm_cflags" >> $config_mak + echo "#define CONFIG_KVM 1" >> $config_h + fi + gdb_xml_files="power-core.xml power-fpu.xml power-altivec.xml power-spe.xml" ;; ppc64) echo "TARGET_ARCH=ppc64" >> $config_mak echo "TARGET_ABI_DIR=ppc" >> $config_mak - echo "CONFIG_DYNGEN_OP=yes" >> $config_mak echo "#define TARGET_ARCH \"ppc64\"" >> $config_h echo "#define TARGET_PPC 1" >> $config_h echo "#define TARGET_PPC64 1" >> $config_h - echo "#define CONFIG_DYNGEN_OP 1" >> $config_h + gdb_xml_files="power64-core.xml power-fpu.xml power-altivec.xml power-spe.xml" ;; ppc64abi32) echo "TARGET_ARCH=ppc64" >> $config_mak echo "TARGET_ABI_DIR=ppc" >> $config_mak echo "TARGET_ARCH2=ppc64abi32" >> $config_mak - echo "CONFIG_DYNGEN_OP=yes" >> $config_mak echo "#define TARGET_ARCH \"ppc64\"" >> $config_h echo "#define TARGET_PPC 1" >> $config_h echo "#define TARGET_PPC64 1" >> $config_h echo "#define TARGET_ABI32 1" >> $config_h - echo "#define CONFIG_DYNGEN_OP 1" >> $config_h + gdb_xml_files="power64-core.xml power-fpu.xml power-altivec.xml power-spe.xml" ;; sh4|sh4eb) echo "TARGET_ARCH=sh4" >> $config_mak @@ -1676,6 +2027,10 @@ if test "$target_cpu" = "arm" \ -o "$target_cpu" = "mipsn32el" \ -o "$target_cpu" = "mips64" \ -o "$target_cpu" = "mips64el" \ + -o "$target_cpu" = "ppc" \ + -o "$target_cpu" = "ppc64" \ + -o "$target_cpu" = "ppc64abi32" \ + -o "$target_cpu" = "ppcemb" \ -o "$target_cpu" = "sparc" \ -o "$target_cpu" = "sparc64" \ -o "$target_cpu" = "sparc32plus"; then @@ -1695,6 +2050,9 @@ if test "$target_user_only" = "yes" -a "$elfload32" = "yes"; then echo "TARGET_HAS_ELFLOAD32=yes" >> $config_mak echo "#define TARGET_HAS_ELFLOAD32 1" >> $config_h fi +if test "$target_user_only" = "yes" -a "$guest_base" = "yes"; then + echo "#define CONFIG_USE_GUEST_BASE 1" >> $config_h +fi if test "$target_bsd_user" = "yes" ; then echo "CONFIG_BSD_USER=yes" >> $config_mak echo "#define CONFIG_BSD_USER 1" >> $config_h @@ -1719,5 +2077,3 @@ if test "$source_path_used" = "yes" ; then ln -s $source_path/$f $f done fi - -rm -f $TMPO $TMPC $TMPE $TMPS $TMPI