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"
18 TMPI
="${TMPDIR1}/qemu-conf-${RANDOM}-$$-${RANDOM}.i"
22 interp_prefix
="/usr/gnemul/qemu-%M"
27 gcc3_list
="gcc-3.4.6 gcc-3.4 gcc34 gcc-3.3.6 gcc-3.3 gcc33 gcc-3.2 gcc32"
38 i386|i486|i586|i686|i86pc|BePC
)
71 "Power Macintosh"|ppc|ppc64
)
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
155 audio_possible_drivers
="oss sdl esd"
161 audio_possible_drivers
="oss sdl esd"
169 audio_drv_list
="coreaudio"
170 audio_possible_drivers
="coreaudio sdl fmod"
171 OS_CFLAGS
="-mdynamic-no-pic"
172 OS_LDFLAGS
="-framework CoreFoundation -framework IOKit"
178 needs_libsunmath
="no"
179 solarisrev
=`uname -r | cut -f2 -d.`
180 # have to select again, because `uname -m` returns i86pc
181 # even on an x86_64 box.
182 solariscpu
=`isainfo -k`
183 if test "${solariscpu}" = "amd64" ; then
186 if [ "$cpu" = "i386" -o "$cpu" = "x86_64" ] ; then
187 if test "$solarisrev" -le 9 ; then
188 if test -f /opt
/SUNWspro
/prod
/lib
/libsunmath.so
.1; then
189 needs_libsunmath
="yes"
191 echo "QEMU will not link correctly on Solaris 8/X86 or 9/x86 without"
192 echo "libsunmath from the Sun Studio compilers tools, due to a lack of"
193 echo "C99 math features in libm.so in Solaris 8/x86 and Solaris 9/x86"
194 echo "Studio 11 can be downloaded from www.sun.com."
198 if test "$solarisrev" -ge 9 ; then
202 if test -f /usr
/include
/sys
/soundcard.h
; then
205 audio_possible_drivers
="oss sdl"
209 audio_possible_drivers
="oss alsa sdl esd pa"
212 if [ "$cpu" = "i386" -o "$cpu" = "x86_64" ] ; then
214 audio_possible_drivers
="$audio_possible_drivers fmod"
219 if [ "$bsd" = "yes" ] ; then
220 if [ "$darwin" != "yes" ] ; then
227 source_path
=`dirname "$0"`
228 source_path_used
="no"
230 if [ -z "$source_path" ]; then
233 source_path
=`cd "$source_path"; pwd`
235 [ -f "$workdir/vl.c" ] || source_path_used
="yes"
238 # generate compile errors on warnings for development builds
239 #if grep cvs $source_path/VERSION > /dev/null 2>&1 ; then
244 optarg
=`expr "x$opt" : 'x[^=]*=\(.*\)'`
246 --help|
-h) show_help
=yes
248 --prefix=*) prefix
="$optarg"
250 --interp-prefix=*) interp_prefix
="$optarg"
252 --source-path=*) source_path
="$optarg"
253 source_path_used
="yes"
255 --cross-prefix=*) cross_prefix
="$optarg"
260 --host-cc=*) host_cc
="$optarg"
262 --make=*) make="$optarg"
264 --install=*) install="$optarg"
266 --extra-cflags=*) CFLAGS
="$optarg"
268 --extra-ldflags=*) LDFLAGS
="$optarg"
270 --cpu=*) cpu
="$optarg"
272 --target-list=*) target_list
="$optarg"
274 --enable-gprof) gprof
="yes"
276 --static) static
="yes"
278 --disable-sdl) sdl
="no"
280 --fmod-lib=*) fmod_lib
="$optarg"
282 --fmod-inc=*) fmod_inc
="$optarg"
284 --oss-lib=*) oss_lib
="$optarg"
286 --audio-card-list=*) audio_card_list
=`echo "$optarg" | sed -e 's/,/ /g'`
288 --audio-drv-list=*) audio_drv_list
="$optarg"
290 --enable-sparse) sparse
="yes"
292 --disable-sparse) sparse
="no"
294 --disable-vnc-tls) vnc_tls
="no"
296 --disable-slirp) slirp
="no"
298 --disable-vde) vde
="no"
300 --disable-kqemu) kqemu
="no"
302 --disable-brlapi) brlapi
="no"
304 --disable-bluez) bluez
="no"
306 --enable-profiler) profiler
="yes"
311 audio_drv_list
="coreaudio `echo $audio_drv_list | sed s,coreaudio,,g`"
313 --disable-gfx-check) check_gfx
="no"
315 --disable-gcc-check) check_gcc
="no"
317 --disable-system) softmmu
="no"
319 --enable-system) softmmu
="yes"
321 --disable-linux-user) linux_user
="no"
323 --enable-linux-user) linux_user
="yes"
325 --disable-darwin-user) darwin_user
="no"
327 --enable-darwin-user) darwin_user
="yes"
329 --disable-bsd-user) bsd_user
="no"
331 --enable-bsd-user) bsd_user
="yes"
333 --enable-uname-release=*) uname_release
="$optarg"
338 v7|v8
) SP_CFLAGS
="-m32 -mcpu=${sparc_cpu} -D__sparc_${sparc_cpu}__"; SP_LDFLAGS
="-m32"
339 target_cpu
="sparc"; cpu
="sparc" ;;
340 v8plus|v8plusa
) SP_CFLAGS
="-m32 -mcpu=ultrasparc -D__sparc_${sparc_cpu}__"; SP_LDFLAGS
="-m32"
341 target_cpu
="sparc"; cpu
="sparc" ;;
342 v9
) SP_CFLAGS
="-m64 -mcpu=ultrasparc -D__sparc_${sparc_cpu}__"; SP_LDFLAGS
="-m64"
343 target_cpu
="sparc64"; cpu
="sparc64" ;;
344 *) echo "undefined SPARC architecture. Exiting";exit 1;;
347 --enable-werror) werror
="yes"
349 --disable-werror) werror
="no"
351 --disable-curses) curses
="no"
353 --disable-nptl) nptl
="no"
355 --enable-mixemu) mixemu
="yes"
357 --disable-aio) aio
="no"
359 *) echo "ERROR: unknown option $opt"; show_help
="yes"
364 # default flags for all hosts
365 CFLAGS
="$CFLAGS -O2 -g -fno-strict-aliasing"
366 CFLAGS
="$CFLAGS -Wall -Wundef -Wendif-labels -Wwrite-strings"
367 LDFLAGS
="$LDFLAGS -g"
368 if test "$werror" = "yes" ; then
369 CFLAGS
="$CFLAGS -Werror"
372 if test "$solaris" = "no" ; then
373 if ld
--version 2>/dev
/null |
grep "GNU ld" >/dev
/null
2>/dev
/null
; then
374 LDFLAGS
="$LDFLAGS -Wl,--warn-common"
379 # If cpu ~= sparc and sparc_cpu hasn't been defined, plug in the right
380 # ARCH_CFLAGS/ARCH_LDFLAGS (assume sparc_v8plus for 32-bit and sparc_v9 for 64-bit)
383 sparc
) if test -z "$sparc_cpu" ; then
384 ARCH_CFLAGS
="-m32 -mcpu=ultrasparc -D__sparc_v8plus__"
387 ARCH_CFLAGS
="${SP_CFLAGS}"
388 ARCH_LDFLAGS
="${SP_LDFLAGS}"
391 sparc64
) if test -z "$sparc_cpu" ; then
392 ARCH_CFLAGS
="-m64 -mcpu=ultrasparc -D__sparc_v9__"
395 ARCH_CFLAGS
="${SP_CFLAGS}"
396 ARCH_LDFLAGS
="${SP_LDFLAGS}"
400 ARCH_CFLAGS
="-march=z900"
412 if test x
"$show_help" = x
"yes" ; then
415 Usage: configure [options]
416 Options: [defaults in brackets after descriptions]
419 echo "Standard options:"
420 echo " --help print this message"
421 echo " --prefix=PREFIX install in PREFIX [$prefix]"
422 echo " --interp-prefix=PREFIX where to find shared libraries, etc."
423 echo " use %M for cpu name [$interp_prefix]"
424 echo " --target-list=LIST set target list [$target_list]"
426 echo "kqemu kernel acceleration support:"
427 echo " --disable-kqemu disable kqemu support"
429 echo "Advanced options (experts only):"
430 echo " --source-path=PATH path of source code [$source_path]"
431 echo " --cross-prefix=PREFIX use PREFIX for compile tools [$cross_prefix]"
432 echo " --cc=CC use C compiler CC [$cc]"
433 echo " --host-cc=CC use C compiler CC [$host_cc] for dyngen etc."
434 echo " --make=MAKE use specified make [$make]"
435 echo " --install=INSTALL use specified install [$install]"
436 echo " --static enable static build [$static]"
437 echo " --enable-sparse enable sparse checker"
438 echo " --disable-sparse disable sparse checker (default)"
439 echo " --disable-werror disable compilation abort on warning"
440 echo " --disable-sdl disable SDL"
441 echo " --enable-cocoa enable COCOA (Mac OS X only)"
442 echo " --audio-drv-list=LIST set audio drivers list:"
443 echo " Available drivers: $audio_possible_drivers"
444 echo " --audio-card-list=LIST set list of additional emulated audio cards"
445 echo " Available cards: ac97 adlib cs4231a gus"
446 echo " --enable-mixemu enable mixer emulation"
447 echo " --disable-brlapi disable BrlAPI"
448 echo " --disable-vnc-tls disable TLS encryption for VNC server"
449 echo " --disable-curses disable curses output"
450 echo " --disable-bluez disable bluez stack connectivity"
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 " --enable-bsd-user enable all BSD usermode emulation targets"
459 echo " --disable-bsd-user disable all BSD usermode emulation targets"
460 echo " --fmod-lib path to FMOD library"
461 echo " --fmod-inc path to FMOD includes"
462 echo " --oss-lib path to OSS library"
463 echo " --enable-uname-release=R Return R for uname -r in usermode emulation"
464 echo " --sparc_cpu=V Build qemu for Sparc architecture v7, v8, v8plus, v8plusa, v9"
465 echo " --disable-vde disable support for vde network"
466 echo " --disable-aio disable AIO support"
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
509 if [ "$darwin" = "yes" -o "$mingw32" = "yes" ] ; then
511 elif [ "$bsd" = "yes" ]; then
514 # Some Linux architectures (e.g. s390) don't imply -lpthread automatically.
515 AIOLIBS
="-lrt -lpthread"
518 # Check for gcc4, error if pre-gcc4
519 if test "$check_gcc" = "yes" ; then
524 int main(){return 0;}
526 if "$cc" $ARCH_CFLAGS -o $TMPE $TMPC 2> /dev
/null
; then
527 echo "WARNING: \"$cc\" looks like gcc 4.x"
529 if test "$gcc3_search" = "yes" ; then
530 echo "Looking for gcc 3.x"
531 for compat_cc
in $gcc3_list ; do
532 if "$cross_prefix$compat_cc" --version 2> /dev
/null | fgrep
'(GCC) 3.' > /dev
/null
2>&1 ; then
533 echo "Found \"$compat_cc\""
534 cc
="$cross_prefix$compat_cc"
535 found_compat_cc
="yes"
539 if test "$found_compat_cc" = "no" ; then
540 echo "gcc 3.x not found!"
543 if test "$found_compat_cc" = "no" ; then
544 echo "QEMU is known to have problems when compiled with gcc 4.x"
545 echo "It is recommended that you use gcc 3.x to build QEMU"
546 echo "To use this compiler anyway, configure with --disable-gcc-check"
552 if test ! -x "$(which cgcc 2>/dev/null)"; then
557 # Solaris specific configure tool chain decisions
559 if test "$solaris" = "yes" ; then
561 # gcc for solaris 10/fcs in /usr/sfw/bin doesn't compile qemu correctly
562 # override the check with --disable-gcc-check
564 if test "$solarisrev" -eq 10 -a "$check_gcc" = "yes" ; then
566 if test "$solgcc" = "/usr/sfw/bin/gcc" ; then
567 echo "Solaris 10/FCS gcc in /usr/sfw/bin will not compiled qemu correctly."
568 echo "please get gcc-3.4.3 or later, from www.blastwave.org using pkg-get -i gcc3"
569 echo "or get the latest patch from SunSolve for gcc"
573 solinst
=`which $install 2> /dev/null | /usr/bin/grep -v "no $install in"`
574 if test -z "$solinst" ; then
575 echo "Solaris install program not found. Use --install=/usr/ucb/install or"
576 echo "install fileutils from www.blastwave.org using pkg-get -i fileutils"
577 echo "to get ginstall which is used by default (which lives in /opt/csw/bin)"
580 if test "$solinst" = "/usr/sbin/install" ; then
581 echo "Error: Solaris /usr/sbin/install is not an appropriate install program."
582 echo "try ginstall from the GNU fileutils available from www.blastwave.org"
583 echo "using pkg-get -i fileutils, or use --install=/usr/ucb/install"
586 sol_ar
=`which ar 2> /dev/null | /usr/bin/grep -v "no ar in"`
587 if test -z "$sol_ar" ; then
588 echo "Error: No path includes ar"
589 if test -f /usr
/ccs
/bin
/ar ; then
590 echo "Add /usr/ccs/bin to your path and rerun configure"
597 if test -z "$target_list" ; then
598 # these targets are portable
599 if [ "$softmmu" = "yes" ] ; then
618 # the following are Linux specific
619 if [ "$linux_user" = "yes" ] ; then
620 target_list
="${target_list}\
632 ppc64abi32-linux-user \
637 sparc32plus-linux-user \
640 # the following are Darwin specific
641 if [ "$darwin_user" = "yes" ] ; then
642 target_list
="$target_list i386-darwin-user ppc-darwin-user"
644 # the following are BSD specific
645 if [ "$bsd_user" = "yes" ] ; then
646 target_list
="${target_list}\
651 target_list
=`echo "$target_list" | sed -e 's/,/ /g'`
653 if test -z "$target_list" ; then
654 echo "No targets enabled"
658 if test -z "$cross_prefix" ; then
661 # big/little endian test
663 #include <inttypes.h>
664 int main(int argc, char ** argv){
665 volatile uint32_t i=0x01234567;
666 return (*((uint8_t*)(&i))) == 0x67;
670 if $cc $ARCH_CFLAGS -o $TMPE $TMPC 2> /dev
/null
; then
671 $TMPE && bigendian
="yes"
673 echo big
/little
test failed
678 # if cross compiling, cannot launch a program, so make a static guess
679 if test "$cpu" = "armv4b" \
683 -o "$cpu" = "mips64" \
684 -o "$cpu" = "powerpc" \
686 -o "$cpu" = "sparc" \
687 -o "$cpu" = "sparc64"; then
693 # host long bits test
695 if test "$cpu" = "x86_64" \
696 -o "$cpu" = "alpha" \
698 -o "$cpu" = "sparc64"; then
702 # ppc specific hostlongbits selection
703 if test "$cpu" = "powerpc" ; then
704 if $cc $ARCH_CFLAGS -dM -E - -o $TMPI 2>/dev
/null
</dev
/null
; then
705 grep -q __powerpc64__
$TMPI && hostlongbits
=64
707 echo hostlongbits
test failed
712 # check gcc options support
718 # Check host NPTL support
721 #include <linux/futex.h>
724 #if !defined(CLONE_SETTLS) || !defined(FUTEX_WAIT)
730 if $cc $ARCH_CFLAGS -c -o $TMPO $TMPC 2> /dev
/null
; then
736 ##########################################
741 int main(void) { zlibVersion(); return 0; }
743 if $cc $ARCH_CFLAGS -o $TMPE ${OS_CFLAGS} $TMPC -lz 2> /dev
/null
; then
747 echo "Error: zlib check failed"
748 echo "Make sure to have the zlib libs and headers installed."
753 ##########################################
758 if test -z "$sdl" ; then
759 sdl_config
="sdl-config"
765 #undef main /* We don't want SDL to override our main() */
766 int main( void ) { return SDL_Init (SDL_INIT_VIDEO); }
768 if $cc $ARCH_CFLAGS -o $TMPE ${OS_CFLAGS} `$sdl_config --cflags 2> /dev/null` $TMPC `$sdl_config --libs 2> /dev/null` 2> /tmp
/qemu-$$
-sdl-config.log
; then
769 _sdlversion
=`$sdl_config --version | sed 's/[^0-9]//g'`
770 if test "$_sdlversion" -lt 121 ; then
773 if test "$cocoa" = "no" ; then
778 # static link with sdl ?
779 if test "$sdl" = "yes" ; then
781 `$sdl_config --static-libs 2>/dev/null | grep \\\-laa > /dev/null` && aa
="yes"
782 sdl_static_libs
=`$sdl_config --static-libs 2>/dev/null`
783 if [ "$aa" = "yes" ] ; then
784 sdl_static_libs
="$sdl_static_libs `aalib-config --static-libs`"
787 if $cc -o $TMPE ${OS_CFLAGS} `$sdl_config --cflags 2> /dev/null` $TMPC $sdl_static_libs 2> /dev
/null
; then
791 fi # sdl compile test
793 # Make sure to disable cocoa if sdl was set
794 if test "$sdl" = "yes" ; then
796 audio_drv_list
="`echo $audio_drv_list | sed s,coreaudio,,g`"
800 ##########################################
802 if test "$vnc_tls" = "yes" ; then
804 #include <gnutls/gnutls.h>
805 int main(void) { gnutls_session_t s; gnutls_init(&s, GNUTLS_SERVER); return 0; }
807 vnc_tls_cflags
=`pkg-config --cflags gnutls 2> /dev/null`
808 vnc_tls_libs
=`pkg-config --libs gnutls 2> /dev/null`
809 if $cc $ARCH_CFLAGS -o $TMPE ${OS_CFLAGS} $vnc_tls_cflags $TMPC \
810 $vnc_tls_libs 2> /dev
/null
; then
817 ##########################################
818 # vde libraries probe
819 if test "$vde" = "yes" ; then
821 #include <libvdeplug.h>
824 struct vde_open_args a = {0, 0, 0};
825 vde_open("", "", &a);
829 if $cc $ARCH_CFLAGS -o $TMPE $TMPC -lvdeplug 2> /dev
/null
; then
836 ##########################################
837 # Sound support libraries probe
848 int main(void) { $exp }
850 if $cc $ARCH_CFLAGS $cfl -o $TMPE $TMPC $lib 2> /dev
/null
; then
854 echo "Error: $drv check failed"
855 echo "Make sure to have the $drv libs and headers installed."
861 audio_drv_list
=`echo "$audio_drv_list" | sed -e 's/,/ /g'`
862 for drv
in $audio_drv_list; do
865 audio_drv_probe
$drv alsa
/asoundlib.h
-lasound \
866 "snd_pcm_t **handle; return snd_pcm_close(*handle);"
870 if test -z $fmod_lib ||
test -z $fmod_inc; then
872 echo "Error: You must specify path to FMOD library and headers"
873 echo "Example: --fmod-inc=/path/include/fmod --fmod-lib=/path/lib/libfmod-3.74.so"
877 audio_drv_probe
$drv fmod.h
$fmod_lib "return FSOUND_GetVersion();" "-I $fmod_inc"
881 audio_drv_probe
$drv esd.h
-lesd 'return esd_play_stream(0, 0, "", 0);'
885 audio_drv_probe
$drv pulse
/simple.h
-lpulse-simple \
886 "pa_simple *s = NULL; pa_simple_free(s); return 0;"
889 oss|sdl|core|wav|dsound
)
890 # XXX: Probes for CoreAudio, DirectSound, SDL(?)
894 echo "$audio_possible_drivers" |
grep -q "\<$drv\>" ||
{
896 echo "Error: Unknown driver '$drv' selected"
897 echo "Possible drivers are: $audio_possible_drivers"
905 ##########################################
908 if test -z "$brlapi" ; then
912 int main( void ) { return brlapi__openConnection (NULL, NULL, NULL); }
914 if $cc ${ARCH_CFLAGS} -o $TMPE ${OS_CFLAGS} $TMPC -lbrlapi 2> /dev
/null
; then
916 fi # brlapi compile test
919 ##########################################
922 if test "$curses" = "yes" ; then
926 int main(void) { return curses_version(); }
928 if $cc $ARCH_CFLAGS -o $TMPE $TMPC -lcurses 2> /dev
/null
; then
933 ##########################################
934 # bluez support probe
935 if test "$bluez" = "yes" ; then
936 `pkg-config bluez` || bluez
="no"
938 if test "$bluez" = "yes" ; then
940 #include <bluetooth/bluetooth.h>
941 int main(void) { return bt_error(0); }
943 bluez_cflags
=`pkg-config --cflags bluez`
944 bluez_libs
=`pkg-config --libs bluez`
945 if $cc $ARCH_CFLAGS -o $TMPE ${OS_CFLAGS} $bluez_cflags $TMPC \
946 $bluez_libs 2> /dev
/null
; then
953 ##########################################
955 if test "$aio" = "yes" ; then
959 int main(void) { return aio_write(NULL); }
961 if $cc $ARCH_CFLAGS -o $TMPE $AIOLIBS $TMPC 2> /dev
/null
; then
966 # Check if tools are available to build documentation.
967 if [ -x "`which texi2html 2>/dev/null`" ] && \
968 [ -x "`which pod2man 2>/dev/null`" ]; then
972 if test "$mingw32" = "yes" ; then
973 if test -z "$prefix" ; then
974 prefix
="c:\\\\Program Files\\\\Qemu"
981 if test -z "$prefix" ; then
984 mansuffix
="/share/man"
985 datasuffix
="/share/qemu"
986 docsuffix
="/share/doc/qemu"
990 echo "Install prefix $prefix"
991 echo "BIOS directory $prefix$datasuffix"
992 echo "binary directory $prefix$binsuffix"
993 if test "$mingw32" = "no" ; then
994 echo "Manual directory $prefix$mansuffix"
995 echo "ELF interp prefix $interp_prefix"
997 echo "Source path $source_path"
998 echo "C compiler $cc"
999 echo "Host C compiler $host_cc"
1000 echo "ARCH_CFLAGS $ARCH_CFLAGS"
1002 echo "install $install"
1003 echo "host CPU $cpu"
1004 echo "host big endian $bigendian"
1005 echo "target list $target_list"
1006 echo "gprof enabled $gprof"
1007 echo "sparse enabled $sparse"
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 "brlapi support $brlapi"
1033 echo "Documentation $build_docs"
1034 [ ! -z "$uname_release" ] && \
1035 echo "uname -r $uname_release"
1036 echo "NPTL support $nptl"
1037 echo "vde support $vde"
1038 echo "AIO support $aio"
1040 if test $sdl_too_old = "yes"; then
1041 echo "-> Your SDL version is too old - please upgrade to have SDL support"
1043 if [ -s /tmp
/qemu-$$
-sdl-config.log
]; then
1044 echo "The error log from compiling the libSDL test is: "
1045 cat /tmp
/qemu-$$
-sdl-config.log
1047 rm -f /tmp
/qemu-$$
-sdl-config.log
1048 #if test "$sdl_static" = "no"; then
1049 # echo "WARNING: cannot compile statically with SDL - qemu-fast won't have a graphical output"
1051 config_mak
="config-host.mak"
1052 config_h
="config-host.h"
1054 #echo "Creating $config_mak and $config_h"
1056 test -f $config_h && mv $config_h ${config_h}~
1058 echo "# Automatically generated by configure - do not modify" > $config_mak
1059 echo "# Configured with: $0 $@" >> $config_mak
1060 echo "/* Automatically generated by configure - do not modify */" > $config_h
1062 echo "prefix=$prefix" >> $config_mak
1063 echo "bindir=\${prefix}$binsuffix" >> $config_mak
1064 echo "mandir=\${prefix}$mansuffix" >> $config_mak
1065 echo "datadir=\${prefix}$datasuffix" >> $config_mak
1066 echo "docdir=\${prefix}$docsuffix" >> $config_mak
1067 echo "#define CONFIG_QEMU_SHAREDIR \"$prefix$datasuffix\"" >> $config_h
1068 echo "MAKE=$make" >> $config_mak
1069 echo "INSTALL=$install" >> $config_mak
1070 echo "CC=$cc" >> $config_mak
1071 echo "HOST_CC=$host_cc" >> $config_mak
1072 echo "AR=$ar" >> $config_mak
1073 echo "STRIP=$strip -s -R .comment -R .note" >> $config_mak
1074 # XXX: only use CFLAGS and LDFLAGS ?
1075 # XXX: should export HOST_CFLAGS and HOST_LDFLAGS for cross
1076 # compilation of dyngen tool (useful for win32 build on Linux host)
1077 echo "OS_CFLAGS=$OS_CFLAGS" >> $config_mak
1078 echo "OS_LDFLAGS=$OS_LDFLAGS" >> $config_mak
1079 echo "ARCH_CFLAGS=$ARCH_CFLAGS" >> $config_mak
1080 echo "ARCH_LDFLAGS=$ARCH_LDFLAGS" >> $config_mak
1081 echo "CFLAGS=$CFLAGS" >> $config_mak
1082 echo "LDFLAGS=$LDFLAGS" >> $config_mak
1083 echo "EXESUF=$EXESUF" >> $config_mak
1084 echo "AIOLIBS=$AIOLIBS" >> $config_mak
1087 echo "ARCH=i386" >> $config_mak
1088 echo "#define HOST_I386 1" >> $config_h
1091 echo "ARCH=x86_64" >> $config_mak
1092 echo "#define HOST_X86_64 1" >> $config_h
1095 echo "ARCH=alpha" >> $config_mak
1096 echo "#define HOST_ALPHA 1" >> $config_h
1099 echo "ARCH=arm" >> $config_mak
1100 echo "#define HOST_ARM 1" >> $config_h
1103 echo "ARCH=arm" >> $config_mak
1104 echo "#define HOST_ARM 1" >> $config_h
1107 echo "ARCH=cris" >> $config_mak
1108 echo "#define HOST_CRIS 1" >> $config_h
1111 echo "ARCH=hppa" >> $config_mak
1112 echo "#define HOST_HPPA 1" >> $config_h
1115 echo "ARCH=ia64" >> $config_mak
1116 echo "#define HOST_IA64 1" >> $config_h
1119 echo "ARCH=m68k" >> $config_mak
1120 echo "#define HOST_M68K 1" >> $config_h
1123 echo "ARCH=mips" >> $config_mak
1124 echo "#define HOST_MIPS 1" >> $config_h
1127 echo "ARCH=mips64" >> $config_mak
1128 echo "#define HOST_MIPS64 1" >> $config_h
1131 if test "$hostlongbits" = "32"; then
1132 echo "ARCH=ppc" >> $config_mak
1133 echo "#define HOST_PPC 1" >> $config_h
1135 echo "ARCH=ppc64" >> $config_mak
1136 echo "#define HOST_PPC64 1" >> $config_h
1140 echo "ARCH=s390" >> $config_mak
1141 echo "#define HOST_S390 1" >> $config_h
1144 echo "ARCH=sparc" >> $config_mak
1145 echo "#define HOST_SPARC 1" >> $config_h
1148 echo "ARCH=sparc64" >> $config_mak
1149 echo "#define HOST_SPARC64 1" >> $config_h
1152 echo "Unsupported CPU = $cpu"
1156 if test "$sparse" = "yes" ; then
1157 echo "CC := REAL_CC=\"\$(CC)\" cgcc" >> $config_mak
1158 echo "HOST_CC := REAL_CC=\"\$(HOST_CC)\" cgcc" >> $config_mak
1159 echo "CFLAGS += -Wbitwise -Wno-transparent-union -Wno-old-initializer -Wno-non-pointer-null" >> $config_mak
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
1255 echo "SRC_PATH=$source_path" >> $config_mak
1256 if [ "$source_path_used" = "yes" ]; then
1257 echo "VPATH=$source_path" >> $config_mak
1259 echo "TARGET_DIRS=$target_list" >> $config_mak
1260 if [ "$build_docs" = "yes" ] ; then
1261 echo "BUILD_DOCS=yes" >> $config_mak
1263 if test "$static" = "yes"; then
1268 if test "$sdl1" = "yes" ; then
1269 echo "#define CONFIG_SDL 1" >> $config_h
1270 echo "CONFIG_SDL=yes" >> $config_mak
1271 if test "$target_softmmu" = "no" -o "$static" = "yes"; then
1272 echo "SDL_LIBS=$sdl_static_libs" >> $config_mak
1274 echo "SDL_LIBS=`$sdl_config --libs`" >> $config_mak
1276 if [ "${aa}" = "yes" ] ; then
1277 echo "SDL_CFLAGS=`$sdl_config --cflags` `aalib-config --cflags`" >> $config_mak
1279 echo "SDL_CFLAGS=`$sdl_config --cflags`" >> $config_mak
1282 if test "$cocoa" = "yes" ; then
1283 echo "#define CONFIG_COCOA 1" >> $config_h
1284 echo "CONFIG_COCOA=yes" >> $config_mak
1286 if test "$curses" = "yes" ; then
1287 echo "#define CONFIG_CURSES 1" >> $config_h
1288 echo "CONFIG_CURSES=yes" >> $config_mak
1289 echo "CURSES_LIBS=-lcurses" >> $config_mak
1291 if test "$brlapi" = "yes" ; then
1292 echo "CONFIG_BRLAPI=yes" >> $config_mak
1293 echo "#define CONFIG_BRLAPI 1" >> $config_h
1294 echo "BRLAPI_LIBS=-lbrlapi" >> $config_mak
1296 if test "$bluez" = "yes" ; then
1297 echo "CONFIG_BLUEZ=yes" >> $config_mak
1298 echo "CONFIG_BLUEZ_CFLAGS=$bluez_cflags" >> $config_mak
1299 echo "CONFIG_BLUEZ_LIBS=$bluez_libs" >> $config_mak
1300 echo "#define CONFIG_BLUEZ 1" >> $config_h
1302 if test "$aio" = "yes" ; then
1303 echo "#define CONFIG_AIO 1" >> $config_h
1304 echo "CONFIG_AIO=yes" >> $config_mak
1307 # XXX: suppress that
1308 if [ "$bsd" = "yes" ] ; then
1309 echo "#define O_LARGEFILE 0" >> $config_h
1310 echo "#define MAP_ANONYMOUS MAP_ANON" >> $config_h
1311 echo "#define _BSD 1" >> $config_h
1314 echo "#define CONFIG_UNAME_RELEASE \"$uname_release\"" >> $config_h
1317 if test `expr "$target_list" : ".*softmmu.*"` != 0 ; then
1318 tools
="qemu-img\$(EXESUF) $tools"
1319 if [ "$linux" = "yes" ] ; then
1320 tools
="qemu-nbd\$(EXESUF) $tools"
1323 echo "TOOLS=$tools" >> $config_mak
1325 test -f ${config_h}~ && cmp -s $config_h ${config_h}~ && mv ${config_h}~
$config_h
1327 for target
in $target_list; do
1328 target_dir
="$target"
1329 config_mak
=$target_dir/config.mak
1330 config_h
=$target_dir/config.h
1331 target_cpu
=`echo $target | cut -d '-' -f 1`
1332 target_bigendian
="no"
1333 [ "$target_cpu" = "armeb" ] && target_bigendian
=yes
1334 [ "$target_cpu" = "m68k" ] && target_bigendian
=yes
1335 [ "$target_cpu" = "mips" ] && target_bigendian
=yes
1336 [ "$target_cpu" = "mipsn32" ] && target_bigendian
=yes
1337 [ "$target_cpu" = "mips64" ] && target_bigendian
=yes
1338 [ "$target_cpu" = "ppc" ] && target_bigendian
=yes
1339 [ "$target_cpu" = "ppcemb" ] && target_bigendian
=yes
1340 [ "$target_cpu" = "ppc64" ] && target_bigendian
=yes
1341 [ "$target_cpu" = "ppc64abi32" ] && target_bigendian
=yes
1342 [ "$target_cpu" = "sh4eb" ] && target_bigendian
=yes
1343 [ "$target_cpu" = "sparc" ] && target_bigendian
=yes
1344 [ "$target_cpu" = "sparc64" ] && target_bigendian
=yes
1345 [ "$target_cpu" = "sparc32plus" ] && target_bigendian
=yes
1347 target_user_only
="no"
1348 target_linux_user
="no"
1349 target_darwin_user
="no"
1350 target_bsd_user
="no"
1352 ${target_cpu}-softmmu)
1353 target_softmmu
="yes"
1355 ${target_cpu}-linux-user)
1356 target_user_only
="yes"
1357 target_linux_user
="yes"
1359 ${target_cpu}-darwin-user)
1360 target_user_only
="yes"
1361 target_darwin_user
="yes"
1363 ${target_cpu}-bsd-user)
1364 target_user_only
="yes"
1365 target_bsd_user
="yes"
1368 echo "ERROR: Target '$target' not recognised"
1373 if test "$target_user_only" = "no" -a "$check_gfx" = "yes" \
1374 -a "$sdl" = "no" -a "$cocoa" = "no" ; then
1375 echo "ERROR: QEMU requires SDL or Cocoa for graphical output"
1376 echo "To build QEMU without graphical output configure with --disable-gfx-check"
1377 echo "Note that this will disable all output from the virtual graphics card"
1378 echo "except through VNC or curses."
1382 #echo "Creating $config_mak, $config_h and $target_dir/Makefile"
1384 test -f $config_h && mv $config_h ${config_h}~
1386 mkdir
-p $target_dir
1387 mkdir
-p $target_dir/fpu
1388 mkdir
-p $target_dir/tcg
1389 if test "$target" = "arm-linux-user" -o "$target" = "armeb-linux-user" -o "$target" = "arm-bsd-user" -o "$target" = "armeb-bsd-user" ; then
1390 mkdir
-p $target_dir/nwfpe
1394 # don't use ln -sf as not all "ln -sf" over write the file/link
1396 rm -f $target_dir/Makefile
1397 ln -s $source_path/Makefile.target
$target_dir/Makefile
1400 echo "# Automatically generated by configure - do not modify" > $config_mak
1401 echo "/* Automatically generated by configure - do not modify */" > $config_h
1404 echo "include ../config-host.mak" >> $config_mak
1405 echo "#include \"../config-host.h\"" >> $config_h
1410 interp_prefix1
=`echo "$interp_prefix" | sed "s/%M/$target_cpu/g"`
1411 echo "#define CONFIG_QEMU_PREFIX \"$interp_prefix1\"" >> $config_h
1414 case "$target_cpu" in
1416 echo "TARGET_ARCH=i386" >> $config_mak
1417 echo "#define TARGET_ARCH \"i386\"" >> $config_h
1418 echo "#define TARGET_I386 1" >> $config_h
1419 if test $kqemu = "yes" -a "$target_softmmu" = "yes"
1421 echo "#define USE_KQEMU 1" >> $config_h
1423 gcc3minver
=`$cc --version 2> /dev/null| fgrep "(GCC) 3." | awk '{ print $3 }' | cut -f2 -d.`
1424 if test -n "$gcc3minver" && test $gcc3minver -gt 3
1426 echo "HAVE_GT_GCC_3_3=true" >> $config_mak
1428 echo "HAVE_GT_GCC_3_3=false" >> $config_mak
1432 echo "TARGET_ARCH=x86_64" >> $config_mak
1433 echo "#define TARGET_ARCH \"x86_64\"" >> $config_h
1434 echo "#define TARGET_I386 1" >> $config_h
1435 echo "#define TARGET_X86_64 1" >> $config_h
1436 if test $kqemu = "yes" -a "$target_softmmu" = "yes" -a $cpu = "x86_64"
1438 echo "#define USE_KQEMU 1" >> $config_h
1442 echo "TARGET_ARCH=alpha" >> $config_mak
1443 echo "#define TARGET_ARCH \"alpha\"" >> $config_h
1444 echo "#define TARGET_ALPHA 1" >> $config_h
1447 echo "TARGET_ARCH=arm" >> $config_mak
1448 echo "#define TARGET_ARCH \"arm\"" >> $config_h
1449 echo "#define TARGET_ARM 1" >> $config_h
1452 gdb_xml_files
="arm-core.xml arm-vfp.xml arm-vfp3.xml arm-neon.xml"
1455 echo "TARGET_ARCH=cris" >> $config_mak
1456 echo "#define TARGET_ARCH \"cris\"" >> $config_h
1457 echo "#define TARGET_CRIS 1" >> $config_h
1460 echo "TARGET_ARCH=m68k" >> $config_mak
1461 echo "#define TARGET_ARCH \"m68k\"" >> $config_h
1462 echo "#define TARGET_M68K 1" >> $config_h
1464 gdb_xml_files
="cf-core.xml cf-fp.xml"
1467 echo "TARGET_ARCH=mips" >> $config_mak
1468 echo "#define TARGET_ARCH \"mips\"" >> $config_h
1469 echo "#define TARGET_MIPS 1" >> $config_h
1470 echo "#define TARGET_ABI_MIPSO32 1" >> $config_h
1473 echo "TARGET_ARCH=mipsn32" >> $config_mak
1474 echo "#define TARGET_ARCH \"mipsn32\"" >> $config_h
1475 echo "#define TARGET_MIPS 1" >> $config_h
1476 echo "#define TARGET_ABI_MIPSN32 1" >> $config_h
1479 echo "TARGET_ARCH=mips64" >> $config_mak
1480 echo "#define TARGET_ARCH \"mips64\"" >> $config_h
1481 echo "#define TARGET_MIPS 1" >> $config_h
1482 echo "#define TARGET_MIPS64 1" >> $config_h
1483 echo "#define TARGET_ABI_MIPSN64 1" >> $config_h
1486 echo "TARGET_ARCH=ppc" >> $config_mak
1487 echo "CONFIG_DYNGEN_OP=yes" >> $config_mak
1488 echo "#define TARGET_ARCH \"ppc\"" >> $config_h
1489 echo "#define TARGET_PPC 1" >> $config_h
1490 echo "#define CONFIG_DYNGEN_OP 1" >> $config_h
1493 echo "TARGET_ARCH=ppcemb" >> $config_mak
1494 echo "TARGET_ABI_DIR=ppc" >> $config_mak
1495 echo "CONFIG_DYNGEN_OP=yes" >> $config_mak
1496 echo "#define TARGET_ARCH \"ppcemb\"" >> $config_h
1497 echo "#define TARGET_PPC 1" >> $config_h
1498 echo "#define TARGET_PPCEMB 1" >> $config_h
1499 echo "#define CONFIG_DYNGEN_OP 1" >> $config_h
1502 echo "TARGET_ARCH=ppc64" >> $config_mak
1503 echo "TARGET_ABI_DIR=ppc" >> $config_mak
1504 echo "CONFIG_DYNGEN_OP=yes" >> $config_mak
1505 echo "#define TARGET_ARCH \"ppc64\"" >> $config_h
1506 echo "#define TARGET_PPC 1" >> $config_h
1507 echo "#define TARGET_PPC64 1" >> $config_h
1508 echo "#define CONFIG_DYNGEN_OP 1" >> $config_h
1511 echo "TARGET_ARCH=ppc64" >> $config_mak
1512 echo "TARGET_ABI_DIR=ppc" >> $config_mak
1513 echo "TARGET_ARCH2=ppc64abi32" >> $config_mak
1514 echo "CONFIG_DYNGEN_OP=yes" >> $config_mak
1515 echo "#define TARGET_ARCH \"ppc64\"" >> $config_h
1516 echo "#define TARGET_PPC 1" >> $config_h
1517 echo "#define TARGET_PPC64 1" >> $config_h
1518 echo "#define TARGET_ABI32 1" >> $config_h
1519 echo "#define CONFIG_DYNGEN_OP 1" >> $config_h
1522 echo "TARGET_ARCH=sh4" >> $config_mak
1523 echo "#define TARGET_ARCH \"sh4\"" >> $config_h
1524 echo "#define TARGET_SH4 1" >> $config_h
1529 echo "TARGET_ARCH=sparc" >> $config_mak
1530 echo "#define TARGET_ARCH \"sparc\"" >> $config_h
1531 echo "#define TARGET_SPARC 1" >> $config_h
1534 echo "TARGET_ARCH=sparc64" >> $config_mak
1535 echo "#define TARGET_ARCH \"sparc64\"" >> $config_h
1536 echo "#define TARGET_SPARC 1" >> $config_h
1537 echo "#define TARGET_SPARC64 1" >> $config_h
1541 echo "TARGET_ARCH=sparc64" >> $config_mak
1542 echo "TARGET_ABI_DIR=sparc" >> $config_mak
1543 echo "TARGET_ARCH2=sparc32plus" >> $config_mak
1544 echo "#define TARGET_ARCH \"sparc64\"" >> $config_h
1545 echo "#define TARGET_SPARC 1" >> $config_h
1546 echo "#define TARGET_SPARC64 1" >> $config_h
1547 echo "#define TARGET_ABI32 1" >> $config_h
1550 echo "Unsupported target CPU"
1554 if test "$target_bigendian" = "yes" ; then
1555 echo "TARGET_WORDS_BIGENDIAN=yes" >> $config_mak
1556 echo "#define TARGET_WORDS_BIGENDIAN 1" >> $config_h
1558 if test "$target_softmmu" = "yes" ; then
1559 echo "CONFIG_SOFTMMU=yes" >> $config_mak
1560 echo "#define CONFIG_SOFTMMU 1" >> $config_h
1562 if test "$target_user_only" = "yes" ; then
1563 echo "CONFIG_USER_ONLY=yes" >> $config_mak
1564 echo "#define CONFIG_USER_ONLY 1" >> $config_h
1566 if test "$target_linux_user" = "yes" ; then
1567 echo "CONFIG_LINUX_USER=yes" >> $config_mak
1568 echo "#define CONFIG_LINUX_USER 1" >> $config_h
1570 if test "$target_darwin_user" = "yes" ; then
1571 echo "CONFIG_DARWIN_USER=yes" >> $config_mak
1572 echo "#define CONFIG_DARWIN_USER 1" >> $config_h
1575 if test ! -z "$gdb_xml_files" ; then
1576 for x
in $gdb_xml_files; do
1577 list
="$list $source_path/gdb-xml/$x"
1580 echo "TARGET_XML_FILES=$list" >> $config_mak
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
1610 if test "$target_bsd_user" = "yes" ; then
1611 echo "CONFIG_BSD_USER=yes" >> $config_mak
1612 echo "#define CONFIG_BSD_USER 1" >> $config_h
1615 test -f ${config_h}~ && cmp -s $config_h ${config_h}~ && mv ${config_h}~
$config_h
1617 done # for target in $targets
1619 # build tree in object directory if source path is different from current one
1620 if test "$source_path_used" = "yes" ; then
1621 DIRS
="tests tests/cris slirp audio"
1622 FILES
="Makefile tests/Makefile"
1623 FILES
="$FILES tests/cris/Makefile tests/cris/.gdbinit"
1624 FILES
="$FILES tests/test-mmap.c"
1625 for dir
in $DIRS ; do
1628 # remove the link and recreate it, as not all "ln -sf" overwrite the link
1629 for f
in $FILES ; do
1631 ln -s $source_path/$f $f
1635 rm -f $TMPO $TMPC $TMPE $TMPS $TMPI