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