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"
381 # If cpu ~= sparc and sparc_cpu hasn't been defined, plug in the right
382 # ARCH_CFLAGS/ARCH_LDFLAGS (assume sparc_v8plus for 32-bit and sparc_v9 for 64-bit)
385 sparc
) if test -z "$sparc_cpu" ; then
386 ARCH_CFLAGS
="-m32 -mcpu=ultrasparc -D__sparc_v8plus__"
389 ARCH_CFLAGS
="${SP_CFLAGS}"
390 ARCH_LDFLAGS
="${SP_LDFLAGS}"
393 sparc64
) if test -z "$sparc_cpu" ; then
394 ARCH_CFLAGS
="-m64 -mcpu=ultrasparc -D__sparc_v9__"
397 ARCH_CFLAGS
="${SP_CFLAGS}"
398 ARCH_LDFLAGS
="${SP_LDFLAGS}"
402 ARCH_CFLAGS
="-march=z900"
414 if test x
"$show_help" = x
"yes" ; then
417 Usage: configure [options]
418 Options: [defaults in brackets after descriptions]
421 echo "Standard options:"
422 echo " --help print this message"
423 echo " --prefix=PREFIX install in PREFIX [$prefix]"
424 echo " --interp-prefix=PREFIX where to find shared libraries, etc."
425 echo " use %M for cpu name [$interp_prefix]"
426 echo " --target-list=LIST set target list [$target_list]"
428 echo "kqemu kernel acceleration support:"
429 echo " --disable-kqemu disable kqemu support"
430 echo " --kernel-path=PATH set the kernel path (configure probes it)"
431 echo " --disable-kvm disable kernel virtual machine support"
433 echo "Advanced options (experts only):"
434 echo " --source-path=PATH path of source code [$source_path]"
435 echo " --cross-prefix=PREFIX use PREFIX for compile tools [$cross_prefix]"
436 echo " --cc=CC use C compiler CC [$cc]"
437 echo " --host-cc=CC use C compiler CC [$host_cc] for dyngen etc."
438 echo " --make=MAKE use specified make [$make]"
439 echo " --install=INSTALL use specified install [$install]"
440 echo " --static enable static build [$static]"
441 echo " --disable-werror disable compilation abort on warning"
442 echo " --disable-sdl disable SDL"
443 echo " --enable-cocoa enable COCOA (Mac OS X only)"
444 echo " --audio-drv-list=LIST set audio drivers list:"
445 echo " Available drivers: $audio_possible_drivers"
446 echo " --audio-card-list=LIST set list of additional emulated audio cards"
447 echo " Available cards: ac97 adlib cs4231a gus"
448 echo " --enable-mixemu enable mixer emulation"
449 echo " --disable-brlapi disable BrlAPI"
450 echo " --disable-vnc-tls disable TLS encryption for VNC server"
451 echo " --disable-curses disable curses output"
452 echo " --disable-nptl disable usermode NPTL support"
453 echo " --enable-system enable all system emulation targets"
454 echo " --disable-system disable all system emulation targets"
455 echo " --enable-linux-user enable all linux usermode emulation targets"
456 echo " --disable-linux-user disable all linux usermode emulation targets"
457 echo " --enable-darwin-user enable all darwin usermode emulation targets"
458 echo " --disable-darwin-user disable all darwin usermode emulation targets"
459 echo " --fmod-lib path to FMOD library"
460 echo " --fmod-inc path to FMOD includes"
461 echo " --oss-lib path to OSS library"
462 echo " --enable-uname-release=R Return R for uname -r in usermode emulation"
463 echo " --sparc_cpu=V Build qemu for Sparc architecture v7, v8, v8plus, v8plusa, v9"
464 echo " --disable-vde disable support for vde network"
465 echo " --disable-aio disable AIO support"
466 echo " --disable-cpu-emulation disables use of qemu cpu emulation code"
467 echo " --disable-libfdt disables use of libfdt support for device tree"
469 echo "NOTE: The object files are built at the place where configure is launched"
473 cc
="${cross_prefix}${cc}"
474 ar="${cross_prefix}${ar}"
475 strip
="${cross_prefix}${strip}"
477 # check that the C compiler works.
482 if $cc $ARCH_CFLAGS -c -o $TMPO $TMPC 2> /dev
/null
; then
483 : C compiler works ok
485 echo "ERROR: \"$cc\" either does not exist or does not work"
489 # check compiler to see if we're on mingw32
498 if $cc $ARCH_CFLAGS -c -o $TMPO $TMPC 2> /dev
/null
; then
502 if test "$mingw32" = "yes" ; then
509 if [ "$bsd" = "yes" -o "$darwin" = "yes" -o "$mingw32" = "yes" ] ; then
512 # Some Linux architectures (e.g. s390) don't imply -lpthread automatically.
513 AIOLIBS
="-lrt -lpthread"
516 # Check for gcc4, error if pre-gcc4
517 if test "$check_gcc" = "yes" ; then
522 int main(){return 0;}
524 if "$cc" $ARCH_CFLAGS -o $TMPE $TMPC 2> /dev
/null
; then
525 echo "WARNING: \"$cc\" looks like gcc 4.x"
527 if test "$gcc3_search" = "yes" ; then
528 echo "Looking for gcc 3.x"
529 for compat_cc
in $gcc3_list ; do
530 if "$cross_prefix$compat_cc" --version 2> /dev
/null | fgrep
'(GCC) 3.' > /dev
/null
2>&1 ; then
531 echo "Found \"$compat_cc\""
532 cc
="$cross_prefix$compat_cc"
533 found_compat_cc
="yes"
537 if test "$found_compat_cc" = "no" ; then
538 echo "gcc 3.x not found!"
541 if test "$found_compat_cc" = "no" ; then
542 echo "QEMU is known to have problems when compiled with gcc 4.x"
543 echo "It is recommended that you use gcc 3.x to build QEMU"
544 echo "To use this compiler anyway, configure with --disable-gcc-check"
551 # Solaris specific configure tool chain decisions
553 if test "$solaris" = "yes" ; then
555 # gcc for solaris 10/fcs in /usr/sfw/bin doesn't compile qemu correctly
556 # override the check with --disable-gcc-check
558 if test "$solarisrev" -eq 10 -a "$check_gcc" = "yes" ; then
560 if test "$solgcc" = "/usr/sfw/bin/gcc" ; then
561 echo "Solaris 10/FCS gcc in /usr/sfw/bin will not compiled qemu correctly."
562 echo "please get gcc-3.4.3 or later, from www.blastwave.org using pkg-get -i gcc3"
563 echo "or get the latest patch from SunSolve for gcc"
567 solinst
=`which $install 2> /dev/null | /usr/bin/grep -v "no $install in"`
568 if test -z "$solinst" ; then
569 echo "Solaris install program not found. Use --install=/usr/ucb/install or"
570 echo "install fileutils from www.blastwave.org using pkg-get -i fileutils"
571 echo "to get ginstall which is used by default (which lives in /opt/csw/bin)"
574 if test "$solinst" = "/usr/sbin/install" ; then
575 echo "Error: Solaris /usr/sbin/install is not an appropriate install program."
576 echo "try ginstall from the GNU fileutils available from www.blastwave.org"
577 echo "using pkg-get -i fileutils, or use --install=/usr/ucb/install"
580 sol_ar
=`which ar 2> /dev/null | /usr/bin/grep -v "no ar in"`
581 if test -z "$sol_ar" ; then
582 echo "Error: No path includes ar"
583 if test -f /usr
/ccs
/bin
/ar ; then
584 echo "Add /usr/ccs/bin to your path and rerun configure"
591 if test -z "$target_list" ; then
592 # these targets are portable
593 if [ "$softmmu" = "yes" ] ; then
612 # the following are Linux specific
613 if [ "$linux_user" = "yes" ] ; then
614 target_list
="${target_list}\
626 ppc64abi32-linux-user \
631 sparc32plus-linux-user \
634 # the following are Darwin specific
635 if [ "$darwin_user" = "yes" ] ; then
636 target_list
="$target_list i386-darwin-user ppc-darwin-user"
639 target_list
=`echo "$target_list" | sed -e 's/,/ /g'`
641 if test -z "$target_list" ; then
642 echo "No targets enabled"
646 if test -z "$cross_prefix" ; then
649 # big/little endian test
651 #include <inttypes.h>
652 int main(int argc, char ** argv){
653 volatile uint32_t i=0x01234567;
654 return (*((uint8_t*)(&i))) == 0x67;
658 if $cc $ARCH_CFLAGS -o $TMPE $TMPC 2> /dev
/null
; then
659 $TMPE && bigendian
="yes"
661 echo big
/little
test failed
666 # if cross compiling, cannot launch a program, so make a static guess
667 if test "$cpu" = "armv4b" \
671 -o "$cpu" = "mips64" \
672 -o "$cpu" = "powerpc" \
674 -o "$cpu" = "sparc" \
675 -o "$cpu" = "sparc64"; then
681 # host long bits test
683 if test "$cpu" = "x86_64" \
684 -o "$cpu" = "alpha" \
686 -o "$cpu" = "sparc64"; then
690 # ppc specific hostlongbits selection
691 if test "$cpu" = "powerpc" ; then
693 int main(void){return sizeof(long);}
696 if $cc $ARCH_CFLAGS -o $TMPE $TMPC 2> /dev
/null
; then
699 4) hostlongbits
="32";;
700 8) hostlongbits
="64";;
701 *) echo "Couldn't determine bits per long value"; exit 1;;
704 echo hostlongbits
test failed
709 # check gcc options support
715 # Check host NPTL support
718 #include <linux/futex.h>
721 #if !defined(CLONE_SETTLS) || !defined(FUTEX_WAIT)
727 if $cc $ARCH_CFLAGS -c -o $TMPO $TMPC 2> /dev
/null
; then
733 ##########################################
736 if test "$kvm" = "yes" ; then
740 #error "kvm no pit capability"
742 int main(void) { return 0; }
744 if $cc $ARCH_CFLAGS $CFLAGS -I"$kernel_path"/include
-o $TMPE ${OS_CFLAGS} $TMPC 2> /dev
/null
; then
749 ##########################################
754 if test -z "$sdl" ; then
755 sdl_config
="sdl-config"
761 #undef main /* We don't want SDL to override our main() */
762 int main( void ) { return SDL_Init (SDL_INIT_VIDEO); }
764 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
765 _sdlversion
=`$sdl_config --version | sed 's/[^0-9]//g'`
766 if test "$_sdlversion" -lt 121 ; then
769 if test "$cocoa" = "no" ; then
774 # static link with sdl ?
775 if test "$sdl" = "yes" ; then
777 `$sdl_config --static-libs 2>/dev/null | grep \\\-laa > /dev/null` && aa
="yes"
778 sdl_static_libs
=`$sdl_config --static-libs 2>/dev/null`
779 if [ "$aa" = "yes" ] ; then
780 sdl_static_libs
="$sdl_static_libs `aalib-config --static-libs`"
783 if $cc -o $TMPE ${OS_CFLAGS} `$sdl_config --cflags 2> /dev/null` $TMPC $sdl_static_libs 2> /dev
/null
; then
787 fi # sdl compile test
789 # Make sure to disable cocoa if sdl was set
790 if test "$sdl" = "yes" ; then
792 audio_drv_list
="`echo $audio_drv_list | sed s,coreaudio,,g`"
796 ##########################################
798 if test "$vnc_tls" = "yes" ; then
800 #include <gnutls/gnutls.h>
801 int main(void) { gnutls_session_t s; gnutls_init(&s, GNUTLS_SERVER); return 0; }
803 vnc_tls_cflags
=`pkg-config --cflags gnutls 2> /dev/null`
804 vnc_tls_libs
=`pkg-config --libs gnutls 2> /dev/null`
805 if $cc $ARCH_CFLAGS -o $TMPE ${OS_CFLAGS} $vnc_tls_cflags $TMPC \
806 $vnc_tls_libs 2> /dev
/null
; then
813 ##########################################
814 # vde libraries probe
815 if test "$vde" = "yes" ; then
817 #include <libvdeplug.h>
820 struct vde_open_args a = {0, 0, 0};
821 vde_open("", "", &a);
825 if $cc $ARCH_CFLAGS -o $TMPE $TMPC -lvdeplug 2> /dev
/null
; then
832 ##########################################
833 # Sound support libraries probe
844 int main(void) { $exp }
846 if $cc $ARCH_CFLAGS $cfl -o $TMPE $TMPC $lib 2> /dev
/null
; then
850 echo "Error: $drv check failed"
851 echo "Make sure to have the $drv libs and headers installed."
857 audio_drv_list
=`echo "$audio_drv_list" | sed -e 's/,/ /g'`
858 for drv
in $audio_drv_list; do
861 audio_drv_probe
$drv alsa
/asoundlib.h
-lasound \
862 "snd_pcm_t **handle; return snd_pcm_close(*handle);"
866 if test -z $fmod_lib ||
test -z $fmod_inc; then
868 echo "Error: You must specify path to FMOD library and headers"
869 echo "Example: --fmod-inc=/path/include/fmod --fmod-lib=/path/lib/libfmod-3.74.so"
873 audio_drv_probe
$drv fmod.h
$fmod_lib "return FSOUND_GetVersion();" "-I $fmod_inc"
877 audio_drv_probe
$drv esd.h
-lesd 'return esd_play_stream(0, 0, "", 0);'
881 audio_drv_probe
$drv pulse
/simple.h
-lpulse-simple \
882 "pa_simple *s = NULL; pa_simple_free(s); return 0;"
885 oss|sdl|core|wav|dsound
)
886 # XXX: Probes for CoreAudio, DirectSound, SDL(?)
890 echo "$audio_possible_drivers" |
grep -q "\<$drv\>" ||
{
892 echo "Error: Unknown driver '$drv' selected"
893 echo "Possible drivers are: $audio_possible_drivers"
901 ##########################################
904 if test -z "$brlapi" ; then
908 int main( void ) { return brlapi__openConnection (NULL, NULL, NULL); }
910 if $cc ${ARCH_CFLAGS} -o $TMPE ${OS_CFLAGS} $TMPC -lbrlapi 2> /dev
/null
; then
912 fi # brlapi compile test
915 ##########################################
918 if test "$curses" = "yes" ; then
922 int main(void) { return curses_version(); }
924 if $cc $ARCH_CFLAGS -o $TMPE $TMPC -lcurses 2> /dev
/null
; then
929 ##########################################
931 if test "$aio" = "yes" ; then
935 int main(void) { return aio_write(NULL); }
937 if $cc $ARCH_CFLAGS -o $TMPE $AIOLIBS $TMPC 2> /dev
/null
; then
942 # Check if tools are available to build documentation.
943 if [ -x "`which texi2html 2>/dev/null`" ] && \
944 [ -x "`which pod2man 2>/dev/null`" ]; then
948 if test "$mingw32" = "yes" ; then
949 if test -z "$prefix" ; then
950 prefix
="/c/Program Files/Qemu"
957 if test -z "$prefix" ; then
960 mansuffix
="/share/man"
961 datasuffix
="/share/qemu"
962 docsuffix
="/share/doc/qemu"
966 ######################################
969 if test -z "$device_tree_support" -a \
970 "$cpu" = "powerpc"; then
971 device_tree_support
="no"
974 /* XXX uncomment later when libfdt is built before this test */
975 //int main(void) { void *fdt; return fdt_create(fdt, 1024); }
976 int main (void) {return 0;}
978 # XXX for now do not try to link to libfdt and just check for header */
979 # if $cc $ARCH_CFLAGS $CFLAGS $LDFLAGS -o $TMPE $TMPC -lfdt 2> /dev/null ; then
980 if $cc $ARCH_CFLAGS $CFLAGS $LDFLAGS -o $TMPE $TMPC 2> /dev
/null
; then
981 device_tree_support
="yes"
984 echo "Error: Could not find libfdt"
985 echo "Make sure to have the libfdt libs and headers installed."
991 echo "Install prefix $prefix"
992 echo "BIOS directory $prefix$datasuffix"
993 echo "binary directory $prefix$binsuffix"
994 if test "$mingw32" = "no" ; then
995 echo "Manual directory $prefix$mansuffix"
996 echo "ELF interp prefix $interp_prefix"
998 echo "Source path $source_path"
999 echo "C compiler $cc"
1000 echo "Host C compiler $host_cc"
1001 echo "ARCH_CFLAGS $ARCH_CFLAGS"
1003 echo "install $install"
1004 echo "host CPU $cpu"
1005 echo "host big endian $bigendian"
1006 echo "target list $target_list"
1007 echo "gprof enabled $gprof"
1008 echo "profiler $profiler"
1009 echo "static build $static"
1010 echo "-Werror enabled $werror"
1011 if test "$darwin" = "yes" ; then
1012 echo "Cocoa support $cocoa"
1014 echo "SDL support $sdl"
1015 if test "$sdl" != "no" ; then
1016 echo "SDL static link $sdl_static"
1018 echo "curses support $curses"
1019 echo "mingw32 support $mingw32"
1020 echo "Audio drivers $audio_drv_list"
1021 echo "Extra audio cards $audio_card_list"
1022 echo "Mixer emulation $mixemu"
1023 echo "VNC TLS support $vnc_tls"
1024 if test "$vnc_tls" = "yes" ; then
1025 echo " TLS CFLAGS $vnc_tls_cflags"
1026 echo " TLS LIBS $vnc_tls_libs"
1028 if test -n "$sparc_cpu"; then
1029 echo "Target Sparc Arch $sparc_cpu"
1031 echo "kqemu support $kqemu"
1032 echo "kvm support $kvm"
1033 echo "CPU emulation $cpu_emulation"
1034 if test $cpu = "powerpc"; then
1035 echo "libfdt support $device_tree_support"
1037 echo "brlapi support $brlapi"
1038 echo "Documentation $build_docs"
1039 [ ! -z "$uname_release" ] && \
1040 echo "uname -r $uname_release"
1041 echo "NPTL support $nptl"
1042 echo "vde support $vde"
1043 echo "AIO support $aio"
1045 if test $sdl_too_old = "yes"; then
1046 echo "-> Your SDL version is too old - please upgrade to have SDL support"
1048 if [ -s /tmp
/qemu-$$
-sdl-config.log
]; then
1049 echo "The error log from compiling the libSDL test is: "
1050 cat /tmp
/qemu-$$
-sdl-config.log
1052 rm -f /tmp
/qemu-$$
-sdl-config.log
1053 #if test "$sdl_static" = "no"; then
1054 # echo "WARNING: cannot compile statically with SDL - qemu-fast won't have a graphical output"
1056 config_mak
="config-host.mak"
1057 config_h
="config-host.h"
1059 #echo "Creating $config_mak and $config_h"
1061 test -f $config_h && mv $config_h ${config_h}~
1063 echo "# Automatically generated by configure - do not modify" > $config_mak
1064 echo "# Configured with: $0 $@" >> $config_mak
1065 echo "/* Automatically generated by configure - do not modify */" > $config_h
1067 echo "prefix=$prefix" >> $config_mak
1068 echo "bindir=\${prefix}$binsuffix" >> $config_mak
1069 echo "mandir=\${prefix}$mansuffix" >> $config_mak
1070 echo "datadir=\${prefix}$datasuffix" >> $config_mak
1071 echo "docdir=\${prefix}$docsuffix" >> $config_mak
1072 echo "#define CONFIG_QEMU_SHAREDIR \"$prefix$datasuffix\"" >> $config_h
1073 echo "MAKE=$make" >> $config_mak
1074 echo "INSTALL=$install" >> $config_mak
1075 echo "CC=$cc" >> $config_mak
1076 echo "HOST_CC=$host_cc" >> $config_mak
1077 echo "AR=$ar" >> $config_mak
1078 echo "STRIP=$strip -s -R .comment -R .note" >> $config_mak
1079 # XXX: only use CFLAGS and LDFLAGS ?
1080 # XXX: should export HOST_CFLAGS and HOST_LDFLAGS for cross
1081 # compilation of dyngen tool (useful for win32 build on Linux host)
1082 echo "OS_CFLAGS=$OS_CFLAGS" >> $config_mak
1083 echo "OS_LDFLAGS=$OS_LDFLAGS" >> $config_mak
1084 echo "ARCH_CFLAGS=$ARCH_CFLAGS" >> $config_mak
1085 echo "ARCH_LDFLAGS=$ARCH_LDFLAGS" >> $config_mak
1086 echo "CFLAGS=$CFLAGS" >> $config_mak
1087 echo "LDFLAGS=$LDFLAGS" >> $config_mak
1088 echo "EXESUF=$EXESUF" >> $config_mak
1089 echo "AIOLIBS=$AIOLIBS" >> $config_mak
1092 echo "ARCH=i386" >> $config_mak
1093 echo "#define HOST_I386 1" >> $config_h
1096 echo "ARCH=x86_64" >> $config_mak
1097 echo "#define HOST_X86_64 1" >> $config_h
1100 echo "ARCH=alpha" >> $config_mak
1101 echo "#define HOST_ALPHA 1" >> $config_h
1104 echo "ARCH=arm" >> $config_mak
1105 echo "#define HOST_ARM 1" >> $config_h
1108 echo "ARCH=arm" >> $config_mak
1109 echo "#define HOST_ARM 1" >> $config_h
1112 echo "ARCH=cris" >> $config_mak
1113 echo "#define HOST_CRIS 1" >> $config_h
1116 echo "ARCH=hppa" >> $config_mak
1117 echo "#define HOST_HPPA 1" >> $config_h
1120 echo "ARCH=ia64" >> $config_mak
1121 echo "#define HOST_IA64 1" >> $config_h
1124 echo "ARCH=m68k" >> $config_mak
1125 echo "#define HOST_M68K 1" >> $config_h
1128 echo "ARCH=mips" >> $config_mak
1129 echo "#define HOST_MIPS 1" >> $config_h
1132 echo "ARCH=mips64" >> $config_mak
1133 echo "#define HOST_MIPS64 1" >> $config_h
1136 if test "$hostlongbits" = "32"; then
1137 echo "ARCH=ppc" >> $config_mak
1138 echo "#define HOST_PPC 1" >> $config_h
1140 echo "ARCH=ppc64" >> $config_mak
1141 echo "#define HOST_PPC64 1" >> $config_h
1145 echo "ARCH=s390" >> $config_mak
1146 echo "#define HOST_S390 1" >> $config_h
1149 echo "ARCH=sparc" >> $config_mak
1150 echo "#define HOST_SPARC 1" >> $config_h
1153 echo "ARCH=sparc64" >> $config_mak
1154 echo "#define HOST_SPARC64 1" >> $config_h
1157 echo "Unsupported CPU = $cpu"
1161 if test "$bigendian" = "yes" ; then
1162 echo "WORDS_BIGENDIAN=yes" >> $config_mak
1163 echo "#define WORDS_BIGENDIAN 1" >> $config_h
1165 echo "#define HOST_LONG_BITS $hostlongbits" >> $config_h
1166 if test "$mingw32" = "yes" ; then
1167 echo "CONFIG_WIN32=yes" >> $config_mak
1168 echo "#define CONFIG_WIN32 1" >> $config_h
1171 #include <byteswap.h>
1172 int main(void) { return bswap_32(0); }
1174 if $cc $ARCH_CFLAGS -o $TMPE $TMPC 2> /dev
/null
; then
1175 echo "#define HAVE_BYTESWAP_H 1" >> $config_h
1179 if [ "$openbsd" = "yes" ] ; then
1180 echo "#define ENOTSUP 4096" >> $config_h
1183 if test "$darwin" = "yes" ; then
1184 echo "CONFIG_DARWIN=yes" >> $config_mak
1185 echo "#define CONFIG_DARWIN 1" >> $config_h
1187 if test "$solaris" = "yes" ; then
1188 echo "CONFIG_SOLARIS=yes" >> $config_mak
1189 echo "#define HOST_SOLARIS $solarisrev" >> $config_h
1190 if test "$needs_libsunmath" = "yes" ; then
1191 echo "NEEDS_LIBSUNMATH=yes" >> $config_mak
1192 echo "#define NEEDS_LIBSUNMATH 1" >> $config_h
1195 if test -n "$sparc_cpu"; then
1196 echo "CONFIG__sparc_${sparc_cpu}__=yes" >> $config_mak
1197 echo "#define __sparc_${sparc_cpu}__ 1" >> $config_h
1199 if test "$gdbstub" = "yes" ; then
1200 echo "CONFIG_GDBSTUB=yes" >> $config_mak
1201 echo "#define CONFIG_GDBSTUB 1" >> $config_h
1203 if test "$gprof" = "yes" ; then
1204 echo "TARGET_GPROF=yes" >> $config_mak
1205 echo "#define HAVE_GPROF 1" >> $config_h
1207 if test "$static" = "yes" ; then
1208 echo "CONFIG_STATIC=yes" >> $config_mak
1209 echo "#define CONFIG_STATIC 1" >> $config_h
1211 if test $profiler = "yes" ; then
1212 echo "#define CONFIG_PROFILER 1" >> $config_h
1214 if test "$slirp" = "yes" ; then
1215 echo "CONFIG_SLIRP=yes" >> $config_mak
1216 echo "#define CONFIG_SLIRP 1" >> $config_h
1218 if test "$vde" = "yes" ; then
1219 echo "CONFIG_VDE=yes" >> $config_mak
1220 echo "#define CONFIG_VDE 1" >> $config_h
1221 echo "VDE_LIBS=-lvdeplug" >> $config_mak
1223 for card
in $audio_card_list; do
1224 def
=CONFIG_
`echo $card | tr '[:lower:]' '[:upper:]'`
1225 echo "$def=yes" >> $config_mak
1226 echo "#define $def 1" >> $config_h
1228 echo "#define AUDIO_DRIVERS \\" >> $config_h
1229 for drv
in $audio_drv_list; do
1230 echo " &${drv}_audio_driver, \\" >>$config_h
1231 def
=CONFIG_
`echo $drv | tr '[:lower:]' '[:upper:]'`
1232 echo "$def=yes" >> $config_mak
1233 if test "$drv" = "fmod"; then
1234 echo "CONFIG_FMOD_LIB=$fmod_lib" >> $config_mak
1235 echo "CONFIG_FMOD_INC=$fmod_inc" >> $config_mak
1236 elif test "$drv" = "oss"; then
1237 echo "CONFIG_OSS_LIB=$oss_lib" >> $config_mak
1241 if test "$mixemu" = "yes" ; then
1242 echo "CONFIG_MIXEMU=yes" >> $config_mak
1243 echo "#define CONFIG_MIXEMU 1" >> $config_h
1245 if test "$vnc_tls" = "yes" ; then
1246 echo "CONFIG_VNC_TLS=yes" >> $config_mak
1247 echo "CONFIG_VNC_TLS_CFLAGS=$vnc_tls_cflags" >> $config_mak
1248 echo "CONFIG_VNC_TLS_LIBS=$vnc_tls_libs" >> $config_mak
1249 echo "#define CONFIG_VNC_TLS 1" >> $config_h
1251 qemu_version
=`head $source_path/VERSION`
1252 echo "VERSION=$qemu_version" >>$config_mak
1253 echo "#define QEMU_VERSION \"$qemu_version\"" >> $config_h
1254 echo "#define KVM_VERSION \"kvm-devel\"" >> $config_h
1256 echo "SRC_PATH=$source_path" >> $config_mak
1257 if [ "$source_path_used" = "yes" ]; then
1258 echo "VPATH=$source_path" >> $config_mak
1260 echo "TARGET_DIRS=$target_list" >> $config_mak
1261 if [ "$build_docs" = "yes" ] ; then
1262 echo "BUILD_DOCS=yes" >> $config_mak
1264 if test "$static" = "yes"; then
1269 if test "$sdl1" = "yes" ; then
1270 echo "#define CONFIG_SDL 1" >> $config_h
1271 echo "CONFIG_SDL=yes" >> $config_mak
1272 if test "$target_softmmu" = "no" -o "$static" = "yes"; then
1273 echo "SDL_LIBS=$sdl_static_libs" >> $config_mak
1275 echo "SDL_LIBS=`$sdl_config --libs`" >> $config_mak
1277 if [ "${aa}" = "yes" ] ; then
1278 echo "SDL_CFLAGS=`$sdl_config --cflags` `aalib-config --cflags`" >> $config_mak
1280 echo "SDL_CFLAGS=`$sdl_config --cflags`" >> $config_mak
1283 if test "$cocoa" = "yes" ; then
1284 echo "#define CONFIG_COCOA 1" >> $config_h
1285 echo "CONFIG_COCOA=yes" >> $config_mak
1287 if test "$curses" = "yes" ; then
1288 echo "#define CONFIG_CURSES 1" >> $config_h
1289 echo "CONFIG_CURSES=yes" >> $config_mak
1290 echo "CURSES_LIBS=-lcurses" >> $config_mak
1292 if test "$brlapi" = "yes" ; then
1293 echo "CONFIG_BRLAPI=yes" >> $config_mak
1294 echo "#define CONFIG_BRLAPI 1" >> $config_h
1295 echo "BRLAPI_LIBS=-lbrlapi" >> $config_mak
1297 if test "$aio" = "yes" ; then
1298 echo "#define CONFIG_AIO 1" >> $config_h
1299 echo "CONFIG_AIO=yes" >> $config_mak
1302 # XXX: suppress that
1303 if [ "$bsd" = "yes" ] ; then
1304 echo "#define O_LARGEFILE 0" >> $config_h
1305 echo "#define MAP_ANONYMOUS MAP_ANON" >> $config_h
1306 echo "#define _BSD 1" >> $config_h
1309 echo "#define CONFIG_UNAME_RELEASE \"$uname_release\"" >> $config_h
1312 if test `expr "$target_list" : ".*softmmu.*"` != 0 ; then
1313 tools
="qemu-img\$(EXESUF) $tools"
1314 if [ "$linux" = "yes" ] ; then
1315 tools
="qemu-nbd\$(EXESUF) $tools"
1318 echo "TOOLS=$tools" >> $config_mak
1320 test -f ${config_h}~ && cmp -s $config_h ${config_h}~ && mv ${config_h}~
$config_h
1322 for target
in $target_list; do
1323 target_dir
="$target"
1324 config_mak
=$target_dir/config.mak
1325 config_h
=$target_dir/config.h
1326 target_cpu
=`echo $target | cut -d '-' -f 1`
1327 target_bigendian
="no"
1328 [ "$target_cpu" = "armeb" ] && target_bigendian
=yes
1329 [ "$target_cpu" = "m68k" ] && target_bigendian
=yes
1330 [ "$target_cpu" = "mips" ] && target_bigendian
=yes
1331 [ "$target_cpu" = "mipsn32" ] && target_bigendian
=yes
1332 [ "$target_cpu" = "mips64" ] && target_bigendian
=yes
1333 [ "$target_cpu" = "ppc" ] && target_bigendian
=yes
1334 [ "$target_cpu" = "ppcemb" ] && target_bigendian
=yes
1335 [ "$target_cpu" = "ppc64" ] && target_bigendian
=yes
1336 [ "$target_cpu" = "ppc64abi32" ] && target_bigendian
=yes
1337 [ "$target_cpu" = "sh4eb" ] && target_bigendian
=yes
1338 [ "$target_cpu" = "sparc" ] && target_bigendian
=yes
1339 [ "$target_cpu" = "sparc64" ] && target_bigendian
=yes
1340 [ "$target_cpu" = "sparc32plus" ] && target_bigendian
=yes
1342 target_user_only
="no"
1343 target_linux_user
="no"
1344 target_darwin_user
="no"
1346 ${target_cpu}-softmmu)
1347 target_softmmu
="yes"
1349 ${target_cpu}-linux-user)
1350 target_user_only
="yes"
1351 target_linux_user
="yes"
1353 ${target_cpu}-darwin-user)
1354 target_user_only
="yes"
1355 target_darwin_user
="yes"
1358 echo "ERROR: Target '$target' not recognised"
1363 if test "$target_user_only" = "no" -a "$check_gfx" = "yes" \
1364 -a "$sdl" = "no" -a "$cocoa" = "no" ; then
1365 echo "ERROR: QEMU requires SDL or Cocoa for graphical output"
1366 echo "To build QEMU without graphical output configure with --disable-gfx-check"
1367 echo "Note that this will disable all output from the virtual graphics card"
1368 echo "except through VNC or curses."
1372 #echo "Creating $config_mak, $config_h and $target_dir/Makefile"
1374 test -f $config_h && mv $config_h ${config_h}~
1376 mkdir
-p $target_dir
1377 mkdir
-p $target_dir/fpu
1378 mkdir
-p $target_dir/tcg
1379 if test "$target" = "arm-linux-user" -o "$target" = "armeb-linux-user" ; then
1380 mkdir
-p $target_dir/nwfpe
1384 # don't use ln -sf as not all "ln -sf" over write the file/link
1386 rm -f $target_dir/Makefile
1387 ln -s $source_path/Makefile.target
$target_dir/Makefile
1390 echo "# Automatically generated by configure - do not modify" > $config_mak
1391 echo "/* Automatically generated by configure - do not modify */" > $config_h
1394 echo "include ../config-host.mak" >> $config_mak
1395 echo "#include \"../config-host.h\"" >> $config_h
1400 interp_prefix1
=`echo "$interp_prefix" | sed "s/%M/$target_cpu/g"`
1401 echo "#define CONFIG_QEMU_PREFIX \"$interp_prefix1\"" >> $config_h
1403 disable_cpu_emulation
() {
1404 if test $cpu_emulation = "no"; then
1405 echo "#define NO_CPU_EMULATION 1" >> $config_h
1406 echo "NO_CPU_EMULATION=1" >> $config_mak
1411 if test $kvm = "yes" -a "$target_softmmu" = "yes" -a \
1412 \
( "$cpu" = "i386" -o "$cpu" = "x86_64" -o "$cpu" = "ia64" -o "$cpu" = "powerpc" \
); then
1413 echo "#define USE_KVM 1" >> $config_h
1414 echo "USE_KVM=1" >> $config_mak
1415 echo "CONFIG_KVM_KERNEL_INC=$kernel_path/include" >> $config_mak
1416 if test $kvm_cap_pit = "yes" ; then
1417 echo "USE_KVM_PIT=1" >> $config_mak
1418 echo "#define USE_KVM_PIT 1" >> $config_h
1420 disable_cpu_emulation
1424 case "$target_cpu" in
1426 echo "TARGET_ARCH=i386" >> $config_mak
1427 echo "#define TARGET_ARCH \"i386\"" >> $config_h
1428 echo "#define TARGET_I386 1" >> $config_h
1429 if test $kqemu = "yes" -a "$target_softmmu" = "yes"
1431 echo "#define USE_KQEMU 1" >> $config_h
1433 gcc3minver
=`$cc --version 2> /dev/null| fgrep "(GCC) 3." | awk '{ print $3 }' | cut -f2 -d.`
1434 if test -n "$gcc3minver" && test $gcc3minver -gt 3
1436 echo "HAVE_GT_GCC_3_3=true" >> $config_mak
1438 echo "HAVE_GT_GCC_3_3=false" >> $config_mak
1443 echo "TARGET_ARCH=x86_64" >> $config_mak
1444 echo "#define TARGET_ARCH \"x86_64\"" >> $config_h
1445 echo "#define TARGET_I386 1" >> $config_h
1446 echo "#define TARGET_X86_64 1" >> $config_h
1447 if test $kqemu = "yes" -a "$target_softmmu" = "yes" -a $cpu = "x86_64"
1449 echo "#define USE_KQEMU 1" >> $config_h
1454 echo "TARGET_ARCH=ia64" >> $config_mak
1455 echo "#define TARGET_ARCH \"ia64\"" >> $config_h
1456 echo "#define TARGET_IA64 1" >> $config_h
1460 echo "TARGET_ARCH=alpha" >> $config_mak
1461 echo "CONFIG_DYNGEN_OP=yes" >> $config_mak
1462 echo "#define TARGET_ARCH \"alpha\"" >> $config_h
1463 echo "#define TARGET_ALPHA 1" >> $config_h
1464 echo "#define CONFIG_DYNGEN_OP 1" >> $config_h
1467 echo "TARGET_ARCH=arm" >> $config_mak
1468 echo "#define TARGET_ARCH \"arm\"" >> $config_h
1469 echo "#define TARGET_ARM 1" >> $config_h
1474 echo "TARGET_ARCH=cris" >> $config_mak
1475 echo "#define TARGET_ARCH \"cris\"" >> $config_h
1476 echo "#define TARGET_CRIS 1" >> $config_h
1479 echo "TARGET_ARCH=m68k" >> $config_mak
1480 echo "#define TARGET_ARCH \"m68k\"" >> $config_h
1481 echo "#define TARGET_M68K 1" >> $config_h
1485 echo "TARGET_ARCH=mips" >> $config_mak
1486 echo "#define TARGET_ARCH \"mips\"" >> $config_h
1487 echo "#define TARGET_MIPS 1" >> $config_h
1488 echo "#define TARGET_ABI_MIPSO32 1" >> $config_h
1491 echo "TARGET_ARCH=mipsn32" >> $config_mak
1492 echo "#define TARGET_ARCH \"mipsn32\"" >> $config_h
1493 echo "#define TARGET_MIPS 1" >> $config_h
1494 echo "#define TARGET_ABI_MIPSN32 1" >> $config_h
1497 echo "TARGET_ARCH=mips64" >> $config_mak
1498 echo "#define TARGET_ARCH \"mips64\"" >> $config_h
1499 echo "#define TARGET_MIPS 1" >> $config_h
1500 echo "#define TARGET_MIPS64 1" >> $config_h
1501 echo "#define TARGET_ABI_MIPSN64 1" >> $config_h
1504 echo "TARGET_ARCH=ppc" >> $config_mak
1505 echo "CONFIG_DYNGEN_OP=yes" >> $config_mak
1506 echo "#define TARGET_ARCH \"ppc\"" >> $config_h
1507 echo "#define TARGET_PPC 1" >> $config_h
1508 echo "#define CONFIG_DYNGEN_OP 1" >> $config_h
1511 echo "TARGET_ARCH=ppcemb" >> $config_mak
1512 echo "TARGET_ABI_DIR=ppc" >> $config_mak
1513 echo "CONFIG_DYNGEN_OP=yes" >> $config_mak
1514 echo "#define TARGET_ARCH \"ppcemb\"" >> $config_h
1515 echo "#define TARGET_PPC 1" >> $config_h
1516 echo "#define TARGET_PPCEMB 1" >> $config_h
1517 echo "#define CONFIG_DYNGEN_OP 1" >> $config_h
1518 if test "$device_tree_support" = "yes" ; then
1519 echo "#define CONFIG_LIBFDT 1" >> $config_h
1520 echo "CONFIG_LIBFDT=1" >> $config_mak
1525 echo "TARGET_ARCH=ppc64" >> $config_mak
1526 echo "TARGET_ABI_DIR=ppc" >> $config_mak
1527 echo "CONFIG_DYNGEN_OP=yes" >> $config_mak
1528 echo "#define TARGET_ARCH \"ppc64\"" >> $config_h
1529 echo "#define TARGET_PPC 1" >> $config_h
1530 echo "#define TARGET_PPC64 1" >> $config_h
1531 echo "#define CONFIG_DYNGEN_OP 1" >> $config_h
1534 echo "TARGET_ARCH=ppc64" >> $config_mak
1535 echo "TARGET_ABI_DIR=ppc" >> $config_mak
1536 echo "TARGET_ARCH2=ppc64abi32" >> $config_mak
1537 echo "CONFIG_DYNGEN_OP=yes" >> $config_mak
1538 echo "#define TARGET_ARCH \"ppc64\"" >> $config_h
1539 echo "#define TARGET_PPC 1" >> $config_h
1540 echo "#define TARGET_PPC64 1" >> $config_h
1541 echo "#define TARGET_ABI32 1" >> $config_h
1542 echo "#define CONFIG_DYNGEN_OP 1" >> $config_h
1545 echo "TARGET_ARCH=sh4" >> $config_mak
1546 echo "#define TARGET_ARCH \"sh4\"" >> $config_h
1547 echo "#define TARGET_SH4 1" >> $config_h
1552 echo "TARGET_ARCH=sparc" >> $config_mak
1553 echo "#define TARGET_ARCH \"sparc\"" >> $config_h
1554 echo "#define TARGET_SPARC 1" >> $config_h
1557 echo "TARGET_ARCH=sparc64" >> $config_mak
1558 echo "#define TARGET_ARCH \"sparc64\"" >> $config_h
1559 echo "#define TARGET_SPARC 1" >> $config_h
1560 echo "#define TARGET_SPARC64 1" >> $config_h
1564 echo "TARGET_ARCH=sparc64" >> $config_mak
1565 echo "TARGET_ABI_DIR=sparc" >> $config_mak
1566 echo "TARGET_ARCH2=sparc32plus" >> $config_mak
1567 echo "#define TARGET_ARCH \"sparc64\"" >> $config_h
1568 echo "#define TARGET_SPARC 1" >> $config_h
1569 echo "#define TARGET_SPARC64 1" >> $config_h
1570 echo "#define TARGET_ABI32 1" >> $config_h
1573 echo "Unsupported target CPU"
1577 if test "$target_bigendian" = "yes" ; then
1578 echo "TARGET_WORDS_BIGENDIAN=yes" >> $config_mak
1579 echo "#define TARGET_WORDS_BIGENDIAN 1" >> $config_h
1581 if test "$target_softmmu" = "yes" ; then
1582 echo "CONFIG_SOFTMMU=yes" >> $config_mak
1583 echo "#define CONFIG_SOFTMMU 1" >> $config_h
1585 if test "$target_user_only" = "yes" ; then
1586 echo "CONFIG_USER_ONLY=yes" >> $config_mak
1587 echo "#define CONFIG_USER_ONLY 1" >> $config_h
1589 if test "$target_linux_user" = "yes" ; then
1590 echo "CONFIG_LINUX_USER=yes" >> $config_mak
1591 echo "#define CONFIG_LINUX_USER 1" >> $config_h
1593 if test "$target_darwin_user" = "yes" ; then
1594 echo "CONFIG_DARWIN_USER=yes" >> $config_mak
1595 echo "#define CONFIG_DARWIN_USER 1" >> $config_h
1598 if test "$target_cpu" = "arm" \
1599 -o "$target_cpu" = "armeb" \
1600 -o "$target_cpu" = "m68k" \
1601 -o "$target_cpu" = "mips" \
1602 -o "$target_cpu" = "mipsel" \
1603 -o "$target_cpu" = "mipsn32" \
1604 -o "$target_cpu" = "mipsn32el" \
1605 -o "$target_cpu" = "mips64" \
1606 -o "$target_cpu" = "mips64el" \
1607 -o "$target_cpu" = "sparc" \
1608 -o "$target_cpu" = "sparc64" \
1609 -o "$target_cpu" = "sparc32plus"; then
1610 echo "CONFIG_SOFTFLOAT=yes" >> $config_mak
1611 echo "#define CONFIG_SOFTFLOAT 1" >> $config_h
1613 if test "$target_user_only" = "yes" -a "$bflt" = "yes"; then
1614 echo "TARGET_HAS_BFLT=yes" >> $config_mak
1615 echo "#define TARGET_HAS_BFLT 1" >> $config_h
1617 if test "$target_user_only" = "yes" \
1618 -a "$nptl" = "yes" -a "$target_nptl" = "yes"; then
1619 echo "#define USE_NPTL 1" >> $config_h
1621 # 32 bit ELF loader in addition to native 64 bit loader?
1622 if test "$target_user_only" = "yes" -a "$elfload32" = "yes"; then
1623 echo "TARGET_HAS_ELFLOAD32=yes" >> $config_mak
1624 echo "#define TARGET_HAS_ELFLOAD32 1" >> $config_h
1627 test -f ${config_h}~ && cmp -s $config_h ${config_h}~ && mv ${config_h}~
$config_h
1629 done # for target in $targets
1631 # build tree in object directory if source path is different from current one
1632 if test "$source_path_used" = "yes" ; then
1633 DIRS
="tests tests/cris slirp audio"
1634 FILES
="Makefile tests/Makefile"
1635 FILES
="$FILES tests/cris/Makefile tests/cris/.gdbinit"
1636 FILES
="$FILES tests/test-mmap.c"
1637 for dir
in $DIRS ; do
1640 # remove the link and recreate it, as not all "ln -sf" overwrite the link
1641 for f
in $FILES ; do
1643 ln -s $source_path/$f $f
1647 rm -f $TMPO $TMPC $TMPE $TMPS