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 -Wall -O2 -g -fno-strict-aliasing"
374 LDFLAGS
="$LDFLAGS -g"
375 if test "$werror" = "yes" ; then
376 CFLAGS
="$CFLAGS -Werror"
380 # If cpu ~= sparc and sparc_cpu hasn't been defined, plug in the right
381 # ARCH_CFLAGS/ARCH_LDFLAGS (assume sparc_v8plus for 32-bit and sparc_v9 for 64-bit)
384 sparc
) if test -z "$sparc_cpu" ; then
385 ARCH_CFLAGS
="-m32 -mcpu=ultrasparc -D__sparc_v8plus__"
388 ARCH_CFLAGS
="${SP_CFLAGS}"
389 ARCH_LDFLAGS
="${SP_LDFLAGS}"
392 sparc64
) if test -z "$sparc_cpu" ; then
393 ARCH_CFLAGS
="-m64 -mcpu=ultrasparc -D__sparc_v9__"
396 ARCH_CFLAGS
="${SP_CFLAGS}"
397 ARCH_LDFLAGS
="${SP_LDFLAGS}"
401 ARCH_CFLAGS
="-march=z900"
413 if test x
"$show_help" = x
"yes" ; then
416 Usage: configure [options]
417 Options: [defaults in brackets after descriptions]
420 echo "Standard options:"
421 echo " --help print this message"
422 echo " --prefix=PREFIX install in PREFIX [$prefix]"
423 echo " --interp-prefix=PREFIX where to find shared libraries, etc."
424 echo " use %M for cpu name [$interp_prefix]"
425 echo " --target-list=LIST set target list [$target_list]"
427 echo "kqemu kernel acceleration support:"
428 echo " --disable-kqemu disable kqemu support"
429 echo " --kernel-path=PATH set the kernel path (configure probes it)"
430 echo " --disable-kvm disable kernel virtual machine support"
432 echo "Advanced options (experts only):"
433 echo " --source-path=PATH path of source code [$source_path]"
434 echo " --cross-prefix=PREFIX use PREFIX for compile tools [$cross_prefix]"
435 echo " --cc=CC use C compiler CC [$cc]"
436 echo " --host-cc=CC use C compiler CC [$host_cc] for dyngen etc."
437 echo " --make=MAKE use specified make [$make]"
438 echo " --install=INSTALL use specified install [$install]"
439 echo " --static enable static build [$static]"
440 echo " --disable-werror disable compilation abort on warning"
441 echo " --disable-sdl disable SDL"
442 echo " --enable-cocoa enable COCOA (Mac OS X only)"
443 echo " --audio-drv-list=LIST set audio drivers list:"
444 echo " Available drivers: $audio_possible_drivers"
445 echo " --audio-card-list=LIST set list of additional emulated audio cards"
446 echo " Available cards: ac97 adlib cs4231a gus"
447 echo " --enable-mixemu enable mixer emulation"
448 echo " --disable-brlapi disable BrlAPI"
449 echo " --disable-vnc-tls disable TLS encryption for VNC server"
450 echo " --disable-curses disable curses output"
451 echo " --disable-nptl disable usermode NPTL support"
452 echo " --enable-system enable all system emulation targets"
453 echo " --disable-system disable all system emulation targets"
454 echo " --enable-linux-user enable all linux usermode emulation targets"
455 echo " --disable-linux-user disable all linux usermode emulation targets"
456 echo " --enable-darwin-user enable all darwin usermode emulation targets"
457 echo " --disable-darwin-user disable all darwin usermode emulation targets"
458 echo " --fmod-lib path to FMOD library"
459 echo " --fmod-inc path to FMOD includes"
460 echo " --oss-lib path to OSS library"
461 echo " --enable-uname-release=R Return R for uname -r in usermode emulation"
462 echo " --sparc_cpu=V Build qemu for Sparc architecture v7, v8, v8plus, v8plusa, v9"
463 echo " --disable-vde disable support for vde network"
464 echo " --disable-aio disable AIO support"
465 echo " --disable-cpu-emulation disables use of qemu cpu emulation code"
466 echo " --disable-libfdt disables use of libfdt support for device tree"
468 echo "NOTE: The object files are built at the place where configure is launched"
472 cc
="${cross_prefix}${cc}"
473 ar="${cross_prefix}${ar}"
474 strip
="${cross_prefix}${strip}"
476 # check that the C compiler works.
481 if $cc $ARCH_CFLAGS -c -o $TMPO $TMPC 2> /dev
/null
; then
482 : C compiler works ok
484 echo "ERROR: \"$cc\" either does not exist or does not work"
488 # check compiler to see if we're on mingw32
497 if $cc $ARCH_CFLAGS -c -o $TMPO $TMPC 2> /dev
/null
; then
501 if test "$mingw32" = "yes" ; then
508 if [ "$bsd" = "yes" -o "$darwin" = "yes" -o "$mingw32" = "yes" ] ; then
511 # Some Linux architectures (e.g. s390) don't imply -lpthread automatically.
512 AIOLIBS
="-lrt -lpthread"
515 # Check for gcc4, error if pre-gcc4
516 if test "$check_gcc" = "yes" ; then
521 int main(){return 0;}
523 if "$cc" $ARCH_CFLAGS -o $TMPE $TMPC 2> /dev
/null
; then
524 echo "WARNING: \"$cc\" looks like gcc 4.x"
526 if test "$gcc3_search" = "yes" ; then
527 echo "Looking for gcc 3.x"
528 for compat_cc
in $gcc3_list ; do
529 if "$cross_prefix$compat_cc" --version 2> /dev
/null | fgrep
'(GCC) 3.' > /dev
/null
2>&1 ; then
530 echo "Found \"$compat_cc\""
531 cc
="$cross_prefix$compat_cc"
532 found_compat_cc
="yes"
536 if test "$found_compat_cc" = "no" ; then
537 echo "gcc 3.x not found!"
540 if test "$found_compat_cc" = "no" ; then
541 echo "QEMU is known to have problems when compiled with gcc 4.x"
542 echo "It is recommended that you use gcc 3.x to build QEMU"
543 echo "To use this compiler anyway, configure with --disable-gcc-check"
550 # Solaris specific configure tool chain decisions
552 if test "$solaris" = "yes" ; then
554 # gcc for solaris 10/fcs in /usr/sfw/bin doesn't compile qemu correctly
555 # override the check with --disable-gcc-check
557 if test "$solarisrev" -eq 10 -a "$check_gcc" = "yes" ; then
559 if test "$solgcc" = "/usr/sfw/bin/gcc" ; then
560 echo "Solaris 10/FCS gcc in /usr/sfw/bin will not compiled qemu correctly."
561 echo "please get gcc-3.4.3 or later, from www.blastwave.org using pkg-get -i gcc3"
562 echo "or get the latest patch from SunSolve for gcc"
566 solinst
=`which $install 2> /dev/null | /usr/bin/grep -v "no $install in"`
567 if test -z "$solinst" ; then
568 echo "Solaris install program not found. Use --install=/usr/ucb/install or"
569 echo "install fileutils from www.blastwave.org using pkg-get -i fileutils"
570 echo "to get ginstall which is used by default (which lives in /opt/csw/bin)"
573 if test "$solinst" = "/usr/sbin/install" ; then
574 echo "Error: Solaris /usr/sbin/install is not an appropriate install program."
575 echo "try ginstall from the GNU fileutils available from www.blastwave.org"
576 echo "using pkg-get -i fileutils, or use --install=/usr/ucb/install"
579 sol_ar
=`which ar 2> /dev/null | /usr/bin/grep -v "no ar in"`
580 if test -z "$sol_ar" ; then
581 echo "Error: No path includes ar"
582 if test -f /usr
/ccs
/bin
/ar ; then
583 echo "Add /usr/ccs/bin to your path and rerun configure"
590 if test -z "$target_list" ; then
591 # these targets are portable
592 if [ "$softmmu" = "yes" ] ; then
611 # the following are Linux specific
612 if [ "$linux_user" = "yes" ] ; then
613 target_list
="${target_list}\
625 ppc64abi32-linux-user \
630 sparc32plus-linux-user \
633 # the following are Darwin specific
634 if [ "$darwin_user" = "yes" ] ; then
635 target_list
="$target_list i386-darwin-user ppc-darwin-user"
638 target_list
=`echo "$target_list" | sed -e 's/,/ /g'`
640 if test -z "$target_list" ; then
641 echo "No targets enabled"
645 if test -z "$cross_prefix" ; then
648 # big/little endian test
650 #include <inttypes.h>
651 int main(int argc, char ** argv){
652 volatile uint32_t i=0x01234567;
653 return (*((uint8_t*)(&i))) == 0x67;
657 if $cc $ARCH_CFLAGS -o $TMPE $TMPC 2> /dev
/null
; then
658 $TMPE && bigendian
="yes"
660 echo big
/little
test failed
665 # if cross compiling, cannot launch a program, so make a static guess
666 if test "$cpu" = "armv4b" \
670 -o "$cpu" = "mips64" \
671 -o "$cpu" = "powerpc" \
673 -o "$cpu" = "sparc" \
674 -o "$cpu" = "sparc64"; then
680 # host long bits test
682 if test "$cpu" = "x86_64" \
683 -o "$cpu" = "alpha" \
685 -o "$cpu" = "sparc64"; then
689 # ppc specific hostlongbits selection
690 if test "$cpu" = "powerpc" ; then
692 int main(void){return sizeof(long);}
695 if $cc $ARCH_CFLAGS -o $TMPE $TMPC 2> /dev
/null
; then
698 4) hostlongbits
="32";;
699 8) hostlongbits
="64";;
700 *) echo "Couldn't determine bits per long value"; exit 1;;
703 echo hostlongbits
test failed
708 # check gcc options support
714 # Check host NPTL support
717 #include <linux/futex.h>
720 #if !defined(CLONE_SETTLS) || !defined(FUTEX_WAIT)
726 if $cc $ARCH_CFLAGS -c -o $TMPO $TMPC 2> /dev
/null
; then
732 ##########################################
735 if test "$kvm" = "yes" ; then
739 #error "kvm no pit capability"
741 int main(void) { return 0; }
743 if $cc $ARCH_CFLAGS $CFLAGS -I"$kernel_path"/include
-o $TMPE ${OS_CFLAGS} $TMPC 2> /dev
/null
; then
748 ##########################################
753 if test -z "$sdl" ; then
754 sdl_config
="sdl-config"
760 #undef main /* We don't want SDL to override our main() */
761 int main( void ) { return SDL_Init (SDL_INIT_VIDEO); }
763 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
764 _sdlversion
=`$sdl_config --version | sed 's/[^0-9]//g'`
765 if test "$_sdlversion" -lt 121 ; then
768 if test "$cocoa" = "no" ; then
773 # static link with sdl ?
774 if test "$sdl" = "yes" ; then
776 `$sdl_config --static-libs 2>/dev/null | grep \\\-laa > /dev/null` && aa
="yes"
777 sdl_static_libs
=`$sdl_config --static-libs 2>/dev/null`
778 if [ "$aa" = "yes" ] ; then
779 sdl_static_libs
="$sdl_static_libs `aalib-config --static-libs`"
782 if $cc -o $TMPE ${OS_CFLAGS} `$sdl_config --cflags 2> /dev/null` $TMPC $sdl_static_libs 2> /dev
/null
; then
786 fi # sdl compile test
788 # Make sure to disable cocoa if sdl was set
789 if test "$sdl" = "yes" ; then
791 audio_drv_list
="`echo $audio_drv_list | sed s,coreaudio,,g`"
795 ##########################################
797 if test "$vnc_tls" = "yes" ; then
799 #include <gnutls/gnutls.h>
800 int main(void) { gnutls_session_t s; gnutls_init(&s, GNUTLS_SERVER); return 0; }
802 vnc_tls_cflags
=`pkg-config --cflags gnutls 2> /dev/null`
803 vnc_tls_libs
=`pkg-config --libs gnutls 2> /dev/null`
804 if $cc $ARCH_CFLAGS -o $TMPE ${OS_CFLAGS} $vnc_tls_cflags $TMPC \
805 $vnc_tls_libs 2> /dev
/null
; then
812 ##########################################
813 # vde libraries probe
814 if test "$vde" = "yes" ; then
816 #include <libvdeplug.h>
817 int main(void) { struct vde_open_args a = {0, 0, 0} ; return 0;}
819 if $cc $ARCH_CFLAGS -o $TMPE $TMPC 2> /dev
/null
; then
826 ##########################################
827 # Sound support libraries probe
838 int main(void) { $exp }
840 if $cc $ARCH_CFLAGS $cfl -o $TMPE $TMPC $lib 2> /dev
/null
; then
844 echo "Error: $drv check failed"
845 echo "Make sure to have the $drv libs and headers installed."
851 audio_drv_list
=`echo "$audio_drv_list" | sed -e 's/,/ /g'`
852 for drv
in $audio_drv_list; do
855 audio_drv_probe
$drv alsa
/asoundlib.h
-lasound \
856 "snd_pcm_t **handle; return snd_pcm_close(*handle);"
860 if test -z $fmod_lib ||
test -z $fmod_inc; then
862 echo "Error: You must specify path to FMOD library and headers"
863 echo "Example: --fmod-inc=/path/include/fmod --fmod-lib=/path/lib/libfmod-3.74.so"
867 audio_drv_probe
$drv fmod.h
$fmod_lib "return FSOUND_GetVersion();" "-I $fmod_inc"
871 audio_drv_probe
$drv esd.h
-lesd 'return esd_play_stream(0, 0, "", 0);'
875 audio_drv_probe
$drv pulse
/simple.h
-lpulse-simple \
876 "pa_simple *s = NULL; pa_simple_free(s); return 0;"
879 oss|sdl|core|wav|dsound
)
880 # XXX: Probes for CoreAudio, DirectSound, SDL(?)
884 echo "$audio_possible_drivers" |
grep -q "\<$drv\>" ||
{
886 echo "Error: Unknown driver '$drv' selected"
887 echo "Possible drivers are: $audio_possible_drivers"
895 ##########################################
898 if test -z "$brlapi" ; then
902 int main( void ) { return brlapi__openConnection (NULL, NULL, NULL); }
904 if $cc ${ARCH_CFLAGS} -o $TMPE ${OS_CFLAGS} $TMPC -lbrlapi 2> /dev
/null
; then
906 fi # brlapi compile test
909 ##########################################
912 if test "$curses" = "yes" ; then
916 int main(void) { return curses_version(); }
918 if $cc $ARCH_CFLAGS -o $TMPE $TMPC -lcurses 2> /dev
/null
; then
923 ##########################################
925 if test "$aio" = "yes" ; then
929 int main(void) { return aio_write(NULL); }
931 if $cc $ARCH_CFLAGS -o $TMPE $AIOLIBS $TMPC 2> /dev
/null
; then
936 # Check if tools are available to build documentation.
937 if [ -x "`which texi2html 2>/dev/null`" ] && \
938 [ -x "`which pod2man 2>/dev/null`" ]; then
942 if test "$mingw32" = "yes" ; then
943 if test -z "$prefix" ; then
944 prefix
="/c/Program Files/Qemu"
951 if test -z "$prefix" ; then
954 mansuffix
="/share/man"
955 datasuffix
="/share/qemu"
956 docsuffix
="/share/doc/qemu"
960 ######################################
963 if test -z "$device_tree_support" -a \
964 "$cpu" = "powerpc"; then
965 device_tree_support
="no"
968 /* XXX uncomment later when libfdt is built before this test */
969 //int main(void) { void *fdt; return fdt_create(fdt, 1024); }
970 int main (void) {return 0;}
972 # XXX for now do not try to link to libfdt and just check for header */
973 # if $cc $ARCH_CFLAGS $CFLAGS $LDFLAGS -o $TMPE $TMPC -lfdt 2> /dev/null ; then
974 if $cc $ARCH_CFLAGS $CFLAGS $LDFLAGS -o $TMPE $TMPC 2> /dev
/null
; then
975 device_tree_support
="yes"
978 echo "Error: Could not find libfdt"
979 echo "Make sure to have the libfdt libs and headers installed."
985 echo "Install prefix $prefix"
986 echo "BIOS directory $prefix$datasuffix"
987 echo "binary directory $prefix$binsuffix"
988 if test "$mingw32" = "no" ; then
989 echo "Manual directory $prefix$mansuffix"
990 echo "ELF interp prefix $interp_prefix"
992 echo "Source path $source_path"
993 echo "C compiler $cc"
994 echo "Host C compiler $host_cc"
995 echo "ARCH_CFLAGS $ARCH_CFLAGS"
997 echo "install $install"
999 echo "host big endian $bigendian"
1000 echo "target list $target_list"
1001 echo "gprof enabled $gprof"
1002 echo "profiler $profiler"
1003 echo "static build $static"
1004 echo "-Werror enabled $werror"
1005 if test "$darwin" = "yes" ; then
1006 echo "Cocoa support $cocoa"
1008 echo "SDL support $sdl"
1009 if test "$sdl" != "no" ; then
1010 echo "SDL static link $sdl_static"
1012 echo "curses support $curses"
1013 echo "mingw32 support $mingw32"
1014 echo "Audio drivers $audio_drv_list"
1015 echo "Extra audio cards $audio_card_list"
1016 echo "Mixer emulation $mixemu"
1017 echo "VNC TLS support $vnc_tls"
1018 if test "$vnc_tls" = "yes" ; then
1019 echo " TLS CFLAGS $vnc_tls_cflags"
1020 echo " TLS LIBS $vnc_tls_libs"
1022 if test -n "$sparc_cpu"; then
1023 echo "Target Sparc Arch $sparc_cpu"
1025 echo "kqemu support $kqemu"
1026 echo "kvm support $kvm"
1027 echo "CPU emulation $cpu_emulation"
1028 if test $cpu = "powerpc"; then
1029 echo "libfdt support $device_tree_support"
1031 echo "brlapi support $brlapi"
1032 echo "Documentation $build_docs"
1033 [ ! -z "$uname_release" ] && \
1034 echo "uname -r $uname_release"
1035 echo "NPTL support $nptl"
1036 echo "vde support $vde"
1037 echo "AIO support $aio"
1039 if test $sdl_too_old = "yes"; then
1040 echo "-> Your SDL version is too old - please upgrade to have SDL support"
1042 if [ -s /tmp
/qemu-$$
-sdl-config.log
]; then
1043 echo "The error log from compiling the libSDL test is: "
1044 cat /tmp
/qemu-$$
-sdl-config.log
1046 rm -f /tmp
/qemu-$$
-sdl-config.log
1047 #if test "$sdl_static" = "no"; then
1048 # echo "WARNING: cannot compile statically with SDL - qemu-fast won't have a graphical output"
1050 config_mak
="config-host.mak"
1051 config_h
="config-host.h"
1053 #echo "Creating $config_mak and $config_h"
1055 test -f $config_h && mv $config_h ${config_h}~
1057 echo "# Automatically generated by configure - do not modify" > $config_mak
1058 echo "# Configured with: $0 $@" >> $config_mak
1059 echo "/* Automatically generated by configure - do not modify */" > $config_h
1061 echo "prefix=$prefix" >> $config_mak
1062 echo "bindir=\${prefix}$binsuffix" >> $config_mak
1063 echo "mandir=\${prefix}$mansuffix" >> $config_mak
1064 echo "datadir=\${prefix}$datasuffix" >> $config_mak
1065 echo "docdir=\${prefix}$docsuffix" >> $config_mak
1066 echo "#define CONFIG_QEMU_SHAREDIR \"$prefix$datasuffix\"" >> $config_h
1067 echo "MAKE=$make" >> $config_mak
1068 echo "INSTALL=$install" >> $config_mak
1069 echo "CC=$cc" >> $config_mak
1070 echo "HOST_CC=$host_cc" >> $config_mak
1071 echo "AR=$ar" >> $config_mak
1072 echo "STRIP=$strip -s -R .comment -R .note" >> $config_mak
1073 # XXX: only use CFLAGS and LDFLAGS ?
1074 # XXX: should export HOST_CFLAGS and HOST_LDFLAGS for cross
1075 # compilation of dyngen tool (useful for win32 build on Linux host)
1076 echo "OS_CFLAGS=$OS_CFLAGS" >> $config_mak
1077 echo "OS_LDFLAGS=$OS_LDFLAGS" >> $config_mak
1078 echo "ARCH_CFLAGS=$ARCH_CFLAGS" >> $config_mak
1079 echo "ARCH_LDFLAGS=$ARCH_LDFLAGS" >> $config_mak
1080 echo "CFLAGS=$CFLAGS" >> $config_mak
1081 echo "LDFLAGS=$LDFLAGS" >> $config_mak
1082 echo "EXESUF=$EXESUF" >> $config_mak
1083 echo "AIOLIBS=$AIOLIBS" >> $config_mak
1086 echo "ARCH=i386" >> $config_mak
1087 echo "#define HOST_I386 1" >> $config_h
1090 echo "ARCH=x86_64" >> $config_mak
1091 echo "#define HOST_X86_64 1" >> $config_h
1094 echo "ARCH=alpha" >> $config_mak
1095 echo "#define HOST_ALPHA 1" >> $config_h
1098 echo "ARCH=arm" >> $config_mak
1099 echo "#define HOST_ARM 1" >> $config_h
1102 echo "ARCH=arm" >> $config_mak
1103 echo "#define HOST_ARM 1" >> $config_h
1106 echo "ARCH=cris" >> $config_mak
1107 echo "#define HOST_CRIS 1" >> $config_h
1110 echo "ARCH=hppa" >> $config_mak
1111 echo "#define HOST_HPPA 1" >> $config_h
1114 echo "ARCH=ia64" >> $config_mak
1115 echo "#define HOST_IA64 1" >> $config_h
1118 echo "ARCH=m68k" >> $config_mak
1119 echo "#define HOST_M68K 1" >> $config_h
1122 echo "ARCH=mips" >> $config_mak
1123 echo "#define HOST_MIPS 1" >> $config_h
1126 echo "ARCH=mips64" >> $config_mak
1127 echo "#define HOST_MIPS64 1" >> $config_h
1130 if test "$hostlongbits" = "32"; then
1131 echo "ARCH=ppc" >> $config_mak
1132 echo "#define HOST_PPC 1" >> $config_h
1134 echo "ARCH=ppc64" >> $config_mak
1135 echo "#define HOST_PPC64 1" >> $config_h
1139 echo "ARCH=s390" >> $config_mak
1140 echo "#define HOST_S390 1" >> $config_h
1143 echo "ARCH=sparc" >> $config_mak
1144 echo "#define HOST_SPARC 1" >> $config_h
1147 echo "ARCH=sparc64" >> $config_mak
1148 echo "#define HOST_SPARC64 1" >> $config_h
1151 echo "Unsupported CPU = $cpu"
1155 if test "$bigendian" = "yes" ; then
1156 echo "WORDS_BIGENDIAN=yes" >> $config_mak
1157 echo "#define WORDS_BIGENDIAN 1" >> $config_h
1159 echo "#define HOST_LONG_BITS $hostlongbits" >> $config_h
1160 if test "$mingw32" = "yes" ; then
1161 echo "CONFIG_WIN32=yes" >> $config_mak
1162 echo "#define CONFIG_WIN32 1" >> $config_h
1165 #include <byteswap.h>
1166 int main(void) { return bswap_32(0); }
1168 if $cc $ARCH_CFLAGS -o $TMPE $TMPC 2> /dev
/null
; then
1169 echo "#define HAVE_BYTESWAP_H 1" >> $config_h
1173 if [ "$openbsd" = "yes" ] ; then
1174 echo "#define ENOTSUP 4096" >> $config_h
1177 if test "$darwin" = "yes" ; then
1178 echo "CONFIG_DARWIN=yes" >> $config_mak
1179 echo "#define CONFIG_DARWIN 1" >> $config_h
1181 if test "$solaris" = "yes" ; then
1182 echo "CONFIG_SOLARIS=yes" >> $config_mak
1183 echo "#define HOST_SOLARIS $solarisrev" >> $config_h
1184 if test "$needs_libsunmath" = "yes" ; then
1185 echo "NEEDS_LIBSUNMATH=yes" >> $config_mak
1186 echo "#define NEEDS_LIBSUNMATH 1" >> $config_h
1189 if test -n "$sparc_cpu"; then
1190 echo "CONFIG__sparc_${sparc_cpu}__=yes" >> $config_mak
1191 echo "#define __sparc_${sparc_cpu}__ 1" >> $config_h
1193 if test "$gdbstub" = "yes" ; then
1194 echo "CONFIG_GDBSTUB=yes" >> $config_mak
1195 echo "#define CONFIG_GDBSTUB 1" >> $config_h
1197 if test "$gprof" = "yes" ; then
1198 echo "TARGET_GPROF=yes" >> $config_mak
1199 echo "#define HAVE_GPROF 1" >> $config_h
1201 if test "$static" = "yes" ; then
1202 echo "CONFIG_STATIC=yes" >> $config_mak
1203 echo "#define CONFIG_STATIC 1" >> $config_h
1205 if test $profiler = "yes" ; then
1206 echo "#define CONFIG_PROFILER 1" >> $config_h
1208 if test "$slirp" = "yes" ; then
1209 echo "CONFIG_SLIRP=yes" >> $config_mak
1210 echo "#define CONFIG_SLIRP 1" >> $config_h
1212 if test "$vde" = "yes" ; then
1213 echo "CONFIG_VDE=yes" >> $config_mak
1214 echo "#define CONFIG_VDE 1" >> $config_h
1215 echo "VDE_LIBS=-lvdeplug" >> $config_mak
1217 for card
in $audio_card_list; do
1218 def
=CONFIG_
`echo $card | tr '[:lower:]' '[:upper:]'`
1219 echo "$def=yes" >> $config_mak
1220 echo "#define $def 1" >> $config_h
1222 echo "#define AUDIO_DRIVERS \\" >> $config_h
1223 for drv
in $audio_drv_list; do
1224 echo " &${drv}_audio_driver, \\" >>$config_h
1225 def
=CONFIG_
`echo $drv | tr '[:lower:]' '[:upper:]'`
1226 echo "$def=yes" >> $config_mak
1227 if test "$drv" = "fmod"; then
1228 echo "CONFIG_FMOD_LIB=$fmod_lib" >> $config_mak
1229 echo "CONFIG_FMOD_INC=$fmod_inc" >> $config_mak
1230 elif test "$drv" = "oss"; then
1231 echo "CONFIG_OSS_LIB=$oss_lib" >> $config_mak
1235 if test "$mixemu" = "yes" ; then
1236 echo "CONFIG_MIXEMU=yes" >> $config_mak
1237 echo "#define CONFIG_MIXEMU 1" >> $config_h
1239 if test "$vnc_tls" = "yes" ; then
1240 echo "CONFIG_VNC_TLS=yes" >> $config_mak
1241 echo "CONFIG_VNC_TLS_CFLAGS=$vnc_tls_cflags" >> $config_mak
1242 echo "CONFIG_VNC_TLS_LIBS=$vnc_tls_libs" >> $config_mak
1243 echo "#define CONFIG_VNC_TLS 1" >> $config_h
1245 qemu_version
=`head $source_path/VERSION`
1246 echo "VERSION=$qemu_version" >>$config_mak
1247 echo "#define QEMU_VERSION \"$qemu_version\"" >> $config_h
1248 echo "#define KVM_VERSION \"kvm-devel\"" >> $config_h
1250 echo "SRC_PATH=$source_path" >> $config_mak
1251 if [ "$source_path_used" = "yes" ]; then
1252 echo "VPATH=$source_path" >> $config_mak
1254 echo "TARGET_DIRS=$target_list" >> $config_mak
1255 if [ "$build_docs" = "yes" ] ; then
1256 echo "BUILD_DOCS=yes" >> $config_mak
1258 if test "$static" = "yes"; then
1263 if test "$sdl1" = "yes" ; then
1264 echo "#define CONFIG_SDL 1" >> $config_h
1265 echo "CONFIG_SDL=yes" >> $config_mak
1266 if test "$target_softmmu" = "no" -o "$static" = "yes"; then
1267 echo "SDL_LIBS=$sdl_static_libs" >> $config_mak
1269 echo "SDL_LIBS=`$sdl_config --libs`" >> $config_mak
1271 if [ "${aa}" = "yes" ] ; then
1272 echo "SDL_CFLAGS=`$sdl_config --cflags` `aalib-config --cflags`" >> $config_mak
1274 echo "SDL_CFLAGS=`$sdl_config --cflags`" >> $config_mak
1277 if test "$cocoa" = "yes" ; then
1278 echo "#define CONFIG_COCOA 1" >> $config_h
1279 echo "CONFIG_COCOA=yes" >> $config_mak
1281 if test "$curses" = "yes" ; then
1282 echo "#define CONFIG_CURSES 1" >> $config_h
1283 echo "CONFIG_CURSES=yes" >> $config_mak
1284 echo "CURSES_LIBS=-lcurses" >> $config_mak
1286 if test "$brlapi" = "yes" ; then
1287 echo "CONFIG_BRLAPI=yes" >> $config_mak
1288 echo "#define CONFIG_BRLAPI 1" >> $config_h
1289 echo "BRLAPI_LIBS=-lbrlapi" >> $config_mak
1291 if test "$aio" = "yes" ; then
1292 echo "#define CONFIG_AIO 1" >> $config_h
1295 # XXX: suppress that
1296 if [ "$bsd" = "yes" ] ; then
1297 echo "#define O_LARGEFILE 0" >> $config_h
1298 echo "#define MAP_ANONYMOUS MAP_ANON" >> $config_h
1299 echo "#define _BSD 1" >> $config_h
1302 echo "#define CONFIG_UNAME_RELEASE \"$uname_release\"" >> $config_h
1305 if test `expr "$target_list" : ".*softmmu.*"` != 0 ; then
1306 tools
="qemu-img\$(EXESUF) $tools"
1307 if [ "$linux" = "yes" ] ; then
1308 tools
="qemu-nbd\$(EXESUF) $tools"
1311 echo "TOOLS=$tools" >> $config_mak
1313 test -f ${config_h}~ && cmp -s $config_h ${config_h}~ && mv ${config_h}~
$config_h
1315 for target
in $target_list; do
1316 target_dir
="$target"
1317 config_mak
=$target_dir/config.mak
1318 config_h
=$target_dir/config.h
1319 target_cpu
=`echo $target | cut -d '-' -f 1`
1320 target_bigendian
="no"
1321 [ "$target_cpu" = "armeb" ] && target_bigendian
=yes
1322 [ "$target_cpu" = "m68k" ] && target_bigendian
=yes
1323 [ "$target_cpu" = "mips" ] && target_bigendian
=yes
1324 [ "$target_cpu" = "mipsn32" ] && target_bigendian
=yes
1325 [ "$target_cpu" = "mips64" ] && target_bigendian
=yes
1326 [ "$target_cpu" = "ppc" ] && target_bigendian
=yes
1327 [ "$target_cpu" = "ppcemb" ] && target_bigendian
=yes
1328 [ "$target_cpu" = "ppc64" ] && target_bigendian
=yes
1329 [ "$target_cpu" = "ppc64abi32" ] && target_bigendian
=yes
1330 [ "$target_cpu" = "sh4eb" ] && target_bigendian
=yes
1331 [ "$target_cpu" = "sparc" ] && target_bigendian
=yes
1332 [ "$target_cpu" = "sparc64" ] && target_bigendian
=yes
1333 [ "$target_cpu" = "sparc32plus" ] && target_bigendian
=yes
1335 target_user_only
="no"
1336 target_linux_user
="no"
1337 target_darwin_user
="no"
1339 ${target_cpu}-softmmu)
1340 target_softmmu
="yes"
1342 ${target_cpu}-linux-user)
1343 target_user_only
="yes"
1344 target_linux_user
="yes"
1346 ${target_cpu}-darwin-user)
1347 target_user_only
="yes"
1348 target_darwin_user
="yes"
1351 echo "ERROR: Target '$target' not recognised"
1356 if test "$target_user_only" = "no" -a "$check_gfx" = "yes" \
1357 -a "$sdl" = "no" -a "$cocoa" = "no" ; then
1358 echo "ERROR: QEMU requires SDL or Cocoa for graphical output"
1359 echo "To build QEMU without graphical output configure with --disable-gfx-check"
1360 echo "Note that this will disable all output from the virtual graphics card"
1361 echo "except through VNC or curses."
1365 #echo "Creating $config_mak, $config_h and $target_dir/Makefile"
1367 test -f $config_h && mv $config_h ${config_h}~
1369 mkdir
-p $target_dir
1370 mkdir
-p $target_dir/fpu
1371 mkdir
-p $target_dir/tcg
1372 if test "$target" = "arm-linux-user" -o "$target" = "armeb-linux-user" ; then
1373 mkdir
-p $target_dir/nwfpe
1377 # don't use ln -sf as not all "ln -sf" over write the file/link
1379 rm -f $target_dir/Makefile
1380 ln -s $source_path/Makefile.target
$target_dir/Makefile
1383 echo "# Automatically generated by configure - do not modify" > $config_mak
1384 echo "/* Automatically generated by configure - do not modify */" > $config_h
1387 echo "include ../config-host.mak" >> $config_mak
1388 echo "#include \"../config-host.h\"" >> $config_h
1393 interp_prefix1
=`echo "$interp_prefix" | sed "s/%M/$target_cpu/g"`
1394 echo "#define CONFIG_QEMU_PREFIX \"$interp_prefix1\"" >> $config_h
1396 disable_cpu_emulation
() {
1397 if test $cpu_emulation = "no"; then
1398 echo "#define NO_CPU_EMULATION 1" >> $config_h
1399 echo "NO_CPU_EMULATION=1" >> $config_mak
1404 if test $kvm = "yes" -a "$target_softmmu" = "yes" -a \
1405 \
( "$cpu" = "i386" -o "$cpu" = "x86_64" -o "$cpu" = "ia64" -o "$cpu" = "powerpc" \
); then
1406 echo "#define USE_KVM 1" >> $config_h
1407 echo "USE_KVM=1" >> $config_mak
1408 echo "CONFIG_KVM_KERNEL_INC=$kernel_path/include" >> $config_mak
1409 if test $kvm_cap_pit = "yes" ; then
1410 echo "USE_KVM_PIT=1" >> $config_mak
1411 echo "#define USE_KVM_PIT 1" >> $config_h
1413 disable_cpu_emulation
1417 case "$target_cpu" in
1419 echo "TARGET_ARCH=i386" >> $config_mak
1420 echo "#define TARGET_ARCH \"i386\"" >> $config_h
1421 echo "#define TARGET_I386 1" >> $config_h
1422 if test $kqemu = "yes" -a "$target_softmmu" = "yes"
1424 echo "#define USE_KQEMU 1" >> $config_h
1426 gcc3minver
=`$cc --version 2> /dev/null| fgrep "(GCC) 3." | awk '{ print $3 }' | cut -f2 -d.`
1427 if test -n "$gcc3minver" && test $gcc3minver -gt 3
1429 echo "HAVE_GT_GCC_3_3=true" >> $config_mak
1431 echo "HAVE_GT_GCC_3_3=false" >> $config_mak
1436 echo "TARGET_ARCH=x86_64" >> $config_mak
1437 echo "#define TARGET_ARCH \"x86_64\"" >> $config_h
1438 echo "#define TARGET_I386 1" >> $config_h
1439 echo "#define TARGET_X86_64 1" >> $config_h
1440 if test $kqemu = "yes" -a "$target_softmmu" = "yes" -a $cpu = "x86_64"
1442 echo "#define USE_KQEMU 1" >> $config_h
1447 echo "TARGET_ARCH=ia64" >> $config_mak
1448 echo "#define TARGET_ARCH \"ia64\"" >> $config_h
1449 echo "#define TARGET_IA64 1" >> $config_h
1453 echo "TARGET_ARCH=alpha" >> $config_mak
1454 echo "CONFIG_DYNGEN_OP=yes" >> $config_mak
1455 echo "#define TARGET_ARCH \"alpha\"" >> $config_h
1456 echo "#define TARGET_ALPHA 1" >> $config_h
1457 echo "#define CONFIG_DYNGEN_OP 1" >> $config_h
1460 echo "TARGET_ARCH=arm" >> $config_mak
1461 echo "#define TARGET_ARCH \"arm\"" >> $config_h
1462 echo "#define TARGET_ARM 1" >> $config_h
1467 echo "TARGET_ARCH=cris" >> $config_mak
1468 echo "#define TARGET_ARCH \"cris\"" >> $config_h
1469 echo "#define TARGET_CRIS 1" >> $config_h
1472 echo "TARGET_ARCH=m68k" >> $config_mak
1473 echo "#define TARGET_ARCH \"m68k\"" >> $config_h
1474 echo "#define TARGET_M68K 1" >> $config_h
1478 echo "TARGET_ARCH=mips" >> $config_mak
1479 echo "#define TARGET_ARCH \"mips\"" >> $config_h
1480 echo "#define TARGET_MIPS 1" >> $config_h
1481 echo "#define TARGET_ABI_MIPSO32 1" >> $config_h
1484 echo "TARGET_ARCH=mipsn32" >> $config_mak
1485 echo "#define TARGET_ARCH \"mipsn32\"" >> $config_h
1486 echo "#define TARGET_MIPS 1" >> $config_h
1487 echo "#define TARGET_ABI_MIPSN32 1" >> $config_h
1490 echo "TARGET_ARCH=mips64" >> $config_mak
1491 echo "#define TARGET_ARCH \"mips64\"" >> $config_h
1492 echo "#define TARGET_MIPS 1" >> $config_h
1493 echo "#define TARGET_MIPS64 1" >> $config_h
1494 echo "#define TARGET_ABI_MIPSN64 1" >> $config_h
1497 echo "TARGET_ARCH=ppc" >> $config_mak
1498 echo "CONFIG_DYNGEN_OP=yes" >> $config_mak
1499 echo "#define TARGET_ARCH \"ppc\"" >> $config_h
1500 echo "#define TARGET_PPC 1" >> $config_h
1501 echo "#define CONFIG_DYNGEN_OP 1" >> $config_h
1504 echo "TARGET_ARCH=ppcemb" >> $config_mak
1505 echo "TARGET_ABI_DIR=ppc" >> $config_mak
1506 echo "CONFIG_DYNGEN_OP=yes" >> $config_mak
1507 echo "#define TARGET_ARCH \"ppcemb\"" >> $config_h
1508 echo "#define TARGET_PPC 1" >> $config_h
1509 echo "#define TARGET_PPCEMB 1" >> $config_h
1510 echo "#define CONFIG_DYNGEN_OP 1" >> $config_h
1511 if test "$device_tree_support" = "yes" ; then
1512 echo "#define CONFIG_LIBFDT 1" >> $config_h
1513 echo "CONFIG_LIBFDT=1" >> $config_mak
1518 echo "TARGET_ARCH=ppc64" >> $config_mak
1519 echo "TARGET_ABI_DIR=ppc" >> $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 CONFIG_DYNGEN_OP 1" >> $config_h
1527 echo "TARGET_ARCH=ppc64" >> $config_mak
1528 echo "TARGET_ABI_DIR=ppc" >> $config_mak
1529 echo "TARGET_ARCH2=ppc64abi32" >> $config_mak
1530 echo "CONFIG_DYNGEN_OP=yes" >> $config_mak
1531 echo "#define TARGET_ARCH \"ppc64\"" >> $config_h
1532 echo "#define TARGET_PPC 1" >> $config_h
1533 echo "#define TARGET_PPC64 1" >> $config_h
1534 echo "#define TARGET_ABI32 1" >> $config_h
1535 echo "#define CONFIG_DYNGEN_OP 1" >> $config_h
1538 echo "TARGET_ARCH=sh4" >> $config_mak
1539 echo "CONFIG_DYNGEN_OP=yes" >> $config_mak
1540 echo "#define TARGET_ARCH \"sh4\"" >> $config_h
1541 echo "#define TARGET_SH4 1" >> $config_h
1542 echo "#define CONFIG_DYNGEN_OP 1" >> $config_h
1546 echo "TARGET_ARCH=sparc" >> $config_mak
1547 echo "#define TARGET_ARCH \"sparc\"" >> $config_h
1548 echo "#define TARGET_SPARC 1" >> $config_h
1551 echo "TARGET_ARCH=sparc64" >> $config_mak
1552 echo "#define TARGET_ARCH \"sparc64\"" >> $config_h
1553 echo "#define TARGET_SPARC 1" >> $config_h
1554 echo "#define TARGET_SPARC64 1" >> $config_h
1558 echo "TARGET_ARCH=sparc64" >> $config_mak
1559 echo "TARGET_ABI_DIR=sparc" >> $config_mak
1560 echo "TARGET_ARCH2=sparc32plus" >> $config_mak
1561 echo "#define TARGET_ARCH \"sparc64\"" >> $config_h
1562 echo "#define TARGET_SPARC 1" >> $config_h
1563 echo "#define TARGET_SPARC64 1" >> $config_h
1564 echo "#define TARGET_ABI32 1" >> $config_h
1567 echo "Unsupported target CPU"
1571 if test "$target_bigendian" = "yes" ; then
1572 echo "TARGET_WORDS_BIGENDIAN=yes" >> $config_mak
1573 echo "#define TARGET_WORDS_BIGENDIAN 1" >> $config_h
1575 if test "$target_softmmu" = "yes" ; then
1576 echo "CONFIG_SOFTMMU=yes" >> $config_mak
1577 echo "#define CONFIG_SOFTMMU 1" >> $config_h
1579 if test "$target_user_only" = "yes" ; then
1580 echo "CONFIG_USER_ONLY=yes" >> $config_mak
1581 echo "#define CONFIG_USER_ONLY 1" >> $config_h
1583 if test "$target_linux_user" = "yes" ; then
1584 echo "CONFIG_LINUX_USER=yes" >> $config_mak
1585 echo "#define CONFIG_LINUX_USER 1" >> $config_h
1587 if test "$target_darwin_user" = "yes" ; then
1588 echo "CONFIG_DARWIN_USER=yes" >> $config_mak
1589 echo "#define CONFIG_DARWIN_USER 1" >> $config_h
1592 if test "$target_cpu" = "arm" \
1593 -o "$target_cpu" = "armeb" \
1594 -o "$target_cpu" = "m68k" \
1595 -o "$target_cpu" = "mips" \
1596 -o "$target_cpu" = "mipsel" \
1597 -o "$target_cpu" = "mipsn32" \
1598 -o "$target_cpu" = "mipsn32el" \
1599 -o "$target_cpu" = "mips64" \
1600 -o "$target_cpu" = "mips64el" \
1601 -o "$target_cpu" = "sparc" \
1602 -o "$target_cpu" = "sparc64" \
1603 -o "$target_cpu" = "sparc32plus"; then
1604 echo "CONFIG_SOFTFLOAT=yes" >> $config_mak
1605 echo "#define CONFIG_SOFTFLOAT 1" >> $config_h
1607 if test "$target_user_only" = "yes" -a "$bflt" = "yes"; then
1608 echo "TARGET_HAS_BFLT=yes" >> $config_mak
1609 echo "#define TARGET_HAS_BFLT 1" >> $config_h
1611 if test "$target_user_only" = "yes" \
1612 -a "$nptl" = "yes" -a "$target_nptl" = "yes"; then
1613 echo "#define USE_NPTL 1" >> $config_h
1615 # 32 bit ELF loader in addition to native 64 bit loader?
1616 if test "$target_user_only" = "yes" -a "$elfload32" = "yes"; then
1617 echo "TARGET_HAS_ELFLOAD32=yes" >> $config_mak
1618 echo "#define TARGET_HAS_ELFLOAD32 1" >> $config_h
1621 test -f ${config_h}~ && cmp -s $config_h ${config_h}~ && mv ${config_h}~
$config_h
1623 done # for target in $targets
1625 # build tree in object directory if source path is different from current one
1626 if test "$source_path_used" = "yes" ; then
1627 DIRS
="tests tests/cris slirp audio"
1628 FILES
="Makefile tests/Makefile"
1629 FILES
="$FILES tests/cris/Makefile tests/cris/.gdbinit"
1630 FILES
="$FILES tests/test-mmap.c"
1631 for dir
in $DIRS ; do
1634 # remove the link and recreate it, as not all "ln -sf" overwrite the link
1635 for f
in $FILES ; do
1637 ln -s $source_path/$f $f
1641 rm -f $TMPO $TMPC $TMPE $TMPS