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
)
116 device_tree_support
=""
123 OS_CFLAGS
="-mno-cygwin"
124 if [ "$cpu" = "i386" ] ; then
127 audio_possible_drivers
="sdl"
131 if [ "$cpu" = "i386" ] ; then
134 audio_possible_drivers
="dsound sdl fmod"
138 audio_possible_drivers
="oss sdl esd"
139 if [ "$cpu" = "i386" -o "$cpu" = "x86_64" ] ; then
146 audio_possible_drivers
="oss sdl esd"
147 if [ "$cpu" = "i386" -o "$cpu" = "x86_64" ] ; then
155 audio_possible_drivers
="oss sdl esd"
161 audio_possible_drivers
="oss sdl esd"
168 audio_drv_list
="coreaudio"
169 audio_possible_drivers
="coreaudio sdl fmod"
170 OS_CFLAGS
="-mdynamic-no-pic"
171 OS_LDFLAGS
="-framework CoreFoundation -framework IOKit"
177 needs_libsunmath
="no"
178 solarisrev
=`uname -r | cut -f2 -d.`
179 # have to select again, because `uname -m` returns i86pc
180 # even on an x86_64 box.
181 solariscpu
=`isainfo -k`
182 if test "${solariscpu}" = "amd64" ; then
185 if [ "$cpu" = "i386" -o "$cpu" = "x86_64" ] ; then
186 if test "$solarisrev" -le 9 ; then
187 if test -f /opt
/SUNWspro
/prod
/lib
/libsunmath.so
.1; then
188 needs_libsunmath
="yes"
190 echo "QEMU will not link correctly on Solaris 8/X86 or 9/x86 without"
191 echo "libsunmath from the Sun Studio compilers tools, due to a lack of"
192 echo "C99 math features in libm.so in Solaris 8/x86 and Solaris 9/x86"
193 echo "Studio 11 can be downloaded from www.sun.com."
197 if test "$solarisrev" -ge 9 ; then
201 if test -f /usr
/include
/sys
/soundcard.h
; then
204 audio_possible_drivers
="oss sdl"
208 audio_possible_drivers
="oss alsa sdl esd pa"
211 if [ "$cpu" = "i386" -o "$cpu" = "x86_64" ] ; then
213 audio_possible_drivers
="$audio_possible_drivers fmod"
216 if [ "$cpu" = "ia64" ] ; then
222 if [ "$cpu" = "powerpc" ]; then
228 if [ "$bsd" = "yes" ] ; then
229 if [ "$darwin" != "yes" ] ; then
235 source_path
=`dirname "$0"`
236 source_path_used
="no"
238 if [ -z "$source_path" ]; then
241 source_path
=`cd "$source_path"; pwd`
243 [ -f "$workdir/vl.c" ] || source_path_used
="yes"
246 # generate compile errors on warnings for development builds
247 #if grep cvs $source_path/VERSION > /dev/null 2>&1 ; then
252 optarg
=`expr "x$opt" : 'x[^=]*=\(.*\)'`
254 --help|
-h) show_help
=yes
256 --prefix=*) prefix
="$optarg"
258 --interp-prefix=*) interp_prefix
="$optarg"
260 --source-path=*) source_path
="$optarg"
261 source_path_used
="yes"
263 --cross-prefix=*) cross_prefix
="$optarg"
268 --host-cc=*) host_cc
="$optarg"
270 --make=*) make="$optarg"
272 --install=*) install="$optarg"
274 --extra-cflags=*) CFLAGS
="$optarg"
276 --extra-ldflags=*) LDFLAGS
="$optarg"
278 --cpu=*) cpu
="$optarg"
280 --target-list=*) target_list
="$optarg"
282 --enable-gprof) gprof
="yes"
284 --static) static
="yes"
286 --disable-sdl) sdl
="no"
288 --fmod-lib=*) fmod_lib
="$optarg"
290 --fmod-inc=*) fmod_inc
="$optarg"
292 --audio-card-list=*) audio_card_list
=`echo "$optarg" | sed -e 's/,/ /g'`
294 --audio-drv-list=*) audio_drv_list
="$optarg"
296 --disable-vnc-tls) vnc_tls
="no"
298 --enable-mingw32) mingw32
="yes" ; cross_prefix
="i386-mingw32-" ; linux_user
="no"
300 --disable-slirp) slirp
="no"
302 --disable-vde) vde
="no"
304 --disable-kqemu) kqemu
="no"
306 --disable-kvm) kvm
="no"
308 --disable-brlapi) brlapi
="no"
310 --enable-profiler) profiler
="yes"
312 --kernel-path=*) kernel_path
="$optarg"
317 audio_drv_list
="coreaudio `echo $audio_drv_list | sed s,coreaudio,,g`"
319 --disable-gfx-check) check_gfx
="no"
321 --disable-gcc-check) check_gcc
="no"
323 --disable-system) softmmu
="no"
325 --enable-system) softmmu
="yes"
327 --disable-linux-user) linux_user
="no"
329 --enable-linux-user) linux_user
="yes"
331 --disable-darwin-user) darwin_user
="no"
333 --enable-darwin-user) darwin_user
="yes"
335 --enable-uname-release=*) uname_release
="$optarg"
340 v7|v8
) SP_CFLAGS
="-m32 -mcpu=${sparc_cpu} -D__sparc_${sparc_cpu}__"; SP_LDFLAGS
="-m32"
341 target_cpu
="sparc"; cpu
="sparc" ;;
342 v8plus|v8plusa
) SP_CFLAGS
="-m32 -mcpu=ultrasparc -D__sparc_${sparc_cpu}__"; SP_LDFLAGS
="-m32"
343 target_cpu
="sparc"; cpu
="sparc" ;;
344 v9
) SP_CFLAGS
="-m64 -mcpu=ultrasparc -D__sparc_${sparc_cpu}__"; SP_LDFLAGS
="-m64"
345 target_cpu
="sparc64"; cpu
="sparc64" ;;
346 *) echo "undefined SPARC architecture. Exiting";exit 1;;
349 --enable-werror) werror
="yes"
351 --disable-werror) werror
="no"
353 --disable-curses) curses
="no"
355 --disable-nptl) nptl
="no"
357 --enable-mixemu) mixemu
="yes"
359 --disable-aio) aio
="no"
361 --disable-cpu-emulation) cpu_emulation
="no"
363 --disable-libfdt) device_tree_support
="no"
365 *) echo "ERROR: unknown option $opt"; exit 1
370 if [ "$bsd" = "yes" -o "$darwin" = "yes" -o "$mingw32" = "yes" ] ; then
373 # Some Linux architectures (e.g. s390) don't imply -lpthread automatically.
374 AIOLIBS
="-lrt -lpthread"
377 # default flags for all hosts
378 CFLAGS
="$CFLAGS -Wall -O2 -g -fno-strict-aliasing"
379 LDFLAGS
="$LDFLAGS -g"
380 if test "$werror" = "yes" ; then
381 CFLAGS
="$CFLAGS -Werror"
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 " --enable-mingw32 enable Win32 cross compilation with mingw32"
449 echo " --audio-drv-list=LIST set audio drivers list:"
450 echo " Available drivers: $audio_possible_drivers"
451 echo " --audio-card-list=LIST set list of additional emulated audio cards"
452 echo " Available cards: ac97 adlib cs4231a gus"
453 echo " --enable-mixemu enable mixer emulation"
454 echo " --disable-brlapi disable BrlAPI"
455 echo " --disable-vnc-tls disable TLS encryption for VNC server"
456 echo " --disable-curses disable curses output"
457 echo " --disable-nptl disable usermode NPTL support"
458 echo " --enable-system enable all system emulation targets"
459 echo " --disable-system disable all system emulation targets"
460 echo " --enable-linux-user enable all linux usermode emulation targets"
461 echo " --disable-linux-user disable all linux usermode emulation targets"
462 echo " --enable-darwin-user enable all darwin usermode emulation targets"
463 echo " --disable-darwin-user disable all darwin usermode emulation targets"
464 echo " --fmod-lib path to FMOD library"
465 echo " --fmod-inc path to FMOD includes"
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 if test "$mingw32" = "yes" ; then
499 # Check for gcc4, error if pre-gcc4
500 if test "$check_gcc" = "yes" ; then
505 int main(){return 0;}
507 if "$cc" $ARCH_CFLAGS -o $TMPE $TMPC 2> /dev
/null
; then
508 echo "WARNING: \"$cc\" looks like gcc 4.x"
510 if test "$gcc3_search" = "yes" ; then
511 echo "Looking for gcc 3.x"
512 for compat_cc
in $gcc3_list ; do
513 if "$cross_prefix$compat_cc" --version 2> /dev
/null | fgrep
'(GCC) 3.' > /dev
/null
2>&1 ; then
514 echo "Found \"$compat_cc\""
515 cc
="$cross_prefix$compat_cc"
516 found_compat_cc
="yes"
520 if test "$found_compat_cc" = "no" ; then
521 echo "gcc 3.x not found!"
524 if test "$found_compat_cc" = "no" ; then
525 echo "QEMU is known to have problems when compiled with gcc 4.x"
526 echo "It is recommended that you use gcc 3.x to build QEMU"
527 echo "To use this compiler anyway, configure with --disable-gcc-check"
534 # Solaris specific configure tool chain decisions
536 if test "$solaris" = "yes" ; then
538 # gcc for solaris 10/fcs in /usr/sfw/bin doesn't compile qemu correctly
539 # override the check with --disable-gcc-check
541 if test "$solarisrev" -eq 10 -a "$check_gcc" = "yes" ; then
543 if test "$solgcc" = "/usr/sfw/bin/gcc" ; then
544 echo "Solaris 10/FCS gcc in /usr/sfw/bin will not compiled qemu correctly."
545 echo "please get gcc-3.4.3 or later, from www.blastwave.org using pkg-get -i gcc3"
546 echo "or get the latest patch from SunSolve for gcc"
550 solinst
=`which $install 2> /dev/null | /usr/bin/grep -v "no $install in"`
551 if test -z "$solinst" ; then
552 echo "Solaris install program not found. Use --install=/usr/ucb/install or"
553 echo "install fileutils from www.blastwave.org using pkg-get -i fileutils"
554 echo "to get ginstall which is used by default (which lives in /opt/csw/bin)"
557 if test "$solinst" = "/usr/sbin/install" ; then
558 echo "Error: Solaris /usr/sbin/install is not an appropriate install program."
559 echo "try ginstall from the GNU fileutils available from www.blastwave.org"
560 echo "using pkg-get -i fileutils, or use --install=/usr/ucb/install"
563 sol_ar
=`which ar 2> /dev/null | /usr/bin/grep -v "no ar in"`
564 if test -z "$sol_ar" ; then
565 echo "Error: No path includes ar"
566 if test -f /usr
/ccs
/bin
/ar ; then
567 echo "Add /usr/ccs/bin to your path and rerun configure"
574 if test -z "$target_list" ; then
575 # these targets are portable
576 if [ "$softmmu" = "yes" ] ; then
595 # the following are Linux specific
596 if [ "$linux_user" = "yes" ] ; then
597 target_list
="${target_list}\
609 ppc64abi32-linux-user \
614 sparc32plus-linux-user \
617 # the following are Darwin specific
618 if [ "$darwin_user" = "yes" ] ; then
619 target_list
="$target_list i386-darwin-user ppc-darwin-user"
622 target_list
=`echo "$target_list" | sed -e 's/,/ /g'`
624 if test -z "$target_list" ; then
625 echo "No targets enabled"
629 if test -z "$cross_prefix" ; then
632 # big/little endian test
634 #include <inttypes.h>
635 int main(int argc, char ** argv){
636 volatile uint32_t i=0x01234567;
637 return (*((uint8_t*)(&i))) == 0x67;
641 if $cc $ARCH_CFLAGS -o $TMPE $TMPC 2> /dev
/null
; then
642 $TMPE && bigendian
="yes"
644 echo big
/little
test failed
649 # if cross compiling, cannot launch a program, so make a static guess
650 if test "$cpu" = "armv4b" \
654 -o "$cpu" = "mips64" \
655 -o "$cpu" = "powerpc" \
657 -o "$cpu" = "sparc" \
658 -o "$cpu" = "sparc64"; then
664 # host long bits test
666 if test "$cpu" = "x86_64" \
667 -o "$cpu" = "alpha" \
669 -o "$cpu" = "sparc64"; then
673 # ppc specific hostlongbits selection
674 if test "$cpu" = "powerpc" ; then
676 int main(void){return sizeof(long);}
679 if $cc $ARCH_CFLAGS -o $TMPE $TMPC 2> /dev
/null
; then
682 4) hostlongbits
="32";;
683 8) hostlongbits
="64";;
684 *) echo "Couldn't determine bits per long value"; exit 1;;
687 echo hostlongbits
test failed
692 # check gcc options support
698 # Check host NPTL support
701 #include <linux/futex.h>
704 #if !defined(CLONE_SETTLS) || !defined(FUTEX_WAIT)
710 if $cc $ARCH_CFLAGS -c -o $TMPO $TMPC 2> /dev
/null
; then
716 ##########################################
719 if test "$kvm" = "yes" ; then
723 #error "kvm no pit capability"
725 int main(void) { return 0; }
727 if $cc $ARCH_CFLAGS $CFLAGS -I"$kernel_path"/include
-o $TMPE ${OS_CFLAGS} $TMPC 2> /dev
/null
; then
732 ##########################################
737 if test -z "$sdl" ; then
738 sdl_config
="sdl-config"
742 if test "$mingw32" = "yes" -a ! -z "$cross_prefix" ; then
743 # win32 cross compilation case
744 sdl_config
="i386-mingw32msvc-sdl-config"
750 #undef main /* We don't want SDL to override our main() */
751 int main( void ) { return SDL_Init (SDL_INIT_VIDEO); }
753 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
754 _sdlversion
=`$sdl_config --version | sed 's/[^0-9]//g'`
755 if test "$_sdlversion" -lt 121 ; then
758 if test "$cocoa" = "no" ; then
763 # static link with sdl ?
764 if test "$sdl" = "yes" ; then
766 `$sdl_config --static-libs 2>/dev/null | grep \\\-laa > /dev/null` && aa
="yes"
767 sdl_static_libs
=`$sdl_config --static-libs 2>/dev/null`
768 if [ "$aa" = "yes" ] ; then
769 sdl_static_libs
="$sdl_static_libs `aalib-config --static-libs`"
772 if $cc -o $TMPE ${OS_CFLAGS} `$sdl_config --cflags 2> /dev/null` $TMPC $sdl_static_libs 2> /dev
/null
; then
776 fi # sdl compile test
777 fi # cross compilation
779 # Make sure to disable cocoa if sdl was set
780 if test "$sdl" = "yes" ; then
782 audio_drv_list
="`echo $audio_drv_list | sed s,coreaudio,,g`"
786 ##########################################
788 if test "$vnc_tls" = "yes" ; then
790 #include <gnutls/gnutls.h>
791 int main(void) { gnutls_session_t s; gnutls_init(&s, GNUTLS_SERVER); return 0; }
793 vnc_tls_cflags
=`pkg-config --cflags gnutls 2> /dev/null`
794 vnc_tls_libs
=`pkg-config --libs gnutls 2> /dev/null`
795 if $cc $ARCH_CFLAGS -o $TMPE ${OS_CFLAGS} $vnc_tls_cflags $TMPC \
796 $vnc_tls_libs 2> /dev
/null
; then
803 ##########################################
804 # vde libraries probe
805 if test "$vde" = "yes" ; then
807 #include <libvdeplug.h>
808 int main(void) { struct vde_open_args a = {0, 0, 0} ; return 0;}
810 if $cc $ARCH_CFLAGS -o $TMPE $TMPC 2> /dev
/null
; then
817 ##########################################
818 # Sound support libraries probe
829 int main(void) { $exp }
831 if $cc $ARCH_CFLAGS $cfl -o $TMPE $TMPC $lib 2> /dev
/null
; then
835 echo "Error: $drv check failed"
836 echo "Make sure to have the $drv libs and headers installed."
842 audio_drv_list
=`echo "$audio_drv_list" | sed -e 's/,/ /g'`
843 for drv
in $audio_drv_list; do
846 audio_drv_probe
$drv alsa
/asoundlib.h
-lasound \
847 "snd_pcm_t **handle; return snd_pcm_close(*handle);"
851 if test -z $fmod_lib ||
test -z $fmod_inc; then
853 echo "Error: You must specify path to FMOD library and headers"
854 echo "Example: --fmod-inc=/path/include/fmod --fmod-lib=/path/lib/libfmod-3.74.so"
858 audio_drv_probe
$drv fmod.h
$fmod_lib "return FSOUND_GetVersion();" "-I $fmod_inc"
862 audio_drv_probe
$drv esd.h
-lesd 'return esd_play_stream(0, 0, "", 0);'
866 audio_drv_probe
$drv pulse
/simple.h
-lpulse-simple \
867 "pa_simple *s = NULL; pa_simple_free(s); return 0;"
871 echo "$audio_possible_drivers" |
grep -q "\<$drv\>" ||
{
873 echo "Error: Unknown driver '$drv' selected"
874 echo "Possible drivers are: $audio_possible_drivers"
880 oss|sdl|core|wav|dsound
)
881 # XXX: Probes for CoreAudio, DirectSound, SDL(?)
887 ##########################################
890 if test -z "$brlapi" ; then
894 int main( void ) { return brlapi__openConnection (NULL, NULL, NULL); }
896 if $cc ${ARCH_CFLAGS} -o $TMPE ${OS_CFLAGS} $TMPC -lbrlapi 2> /dev
/null
; then
898 fi # brlapi compile test
901 ##########################################
904 if test "$curses" = "yes" ; then
908 int main(void) { return curses_version(); }
910 if $cc $ARCH_CFLAGS -o $TMPE $TMPC -lcurses 2> /dev
/null
; then
915 ##########################################
917 if test "$aio" = "yes" ; then
921 int main(void) { return aio_write(NULL); }
923 if $cc $ARCH_CFLAGS -o $TMPE $AIOLIBS $TMPC 2> /dev
/null
; then
928 # Check if tools are available to build documentation.
929 if [ -x "`which texi2html 2>/dev/null`" ] && \
930 [ -x "`which pod2man 2>/dev/null`" ]; then
934 if test "$mingw32" = "yes" ; then
935 if test -z "$prefix" ; then
936 prefix
="/c/Program Files/Qemu"
943 if test -z "$prefix" ; then
946 mansuffix
="/share/man"
947 datasuffix
="/share/qemu"
948 docsuffix
="/share/doc/qemu"
952 ######################################
955 if test -z "$device_tree_support" -a \
956 "$cpu" = "powerpc"; then
957 device_tree_support
="no"
960 /* XXX uncomment later when libfdt is built before this test */
961 //int main(void) { void *fdt; return fdt_create(fdt, 1024); }
962 int main (void) {return 0;}
964 # XXX for now do not try to link to libfdt and just check for header */
965 # if $cc $ARCH_CFLAGS $CFLAGS $LDFLAGS -o $TMPE $TMPC -lfdt 2> /dev/null ; then
966 if $cc $ARCH_CFLAGS $CFLAGS $LDFLAGS -o $TMPE $TMPC 2> /dev
/null
; then
967 device_tree_support
="yes"
970 echo "Error: Could not find libfdt"
971 echo "Make sure to have the libfdt libs and headers installed."
977 echo "Install prefix $prefix"
978 echo "BIOS directory $prefix$datasuffix"
979 echo "binary directory $prefix$binsuffix"
980 if test "$mingw32" = "no" ; then
981 echo "Manual directory $prefix$mansuffix"
982 echo "ELF interp prefix $interp_prefix"
984 echo "Source path $source_path"
985 echo "C compiler $cc"
986 echo "Host C compiler $host_cc"
987 echo "ARCH_CFLAGS $ARCH_CFLAGS"
989 echo "install $install"
991 echo "host big endian $bigendian"
992 echo "target list $target_list"
993 echo "gprof enabled $gprof"
994 echo "profiler $profiler"
995 echo "static build $static"
996 echo "-Werror enabled $werror"
997 if test "$darwin" = "yes" ; then
998 echo "Cocoa support $cocoa"
1000 echo "SDL support $sdl"
1001 if test "$sdl" != "no" ; then
1002 echo "SDL static link $sdl_static"
1004 echo "curses support $curses"
1005 echo "mingw32 support $mingw32"
1006 echo "Audio drivers $audio_drv_list"
1007 echo "Extra audio cards $audio_card_list"
1008 echo "Mixer emulation $mixemu"
1009 echo "VNC TLS support $vnc_tls"
1010 if test "$vnc_tls" = "yes" ; then
1011 echo " TLS CFLAGS $vnc_tls_cflags"
1012 echo " TLS LIBS $vnc_tls_libs"
1014 if test -n "$sparc_cpu"; then
1015 echo "Target Sparc Arch $sparc_cpu"
1017 echo "kqemu support $kqemu"
1018 echo "kvm support $kvm"
1019 echo "CPU emulation $cpu_emulation"
1020 if test $cpu = "powerpc"; then
1021 echo "libfdt support $device_tree_support"
1023 echo "brlapi support $brlapi"
1024 echo "Documentation $build_docs"
1025 [ ! -z "$uname_release" ] && \
1026 echo "uname -r $uname_release"
1027 echo "NPTL support $nptl"
1028 echo "vde support $vde"
1029 echo "AIO support $aio"
1031 if test $sdl_too_old = "yes"; then
1032 echo "-> Your SDL version is too old - please upgrade to have SDL support"
1034 if [ -s /tmp
/qemu-$$
-sdl-config.log
]; then
1035 echo "The error log from compiling the libSDL test is: "
1036 cat /tmp
/qemu-$$
-sdl-config.log
1038 rm -f /tmp
/qemu-$$
-sdl-config.log
1039 #if test "$sdl_static" = "no"; then
1040 # echo "WARNING: cannot compile statically with SDL - qemu-fast won't have a graphical output"
1042 config_mak
="config-host.mak"
1043 config_h
="config-host.h"
1045 #echo "Creating $config_mak and $config_h"
1047 test -f $config_h && mv $config_h ${config_h}~
1049 echo "# Automatically generated by configure - do not modify" > $config_mak
1050 echo "# Configured with: $0 $@" >> $config_mak
1051 echo "/* Automatically generated by configure - do not modify */" > $config_h
1053 echo "prefix=$prefix" >> $config_mak
1054 echo "bindir=\${prefix}$binsuffix" >> $config_mak
1055 echo "mandir=\${prefix}$mansuffix" >> $config_mak
1056 echo "datadir=\${prefix}$datasuffix" >> $config_mak
1057 echo "docdir=\${prefix}$docsuffix" >> $config_mak
1058 echo "#define CONFIG_QEMU_SHAREDIR \"$prefix$datasuffix\"" >> $config_h
1059 echo "MAKE=$make" >> $config_mak
1060 echo "INSTALL=$install" >> $config_mak
1061 echo "CC=$cc" >> $config_mak
1062 echo "HOST_CC=$host_cc" >> $config_mak
1063 echo "AR=$ar" >> $config_mak
1064 echo "STRIP=$strip -s -R .comment -R .note" >> $config_mak
1065 # XXX: only use CFLAGS and LDFLAGS ?
1066 # XXX: should export HOST_CFLAGS and HOST_LDFLAGS for cross
1067 # compilation of dyngen tool (useful for win32 build on Linux host)
1068 echo "OS_CFLAGS=$OS_CFLAGS" >> $config_mak
1069 echo "OS_LDFLAGS=$OS_LDFLAGS" >> $config_mak
1070 echo "ARCH_CFLAGS=$ARCH_CFLAGS" >> $config_mak
1071 echo "ARCH_LDFLAGS=$ARCH_LDFLAGS" >> $config_mak
1072 echo "CFLAGS=$CFLAGS" >> $config_mak
1073 echo "LDFLAGS=$LDFLAGS" >> $config_mak
1074 echo "EXESUF=$EXESUF" >> $config_mak
1075 echo "AIOLIBS=$AIOLIBS" >> $config_mak
1078 echo "ARCH=i386" >> $config_mak
1079 echo "#define HOST_I386 1" >> $config_h
1082 echo "ARCH=x86_64" >> $config_mak
1083 echo "#define HOST_X86_64 1" >> $config_h
1086 echo "ARCH=alpha" >> $config_mak
1087 echo "#define HOST_ALPHA 1" >> $config_h
1090 echo "ARCH=arm" >> $config_mak
1091 echo "#define HOST_ARM 1" >> $config_h
1094 echo "ARCH=arm" >> $config_mak
1095 echo "#define HOST_ARM 1" >> $config_h
1098 echo "ARCH=cris" >> $config_mak
1099 echo "#define HOST_CRIS 1" >> $config_h
1102 echo "ARCH=hppa" >> $config_mak
1103 echo "#define HOST_HPPA 1" >> $config_h
1106 echo "ARCH=ia64" >> $config_mak
1107 echo "#define HOST_IA64 1" >> $config_h
1110 echo "ARCH=m68k" >> $config_mak
1111 echo "#define HOST_M68K 1" >> $config_h
1114 echo "ARCH=mips" >> $config_mak
1115 echo "#define HOST_MIPS 1" >> $config_h
1118 echo "ARCH=mips64" >> $config_mak
1119 echo "#define HOST_MIPS64 1" >> $config_h
1122 if test "$hostlongbits" = "32"; then
1123 echo "ARCH=ppc" >> $config_mak
1124 echo "#define HOST_PPC 1" >> $config_h
1126 echo "ARCH=ppc64" >> $config_mak
1127 echo "#define HOST_PPC64 1" >> $config_h
1131 echo "ARCH=s390" >> $config_mak
1132 echo "#define HOST_S390 1" >> $config_h
1135 echo "ARCH=sparc" >> $config_mak
1136 echo "#define HOST_SPARC 1" >> $config_h
1139 echo "ARCH=sparc64" >> $config_mak
1140 echo "#define HOST_SPARC64 1" >> $config_h
1143 echo "Unsupported CPU = $cpu"
1147 if test "$bigendian" = "yes" ; then
1148 echo "WORDS_BIGENDIAN=yes" >> $config_mak
1149 echo "#define WORDS_BIGENDIAN 1" >> $config_h
1151 echo "#define HOST_LONG_BITS $hostlongbits" >> $config_h
1152 if test "$mingw32" = "yes" ; then
1153 echo "CONFIG_WIN32=yes" >> $config_mak
1154 echo "#define CONFIG_WIN32 1" >> $config_h
1157 #include <byteswap.h>
1158 int main(void) { return bswap_32(0); }
1160 if $cc $ARCH_CFLAGS -o $TMPE $TMPC 2> /dev
/null
; then
1161 echo "#define HAVE_BYTESWAP_H 1" >> $config_h
1165 if [ "$openbsd" = "yes" ] ; then
1166 echo "#define ENOTSUP 4096" >> $config_h
1169 if test "$darwin" = "yes" ; then
1170 echo "CONFIG_DARWIN=yes" >> $config_mak
1171 echo "#define CONFIG_DARWIN 1" >> $config_h
1173 if test "$solaris" = "yes" ; then
1174 echo "CONFIG_SOLARIS=yes" >> $config_mak
1175 echo "#define HOST_SOLARIS $solarisrev" >> $config_h
1176 if test "$needs_libsunmath" = "yes" ; then
1177 echo "NEEDS_LIBSUNMATH=yes" >> $config_mak
1178 echo "#define NEEDS_LIBSUNMATH 1" >> $config_h
1181 if test -n "$sparc_cpu"; then
1182 echo "CONFIG__sparc_${sparc_cpu}__=yes" >> $config_mak
1183 echo "#define __sparc_${sparc_cpu}__ 1" >> $config_h
1185 if test "$gdbstub" = "yes" ; then
1186 echo "CONFIG_GDBSTUB=yes" >> $config_mak
1187 echo "#define CONFIG_GDBSTUB 1" >> $config_h
1189 if test "$gprof" = "yes" ; then
1190 echo "TARGET_GPROF=yes" >> $config_mak
1191 echo "#define HAVE_GPROF 1" >> $config_h
1193 if test "$static" = "yes" ; then
1194 echo "CONFIG_STATIC=yes" >> $config_mak
1195 echo "#define CONFIG_STATIC 1" >> $config_h
1197 if test $profiler = "yes" ; then
1198 echo "#define CONFIG_PROFILER 1" >> $config_h
1200 if test "$slirp" = "yes" ; then
1201 echo "CONFIG_SLIRP=yes" >> $config_mak
1202 echo "#define CONFIG_SLIRP 1" >> $config_h
1204 if test "$vde" = "yes" ; then
1205 echo "CONFIG_VDE=yes" >> $config_mak
1206 echo "#define CONFIG_VDE 1" >> $config_h
1207 echo "VDE_LIBS=-lvdeplug" >> $config_mak
1209 for card
in $audio_card_list; do
1210 def
=CONFIG_
`echo $card | tr '[:lower:]' '[:upper:]'`
1211 echo "$def=yes" >> $config_mak
1212 echo "#define $def 1" >> $config_h
1214 echo "#define AUDIO_DRIVERS \\" >> $config_h
1215 for drv
in $audio_drv_list; do
1216 echo " &${drv}_audio_driver, \\" >>$config_h
1217 def
=CONFIG_
`echo $drv | tr '[:lower:]' '[:upper:]'`
1218 echo "$def=yes" >> $config_mak
1219 if test "$drv" = "fmod"; then
1220 echo "CONFIG_FMOD_LIB=$fmod_lib" >> $config_mak
1221 echo "CONFIG_FMOD_INC=$fmod_inc" >> $config_mak
1225 if test "$mixemu" = "yes" ; then
1226 echo "CONFIG_MIXEMU=yes" >> $config_mak
1227 echo "#define CONFIG_MIXEMU 1" >> $config_h
1229 if test "$vnc_tls" = "yes" ; then
1230 echo "CONFIG_VNC_TLS=yes" >> $config_mak
1231 echo "CONFIG_VNC_TLS_CFLAGS=$vnc_tls_cflags" >> $config_mak
1232 echo "CONFIG_VNC_TLS_LIBS=$vnc_tls_libs" >> $config_mak
1233 echo "#define CONFIG_VNC_TLS 1" >> $config_h
1235 qemu_version
=`head $source_path/VERSION`
1236 echo "VERSION=$qemu_version" >>$config_mak
1237 echo "#define QEMU_VERSION \"$qemu_version\"" >> $config_h
1238 echo "#define KVM_VERSION \"kvm-devel\"" >> $config_h
1240 echo "SRC_PATH=$source_path" >> $config_mak
1241 if [ "$source_path_used" = "yes" ]; then
1242 echo "VPATH=$source_path" >> $config_mak
1244 echo "TARGET_DIRS=$target_list" >> $config_mak
1245 if [ "$build_docs" = "yes" ] ; then
1246 echo "BUILD_DOCS=yes" >> $config_mak
1248 if test "$static" = "yes"; then
1253 if test "$sdl1" = "yes" ; then
1254 echo "#define CONFIG_SDL 1" >> $config_h
1255 echo "CONFIG_SDL=yes" >> $config_mak
1256 if test "$target_softmmu" = "no" -o "$static" = "yes"; then
1257 echo "SDL_LIBS=$sdl_static_libs" >> $config_mak
1259 echo "SDL_LIBS=`$sdl_config --libs`" >> $config_mak
1261 if [ "${aa}" = "yes" ] ; then
1262 echo "SDL_CFLAGS=`$sdl_config --cflags` `aalib-config --cflags`" >> $config_mak
1264 echo "SDL_CFLAGS=`$sdl_config --cflags`" >> $config_mak
1267 if test "$cocoa" = "yes" ; then
1268 echo "#define CONFIG_COCOA 1" >> $config_h
1269 echo "CONFIG_COCOA=yes" >> $config_mak
1271 if test "$curses" = "yes" ; then
1272 echo "#define CONFIG_CURSES 1" >> $config_h
1273 echo "CONFIG_CURSES=yes" >> $config_mak
1274 echo "CURSES_LIBS=-lcurses" >> $config_mak
1276 if test "$brlapi" = "yes" ; then
1277 echo "CONFIG_BRLAPI=yes" >> $config_mak
1278 echo "#define CONFIG_BRLAPI 1" >> $config_h
1279 echo "BRLAPI_LIBS=-lbrlapi" >> $config_mak
1281 if test "$aio" = "yes" ; then
1282 echo "#define CONFIG_AIO 1" >> $config_h
1285 # XXX: suppress that
1286 if [ "$bsd" = "yes" ] ; then
1287 echo "#define O_LARGEFILE 0" >> $config_h
1288 echo "#define MAP_ANONYMOUS MAP_ANON" >> $config_h
1289 echo "#define _BSD 1" >> $config_h
1292 echo "#define CONFIG_UNAME_RELEASE \"$uname_release\"" >> $config_h
1295 if test `expr "$target_list" : ".*softmmu.*"` != 0 ; then
1296 tools
="qemu-img\$(EXESUF) $tools"
1297 if [ "$linux" = "yes" ] ; then
1298 tools
="qemu-nbd\$(EXESUF) $tools"
1301 echo "TOOLS=$tools" >> $config_mak
1303 test -f ${config_h}~ && cmp -s $config_h ${config_h}~ && mv ${config_h}~
$config_h
1305 for target
in $target_list; do
1306 target_dir
="$target"
1307 config_mak
=$target_dir/config.mak
1308 config_h
=$target_dir/config.h
1309 target_cpu
=`echo $target | cut -d '-' -f 1`
1310 target_bigendian
="no"
1311 [ "$target_cpu" = "armeb" ] && target_bigendian
=yes
1312 [ "$target_cpu" = "m68k" ] && target_bigendian
=yes
1313 [ "$target_cpu" = "mips" ] && target_bigendian
=yes
1314 [ "$target_cpu" = "mipsn32" ] && target_bigendian
=yes
1315 [ "$target_cpu" = "mips64" ] && target_bigendian
=yes
1316 [ "$target_cpu" = "ppc" ] && target_bigendian
=yes
1317 [ "$target_cpu" = "ppcemb" ] && target_bigendian
=yes
1318 [ "$target_cpu" = "ppc64" ] && target_bigendian
=yes
1319 [ "$target_cpu" = "ppc64abi32" ] && target_bigendian
=yes
1320 [ "$target_cpu" = "sh4eb" ] && target_bigendian
=yes
1321 [ "$target_cpu" = "sparc" ] && target_bigendian
=yes
1322 [ "$target_cpu" = "sparc64" ] && target_bigendian
=yes
1323 [ "$target_cpu" = "sparc32plus" ] && target_bigendian
=yes
1325 target_user_only
="no"
1326 target_linux_user
="no"
1327 target_darwin_user
="no"
1329 ${target_cpu}-softmmu)
1330 target_softmmu
="yes"
1332 ${target_cpu}-linux-user)
1333 target_user_only
="yes"
1334 target_linux_user
="yes"
1336 ${target_cpu}-darwin-user)
1337 target_user_only
="yes"
1338 target_darwin_user
="yes"
1341 echo "ERROR: Target '$target' not recognised"
1346 if test "$target_user_only" = "no" -a "$check_gfx" = "yes" \
1347 -a "$sdl" = "no" -a "$cocoa" = "no" ; then
1348 echo "ERROR: QEMU requires SDL or Cocoa for graphical output"
1349 echo "To build QEMU without graphical output configure with --disable-gfx-check"
1350 echo "Note that this will disable all output from the virtual graphics card"
1351 echo "except through VNC or curses."
1355 #echo "Creating $config_mak, $config_h and $target_dir/Makefile"
1357 test -f $config_h && mv $config_h ${config_h}~
1359 mkdir
-p $target_dir
1360 mkdir
-p $target_dir/fpu
1361 mkdir
-p $target_dir/tcg
1362 if test "$target" = "arm-linux-user" -o "$target" = "armeb-linux-user" ; then
1363 mkdir
-p $target_dir/nwfpe
1367 # don't use ln -sf as not all "ln -sf" over write the file/link
1369 rm -f $target_dir/Makefile
1370 ln -s $source_path/Makefile.target
$target_dir/Makefile
1373 echo "# Automatically generated by configure - do not modify" > $config_mak
1374 echo "/* Automatically generated by configure - do not modify */" > $config_h
1377 echo "include ../config-host.mak" >> $config_mak
1378 echo "#include \"../config-host.h\"" >> $config_h
1383 interp_prefix1
=`echo "$interp_prefix" | sed "s/%M/$target_cpu/g"`
1384 echo "#define CONFIG_QEMU_PREFIX \"$interp_prefix1\"" >> $config_h
1386 disable_cpu_emulation
() {
1387 if test $cpu_emulation = "no"; then
1388 echo "#define NO_CPU_EMULATION 1" >> $config_h
1389 echo "NO_CPU_EMULATION=1" >> $config_mak
1394 if test $kvm = "yes" -a "$target_softmmu" = "yes" -a \
1395 \
( "$cpu" = "i386" -o "$cpu" = "x86_64" -o "$cpu" = "ia64" -o "$cpu" = "powerpc" \
); then
1396 echo "#define USE_KVM 1" >> $config_h
1397 echo "USE_KVM=1" >> $config_mak
1398 echo "CONFIG_KVM_KERNEL_INC=$kernel_path/include" >> $config_mak
1399 if test $kvm_cap_pit = "yes" ; then
1400 echo "USE_KVM_PIT=1" >> $config_mak
1401 echo "#define USE_KVM_PIT 1" >> $config_h
1403 disable_cpu_emulation
1407 case "$target_cpu" in
1409 echo "TARGET_ARCH=i386" >> $config_mak
1410 echo "#define TARGET_ARCH \"i386\"" >> $config_h
1411 echo "#define TARGET_I386 1" >> $config_h
1412 if test $kqemu = "yes" -a "$target_softmmu" = "yes"
1414 echo "#define USE_KQEMU 1" >> $config_h
1416 gcc3minver
=`$cc --version 2> /dev/null| fgrep "(GCC) 3." | awk '{ print $3 }' | cut -f2 -d.`
1417 if test -n "$gcc3minver" && test $gcc3minver -gt 3
1419 echo "HAVE_GT_GCC_3_3=true" >> $config_mak
1421 echo "HAVE_GT_GCC_3_3=false" >> $config_mak
1426 echo "TARGET_ARCH=x86_64" >> $config_mak
1427 echo "#define TARGET_ARCH \"x86_64\"" >> $config_h
1428 echo "#define TARGET_I386 1" >> $config_h
1429 echo "#define TARGET_X86_64 1" >> $config_h
1430 if test $kqemu = "yes" -a "$target_softmmu" = "yes" -a $cpu = "x86_64"
1432 echo "#define USE_KQEMU 1" >> $config_h
1437 echo "TARGET_ARCH=ia64" >> $config_mak
1438 echo "#define TARGET_ARCH \"ia64\"" >> $config_h
1439 echo "#define TARGET_IA64 1" >> $config_h
1443 echo "TARGET_ARCH=alpha" >> $config_mak
1444 echo "CONFIG_DYNGEN_OP=yes" >> $config_mak
1445 echo "#define TARGET_ARCH \"alpha\"" >> $config_h
1446 echo "#define TARGET_ALPHA 1" >> $config_h
1447 echo "#define CONFIG_DYNGEN_OP 1" >> $config_h
1450 echo "TARGET_ARCH=arm" >> $config_mak
1451 echo "#define TARGET_ARCH \"arm\"" >> $config_h
1452 echo "#define TARGET_ARM 1" >> $config_h
1457 echo "TARGET_ARCH=cris" >> $config_mak
1458 echo "#define TARGET_ARCH \"cris\"" >> $config_h
1459 echo "#define TARGET_CRIS 1" >> $config_h
1462 echo "TARGET_ARCH=m68k" >> $config_mak
1463 echo "#define TARGET_ARCH \"m68k\"" >> $config_h
1464 echo "#define TARGET_M68K 1" >> $config_h
1468 echo "TARGET_ARCH=mips" >> $config_mak
1469 echo "#define TARGET_ARCH \"mips\"" >> $config_h
1470 echo "#define TARGET_MIPS 1" >> $config_h
1471 echo "#define TARGET_ABI_MIPSO32 1" >> $config_h
1474 echo "TARGET_ARCH=mipsn32" >> $config_mak
1475 echo "#define TARGET_ARCH \"mipsn32\"" >> $config_h
1476 echo "#define TARGET_MIPS 1" >> $config_h
1477 echo "#define TARGET_ABI_MIPSN32 1" >> $config_h
1480 echo "TARGET_ARCH=mips64" >> $config_mak
1481 echo "#define TARGET_ARCH \"mips64\"" >> $config_h
1482 echo "#define TARGET_MIPS 1" >> $config_h
1483 echo "#define TARGET_MIPS64 1" >> $config_h
1484 echo "#define TARGET_ABI_MIPSN64 1" >> $config_h
1487 echo "TARGET_ARCH=ppc" >> $config_mak
1488 echo "CONFIG_DYNGEN_OP=yes" >> $config_mak
1489 echo "#define TARGET_ARCH \"ppc\"" >> $config_h
1490 echo "#define TARGET_PPC 1" >> $config_h
1491 echo "#define CONFIG_DYNGEN_OP 1" >> $config_h
1494 echo "TARGET_ARCH=ppcemb" >> $config_mak
1495 echo "TARGET_ABI_DIR=ppc" >> $config_mak
1496 echo "CONFIG_DYNGEN_OP=yes" >> $config_mak
1497 echo "#define TARGET_ARCH \"ppcemb\"" >> $config_h
1498 echo "#define TARGET_PPC 1" >> $config_h
1499 echo "#define TARGET_PPCEMB 1" >> $config_h
1500 echo "#define CONFIG_DYNGEN_OP 1" >> $config_h
1501 if test "$device_tree_support" = "yes" ; then
1502 echo "#define CONFIG_LIBFDT 1" >> $config_h
1503 echo "CONFIG_LIBFDT=1" >> $config_mak
1508 echo "TARGET_ARCH=ppc64" >> $config_mak
1509 echo "TARGET_ABI_DIR=ppc" >> $config_mak
1510 echo "CONFIG_DYNGEN_OP=yes" >> $config_mak
1511 echo "#define TARGET_ARCH \"ppc64\"" >> $config_h
1512 echo "#define TARGET_PPC 1" >> $config_h
1513 echo "#define TARGET_PPC64 1" >> $config_h
1514 echo "#define CONFIG_DYNGEN_OP 1" >> $config_h
1517 echo "TARGET_ARCH=ppc64" >> $config_mak
1518 echo "TARGET_ABI_DIR=ppc" >> $config_mak
1519 echo "TARGET_ARCH2=ppc64abi32" >> $config_mak
1520 echo "CONFIG_DYNGEN_OP=yes" >> $config_mak
1521 echo "#define TARGET_ARCH \"ppc64\"" >> $config_h
1522 echo "#define TARGET_PPC 1" >> $config_h
1523 echo "#define TARGET_PPC64 1" >> $config_h
1524 echo "#define TARGET_ABI32 1" >> $config_h
1525 echo "#define CONFIG_DYNGEN_OP 1" >> $config_h
1528 echo "TARGET_ARCH=sh4" >> $config_mak
1529 echo "CONFIG_DYNGEN_OP=yes" >> $config_mak
1530 echo "#define TARGET_ARCH \"sh4\"" >> $config_h
1531 echo "#define TARGET_SH4 1" >> $config_h
1532 echo "#define CONFIG_DYNGEN_OP 1" >> $config_h
1536 echo "TARGET_ARCH=sparc" >> $config_mak
1537 echo "#define TARGET_ARCH \"sparc\"" >> $config_h
1538 echo "#define TARGET_SPARC 1" >> $config_h
1541 echo "TARGET_ARCH=sparc64" >> $config_mak
1542 echo "#define TARGET_ARCH \"sparc64\"" >> $config_h
1543 echo "#define TARGET_SPARC 1" >> $config_h
1544 echo "#define TARGET_SPARC64 1" >> $config_h
1548 echo "TARGET_ARCH=sparc64" >> $config_mak
1549 echo "TARGET_ABI_DIR=sparc" >> $config_mak
1550 echo "TARGET_ARCH2=sparc32plus" >> $config_mak
1551 echo "#define TARGET_ARCH \"sparc64\"" >> $config_h
1552 echo "#define TARGET_SPARC 1" >> $config_h
1553 echo "#define TARGET_SPARC64 1" >> $config_h
1554 echo "#define TARGET_ABI32 1" >> $config_h
1557 echo "Unsupported target CPU"
1561 if test "$target_bigendian" = "yes" ; then
1562 echo "TARGET_WORDS_BIGENDIAN=yes" >> $config_mak
1563 echo "#define TARGET_WORDS_BIGENDIAN 1" >> $config_h
1565 if test "$target_softmmu" = "yes" ; then
1566 echo "CONFIG_SOFTMMU=yes" >> $config_mak
1567 echo "#define CONFIG_SOFTMMU 1" >> $config_h
1569 if test "$target_user_only" = "yes" ; then
1570 echo "CONFIG_USER_ONLY=yes" >> $config_mak
1571 echo "#define CONFIG_USER_ONLY 1" >> $config_h
1573 if test "$target_linux_user" = "yes" ; then
1574 echo "CONFIG_LINUX_USER=yes" >> $config_mak
1575 echo "#define CONFIG_LINUX_USER 1" >> $config_h
1577 if test "$target_darwin_user" = "yes" ; then
1578 echo "CONFIG_DARWIN_USER=yes" >> $config_mak
1579 echo "#define CONFIG_DARWIN_USER 1" >> $config_h
1582 if test "$target_cpu" = "arm" \
1583 -o "$target_cpu" = "armeb" \
1584 -o "$target_cpu" = "m68k" \
1585 -o "$target_cpu" = "mips" \
1586 -o "$target_cpu" = "mipsel" \
1587 -o "$target_cpu" = "mipsn32" \
1588 -o "$target_cpu" = "mipsn32el" \
1589 -o "$target_cpu" = "mips64" \
1590 -o "$target_cpu" = "mips64el" \
1591 -o "$target_cpu" = "sparc" \
1592 -o "$target_cpu" = "sparc64" \
1593 -o "$target_cpu" = "sparc32plus"; then
1594 echo "CONFIG_SOFTFLOAT=yes" >> $config_mak
1595 echo "#define CONFIG_SOFTFLOAT 1" >> $config_h
1597 if test "$target_user_only" = "yes" -a "$bflt" = "yes"; then
1598 echo "TARGET_HAS_BFLT=yes" >> $config_mak
1599 echo "#define TARGET_HAS_BFLT 1" >> $config_h
1601 if test "$target_user_only" = "yes" \
1602 -a "$nptl" = "yes" -a "$target_nptl" = "yes"; then
1603 echo "#define USE_NPTL 1" >> $config_h
1605 # 32 bit ELF loader in addition to native 64 bit loader?
1606 if test "$target_user_only" = "yes" -a "$elfload32" = "yes"; then
1607 echo "TARGET_HAS_ELFLOAD32=yes" >> $config_mak
1608 echo "#define TARGET_HAS_ELFLOAD32 1" >> $config_h
1611 test -f ${config_h}~ && cmp -s $config_h ${config_h}~ && mv ${config_h}~
$config_h
1613 done # for target in $targets
1615 # build tree in object directory if source path is different from current one
1616 if test "$source_path_used" = "yes" ; then
1617 DIRS
="tests tests/cris slirp audio"
1618 FILES
="Makefile tests/Makefile"
1619 FILES
="$FILES tests/cris/Makefile tests/cris/.gdbinit"
1620 FILES
="$FILES tests/test-mmap.c"
1621 for dir
in $DIRS ; do
1624 # remove the link and recreate it, as not all "ln -sf" overwrite the link
1625 for f
in $FILES ; do
1627 ln -s $source_path/$f $f
1631 rm -f $TMPO $TMPC $TMPE $TMPS