3 # qemu configure script (c) 2003 Fabrice Bellard
5 # set temporary file name
6 if test ! -z "$TMPDIR" ; then
8 elif test ! -z "$TEMPDIR" ; then
14 TMPC
="${TMPDIR1}/qemu-conf-${RANDOM}-$$-${RANDOM}.c"
15 TMPO
="${TMPDIR1}/qemu-conf-${RANDOM}-$$-${RANDOM}.o"
16 TMPE
="${TMPDIR1}/qemu-conf-${RANDOM}-$$-${RANDOM}"
17 TMPS
="${TMPDIR1}/qemu-conf-${RANDOM}-$$-${RANDOM}.S"
21 interp_prefix
="/usr/gnemul/qemu-%M"
26 gcc3_list
="gcc-3.4.6 gcc-3.4 gcc34 gcc-3.3.6 gcc-3.3 gcc33 gcc-3.2 gcc32"
37 i386|i486|i586|i686|i86pc|BePC
)
70 "Power Macintosh"|ppc|ppc64
)
117 device_tree_support
=""
124 OS_CFLAGS
="-mno-cygwin"
125 if [ "$cpu" = "i386" ] ; then
128 audio_possible_drivers
="sdl"
132 if [ "$cpu" = "i386" ] ; then
135 audio_possible_drivers
="dsound sdl fmod"
139 audio_possible_drivers
="oss sdl esd pa"
140 if [ "$cpu" = "i386" -o "$cpu" = "x86_64" ] ; then
147 audio_possible_drivers
="oss sdl esd pa"
148 if [ "$cpu" = "i386" -o "$cpu" = "x86_64" ] ; then
156 audio_possible_drivers
="oss sdl esd"
162 audio_possible_drivers
="oss sdl esd"
170 audio_drv_list
="coreaudio"
171 audio_possible_drivers
="coreaudio sdl fmod"
172 OS_CFLAGS
="-mdynamic-no-pic"
173 OS_LDFLAGS
="-framework CoreFoundation -framework IOKit"
179 needs_libsunmath
="no"
180 solarisrev
=`uname -r | cut -f2 -d.`
181 # have to select again, because `uname -m` returns i86pc
182 # even on an x86_64 box.
183 solariscpu
=`isainfo -k`
184 if test "${solariscpu}" = "amd64" ; then
187 if [ "$cpu" = "i386" -o "$cpu" = "x86_64" ] ; then
188 if test "$solarisrev" -le 9 ; then
189 if test -f /opt
/SUNWspro
/prod
/lib
/libsunmath.so
.1; then
190 needs_libsunmath
="yes"
192 echo "QEMU will not link correctly on Solaris 8/X86 or 9/x86 without"
193 echo "libsunmath from the Sun Studio compilers tools, due to a lack of"
194 echo "C99 math features in libm.so in Solaris 8/x86 and Solaris 9/x86"
195 echo "Studio 11 can be downloaded from www.sun.com."
199 if test "$solarisrev" -ge 9 ; then
203 if test -f /usr
/include
/sys
/soundcard.h
; then
206 audio_possible_drivers
="oss sdl"
210 audio_possible_drivers
="oss alsa sdl esd pa"
213 if [ "$cpu" = "i386" -o "$cpu" = "x86_64" ] ; then
215 audio_possible_drivers
="$audio_possible_drivers fmod"
218 if [ "$cpu" = "ia64" ] ; then
224 if [ "$cpu" = "powerpc" ]; then
230 if [ "$bsd" = "yes" ] ; then
231 if [ "$darwin" != "yes" ] ; then
237 source_path
=`dirname "$0"`
238 source_path_used
="no"
240 if [ -z "$source_path" ]; then
243 source_path
=`cd "$source_path"; pwd`
245 [ -f "$workdir/vl.c" ] || source_path_used
="yes"
248 # generate compile errors on warnings for development builds
249 #if grep cvs $source_path/VERSION > /dev/null 2>&1 ; then
254 optarg
=`expr "x$opt" : 'x[^=]*=\(.*\)'`
256 --help|
-h) show_help
=yes
258 --prefix=*) prefix
="$optarg"
260 --interp-prefix=*) interp_prefix
="$optarg"
262 --source-path=*) source_path
="$optarg"
263 source_path_used
="yes"
265 --cross-prefix=*) cross_prefix
="$optarg"
270 --host-cc=*) host_cc
="$optarg"
272 --make=*) make="$optarg"
274 --install=*) install="$optarg"
276 --extra-cflags=*) CFLAGS
="$optarg"
278 --extra-ldflags=*) LDFLAGS
="$optarg"
280 --cpu=*) cpu
="$optarg"
282 --target-list=*) target_list
="$optarg"
284 --enable-gprof) gprof
="yes"
286 --static) static
="yes"
288 --disable-sdl) sdl
="no"
290 --fmod-lib=*) fmod_lib
="$optarg"
292 --fmod-inc=*) fmod_inc
="$optarg"
294 --oss-lib=*) oss_lib
="$optarg"
296 --audio-card-list=*) audio_card_list
=`echo "$optarg" | sed -e 's/,/ /g'`
298 --audio-drv-list=*) audio_drv_list
="$optarg"
300 --disable-vnc-tls) vnc_tls
="no"
302 --disable-slirp) slirp
="no"
304 --disable-vde) vde
="no"
306 --disable-kqemu) kqemu
="no"
308 --disable-kvm) kvm
="no"
310 --disable-brlapi) brlapi
="no"
312 --enable-profiler) profiler
="yes"
314 --kernel-path=*) kernel_path
="$optarg"
319 audio_drv_list
="coreaudio `echo $audio_drv_list | sed s,coreaudio,,g`"
321 --disable-gfx-check) check_gfx
="no"
323 --disable-gcc-check) check_gcc
="no"
325 --disable-system) softmmu
="no"
327 --enable-system) softmmu
="yes"
329 --disable-linux-user) linux_user
="no"
331 --enable-linux-user) linux_user
="yes"
333 --disable-darwin-user) darwin_user
="no"
335 --enable-darwin-user) darwin_user
="yes"
337 --enable-uname-release=*) uname_release
="$optarg"
342 v7|v8
) SP_CFLAGS
="-m32 -mcpu=${sparc_cpu} -D__sparc_${sparc_cpu}__"; SP_LDFLAGS
="-m32"
343 target_cpu
="sparc"; cpu
="sparc" ;;
344 v8plus|v8plusa
) SP_CFLAGS
="-m32 -mcpu=ultrasparc -D__sparc_${sparc_cpu}__"; SP_LDFLAGS
="-m32"
345 target_cpu
="sparc"; cpu
="sparc" ;;
346 v9
) SP_CFLAGS
="-m64 -mcpu=ultrasparc -D__sparc_${sparc_cpu}__"; SP_LDFLAGS
="-m64"
347 target_cpu
="sparc64"; cpu
="sparc64" ;;
348 *) echo "undefined SPARC architecture. Exiting";exit 1;;
351 --enable-werror) werror
="yes"
353 --disable-werror) werror
="no"
355 --disable-curses) curses
="no"
357 --disable-nptl) nptl
="no"
359 --enable-mixemu) mixemu
="yes"
361 --disable-aio) aio
="no"
363 --disable-cpu-emulation) cpu_emulation
="no"
365 --disable-libfdt) device_tree_support
="no"
367 *) echo "ERROR: unknown option $opt"; exit 1
372 # default flags for all hosts
373 CFLAGS
="$CFLAGS -O2 -g -fno-strict-aliasing"
374 CFLAGS
="$CFLAGS -Wall -Wundef -Wendif-labels -Wwrite-strings"
375 LDFLAGS
="$LDFLAGS -g"
376 if test "$werror" = "yes" ; then
377 CFLAGS
="$CFLAGS -Werror"
380 if ld
--version 2>/dev
/null |
grep -q "GNU ld" ; then
381 LDFLAGS
="$LDFLAGS -Wl,--warn-common"
385 # If cpu ~= sparc and sparc_cpu hasn't been defined, plug in the right
386 # ARCH_CFLAGS/ARCH_LDFLAGS (assume sparc_v8plus for 32-bit and sparc_v9 for 64-bit)
389 sparc
) if test -z "$sparc_cpu" ; then
390 ARCH_CFLAGS
="-m32 -mcpu=ultrasparc -D__sparc_v8plus__"
393 ARCH_CFLAGS
="${SP_CFLAGS}"
394 ARCH_LDFLAGS
="${SP_LDFLAGS}"
397 sparc64
) if test -z "$sparc_cpu" ; then
398 ARCH_CFLAGS
="-m64 -mcpu=ultrasparc -D__sparc_v9__"
401 ARCH_CFLAGS
="${SP_CFLAGS}"
402 ARCH_LDFLAGS
="${SP_LDFLAGS}"
406 ARCH_CFLAGS
="-march=z900"
418 if test x
"$show_help" = x
"yes" ; then
421 Usage: configure [options]
422 Options: [defaults in brackets after descriptions]
425 echo "Standard options:"
426 echo " --help print this message"
427 echo " --prefix=PREFIX install in PREFIX [$prefix]"
428 echo " --interp-prefix=PREFIX where to find shared libraries, etc."
429 echo " use %M for cpu name [$interp_prefix]"
430 echo " --target-list=LIST set target list [$target_list]"
432 echo "kqemu kernel acceleration support:"
433 echo " --disable-kqemu disable kqemu support"
434 echo " --kernel-path=PATH set the kernel path (configure probes it)"
435 echo " --disable-kvm disable kernel virtual machine support"
437 echo "Advanced options (experts only):"
438 echo " --source-path=PATH path of source code [$source_path]"
439 echo " --cross-prefix=PREFIX use PREFIX for compile tools [$cross_prefix]"
440 echo " --cc=CC use C compiler CC [$cc]"
441 echo " --host-cc=CC use C compiler CC [$host_cc] for dyngen etc."
442 echo " --make=MAKE use specified make [$make]"
443 echo " --install=INSTALL use specified install [$install]"
444 echo " --static enable static build [$static]"
445 echo " --disable-werror disable compilation abort on warning"
446 echo " --disable-sdl disable SDL"
447 echo " --enable-cocoa enable COCOA (Mac OS X only)"
448 echo " --audio-drv-list=LIST set audio drivers list:"
449 echo " Available drivers: $audio_possible_drivers"
450 echo " --audio-card-list=LIST set list of additional emulated audio cards"
451 echo " Available cards: ac97 adlib cs4231a gus"
452 echo " --enable-mixemu enable mixer emulation"
453 echo " --disable-brlapi disable BrlAPI"
454 echo " --disable-vnc-tls disable TLS encryption for VNC server"
455 echo " --disable-curses disable curses output"
456 echo " --disable-nptl disable usermode NPTL support"
457 echo " --enable-system enable all system emulation targets"
458 echo " --disable-system disable all system emulation targets"
459 echo " --enable-linux-user enable all linux usermode emulation targets"
460 echo " --disable-linux-user disable all linux usermode emulation targets"
461 echo " --enable-darwin-user enable all darwin usermode emulation targets"
462 echo " --disable-darwin-user disable all darwin usermode emulation targets"
463 echo " --fmod-lib path to FMOD library"
464 echo " --fmod-inc path to FMOD includes"
465 echo " --oss-lib path to OSS library"
466 echo " --enable-uname-release=R Return R for uname -r in usermode emulation"
467 echo " --sparc_cpu=V Build qemu for Sparc architecture v7, v8, v8plus, v8plusa, v9"
468 echo " --disable-vde disable support for vde network"
469 echo " --disable-aio disable AIO support"
470 echo " --disable-cpu-emulation disables use of qemu cpu emulation code"
471 echo " --disable-libfdt disables use of libfdt support for device tree"
473 echo "NOTE: The object files are built at the place where configure is launched"
477 cc
="${cross_prefix}${cc}"
478 ar="${cross_prefix}${ar}"
479 strip
="${cross_prefix}${strip}"
481 # check that the C compiler works.
486 if $cc $ARCH_CFLAGS -c -o $TMPO $TMPC 2> /dev
/null
; then
487 : C compiler works ok
489 echo "ERROR: \"$cc\" either does not exist or does not work"
493 # check compiler to see if we're on mingw32
502 if $cc $ARCH_CFLAGS -c -o $TMPO $TMPC 2> /dev
/null
; then
506 if test "$mingw32" = "yes" ; then
513 if [ "$bsd" = "yes" -o "$darwin" = "yes" -o "$mingw32" = "yes" ] ; then
516 # Some Linux architectures (e.g. s390) don't imply -lpthread automatically.
517 AIOLIBS
="-lrt -lpthread"
520 # Check for gcc4, error if pre-gcc4
521 if test "$check_gcc" = "yes" ; then
526 int main(){return 0;}
528 if "$cc" $ARCH_CFLAGS -o $TMPE $TMPC 2> /dev
/null
; then
529 echo "WARNING: \"$cc\" looks like gcc 4.x"
531 if test "$gcc3_search" = "yes" ; then
532 echo "Looking for gcc 3.x"
533 for compat_cc
in $gcc3_list ; do
534 if "$cross_prefix$compat_cc" --version 2> /dev
/null | fgrep
'(GCC) 3.' > /dev
/null
2>&1 ; then
535 echo "Found \"$compat_cc\""
536 cc
="$cross_prefix$compat_cc"
537 found_compat_cc
="yes"
541 if test "$found_compat_cc" = "no" ; then
542 echo "gcc 3.x not found!"
545 if test "$found_compat_cc" = "no" ; then
546 echo "QEMU is known to have problems when compiled with gcc 4.x"
547 echo "It is recommended that you use gcc 3.x to build QEMU"
548 echo "To use this compiler anyway, configure with --disable-gcc-check"
555 # Solaris specific configure tool chain decisions
557 if test "$solaris" = "yes" ; then
559 # gcc for solaris 10/fcs in /usr/sfw/bin doesn't compile qemu correctly
560 # override the check with --disable-gcc-check
562 if test "$solarisrev" -eq 10 -a "$check_gcc" = "yes" ; then
564 if test "$solgcc" = "/usr/sfw/bin/gcc" ; then
565 echo "Solaris 10/FCS gcc in /usr/sfw/bin will not compiled qemu correctly."
566 echo "please get gcc-3.4.3 or later, from www.blastwave.org using pkg-get -i gcc3"
567 echo "or get the latest patch from SunSolve for gcc"
571 solinst
=`which $install 2> /dev/null | /usr/bin/grep -v "no $install in"`
572 if test -z "$solinst" ; then
573 echo "Solaris install program not found. Use --install=/usr/ucb/install or"
574 echo "install fileutils from www.blastwave.org using pkg-get -i fileutils"
575 echo "to get ginstall which is used by default (which lives in /opt/csw/bin)"
578 if test "$solinst" = "/usr/sbin/install" ; then
579 echo "Error: Solaris /usr/sbin/install is not an appropriate install program."
580 echo "try ginstall from the GNU fileutils available from www.blastwave.org"
581 echo "using pkg-get -i fileutils, or use --install=/usr/ucb/install"
584 sol_ar
=`which ar 2> /dev/null | /usr/bin/grep -v "no ar in"`
585 if test -z "$sol_ar" ; then
586 echo "Error: No path includes ar"
587 if test -f /usr
/ccs
/bin
/ar ; then
588 echo "Add /usr/ccs/bin to your path and rerun configure"
595 if test -z "$target_list" ; then
596 # these targets are portable
597 if [ "$softmmu" = "yes" ] ; then
616 # the following are Linux specific
617 if [ "$linux_user" = "yes" ] ; then
618 target_list
="${target_list}\
630 ppc64abi32-linux-user \
635 sparc32plus-linux-user \
638 # the following are Darwin specific
639 if [ "$darwin_user" = "yes" ] ; then
640 target_list
="$target_list i386-darwin-user ppc-darwin-user"
643 target_list
=`echo "$target_list" | sed -e 's/,/ /g'`
645 if test -z "$target_list" ; then
646 echo "No targets enabled"
650 if test -z "$cross_prefix" ; then
653 # big/little endian test
655 #include <inttypes.h>
656 int main(int argc, char ** argv){
657 volatile uint32_t i=0x01234567;
658 return (*((uint8_t*)(&i))) == 0x67;
662 if $cc $ARCH_CFLAGS -o $TMPE $TMPC 2> /dev
/null
; then
663 $TMPE && bigendian
="yes"
665 echo big
/little
test failed
670 # if cross compiling, cannot launch a program, so make a static guess
671 if test "$cpu" = "armv4b" \
675 -o "$cpu" = "mips64" \
676 -o "$cpu" = "powerpc" \
678 -o "$cpu" = "sparc" \
679 -o "$cpu" = "sparc64"; then
685 # host long bits test
687 if test "$cpu" = "x86_64" \
688 -o "$cpu" = "alpha" \
690 -o "$cpu" = "sparc64"; then
694 # ppc specific hostlongbits selection
695 if test "$cpu" = "powerpc" ; then
697 int main(void){return sizeof(long);}
700 if $cc $ARCH_CFLAGS -o $TMPE $TMPC 2> /dev
/null
; then
703 4) hostlongbits
="32";;
704 8) hostlongbits
="64";;
705 *) echo "Couldn't determine bits per long value"; exit 1;;
708 echo hostlongbits
test failed
713 # check gcc options support
719 # Check host NPTL support
722 #include <linux/futex.h>
725 #if !defined(CLONE_SETTLS) || !defined(FUTEX_WAIT)
731 if $cc $ARCH_CFLAGS -c -o $TMPO $TMPC 2> /dev
/null
; then
737 ##########################################
740 if test "$kvm" = "yes" ; then
744 #error "kvm no pit capability"
746 int main(void) { return 0; }
748 if $cc $ARCH_CFLAGS $CFLAGS -I"$kernel_path"/include
-o $TMPE ${OS_CFLAGS} $TMPC 2> /dev
/null
; then
753 ##########################################
758 if test -z "$sdl" ; then
759 sdl_config
="sdl-config"
765 #undef main /* We don't want SDL to override our main() */
766 int main( void ) { return SDL_Init (SDL_INIT_VIDEO); }
768 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
769 _sdlversion
=`$sdl_config --version | sed 's/[^0-9]//g'`
770 if test "$_sdlversion" -lt 121 ; then
773 if test "$cocoa" = "no" ; then
778 # static link with sdl ?
779 if test "$sdl" = "yes" ; then
781 `$sdl_config --static-libs 2>/dev/null | grep \\\-laa > /dev/null` && aa
="yes"
782 sdl_static_libs
=`$sdl_config --static-libs 2>/dev/null`
783 if [ "$aa" = "yes" ] ; then
784 sdl_static_libs
="$sdl_static_libs `aalib-config --static-libs`"
787 if $cc -o $TMPE ${OS_CFLAGS} `$sdl_config --cflags 2> /dev/null` $TMPC $sdl_static_libs 2> /dev
/null
; then
791 fi # sdl compile test
793 # Make sure to disable cocoa if sdl was set
794 if test "$sdl" = "yes" ; then
796 audio_drv_list
="`echo $audio_drv_list | sed s,coreaudio,,g`"
800 ##########################################
802 if test "$vnc_tls" = "yes" ; then
804 #include <gnutls/gnutls.h>
805 int main(void) { gnutls_session_t s; gnutls_init(&s, GNUTLS_SERVER); return 0; }
807 vnc_tls_cflags
=`pkg-config --cflags gnutls 2> /dev/null`
808 vnc_tls_libs
=`pkg-config --libs gnutls 2> /dev/null`
809 if $cc $ARCH_CFLAGS -o $TMPE ${OS_CFLAGS} $vnc_tls_cflags $TMPC \
810 $vnc_tls_libs 2> /dev
/null
; then
817 ##########################################
818 # vde libraries probe
819 if test "$vde" = "yes" ; then
821 #include <libvdeplug.h>
824 struct vde_open_args a = {0, 0, 0};
825 vde_open("", "", &a);
829 if $cc $ARCH_CFLAGS -o $TMPE $TMPC -lvdeplug 2> /dev
/null
; then
836 ##########################################
837 # Sound support libraries probe
848 int main(void) { $exp }
850 if $cc $ARCH_CFLAGS $cfl -o $TMPE $TMPC $lib 2> /dev
/null
; then
854 echo "Error: $drv check failed"
855 echo "Make sure to have the $drv libs and headers installed."
861 audio_drv_list
=`echo "$audio_drv_list" | sed -e 's/,/ /g'`
862 for drv
in $audio_drv_list; do
865 audio_drv_probe
$drv alsa
/asoundlib.h
-lasound \
866 "snd_pcm_t **handle; return snd_pcm_close(*handle);"
870 if test -z $fmod_lib ||
test -z $fmod_inc; then
872 echo "Error: You must specify path to FMOD library and headers"
873 echo "Example: --fmod-inc=/path/include/fmod --fmod-lib=/path/lib/libfmod-3.74.so"
877 audio_drv_probe
$drv fmod.h
$fmod_lib "return FSOUND_GetVersion();" "-I $fmod_inc"
881 audio_drv_probe
$drv esd.h
-lesd 'return esd_play_stream(0, 0, "", 0);'
885 audio_drv_probe
$drv pulse
/simple.h
-lpulse-simple \
886 "pa_simple *s = NULL; pa_simple_free(s); return 0;"
889 oss|sdl|core|wav|dsound
)
890 # XXX: Probes for CoreAudio, DirectSound, SDL(?)
894 echo "$audio_possible_drivers" |
grep -q "\<$drv\>" ||
{
896 echo "Error: Unknown driver '$drv' selected"
897 echo "Possible drivers are: $audio_possible_drivers"
905 ##########################################
908 if test -z "$brlapi" ; then
912 int main( void ) { return brlapi__openConnection (NULL, NULL, NULL); }
914 if $cc ${ARCH_CFLAGS} -o $TMPE ${OS_CFLAGS} $TMPC -lbrlapi 2> /dev
/null
; then
916 fi # brlapi compile test
919 ##########################################
922 if test "$curses" = "yes" ; then
926 int main(void) { return curses_version(); }
928 if $cc $ARCH_CFLAGS -o $TMPE $TMPC -lcurses 2> /dev
/null
; then
933 ##########################################
935 if test "$aio" = "yes" ; then
939 int main(void) { return aio_write(NULL); }
941 if $cc $ARCH_CFLAGS -o $TMPE $AIOLIBS $TMPC 2> /dev
/null
; then
946 # Check if tools are available to build documentation.
947 if [ -x "`which texi2html 2>/dev/null`" ] && \
948 [ -x "`which pod2man 2>/dev/null`" ]; then
952 if test "$mingw32" = "yes" ; then
953 if test -z "$prefix" ; then
954 prefix
="/c/Program Files/Qemu"
961 if test -z "$prefix" ; then
964 mansuffix
="/share/man"
965 datasuffix
="/share/qemu"
966 docsuffix
="/share/doc/qemu"
970 ######################################
973 if test -z "$device_tree_support" -a \
974 "$cpu" = "powerpc"; then
975 device_tree_support
="no"
978 /* XXX uncomment later when libfdt is built before this test */
979 //int main(void) { void *fdt; return fdt_create(fdt, 1024); }
980 int main (void) {return 0;}
982 # XXX for now do not try to link to libfdt and just check for header */
983 # if $cc $ARCH_CFLAGS $CFLAGS $LDFLAGS -o $TMPE $TMPC -lfdt 2> /dev/null ; then
984 if $cc $ARCH_CFLAGS $CFLAGS $LDFLAGS -o $TMPE $TMPC 2> /dev
/null
; then
985 device_tree_support
="yes"
988 echo "Error: Could not find libfdt"
989 echo "Make sure to have the libfdt libs and headers installed."
995 echo "Install prefix $prefix"
996 echo "BIOS directory $prefix$datasuffix"
997 echo "binary directory $prefix$binsuffix"
998 if test "$mingw32" = "no" ; then
999 echo "Manual directory $prefix$mansuffix"
1000 echo "ELF interp prefix $interp_prefix"
1002 echo "Source path $source_path"
1003 echo "C compiler $cc"
1004 echo "Host C compiler $host_cc"
1005 echo "ARCH_CFLAGS $ARCH_CFLAGS"
1007 echo "install $install"
1008 echo "host CPU $cpu"
1009 echo "host big endian $bigendian"
1010 echo "target list $target_list"
1011 echo "gprof enabled $gprof"
1012 echo "profiler $profiler"
1013 echo "static build $static"
1014 echo "-Werror enabled $werror"
1015 if test "$darwin" = "yes" ; then
1016 echo "Cocoa support $cocoa"
1018 echo "SDL support $sdl"
1019 if test "$sdl" != "no" ; then
1020 echo "SDL static link $sdl_static"
1022 echo "curses support $curses"
1023 echo "mingw32 support $mingw32"
1024 echo "Audio drivers $audio_drv_list"
1025 echo "Extra audio cards $audio_card_list"
1026 echo "Mixer emulation $mixemu"
1027 echo "VNC TLS support $vnc_tls"
1028 if test "$vnc_tls" = "yes" ; then
1029 echo " TLS CFLAGS $vnc_tls_cflags"
1030 echo " TLS LIBS $vnc_tls_libs"
1032 if test -n "$sparc_cpu"; then
1033 echo "Target Sparc Arch $sparc_cpu"
1035 echo "kqemu support $kqemu"
1036 echo "kvm support $kvm"
1037 echo "CPU emulation $cpu_emulation"
1038 if test $cpu = "powerpc"; then
1039 echo "libfdt support $device_tree_support"
1041 echo "brlapi support $brlapi"
1042 echo "Documentation $build_docs"
1043 [ ! -z "$uname_release" ] && \
1044 echo "uname -r $uname_release"
1045 echo "NPTL support $nptl"
1046 echo "vde support $vde"
1047 echo "AIO support $aio"
1049 if test $sdl_too_old = "yes"; then
1050 echo "-> Your SDL version is too old - please upgrade to have SDL support"
1052 if [ -s /tmp
/qemu-$$
-sdl-config.log
]; then
1053 echo "The error log from compiling the libSDL test is: "
1054 cat /tmp
/qemu-$$
-sdl-config.log
1056 rm -f /tmp
/qemu-$$
-sdl-config.log
1057 #if test "$sdl_static" = "no"; then
1058 # echo "WARNING: cannot compile statically with SDL - qemu-fast won't have a graphical output"
1060 config_mak
="config-host.mak"
1061 config_h
="config-host.h"
1063 #echo "Creating $config_mak and $config_h"
1065 test -f $config_h && mv $config_h ${config_h}~
1067 echo "# Automatically generated by configure - do not modify" > $config_mak
1068 echo "# Configured with: $0 $@" >> $config_mak
1069 echo "/* Automatically generated by configure - do not modify */" > $config_h
1071 echo "prefix=$prefix" >> $config_mak
1072 echo "bindir=\${prefix}$binsuffix" >> $config_mak
1073 echo "mandir=\${prefix}$mansuffix" >> $config_mak
1074 echo "datadir=\${prefix}$datasuffix" >> $config_mak
1075 echo "docdir=\${prefix}$docsuffix" >> $config_mak
1076 echo "#define CONFIG_QEMU_SHAREDIR \"$prefix$datasuffix\"" >> $config_h
1077 echo "MAKE=$make" >> $config_mak
1078 echo "INSTALL=$install" >> $config_mak
1079 echo "CC=$cc" >> $config_mak
1080 echo "HOST_CC=$host_cc" >> $config_mak
1081 echo "AR=$ar" >> $config_mak
1082 echo "STRIP=$strip -s -R .comment -R .note" >> $config_mak
1083 # XXX: only use CFLAGS and LDFLAGS ?
1084 # XXX: should export HOST_CFLAGS and HOST_LDFLAGS for cross
1085 # compilation of dyngen tool (useful for win32 build on Linux host)
1086 echo "OS_CFLAGS=$OS_CFLAGS" >> $config_mak
1087 echo "OS_LDFLAGS=$OS_LDFLAGS" >> $config_mak
1088 echo "ARCH_CFLAGS=$ARCH_CFLAGS" >> $config_mak
1089 echo "ARCH_LDFLAGS=$ARCH_LDFLAGS" >> $config_mak
1090 echo "CFLAGS=$CFLAGS" >> $config_mak
1091 echo "LDFLAGS=$LDFLAGS" >> $config_mak
1092 echo "EXESUF=$EXESUF" >> $config_mak
1093 echo "AIOLIBS=$AIOLIBS" >> $config_mak
1096 echo "ARCH=i386" >> $config_mak
1097 echo "#define HOST_I386 1" >> $config_h
1100 echo "ARCH=x86_64" >> $config_mak
1101 echo "#define HOST_X86_64 1" >> $config_h
1104 echo "ARCH=alpha" >> $config_mak
1105 echo "#define HOST_ALPHA 1" >> $config_h
1108 echo "ARCH=arm" >> $config_mak
1109 echo "#define HOST_ARM 1" >> $config_h
1112 echo "ARCH=arm" >> $config_mak
1113 echo "#define HOST_ARM 1" >> $config_h
1116 echo "ARCH=cris" >> $config_mak
1117 echo "#define HOST_CRIS 1" >> $config_h
1120 echo "ARCH=hppa" >> $config_mak
1121 echo "#define HOST_HPPA 1" >> $config_h
1124 echo "ARCH=ia64" >> $config_mak
1125 echo "#define HOST_IA64 1" >> $config_h
1128 echo "ARCH=m68k" >> $config_mak
1129 echo "#define HOST_M68K 1" >> $config_h
1132 echo "ARCH=mips" >> $config_mak
1133 echo "#define HOST_MIPS 1" >> $config_h
1136 echo "ARCH=mips64" >> $config_mak
1137 echo "#define HOST_MIPS64 1" >> $config_h
1140 if test "$hostlongbits" = "32"; then
1141 echo "ARCH=ppc" >> $config_mak
1142 echo "#define HOST_PPC 1" >> $config_h
1144 echo "ARCH=ppc64" >> $config_mak
1145 echo "#define HOST_PPC64 1" >> $config_h
1149 echo "ARCH=s390" >> $config_mak
1150 echo "#define HOST_S390 1" >> $config_h
1153 echo "ARCH=sparc" >> $config_mak
1154 echo "#define HOST_SPARC 1" >> $config_h
1157 echo "ARCH=sparc64" >> $config_mak
1158 echo "#define HOST_SPARC64 1" >> $config_h
1161 echo "Unsupported CPU = $cpu"
1165 if test "$bigendian" = "yes" ; then
1166 echo "WORDS_BIGENDIAN=yes" >> $config_mak
1167 echo "#define WORDS_BIGENDIAN 1" >> $config_h
1169 echo "#define HOST_LONG_BITS $hostlongbits" >> $config_h
1170 if test "$mingw32" = "yes" ; then
1171 echo "CONFIG_WIN32=yes" >> $config_mak
1172 echo "#define CONFIG_WIN32 1" >> $config_h
1175 #include <byteswap.h>
1176 int main(void) { return bswap_32(0); }
1178 if $cc $ARCH_CFLAGS -o $TMPE $TMPC 2> /dev
/null
; then
1179 echo "#define HAVE_BYTESWAP_H 1" >> $config_h
1183 if [ "$openbsd" = "yes" ] ; then
1184 echo "#define ENOTSUP 4096" >> $config_h
1187 if test "$darwin" = "yes" ; then
1188 echo "CONFIG_DARWIN=yes" >> $config_mak
1189 echo "#define CONFIG_DARWIN 1" >> $config_h
1191 if test "$solaris" = "yes" ; then
1192 echo "CONFIG_SOLARIS=yes" >> $config_mak
1193 echo "#define HOST_SOLARIS $solarisrev" >> $config_h
1194 if test "$needs_libsunmath" = "yes" ; then
1195 echo "NEEDS_LIBSUNMATH=yes" >> $config_mak
1196 echo "#define NEEDS_LIBSUNMATH 1" >> $config_h
1199 if test -n "$sparc_cpu"; then
1200 echo "CONFIG__sparc_${sparc_cpu}__=yes" >> $config_mak
1201 echo "#define __sparc_${sparc_cpu}__ 1" >> $config_h
1203 if test "$gdbstub" = "yes" ; then
1204 echo "CONFIG_GDBSTUB=yes" >> $config_mak
1205 echo "#define CONFIG_GDBSTUB 1" >> $config_h
1207 if test "$gprof" = "yes" ; then
1208 echo "TARGET_GPROF=yes" >> $config_mak
1209 echo "#define HAVE_GPROF 1" >> $config_h
1211 if test "$static" = "yes" ; then
1212 echo "CONFIG_STATIC=yes" >> $config_mak
1213 echo "#define CONFIG_STATIC 1" >> $config_h
1215 if test $profiler = "yes" ; then
1216 echo "#define CONFIG_PROFILER 1" >> $config_h
1218 if test "$slirp" = "yes" ; then
1219 echo "CONFIG_SLIRP=yes" >> $config_mak
1220 echo "#define CONFIG_SLIRP 1" >> $config_h
1222 if test "$vde" = "yes" ; then
1223 echo "CONFIG_VDE=yes" >> $config_mak
1224 echo "#define CONFIG_VDE 1" >> $config_h
1225 echo "VDE_LIBS=-lvdeplug" >> $config_mak
1227 for card
in $audio_card_list; do
1228 def
=CONFIG_
`echo $card | tr '[:lower:]' '[:upper:]'`
1229 echo "$def=yes" >> $config_mak
1230 echo "#define $def 1" >> $config_h
1232 echo "#define AUDIO_DRIVERS \\" >> $config_h
1233 for drv
in $audio_drv_list; do
1234 echo " &${drv}_audio_driver, \\" >>$config_h
1235 def
=CONFIG_
`echo $drv | tr '[:lower:]' '[:upper:]'`
1236 echo "$def=yes" >> $config_mak
1237 if test "$drv" = "fmod"; then
1238 echo "CONFIG_FMOD_LIB=$fmod_lib" >> $config_mak
1239 echo "CONFIG_FMOD_INC=$fmod_inc" >> $config_mak
1240 elif test "$drv" = "oss"; then
1241 echo "CONFIG_OSS_LIB=$oss_lib" >> $config_mak
1245 if test "$mixemu" = "yes" ; then
1246 echo "CONFIG_MIXEMU=yes" >> $config_mak
1247 echo "#define CONFIG_MIXEMU 1" >> $config_h
1249 if test "$vnc_tls" = "yes" ; then
1250 echo "CONFIG_VNC_TLS=yes" >> $config_mak
1251 echo "CONFIG_VNC_TLS_CFLAGS=$vnc_tls_cflags" >> $config_mak
1252 echo "CONFIG_VNC_TLS_LIBS=$vnc_tls_libs" >> $config_mak
1253 echo "#define CONFIG_VNC_TLS 1" >> $config_h
1255 qemu_version
=`head $source_path/VERSION`
1256 echo "VERSION=$qemu_version" >>$config_mak
1257 echo "#define QEMU_VERSION \"$qemu_version\"" >> $config_h
1258 echo "#define KVM_VERSION \"kvm-devel\"" >> $config_h
1260 echo "SRC_PATH=$source_path" >> $config_mak
1261 if [ "$source_path_used" = "yes" ]; then
1262 echo "VPATH=$source_path" >> $config_mak
1264 echo "TARGET_DIRS=$target_list" >> $config_mak
1265 if [ "$build_docs" = "yes" ] ; then
1266 echo "BUILD_DOCS=yes" >> $config_mak
1268 if test "$static" = "yes"; then
1273 if test "$sdl1" = "yes" ; then
1274 echo "#define CONFIG_SDL 1" >> $config_h
1275 echo "CONFIG_SDL=yes" >> $config_mak
1276 if test "$target_softmmu" = "no" -o "$static" = "yes"; then
1277 echo "SDL_LIBS=$sdl_static_libs" >> $config_mak
1279 echo "SDL_LIBS=`$sdl_config --libs`" >> $config_mak
1281 if [ "${aa}" = "yes" ] ; then
1282 echo "SDL_CFLAGS=`$sdl_config --cflags` `aalib-config --cflags`" >> $config_mak
1284 echo "SDL_CFLAGS=`$sdl_config --cflags`" >> $config_mak
1287 if test "$cocoa" = "yes" ; then
1288 echo "#define CONFIG_COCOA 1" >> $config_h
1289 echo "CONFIG_COCOA=yes" >> $config_mak
1291 if test "$curses" = "yes" ; then
1292 echo "#define CONFIG_CURSES 1" >> $config_h
1293 echo "CONFIG_CURSES=yes" >> $config_mak
1294 echo "CURSES_LIBS=-lcurses" >> $config_mak
1296 if test "$brlapi" = "yes" ; then
1297 echo "CONFIG_BRLAPI=yes" >> $config_mak
1298 echo "#define CONFIG_BRLAPI 1" >> $config_h
1299 echo "BRLAPI_LIBS=-lbrlapi" >> $config_mak
1301 if test "$aio" = "yes" ; then
1302 echo "#define CONFIG_AIO 1" >> $config_h
1303 echo "CONFIG_AIO=yes" >> $config_mak
1306 # XXX: suppress that
1307 if [ "$bsd" = "yes" ] ; then
1308 echo "#define O_LARGEFILE 0" >> $config_h
1309 echo "#define MAP_ANONYMOUS MAP_ANON" >> $config_h
1310 echo "#define _BSD 1" >> $config_h
1313 echo "#define CONFIG_UNAME_RELEASE \"$uname_release\"" >> $config_h
1316 if test `expr "$target_list" : ".*softmmu.*"` != 0 ; then
1317 tools
="qemu-img\$(EXESUF) $tools"
1318 if [ "$linux" = "yes" ] ; then
1319 tools
="qemu-nbd\$(EXESUF) $tools"
1322 echo "TOOLS=$tools" >> $config_mak
1324 test -f ${config_h}~ && cmp -s $config_h ${config_h}~ && mv ${config_h}~
$config_h
1326 for target
in $target_list; do
1327 target_dir
="$target"
1328 config_mak
=$target_dir/config.mak
1329 config_h
=$target_dir/config.h
1330 target_cpu
=`echo $target | cut -d '-' -f 1`
1331 target_bigendian
="no"
1332 [ "$target_cpu" = "armeb" ] && target_bigendian
=yes
1333 [ "$target_cpu" = "m68k" ] && target_bigendian
=yes
1334 [ "$target_cpu" = "mips" ] && target_bigendian
=yes
1335 [ "$target_cpu" = "mipsn32" ] && target_bigendian
=yes
1336 [ "$target_cpu" = "mips64" ] && target_bigendian
=yes
1337 [ "$target_cpu" = "ppc" ] && target_bigendian
=yes
1338 [ "$target_cpu" = "ppcemb" ] && target_bigendian
=yes
1339 [ "$target_cpu" = "ppc64" ] && target_bigendian
=yes
1340 [ "$target_cpu" = "ppc64abi32" ] && target_bigendian
=yes
1341 [ "$target_cpu" = "sh4eb" ] && target_bigendian
=yes
1342 [ "$target_cpu" = "sparc" ] && target_bigendian
=yes
1343 [ "$target_cpu" = "sparc64" ] && target_bigendian
=yes
1344 [ "$target_cpu" = "sparc32plus" ] && target_bigendian
=yes
1346 target_user_only
="no"
1347 target_linux_user
="no"
1348 target_darwin_user
="no"
1350 ${target_cpu}-softmmu)
1351 target_softmmu
="yes"
1353 ${target_cpu}-linux-user)
1354 target_user_only
="yes"
1355 target_linux_user
="yes"
1357 ${target_cpu}-darwin-user)
1358 target_user_only
="yes"
1359 target_darwin_user
="yes"
1362 echo "ERROR: Target '$target' not recognised"
1367 if test "$target_user_only" = "no" -a "$check_gfx" = "yes" \
1368 -a "$sdl" = "no" -a "$cocoa" = "no" ; then
1369 echo "ERROR: QEMU requires SDL or Cocoa for graphical output"
1370 echo "To build QEMU without graphical output configure with --disable-gfx-check"
1371 echo "Note that this will disable all output from the virtual graphics card"
1372 echo "except through VNC or curses."
1376 #echo "Creating $config_mak, $config_h and $target_dir/Makefile"
1378 test -f $config_h && mv $config_h ${config_h}~
1380 mkdir
-p $target_dir
1381 mkdir
-p $target_dir/fpu
1382 mkdir
-p $target_dir/tcg
1383 if test "$target" = "arm-linux-user" -o "$target" = "armeb-linux-user" ; then
1384 mkdir
-p $target_dir/nwfpe
1388 # don't use ln -sf as not all "ln -sf" over write the file/link
1390 rm -f $target_dir/Makefile
1391 ln -s $source_path/Makefile.target
$target_dir/Makefile
1394 echo "# Automatically generated by configure - do not modify" > $config_mak
1395 echo "/* Automatically generated by configure - do not modify */" > $config_h
1398 echo "include ../config-host.mak" >> $config_mak
1399 echo "#include \"../config-host.h\"" >> $config_h
1404 interp_prefix1
=`echo "$interp_prefix" | sed "s/%M/$target_cpu/g"`
1405 echo "#define CONFIG_QEMU_PREFIX \"$interp_prefix1\"" >> $config_h
1407 disable_cpu_emulation
() {
1408 if test $cpu_emulation = "no"; then
1409 echo "#define NO_CPU_EMULATION 1" >> $config_h
1410 echo "NO_CPU_EMULATION=1" >> $config_mak
1415 if test $kvm = "yes" -a "$target_softmmu" = "yes" -a \
1416 \
( "$cpu" = "i386" -o "$cpu" = "x86_64" -o "$cpu" = "ia64" -o "$cpu" = "powerpc" \
); then
1417 echo "#define USE_KVM 1" >> $config_h
1418 echo "USE_KVM=1" >> $config_mak
1419 echo "CONFIG_KVM_KERNEL_INC=$kernel_path/include" >> $config_mak
1420 if test $kvm_cap_pit = "yes" ; then
1421 echo "USE_KVM_PIT=1" >> $config_mak
1422 echo "#define USE_KVM_PIT 1" >> $config_h
1424 disable_cpu_emulation
1428 case "$target_cpu" in
1430 echo "TARGET_ARCH=i386" >> $config_mak
1431 echo "#define TARGET_ARCH \"i386\"" >> $config_h
1432 echo "#define TARGET_I386 1" >> $config_h
1433 if test $kqemu = "yes" -a "$target_softmmu" = "yes"
1435 echo "#define USE_KQEMU 1" >> $config_h
1437 gcc3minver
=`$cc --version 2> /dev/null| fgrep "(GCC) 3." | awk '{ print $3 }' | cut -f2 -d.`
1438 if test -n "$gcc3minver" && test $gcc3minver -gt 3
1440 echo "HAVE_GT_GCC_3_3=true" >> $config_mak
1442 echo "HAVE_GT_GCC_3_3=false" >> $config_mak
1447 echo "TARGET_ARCH=x86_64" >> $config_mak
1448 echo "#define TARGET_ARCH \"x86_64\"" >> $config_h
1449 echo "#define TARGET_I386 1" >> $config_h
1450 echo "#define TARGET_X86_64 1" >> $config_h
1451 if test $kqemu = "yes" -a "$target_softmmu" = "yes" -a $cpu = "x86_64"
1453 echo "#define USE_KQEMU 1" >> $config_h
1458 echo "TARGET_ARCH=ia64" >> $config_mak
1459 echo "#define TARGET_ARCH \"ia64\"" >> $config_h
1460 echo "#define TARGET_IA64 1" >> $config_h
1464 echo "TARGET_ARCH=alpha" >> $config_mak
1465 echo "CONFIG_DYNGEN_OP=yes" >> $config_mak
1466 echo "#define TARGET_ARCH \"alpha\"" >> $config_h
1467 echo "#define TARGET_ALPHA 1" >> $config_h
1468 echo "#define CONFIG_DYNGEN_OP 1" >> $config_h
1471 echo "TARGET_ARCH=arm" >> $config_mak
1472 echo "#define TARGET_ARCH \"arm\"" >> $config_h
1473 echo "#define TARGET_ARM 1" >> $config_h
1478 echo "TARGET_ARCH=cris" >> $config_mak
1479 echo "#define TARGET_ARCH \"cris\"" >> $config_h
1480 echo "#define TARGET_CRIS 1" >> $config_h
1483 echo "TARGET_ARCH=m68k" >> $config_mak
1484 echo "#define TARGET_ARCH \"m68k\"" >> $config_h
1485 echo "#define TARGET_M68K 1" >> $config_h
1489 echo "TARGET_ARCH=mips" >> $config_mak
1490 echo "#define TARGET_ARCH \"mips\"" >> $config_h
1491 echo "#define TARGET_MIPS 1" >> $config_h
1492 echo "#define TARGET_ABI_MIPSO32 1" >> $config_h
1495 echo "TARGET_ARCH=mipsn32" >> $config_mak
1496 echo "#define TARGET_ARCH \"mipsn32\"" >> $config_h
1497 echo "#define TARGET_MIPS 1" >> $config_h
1498 echo "#define TARGET_ABI_MIPSN32 1" >> $config_h
1501 echo "TARGET_ARCH=mips64" >> $config_mak
1502 echo "#define TARGET_ARCH \"mips64\"" >> $config_h
1503 echo "#define TARGET_MIPS 1" >> $config_h
1504 echo "#define TARGET_MIPS64 1" >> $config_h
1505 echo "#define TARGET_ABI_MIPSN64 1" >> $config_h
1508 echo "TARGET_ARCH=ppc" >> $config_mak
1509 echo "CONFIG_DYNGEN_OP=yes" >> $config_mak
1510 echo "#define TARGET_ARCH \"ppc\"" >> $config_h
1511 echo "#define TARGET_PPC 1" >> $config_h
1512 echo "#define CONFIG_DYNGEN_OP 1" >> $config_h
1515 echo "TARGET_ARCH=ppcemb" >> $config_mak
1516 echo "TARGET_ABI_DIR=ppc" >> $config_mak
1517 echo "CONFIG_DYNGEN_OP=yes" >> $config_mak
1518 echo "#define TARGET_ARCH \"ppcemb\"" >> $config_h
1519 echo "#define TARGET_PPC 1" >> $config_h
1520 echo "#define TARGET_PPCEMB 1" >> $config_h
1521 echo "#define CONFIG_DYNGEN_OP 1" >> $config_h
1522 if test "$device_tree_support" = "yes" ; then
1523 echo "#define CONFIG_LIBFDT 1" >> $config_h
1524 echo "CONFIG_LIBFDT=1" >> $config_mak
1529 echo "TARGET_ARCH=ppc64" >> $config_mak
1530 echo "TARGET_ABI_DIR=ppc" >> $config_mak
1531 echo "CONFIG_DYNGEN_OP=yes" >> $config_mak
1532 echo "#define TARGET_ARCH \"ppc64\"" >> $config_h
1533 echo "#define TARGET_PPC 1" >> $config_h
1534 echo "#define TARGET_PPC64 1" >> $config_h
1535 echo "#define CONFIG_DYNGEN_OP 1" >> $config_h
1538 echo "TARGET_ARCH=ppc64" >> $config_mak
1539 echo "TARGET_ABI_DIR=ppc" >> $config_mak
1540 echo "TARGET_ARCH2=ppc64abi32" >> $config_mak
1541 echo "CONFIG_DYNGEN_OP=yes" >> $config_mak
1542 echo "#define TARGET_ARCH \"ppc64\"" >> $config_h
1543 echo "#define TARGET_PPC 1" >> $config_h
1544 echo "#define TARGET_PPC64 1" >> $config_h
1545 echo "#define TARGET_ABI32 1" >> $config_h
1546 echo "#define CONFIG_DYNGEN_OP 1" >> $config_h
1549 echo "TARGET_ARCH=sh4" >> $config_mak
1550 echo "#define TARGET_ARCH \"sh4\"" >> $config_h
1551 echo "#define TARGET_SH4 1" >> $config_h
1556 echo "TARGET_ARCH=sparc" >> $config_mak
1557 echo "#define TARGET_ARCH \"sparc\"" >> $config_h
1558 echo "#define TARGET_SPARC 1" >> $config_h
1561 echo "TARGET_ARCH=sparc64" >> $config_mak
1562 echo "#define TARGET_ARCH \"sparc64\"" >> $config_h
1563 echo "#define TARGET_SPARC 1" >> $config_h
1564 echo "#define TARGET_SPARC64 1" >> $config_h
1568 echo "TARGET_ARCH=sparc64" >> $config_mak
1569 echo "TARGET_ABI_DIR=sparc" >> $config_mak
1570 echo "TARGET_ARCH2=sparc32plus" >> $config_mak
1571 echo "#define TARGET_ARCH \"sparc64\"" >> $config_h
1572 echo "#define TARGET_SPARC 1" >> $config_h
1573 echo "#define TARGET_SPARC64 1" >> $config_h
1574 echo "#define TARGET_ABI32 1" >> $config_h
1577 echo "Unsupported target CPU"
1581 if test "$target_bigendian" = "yes" ; then
1582 echo "TARGET_WORDS_BIGENDIAN=yes" >> $config_mak
1583 echo "#define TARGET_WORDS_BIGENDIAN 1" >> $config_h
1585 if test "$target_softmmu" = "yes" ; then
1586 echo "CONFIG_SOFTMMU=yes" >> $config_mak
1587 echo "#define CONFIG_SOFTMMU 1" >> $config_h
1589 if test "$target_user_only" = "yes" ; then
1590 echo "CONFIG_USER_ONLY=yes" >> $config_mak
1591 echo "#define CONFIG_USER_ONLY 1" >> $config_h
1593 if test "$target_linux_user" = "yes" ; then
1594 echo "CONFIG_LINUX_USER=yes" >> $config_mak
1595 echo "#define CONFIG_LINUX_USER 1" >> $config_h
1597 if test "$target_darwin_user" = "yes" ; then
1598 echo "CONFIG_DARWIN_USER=yes" >> $config_mak
1599 echo "#define CONFIG_DARWIN_USER 1" >> $config_h
1602 if test "$target_cpu" = "arm" \
1603 -o "$target_cpu" = "armeb" \
1604 -o "$target_cpu" = "m68k" \
1605 -o "$target_cpu" = "mips" \
1606 -o "$target_cpu" = "mipsel" \
1607 -o "$target_cpu" = "mipsn32" \
1608 -o "$target_cpu" = "mipsn32el" \
1609 -o "$target_cpu" = "mips64" \
1610 -o "$target_cpu" = "mips64el" \
1611 -o "$target_cpu" = "sparc" \
1612 -o "$target_cpu" = "sparc64" \
1613 -o "$target_cpu" = "sparc32plus"; then
1614 echo "CONFIG_SOFTFLOAT=yes" >> $config_mak
1615 echo "#define CONFIG_SOFTFLOAT 1" >> $config_h
1617 if test "$target_user_only" = "yes" -a "$bflt" = "yes"; then
1618 echo "TARGET_HAS_BFLT=yes" >> $config_mak
1619 echo "#define TARGET_HAS_BFLT 1" >> $config_h
1621 if test "$target_user_only" = "yes" \
1622 -a "$nptl" = "yes" -a "$target_nptl" = "yes"; then
1623 echo "#define USE_NPTL 1" >> $config_h
1625 # 32 bit ELF loader in addition to native 64 bit loader?
1626 if test "$target_user_only" = "yes" -a "$elfload32" = "yes"; then
1627 echo "TARGET_HAS_ELFLOAD32=yes" >> $config_mak
1628 echo "#define TARGET_HAS_ELFLOAD32 1" >> $config_h
1631 test -f ${config_h}~ && cmp -s $config_h ${config_h}~ && mv ${config_h}~
$config_h
1633 done # for target in $targets
1635 # build tree in object directory if source path is different from current one
1636 if test "$source_path_used" = "yes" ; then
1637 DIRS
="tests tests/cris slirp audio"
1638 FILES
="Makefile tests/Makefile"
1639 FILES
="$FILES tests/cris/Makefile tests/cris/.gdbinit"
1640 FILES
="$FILES tests/test-mmap.c"
1641 for dir
in $DIRS ; do
1644 # remove the link and recreate it, as not all "ln -sf" overwrite the link
1645 for f
in $FILES ; do
1647 ln -s $source_path/$f $f
1651 rm -f $TMPO $TMPC $TMPE $TMPS