Autodetect tools neccessary for building documentation.
[qemu/mini2440.git] / configure
blob120e03d7b80c19ba8387ff2809b6276c47835df3
1 #!/bin/sh
3 # qemu configure script (c) 2003 Fabrice Bellard
5 # set temporary file name
6 if test ! -z "$TMPDIR" ; then
7 TMPDIR1="${TMPDIR}"
8 elif test ! -z "$TEMPDIR" ; then
9 TMPDIR1="${TEMPDIR}"
10 else
11 TMPDIR1="/tmp"
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"
19 # default parameters
20 prefix=""
21 interp_prefix="/usr/gnemul/qemu-%M"
22 static="no"
23 cross_prefix=""
24 cc="gcc"
25 host_cc="gcc"
26 ar="ar"
27 make="make"
28 install="install"
29 strip="strip"
30 cpu=`uname -m`
31 target_list=""
32 case "$cpu" in
33 i386|i486|i586|i686|i86pc|BePC)
34 cpu="i386"
36 armv*b)
37 cpu="armv4b"
39 armv*l)
40 cpu="armv4l"
42 alpha)
43 cpu="alpha"
45 "Power Macintosh"|ppc|ppc64)
46 cpu="powerpc"
48 mips)
49 cpu="mips"
51 s390)
52 cpu="s390"
54 sparc)
55 cpu="sparc"
57 sparc64)
58 cpu="sparc64"
60 ia64)
61 cpu="ia64"
63 m68k)
64 cpu="m68k"
66 x86_64|amd64)
67 cpu="x86_64"
70 cpu="unknown"
72 esac
73 gprof="no"
74 bigendian="no"
75 mingw32="no"
76 EXESUF=""
77 gdbstub="yes"
78 slirp="yes"
79 adlib="no"
80 oss="no"
81 dsound="no"
82 coreaudio="no"
83 alsa="no"
84 fmod="no"
85 fmod_lib=""
86 fmod_inc=""
87 bsd="no"
88 linux="no"
89 kqemu="no"
90 profiler="no"
91 kernel_path=""
92 cocoa="no"
93 check_gfx="yes"
94 check_gcc="yes"
95 softmmu="yes"
96 user="no"
97 build_docs="no"
99 # OS specific
100 targetos=`uname -s`
101 case $targetos in
102 CYGWIN*)
103 mingw32="yes"
104 CFLAGS="-O2 -mno-cygwin"
106 MINGW32*)
107 mingw32="yes"
109 FreeBSD)
110 bsd="yes"
111 oss="yes"
112 if [ "$cpu" = "i386" -o "$cpu" = "x86_64" ] ; then
113 kqemu="yes"
116 NetBSD)
117 bsd="yes"
118 oss="yes"
120 OpenBSD)
121 bsd="yes"
122 oss="yes"
124 Darwin)
125 bsd="yes"
126 darwin="yes"
129 oss="yes"
130 linux="yes"
131 user="yes"
132 if [ "$cpu" = "i386" -o "$cpu" = "x86_64" ] ; then
133 kqemu="yes"
136 esac
138 if [ "$bsd" = "yes" ] ; then
139 if [ "$darwin" != "yes" ] ; then
140 make="gmake"
144 # find source path
145 source_path=`dirname "$0"`
146 if [ -z "$source_path" ]; then
147 source_path=`pwd`
148 else
149 source_path=`cd "$source_path"; pwd`
151 if test "$source_path" = `pwd` ; then
152 source_path_used="no"
153 else
154 source_path_used="yes"
157 for opt do
158 optarg=`expr "$opt" : '[^=]*=\(.*\)'`
159 case "$opt" in
160 --help|-h) show_help=yes
162 --prefix=*) prefix="$optarg"
164 --interp-prefix=*) interp_prefix="$optarg"
166 --source-path=*) source_path="$optarg"
167 source_path_used="yes"
169 --cross-prefix=*) cross_prefix="$optarg"
171 --cc=*) cc="$optarg"
173 --host-cc=*) host_cc="$optarg"
175 --make=*) make="$optarg"
177 --install=*) install="$optarg"
179 --extra-cflags=*) CFLAGS="$optarg"
181 --extra-ldflags=*) LDFLAGS="$optarg"
183 --cpu=*) cpu="$optarg"
185 --target-list=*) target_list="$optarg"
187 --enable-gprof) gprof="yes"
189 --static) static="yes"
191 --disable-sdl) sdl="no"
193 --enable-coreaudio) coreaudio="yes"
195 --enable-alsa) alsa="yes"
197 --enable-dsound) dsound="yes"
199 --enable-fmod) fmod="yes"
201 --fmod-lib=*) fmod_lib="$optarg"
203 --fmod-inc=*) fmod_inc="$optarg"
205 --enable-mingw32) mingw32="yes" ; cross_prefix="i386-mingw32-"
207 --disable-slirp) slirp="no"
209 --enable-adlib) adlib="yes"
211 --disable-kqemu) kqemu="no"
213 --enable-profiler) profiler="yes"
215 --kernel-path=*) kernel_path="$optarg"
217 --enable-cocoa) cocoa="yes" ; coreaudio="yes" ; sdl="no"
219 --disable-gfx-check) check_gfx="no"
221 --disable-gcc-check) check_gcc="no"
223 --disable-system) softmmu="no"
225 --enable-system) softmmu="yes"
227 --disable-user) user="no"
229 --enable-user) user="yes"
231 esac
232 done
234 # Checking for CFLAGS
235 if test -z "$CFLAGS"; then
236 CFLAGS="-O2"
239 if test x"$show_help" = x"yes" ; then
240 cat << EOF
242 Usage: configure [options]
243 Options: [defaults in brackets after descriptions]
246 echo "Standard options:"
247 echo " --help print this message"
248 echo " --prefix=PREFIX install in PREFIX [$prefix]"
249 echo " --interp-prefix=PREFIX where to find shared libraries, etc."
250 echo " use %M for cpu name [$interp_prefix]"
251 echo " --target-list=LIST set target list [$target_list]"
252 echo ""
253 echo "kqemu kernel acceleration support:"
254 echo " --disable-kqemu disable kqemu support"
255 echo " --kernel-path=PATH set the kernel path (configure probes it)"
256 echo ""
257 echo "Advanced options (experts only):"
258 echo " --source-path=PATH path of source code [$source_path]"
259 echo " --cross-prefix=PREFIX use PREFIX for compile tools [$cross_prefix]"
260 echo " --cc=CC use C compiler CC [$cc]"
261 echo " --host-cc=CC use C compiler CC [$host_cc] for dyngen etc."
262 echo " --make=MAKE use specified make [$make]"
263 echo " --install=INSTALL use specified install [$install]"
264 echo " --static enable static build [$static]"
265 echo " --enable-cocoa enable COCOA (Mac OS X only)"
266 echo " --enable-mingw32 enable Win32 cross compilation with mingw32"
267 echo " --enable-adlib enable Adlib emulation"
268 echo " --enable-coreaudio enable Coreaudio audio driver"
269 echo " --enable-alsa enable ALSA audio driver"
270 echo " --enable-fmod enable FMOD audio driver"
271 echo " --enabled-dsound enable DirectSound audio driver"
272 echo " --enable-system enable all system emulation targets"
273 echo " --disable-system disable all system emulation targets"
274 echo " --enable-user enable all linux usermode emulation targets"
275 echo " --disable-user disable all linux usermode emulation targets"
276 echo " --fmod-lib path to FMOD library"
277 echo " --fmod-inc path to FMOD includes"
278 echo ""
279 echo "NOTE: The object files are build at the place where configure is launched"
280 exit 1
283 cc="${cross_prefix}${cc}"
284 ar="${cross_prefix}${ar}"
285 strip="${cross_prefix}${strip}"
287 if [ -z `which $cc` ] ; then
288 echo "Compiler $cc could not be found"
289 exit
292 if test "$mingw32" = "yes" ; then
293 linux="no"
294 EXESUF=".exe"
295 gdbstub="no"
296 oss="no"
297 if [ "$cpu" = "i386" ] ; then
298 kqemu="yes"
302 if test -z "$target_list" ; then
303 # these targets are portable
304 if [ "$softmmu" = "yes" ] ; then
305 target_list="i386-softmmu ppc-softmmu sparc-softmmu x86_64-softmmu mips-softmmu mipsel-softmmu arm-softmmu"
307 # the following are Linux specific
308 if [ "$user" = "yes" ] ; then
309 target_list="i386-user arm-user armeb-user sparc-user ppc-user mips-user mipsel-user $target_list"
311 else
312 target_list=`echo "$target_list" | sed -e 's/,/ /g'`
314 if test -z "$target_list" ; then
315 echo "No targets enabled"
316 exit 1
319 if test -z "$cross_prefix" ; then
321 # ---
322 # big/little endian test
323 cat > $TMPC << EOF
324 #include <inttypes.h>
325 int main(int argc, char ** argv){
326 volatile uint32_t i=0x01234567;
327 return (*((uint8_t*)(&i))) == 0x67;
331 if $cc -o $TMPE $TMPC 2>/dev/null ; then
332 $TMPE && bigendian="yes"
333 else
334 echo big/little test failed
337 else
339 # if cross compiling, cannot launch a program, so make a static guess
340 if test "$cpu" = "powerpc" -o "$cpu" = "mips" -o "$cpu" = "s390" -o "$cpu" = "sparc" -o "$cpu" = "sparc64" -o "$cpu" = "m68k" -o "$cpu" = "armv4b"; then
341 bigendian="yes"
346 # host long bits test
347 hostlongbits="32"
348 if test "$cpu" = "sparc64" -o "$cpu" = "ia64" -o "$cpu" = "x86_64" -o "$cpu" = "alpha"; then
349 hostlongbits="64"
352 # check gcc options support
353 cat > $TMPC <<EOF
354 int main(void) {
358 have_gcc3_options="no"
359 if $cc -fno-reorder-blocks -fno-optimize-sibling-calls -o $TMPO $TMPC 2> /dev/null ; then
360 have_gcc3_options="yes"
363 # Check for gcc4, error if pre-gcc4
364 if test "$check_gcc" = "yes" ; then
365 cat > $TMPC <<EOF
366 #if __GNUC__ < 4
367 #error gcc3
368 #endif
369 int main(){return 0;}
371 if $cc -o $TMPO $TMPC 2>/dev/null ; then
372 echo "ERROR: \"$cc\" looks like gcc 4.x"
373 echo "QEMU is known to have problems when compiled with gcc 4.x"
374 echo "It is recommended that you use gcc 3.x to build QEMU"
375 echo "To use this compiler anyway, configure with --disable-gcc-check"
376 exit 1;
380 ##########################################
381 # SDL probe
383 sdl_too_old=no
385 if test -z "$sdl" ; then
387 sdl_config="sdl-config"
388 sdl=no
389 sdl_static=no
391 if test "$mingw32" = "yes" -a ! -z "$cross_prefix" ; then
392 # win32 cross compilation case
393 sdl_config="i386-mingw32msvc-sdl-config"
394 sdl=yes
395 else
396 # normal SDL probe
397 cat > $TMPC << EOF
398 #include <SDL.h>
399 #undef main /* We don't want SDL to override our main() */
400 int main( void ) { return SDL_Init (SDL_INIT_VIDEO); }
403 if $cc -o $TMPE `$sdl_config --cflags 2> /dev/null` $TMPC `$sdl_config --libs 2> /dev/null` 2> /dev/null ; then
404 _sdlversion=`$sdl_config --version | sed 's/[^0-9]//g'`
405 if test "$_sdlversion" -lt 121 ; then
406 sdl_too_old=yes
407 else
408 sdl=yes
411 # static link with sdl ?
412 if test "$sdl" = "yes" ; then
413 aa="no"
414 `$sdl_config --static-libs | grep \\\-laa > /dev/null` && aa="yes"
415 sdl_static_libs=`$sdl_config --static-libs`
416 if [ "$aa" = "yes" ] ; then
417 sdl_static_libs="$sdl_static_libs `aalib-config --static-libs`"
420 if $cc -o $TMPE `$sdl_config --cflags 2> /dev/null` $TMPC $sdl_static_libs 2> /dev/null; then
421 sdl_static=yes
424 fi # static link
426 fi # sdl compile test
428 fi # cross compilation
429 fi # -z $sdl
431 # Check if tools are available to build documentation.
432 if [ ! -z `which texi2html` ] && [ ! -z `which pod2man` ]; then
433 build_docs="yes"
436 if test "$mingw32" = "yes" ; then
437 if test -z "$prefix" ; then
438 prefix="/c/Program Files/Qemu"
440 mandir="$prefix"
441 datadir="$prefix"
442 docdir="$prefix"
443 bindir="$prefix"
444 else
445 if test -z "$prefix" ; then
446 prefix="/usr/local"
448 mandir="$prefix/share/man"
449 datadir="$prefix/share/qemu"
450 docdir="$prefix/share/doc/qemu"
451 bindir="$prefix/bin"
454 echo "Install prefix $prefix"
455 echo "BIOS directory $datadir"
456 echo "binary directory $bindir"
457 if test "$mingw32" = "no" ; then
458 echo "Manual directory $mandir"
459 echo "ELF interp prefix $interp_prefix"
461 echo "Source path $source_path"
462 echo "C compiler $cc"
463 echo "Host C compiler $host_cc"
464 echo "make $make"
465 echo "install $install"
466 echo "host CPU $cpu"
467 echo "host big endian $bigendian"
468 echo "target list $target_list"
469 echo "gprof enabled $gprof"
470 echo "profiler $profiler"
471 echo "static build $static"
472 if test "$darwin" = "yes" ; then
473 echo "Cocoa support $cocoa"
475 echo "SDL support $sdl"
476 if test "$sdl" != "no" ; then
477 echo "SDL static link $sdl_static"
479 echo "mingw32 support $mingw32"
480 echo "Adlib support $adlib"
481 echo "CoreAudio support $coreaudio"
482 echo "ALSA support $alsa"
483 echo "DSound support $dsound"
484 if test "$fmod" = "yes"; then
485 if test -z $fmod_lib || test -z $fmod_inc; then
486 echo
487 echo "Error: You must specify path to FMOD library and headers"
488 echo "Example: --fmod-inc=/path/include/fmod --fmod-lib=/path/lib/libfmod-3.74.so"
489 echo
490 exit 1
492 fmod_support=" (lib='$fmod_lib' include='$fmod_inc')"
493 else
494 fmod_support=""
496 echo "FMOD support $fmod $fmod_support"
497 echo "kqemu support $kqemu"
498 echo "Documentation $build_docs"
500 if test $sdl_too_old = "yes"; then
501 echo "-> Your SDL version is too old - please upgrade to have SDL support"
503 #if test "$sdl_static" = "no"; then
504 # echo "WARNING: cannot compile statically with SDL - qemu-fast won't have a graphical output"
506 config_mak="config-host.mak"
507 config_h="config-host.h"
509 #echo "Creating $config_mak and $config_h"
511 echo "# Automatically generated by configure - do not modify" > $config_mak
512 echo "# Configured with: $0 $@" >> $config_mak
513 echo "/* Automatically generated by configure - do not modify */" > $config_h
515 echo "prefix=$prefix" >> $config_mak
516 echo "bindir=$bindir" >> $config_mak
517 echo "mandir=$mandir" >> $config_mak
518 echo "datadir=$datadir" >> $config_mak
519 echo "docdir=$docdir" >> $config_mak
520 echo "#define CONFIG_QEMU_SHAREDIR \"$datadir\"" >> $config_h
521 echo "MAKE=$make" >> $config_mak
522 echo "INSTALL=$install" >> $config_mak
523 echo "CC=$cc" >> $config_mak
524 if test "$have_gcc3_options" = "yes" ; then
525 echo "HAVE_GCC3_OPTIONS=yes" >> $config_mak
527 echo "HOST_CC=$host_cc" >> $config_mak
528 echo "AR=$ar" >> $config_mak
529 echo "STRIP=$strip -s -R .comment -R .note" >> $config_mak
530 echo "CFLAGS=$CFLAGS" >> $config_mak
531 echo "LDFLAGS=$LDFLAGS" >> $config_mak
532 echo "EXESUF=$EXESUF" >> $config_mak
533 if test "$cpu" = "i386" ; then
534 echo "ARCH=i386" >> $config_mak
535 echo "#define HOST_I386 1" >> $config_h
536 elif test "$cpu" = "x86_64" ; then
537 echo "ARCH=x86_64" >> $config_mak
538 echo "#define HOST_X86_64 1" >> $config_h
539 elif test "$cpu" = "armv4b" ; then
540 echo "ARCH=arm" >> $config_mak
541 echo "#define HOST_ARM 1" >> $config_h
542 elif test "$cpu" = "armv4l" ; then
543 echo "ARCH=arm" >> $config_mak
544 echo "#define HOST_ARM 1" >> $config_h
545 elif test "$cpu" = "powerpc" ; then
546 echo "ARCH=ppc" >> $config_mak
547 echo "#define HOST_PPC 1" >> $config_h
548 elif test "$cpu" = "mips" ; then
549 echo "ARCH=mips" >> $config_mak
550 echo "#define HOST_MIPS 1" >> $config_h
551 elif test "$cpu" = "s390" ; then
552 echo "ARCH=s390" >> $config_mak
553 echo "#define HOST_S390 1" >> $config_h
554 elif test "$cpu" = "alpha" ; then
555 echo "ARCH=alpha" >> $config_mak
556 echo "#define HOST_ALPHA 1" >> $config_h
557 elif test "$cpu" = "sparc" ; then
558 echo "ARCH=sparc" >> $config_mak
559 echo "#define HOST_SPARC 1" >> $config_h
560 elif test "$cpu" = "sparc64" ; then
561 echo "ARCH=sparc64" >> $config_mak
562 echo "#define HOST_SPARC64 1" >> $config_h
563 elif test "$cpu" = "ia64" ; then
564 echo "ARCH=ia64" >> $config_mak
565 echo "#define HOST_IA64 1" >> $config_h
566 elif test "$cpu" = "m68k" ; then
567 echo "ARCH=m68k" >> $config_mak
568 echo "#define HOST_M68K 1" >> $config_h
569 else
570 echo "Unsupported CPU"
571 exit 1
573 if test "$bigendian" = "yes" ; then
574 echo "WORDS_BIGENDIAN=yes" >> $config_mak
575 echo "#define WORDS_BIGENDIAN 1" >> $config_h
577 echo "#define HOST_LONG_BITS $hostlongbits" >> $config_h
578 if test "$mingw32" = "yes" ; then
579 echo "CONFIG_WIN32=yes" >> $config_mak
580 echo "#define CONFIG_WIN32 1" >> $config_h
581 elif test -f "/usr/include/byteswap.h" ; then
582 echo "#define HAVE_BYTESWAP_H 1" >> $config_h
584 if test "$darwin" = "yes" ; then
585 echo "CONFIG_DARWIN=yes" >> $config_mak
586 echo "#define CONFIG_DARWIN 1" >> $config_h
588 if test "$gdbstub" = "yes" ; then
589 echo "CONFIG_GDBSTUB=yes" >> $config_mak
590 echo "#define CONFIG_GDBSTUB 1" >> $config_h
592 if test "$gprof" = "yes" ; then
593 echo "TARGET_GPROF=yes" >> $config_mak
594 echo "#define HAVE_GPROF 1" >> $config_h
596 if test "$static" = "yes" ; then
597 echo "CONFIG_STATIC=yes" >> $config_mak
598 echo "#define CONFIG_STATIC 1" >> $config_h
600 if test $profiler = "yes" ; then
601 echo "#define CONFIG_PROFILER 1" >> $config_h
603 if test "$slirp" = "yes" ; then
604 echo "CONFIG_SLIRP=yes" >> $config_mak
605 echo "#define CONFIG_SLIRP 1" >> $config_h
607 if test "$adlib" = "yes" ; then
608 echo "CONFIG_ADLIB=yes" >> $config_mak
609 echo "#define CONFIG_ADLIB 1" >> $config_h
611 if test "$oss" = "yes" ; then
612 echo "CONFIG_OSS=yes" >> $config_mak
613 echo "#define CONFIG_OSS 1" >> $config_h
615 if test "$coreaudio" = "yes" ; then
616 echo "CONFIG_COREAUDIO=yes" >> $config_mak
617 echo "#define CONFIG_COREAUDIO 1" >> $config_h
619 if test "$alsa" = "yes" ; then
620 echo "CONFIG_ALSA=yes" >> $config_mak
621 echo "#define CONFIG_ALSA 1" >> $config_h
623 if test "$dsound" = "yes" ; then
624 echo "CONFIG_DSOUND=yes" >> $config_mak
625 echo "#define CONFIG_DSOUND 1" >> $config_h
627 if test "$fmod" = "yes" ; then
628 echo "CONFIG_FMOD=yes" >> $config_mak
629 echo "CONFIG_FMOD_LIB=$fmod_lib" >> $config_mak
630 echo "CONFIG_FMOD_INC=$fmod_inc" >> $config_mak
631 echo "#define CONFIG_FMOD 1" >> $config_h
633 qemu_version=`head $source_path/VERSION`
634 echo "VERSION=$qemu_version" >>$config_mak
635 echo "#define QEMU_VERSION \"$qemu_version\"" >> $config_h
637 echo "SRC_PATH=$source_path" >> $config_mak
638 if [ "$source_path_used" = "yes" ]; then
639 echo "VPATH=$source_path" >> $config_mak
641 echo "TARGET_DIRS=$target_list" >> $config_mak
642 if [ "$build_docs" = "yes" ] ; then
643 echo "BUILD_DOCS=yes" >> $config_mak
646 # XXX: suppress that
647 if [ "$bsd" = "yes" ] ; then
648 echo "#define O_LARGEFILE 0" >> $config_h
649 echo "#define MAP_ANONYMOUS MAP_ANON" >> $config_h
650 echo "#define _BSD 1" >> $config_h
653 for target in $target_list; do
654 target_dir="$target"
655 config_mak=$target_dir/config.mak
656 config_h=$target_dir/config.h
657 target_cpu=`echo $target | cut -d '-' -f 1`
658 target_bigendian="no"
659 [ "$target_cpu" = "armeb" ] && target_bigendian=yes
660 [ "$target_cpu" = "sparc" ] && target_bigendian=yes
661 [ "$target_cpu" = "sparc64" ] && target_bigendian=yes
662 [ "$target_cpu" = "ppc" ] && target_bigendian=yes
663 [ "$target_cpu" = "ppc64" ] && target_bigendian=yes
664 [ "$target_cpu" = "mips" ] && target_bigendian=yes
665 target_softmmu="no"
666 if expr $target : '.*-softmmu' > /dev/null ; then
667 target_softmmu="yes"
669 target_user_only="no"
670 if expr $target : '.*-user' > /dev/null ; then
671 target_user_only="yes"
674 if test "$target_user_only" = "no" -a "$check_gfx" = "yes" \
675 -a "$sdl" = "no" -a "$cocoa" = "no" ; then
676 echo "ERROR: QEMU requires SDL or Cocoa for graphical output"
677 echo "To build QEMU without graphical output configure with --disable-gfx-check"
678 echo "Note that this will disable all output from the virtual graphics card."
679 exit 1;
682 #echo "Creating $config_mak, $config_h and $target_dir/Makefile"
684 mkdir -p $target_dir
685 mkdir -p $target_dir/fpu
686 if test "$target" = "arm-user" -o "$target" = "armeb-user" ; then
687 mkdir -p $target_dir/nwfpe
689 if test "$target_user_only" = "no" ; then
690 mkdir -p $target_dir/slirp
693 ln -sf $source_path/Makefile.target $target_dir/Makefile
695 echo "# Automatically generated by configure - do not modify" > $config_mak
696 echo "/* Automatically generated by configure - do not modify */" > $config_h
699 echo "include ../config-host.mak" >> $config_mak
700 echo "#include \"../config-host.h\"" >> $config_h
702 interp_prefix1=`echo "$interp_prefix" | sed "s/%M/$target_cpu/g"`
703 echo "#define CONFIG_QEMU_PREFIX \"$interp_prefix1\"" >> $config_h
705 if test "$target_cpu" = "i386" ; then
706 echo "TARGET_ARCH=i386" >> $config_mak
707 echo "#define TARGET_ARCH \"i386\"" >> $config_h
708 echo "#define TARGET_I386 1" >> $config_h
709 if test $kqemu = "yes" -a "$target_softmmu" = "yes" -a $cpu = "i386" ; then
710 echo "#define USE_KQEMU 1" >> $config_h
712 elif test "$target_cpu" = "arm" -o "$target_cpu" = "armeb" ; then
713 echo "TARGET_ARCH=arm" >> $config_mak
714 echo "#define TARGET_ARCH \"arm\"" >> $config_h
715 echo "#define TARGET_ARM 1" >> $config_h
716 elif test "$target_cpu" = "sparc" ; then
717 echo "TARGET_ARCH=sparc" >> $config_mak
718 echo "#define TARGET_ARCH \"sparc\"" >> $config_h
719 echo "#define TARGET_SPARC 1" >> $config_h
720 elif test "$target_cpu" = "sparc64" ; then
721 echo "TARGET_ARCH=sparc64" >> $config_mak
722 echo "#define TARGET_ARCH \"sparc64\"" >> $config_h
723 echo "#define TARGET_SPARC 1" >> $config_h
724 echo "#define TARGET_SPARC64 1" >> $config_h
725 elif test "$target_cpu" = "ppc" ; then
726 echo "TARGET_ARCH=ppc" >> $config_mak
727 echo "#define TARGET_ARCH \"ppc\"" >> $config_h
728 echo "#define TARGET_PPC 1" >> $config_h
729 elif test "$target_cpu" = "ppc64" ; then
730 echo "TARGET_ARCH=ppc64" >> $config_mak
731 echo "#define TARGET_ARCH \"ppc64\"" >> $config_h
732 echo "#define TARGET_PPC 1" >> $config_h
733 echo "#define TARGET_PPC64 1" >> $config_h
734 elif test "$target_cpu" = "x86_64" ; then
735 echo "TARGET_ARCH=x86_64" >> $config_mak
736 echo "#define TARGET_ARCH \"x86_64\"" >> $config_h
737 echo "#define TARGET_I386 1" >> $config_h
738 echo "#define TARGET_X86_64 1" >> $config_h
739 if test $kqemu = "yes" -a "$target_softmmu" = "yes" -a $cpu = "x86_64" ; then
740 echo "#define USE_KQEMU 1" >> $config_h
742 elif test "$target_cpu" = "mips" -o "$target_cpu" = "mipsel" ; then
743 echo "TARGET_ARCH=mips" >> $config_mak
744 echo "#define TARGET_ARCH \"mips\"" >> $config_h
745 echo "#define TARGET_MIPS 1" >> $config_h
746 else
747 echo "Unsupported target CPU"
748 exit 1
750 if test "$target_bigendian" = "yes" ; then
751 echo "TARGET_WORDS_BIGENDIAN=yes" >> $config_mak
752 echo "#define TARGET_WORDS_BIGENDIAN 1" >> $config_h
754 if test "$target_softmmu" = "yes" ; then
755 echo "CONFIG_SOFTMMU=yes" >> $config_mak
756 echo "#define CONFIG_SOFTMMU 1" >> $config_h
758 if test "$target_user_only" = "yes" ; then
759 echo "CONFIG_USER_ONLY=yes" >> $config_mak
760 echo "#define CONFIG_USER_ONLY 1" >> $config_h
763 if test "$target_cpu" = "arm" -o "$target_cpu" = "armeb" ; then
764 echo "CONFIG_SOFTFLOAT=yes" >> $config_mak
765 echo "#define CONFIG_SOFTFLOAT 1" >> $config_h
767 # sdl defines
769 if test "$target_user_only" = "no"; then
770 if test "$target_softmmu" = "no" -o "$static" = "yes"; then
771 sdl1=$sdl_static
772 else
773 sdl1=$sdl
775 if test "$sdl1" = "yes" ; then
776 echo "#define CONFIG_SDL 1" >> $config_h
777 echo "CONFIG_SDL=yes" >> $config_mak
778 if test "$target_softmmu" = "no" -o "$static" = "yes"; then
779 echo "SDL_LIBS=$sdl_static_libs" >> $config_mak
780 else
781 echo "SDL_LIBS=`$sdl_config --libs`" >> $config_mak
783 if [ "${aa}" = "yes" ] ; then
784 echo "SDL_CFLAGS=`$sdl_config --cflags` `aalib-config --cflags`" >> $config_mak
785 else
786 echo "SDL_CFLAGS=`$sdl_config --cflags`" >> $config_mak
791 if test "$cocoa" = "yes" ; then
792 echo "#define CONFIG_COCOA 1" >> $config_h
793 echo "CONFIG_COCOA=yes" >> $config_mak
796 done # for target in $targets
798 # build tree in object directory if source path is different from current one
799 if test "$source_path_used" = "yes" ; then
800 DIRS="tests"
801 FILES="Makefile tests/Makefile"
802 for dir in $DIRS ; do
803 mkdir -p $dir
804 done
805 for f in $FILES ; do
806 ln -sf $source_path/$f $f
807 done
810 rm -f $TMPO $TMPC $TMPE $TMPS