Remove ppc64h CPUs definitions from the configure script.
[qemu] / configure
1 #!/bin/sh
2 #
3 # qemu configure script (c) 2003 Fabrice Bellard
4 #
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"
12 fi
13
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
19 # default parameters
20 prefix=""
21 interp_prefix="/usr/gnemul/qemu-%M"
22 static="no"
23 cross_prefix=""
24 cc="gcc"
25 gcc3_search="yes"
26 gcc3_list="gcc-3.4.6 gcc-3.4 gcc34 gcc-3.3.6 gcc-3.3 gcc33 gcc-3.2 gcc32"
27 host_cc="gcc"
28 ar="ar"
29 make="make"
30 install="install"
31 strip="strip"
32 cpu=`uname -m`
33 target_list=""
34 case "$cpu" in
35   i386|i486|i586|i686|i86pc|BePC)
36     cpu="i386"
37   ;;
38   armv*b)
39     cpu="armv4b"
40   ;;
41   armv*l)
42     cpu="armv4l"
43   ;;
44   alpha)
45     cpu="alpha"
46   ;;
47   "Power Macintosh"|ppc|ppc64)
48     cpu="powerpc"
49   ;;
50   mips)
51     cpu="mips"
52   ;;
53   mips64)
54     cpu="mips64"
55   ;;
56   cris)
57     cpu="cris"
58   ;;
59   s390*)
60     cpu="s390"
61   ;;
62   sparc|sun4[cdmuv])
63     cpu="sparc"
64   ;;
65   sparc64)
66     cpu="sparc64"
67   ;;
68   ia64)
69     cpu="ia64"
70   ;;
71   m68k)
72     cpu="m68k"
73   ;;
74   x86_64|amd64)
75     cpu="x86_64"
76   ;;
77   *)
78     cpu="unknown"
79   ;;
80 esac
81 gprof="no"
82 bigendian="no"
83 mingw32="no"
84 EXESUF=""
85 gdbstub="yes"
86 slirp="yes"
87 adlib="no"
88 oss="no"
89 dsound="no"
90 coreaudio="no"
91 alsa="no"
92 fmod="no"
93 fmod_lib=""
94 fmod_inc=""
95 vnc_tls="yes"
96 bsd="no"
97 linux="no"
98 kqemu="no"
99 profiler="no"
100 cocoa="no"
101 check_gfx="yes"
102 check_gcc="yes"
103 softmmu="yes"
104 linux_user="no"
105 darwin_user="no"
106 build_docs="no"
107 uname_release=""
108
109 # OS specific
110 targetos=`uname -s`
111 case $targetos in
112 CYGWIN*)
113 mingw32="yes"
114 OS_CFLAGS="-mno-cygwin"
115 VL_OS_LDFLAGS="-mno-cygwin"
116 if [ "$cpu" = "i386" ] ; then
117     kqemu="yes"
118 fi
119 ;;
120 MINGW32*)
121 mingw32="yes"
122 if [ "$cpu" = "i386" ] ; then
123     kqemu="yes"
124 fi
125 ;;
126 GNU/kFreeBSD)
127 oss="yes"
128 if [ "$cpu" = "i386" -o "$cpu" = "x86_64" ] ; then
129     kqemu="yes"
130 fi
131 ;;
132 FreeBSD)
133 bsd="yes"
134 oss="yes"
135 if [ "$cpu" = "i386" -o "$cpu" = "x86_64" ] ; then
136     kqemu="yes"
137 fi
138 ;;
139 NetBSD)
140 bsd="yes"
141 oss="yes"
142 ;;
143 OpenBSD)
144 bsd="yes"
145 oss="yes"
146 ;;
147 Darwin)
148 bsd="yes"
149 darwin="yes"
150 darwin_user="yes"
151 cocoa="yes"
152 coreaudio="yes"
153 OS_CFLAGS="-mdynamic-no-pic"
154 ;;
155 SunOS)
156     solaris="yes"
157     make="gmake"
158     install="ginstall"
159     needs_libsunmath="no"
160     solarisrev=`uname -r | cut -f2 -d.`
161     # have to select again, because `uname -m` returns i86pc
162     # even on an x86_64 box.
163     solariscpu=`isainfo -k`
164     if test "${solariscpu}" = "amd64" ; then
165         cpu="x86_64"
166     fi
167     if [ "$cpu" = "i386" -o "$cpu" = "x86_64" ] ; then
168         if test "$solarisrev" -le 9 ; then
169             if test -f /opt/SUNWspro/prod/lib/libsunmath.so.1; then
170                 needs_libsunmath="yes"
171             else
172                 echo "QEMU will not link correctly on Solaris 8/X86 or 9/x86 without"
173                 echo "libsunmath from the Sun Studio compilers tools, due to a lack of"
174                 echo "C99 math features in libm.so in Solaris 8/x86 and Solaris 9/x86"
175                 echo "Studio 11 can be downloaded from www.sun.com."
176                 exit 1
177             fi
178         fi
179         if test "$solarisrev" -ge 9 ; then
180             kqemu="yes"
181         fi
182     fi
183     if test -f /usr/include/sys/soundcard.h ; then
184         oss=yes
185     fi
186 ;;
187 *)
188 oss="yes"
189 linux="yes"
190 linux_user="yes"
191 if [ "$cpu" = "i386" -o "$cpu" = "x86_64" ] ; then
192     kqemu="yes"
193 fi
194 ;;
195 esac
196
197 if [ "$bsd" = "yes" ] ; then
198   if [ "$darwin" != "yes" ] ; then
199     make="gmake"
200   fi
201 fi
202
203 # find source path
204 source_path=`dirname "$0"`
205 if [ -z "$source_path" ]; then
206     source_path=`pwd`
207 else
208     source_path=`cd "$source_path"; pwd`
209 fi
210 if test "$source_path" = `pwd` ; then
211     source_path_used="no"
212 else
213     source_path_used="yes"
214 fi
215
216 werror="no"
217 # generate compile errors on warnings for development builds
218 #if grep cvs $source_path/VERSION > /dev/null 2>&1 ; then
219 #werror="yes";
220 #fi
221
222 for opt do
223   optarg=`expr "x$opt" : 'x[^=]*=\(.*\)'`
224   case "$opt" in
225   --help|-h) show_help=yes
226   ;;
227   --prefix=*) prefix="$optarg"
228   ;;
229   --interp-prefix=*) interp_prefix="$optarg"
230   ;;
231   --source-path=*) source_path="$optarg"
232   source_path_used="yes"
233   ;;
234   --cross-prefix=*) cross_prefix="$optarg"
235   ;;
236   --cc=*) cc="$optarg"
237   gcc3_search="no"
238   ;;
239   --host-cc=*) host_cc="$optarg"
240   ;;
241   --make=*) make="$optarg"
242   ;;
243   --install=*) install="$optarg"
244   ;;
245   --extra-cflags=*) CFLAGS="$optarg"
246   ;;
247   --extra-ldflags=*) LDFLAGS="$optarg"
248   ;;
249   --cpu=*) cpu="$optarg"
250   ;;
251   --target-list=*) target_list="$optarg"
252   ;;
253   --enable-gprof) gprof="yes"
254   ;;
255   --static) static="yes"
256   ;;
257   --disable-sdl) sdl="no"
258   ;;
259   --enable-coreaudio) coreaudio="yes"
260   ;;
261   --enable-alsa) alsa="yes"
262   ;;
263   --enable-dsound) dsound="yes"
264   ;;
265   --enable-fmod) fmod="yes"
266   ;;
267   --fmod-lib=*) fmod_lib="$optarg"
268   ;;
269   --fmod-inc=*) fmod_inc="$optarg"
270   ;;
271   --disable-vnc-tls) vnc_tls="no"
272   ;;
273   --enable-mingw32) mingw32="yes" ; cross_prefix="i386-mingw32-" ; linux_user="no"
274   ;;
275   --disable-slirp) slirp="no"
276   ;;
277   --enable-adlib) adlib="yes"
278   ;;
279   --disable-kqemu) kqemu="no"
280   ;;
281   --enable-profiler) profiler="yes"
282   ;;
283   --enable-cocoa) cocoa="yes" ; coreaudio="yes" ; sdl="no"
284   ;;
285   --disable-gfx-check) check_gfx="no"
286   ;;
287   --disable-gcc-check) check_gcc="no"
288   ;;
289   --disable-system) softmmu="no"
290   ;;
291   --enable-system) softmmu="yes"
292   ;;
293   --disable-linux-user) linux_user="no"
294   ;;
295   --enable-linux-user) linux_user="yes"
296   ;;
297   --disable-darwin-user) darwin_user="no"
298   ;;
299   --enable-darwin-user) darwin_user="yes"
300   ;;
301   --enable-uname-release=*) uname_release="$optarg"
302   ;;
303   --sparc_cpu=*)
304       sparc_cpu="$optarg"
305       case $sparc_cpu in
306         v7|v8) SP_CFLAGS="-m32 -mcpu=${sparc_cpu} -D__sparc_${sparc_cpu}__"; SP_LDFLAGS="-m32"
307                  target_cpu="sparc"; cpu="sparc" ;;
308         v8plus|v8plusa) SP_CFLAGS="-m32 -mcpu=ultrasparc -D__sparc_${sparc_cpu}__"; SP_LDFLAGS="-m32"
309                  target_cpu="sparc"; cpu="sparc" ;;
310         v9)    SP_CFLAGS="-m64 -mcpu=ultrasparc -D__sparc_${sparc_cpu}__"; SP_LDFLAGS="-m64"
311                  target_cpu="sparc64"; cpu="sparc64" ;;
312         *)     echo "undefined SPARC architecture. Exiting";exit 1;;
313       esac
314   ;;
315   --enable-werror) werror="yes"
316   ;;
317   --disable-werror) werror="no"
318   ;;
319   esac
320 done
321
322 if [ "$bsd" = "yes" -o "$darwin" = "yes" -o "$mingw32" = "yes" ] ; then
323     AIOLIBS=
324 else
325     # Some Linux architectures (e.g. s390) don't imply -lpthread automatically.
326     AIOLIBS="-lrt -lpthread"
327 fi
328
329 # default flags for all hosts
330 CFLAGS="$CFLAGS -Wall -O2 -g -fno-strict-aliasing"
331 LDFLAGS="$LDFLAGS -g"
332 if test "$werror" = "yes" ; then
333 CFLAGS="$CFLAGS -Werror"
334 fi
335
336 #
337 # If cpu ~= sparc and  sparc_cpu hasn't been defined, plug in the right
338 # ARCH_CFLAGS/ARCH_LDFLAGS (assume sparc_v8plus for 32-bit and sparc_v9 for 64-bit)
339 #
340 case $cpu in
341     sparc) if test -z "$sparc_cpu" ; then
342                ARCH_CFLAGS="-m32 -mcpu=ultrasparc -D__sparc_v8plus__"
343                ARCH_LDFLAGS="-m32"
344            else
345                ARCH_CFLAGS="${SP_CFLAGS}"
346                ARCH_LDFLAGS="${SP_LDFLAGS}"
347            fi
348            ;;
349     sparc64) if test -z "$sparc_cpu" ; then
350                ARCH_CFLAGS="-m64 -mcpu=ultrasparc -D__sparc_v9__"
351                ARCH_LDFLAGS="-m64"
352            else
353                ARCH_CFLAGS="${SP_CFLAGS}"
354                ARCH_LDFLAGS="${SP_LDFLAGS}"
355            fi
356            ;;
357 esac
358
359 if [ "$solaris" = "yes" -a  "$cpu" = "x86_64" ] ; then
360     CFLAGS="${CFLAGS} -m64"
361     OS_CFLAGS="${OS_CFLAGS} -m64"
362 fi
363
364 if [ "$solaris" = "yes" -a  "$cpu" = "i386" ] ; then
365     CFLAGS="${CFLAGS} -m32"
366     OS_CFLAGS="${OS_CFLAGS} -m32"
367 fi
368
369 if test x"$show_help" = x"yes" ; then
370 cat << EOF
371
372 Usage: configure [options]
373 Options: [defaults in brackets after descriptions]
374
375 EOF
376 echo "Standard options:"
377 echo "  --help                   print this message"
378 echo "  --prefix=PREFIX          install in PREFIX [$prefix]"
379 echo "  --interp-prefix=PREFIX   where to find shared libraries, etc."
380 echo "                           use %M for cpu name [$interp_prefix]"
381 echo "  --target-list=LIST       set target list [$target_list]"
382 echo ""
383 echo "kqemu kernel acceleration support:"
384 echo "  --disable-kqemu          disable kqemu support"
385 echo ""
386 echo "Advanced options (experts only):"
387 echo "  --source-path=PATH       path of source code [$source_path]"
388 echo "  --cross-prefix=PREFIX    use PREFIX for compile tools [$cross_prefix]"
389 echo "  --cc=CC                  use C compiler CC [$cc]"
390 echo "  --host-cc=CC             use C compiler CC [$host_cc] for dyngen etc."
391 echo "  --make=MAKE              use specified make [$make]"
392 echo "  --install=INSTALL        use specified install [$install]"
393 echo "  --static                 enable static build [$static]"
394 echo "  --disable-werror         disable compilation abort on warning"
395 echo "  --disable-sdl            disable SDL"
396 echo "  --enable-cocoa           enable COCOA (Mac OS X only)"
397 echo "  --enable-mingw32         enable Win32 cross compilation with mingw32"
398 echo "  --enable-adlib           enable Adlib emulation"
399 echo "  --enable-coreaudio       enable Coreaudio audio driver"
400 echo "  --enable-alsa            enable ALSA audio driver"
401 echo "  --enable-fmod            enable FMOD audio driver"
402 echo "  --enable-dsound          enable DirectSound audio driver"
403 echo "  --disable-vnc-tls        disable TLS encryption for VNC server"
404 echo "  --enable-system          enable all system emulation targets"
405 echo "  --disable-system         disable all system emulation targets"
406 echo "  --enable-linux-user      enable all linux usermode emulation targets"
407 echo "  --disable-linux-user     disable all linux usermode emulation targets"
408 echo "  --enable-darwin-user     enable all darwin usermode emulation targets"
409 echo "  --disable-darwin-user    disable all darwin usermode emulation targets"
410 echo "  --fmod-lib               path to FMOD library"
411 echo "  --fmod-inc               path to FMOD includes"
412 echo "  --enable-uname-release=R Return R for uname -r in usermode emulation"
413 echo "  --sparc_cpu=V            Build qemu for Sparc architecture v7, v8, v8plus, v8plusa, v9"
414 echo ""
415 echo "NOTE: The object files are built at the place where configure is launched"
416 exit 1
417 fi
418
419 cc="${cross_prefix}${cc}"
420 ar="${cross_prefix}${ar}"
421 strip="${cross_prefix}${strip}"
422
423 # check that the C compiler works.
424 cat > $TMPC <<EOF
425 int main(void) {}
426 EOF
427
428 if $cc -c -o $TMPO $TMPC 2> /dev/null ; then
429   : C compiler works ok
430 else
431     echo "ERROR: \"$cc\" either does not exist or does not work"
432     exit 1
433 fi
434
435 if test "$mingw32" = "yes" ; then
436     linux="no"
437     EXESUF=".exe"
438     oss="no"
439 fi
440
441 # Check for gcc4, error if pre-gcc4
442 if test "$check_gcc" = "yes" ; then
443     cat > $TMPC <<EOF
444 #if __GNUC__ < 4
445 #error gcc3
446 #endif
447 int main(){return 0;}
448 EOF
449     if "$cc" -o $TMPE $TMPC 2> /dev/null ; then
450         echo "WARNING: \"$cc\" looks like gcc 4.x"
451         found_compat_cc="no"
452         if test "$gcc3_search" = "yes" ; then
453             echo "Looking for gcc 3.x"
454             for compat_cc in $gcc3_list ; do
455                 if "$cross_prefix$compat_cc" --version 2> /dev/null | fgrep '(GCC) 3.' > /dev/null 2>&1 ; then
456                     echo "Found \"$compat_cc\""
457                     cc="$cross_prefix$compat_cc"
458                     found_compat_cc="yes"
459                     break
460                 fi
461             done
462             if test "$found_compat_cc" = "no" ; then
463                 echo "gcc 3.x not found!"
464             fi
465         fi
466         if test "$found_compat_cc" = "no" ; then
467             echo "QEMU is known to have problems when compiled with gcc 4.x"
468             echo "It is recommended that you use gcc 3.x to build QEMU"
469             echo "To use this compiler anyway, configure with --disable-gcc-check"
470             exit 1;
471         fi
472     fi
473 fi
474
475 #
476 # Solaris specific configure tool chain decisions
477 #
478 if test "$solaris" = "yes" ; then
479   #
480   # gcc for solaris 10/fcs in /usr/sfw/bin doesn't compile qemu correctly
481   # override the check with --disable-gcc-check
482   #
483   if test "$solarisrev" -eq 10 -a "$check_gcc" = "yes" ; then
484     solgcc=`which $cc`
485     if test "$solgcc" = "/usr/sfw/bin/gcc" ; then
486       echo "Solaris 10/FCS gcc in /usr/sfw/bin will not compiled qemu correctly."
487       echo "please get gcc-3.4.3 or later, from www.blastwave.org using pkg-get -i gcc3"
488       echo "or get the latest patch from SunSolve for gcc"
489       exit 1
490     fi
491   fi
492   solinst=`which $install 2> /dev/null | /usr/bin/grep -v "no $install in"`
493   if test -z "$solinst" ; then
494     echo "Solaris install program not found. Use --install=/usr/ucb/install or"
495     echo "install fileutils from www.blastwave.org using pkg-get -i fileutils"
496     echo "to get ginstall which is used by default (which lives in /opt/csw/bin)"
497     exit 1
498   fi
499   if test "$solinst" = "/usr/sbin/install" ; then
500     echo "Error: Solaris /usr/sbin/install is not an appropriate install program."
501     echo "try ginstall from the GNU fileutils available from www.blastwave.org"
502     echo "using pkg-get -i fileutils, or use --install=/usr/ucb/install"
503     exit 1
504   fi
505   sol_ar=`which ar 2> /dev/null | /usr/bin/grep -v "no ar in"`
506   if test -z "$sol_ar" ; then
507     echo "Error: No path includes ar"
508     if test -f /usr/ccs/bin/ar ; then
509       echo "Add /usr/ccs/bin to your path and rerun configure"
510     fi
511     exit 1
512   fi
513 fi
514
515
516 if test -z "$target_list" ; then
517 # these targets are portable
518     if [ "$softmmu" = "yes" ] ; then
519         target_list="i386-softmmu sparc-softmmu x86_64-softmmu mips-softmmu mipsel-softmmu mips64-softmmu mips64el-softmmu arm-softmmu ppc-softmmu ppcemb-softmmu ppc64-softmmu m68k-softmmu sh4-softmmu cris-softmmu"
520     fi
521 # the following are Linux specific
522     if [ "$linux_user" = "yes" ] ; then
523         target_list="i386-linux-user arm-linux-user armeb-linux-user sparc-linux-user sparc64-linux-user sparc32plus-linux-user mips-linux-user mipsel-linux-user m68k-linux-user alpha-linux-user sh4-linux-user ppc-linux-user ppc64-linux-user ppc64abi32-linux-user x86_64-linux-user cris-linux-user $target_list"
524     fi
525 # the following are Darwin specific
526     if [ "$darwin_user" = "yes" ] ; then
527         target_list="i386-darwin-user ppc-darwin-user $target_list"
528     fi
529 else
530     target_list=`echo "$target_list" | sed -e 's/,/ /g'`
531 fi
532 if test -z "$target_list" ; then
533     echo "No targets enabled"
534     exit 1
535 fi
536
537 if test -z "$cross_prefix" ; then
538
539 # ---
540 # big/little endian test
541 cat > $TMPC << EOF
542 #include <inttypes.h>
543 int main(int argc, char ** argv){
544         volatile uint32_t i=0x01234567;
545         return (*((uint8_t*)(&i))) == 0x67;
546 }
547 EOF
548
549 if $cc -o $TMPE $TMPC 2> /dev/null ; then
550 $TMPE && bigendian="yes"
551 else
552 echo big/little test failed
553 fi
554
555 else
556
557 # if cross compiling, cannot launch a program, so make a static guess
558 if test "$cpu" = "powerpc" -o "$cpu" = "mips" -o "$cpu" = "mips64" -o "$cpu" = "s390" -o "$cpu" = "sparc" -o "$cpu" = "sparc64" -o "$cpu" = "m68k" -o "$cpu" = "armv4b"; then
559     bigendian="yes"
560 fi
561
562 fi
563
564 # host long bits test
565 hostlongbits="32"
566 if test "$cpu" = "sparc64" -o "$cpu" = "ia64" -o "$cpu" = "x86_64" -o "$cpu" = "alpha"; then
567     hostlongbits="64"
568 fi
569
570 # check gcc options support
571 cat > $TMPC <<EOF
572 int main(void) {
573 }
574 EOF
575
576 ##########################################
577 # SDL probe
578
579 sdl_too_old=no
580
581 if test -z "$sdl" ; then
582     sdl_config="sdl-config"
583     sdl=no
584     sdl_static=no
585
586     if test "$mingw32" = "yes" -a ! -z "$cross_prefix" ; then
587     # win32 cross compilation case
588         sdl_config="i386-mingw32msvc-sdl-config"
589         sdl=yes
590     else
591         # normal SDL probe
592 cat > $TMPC << EOF
593 #include <SDL.h>
594 #undef main /* We don't want SDL to override our main() */
595 int main( void ) { return SDL_Init (SDL_INIT_VIDEO); }
596 EOF
597         if $cc -o $TMPE `$sdl_config --cflags 2> /dev/null` $TMPC `$sdl_config --libs 2> /dev/null` 2> /tmp/qemu-$$-sdl-config.log ; then
598             _sdlversion=`$sdl_config --version | sed 's/[^0-9]//g'`
599             if test "$_sdlversion" -lt 121 ; then
600                 sdl_too_old=yes
601             else
602                 if test "$cocoa" = "no" ; then
603                     sdl=yes
604                 fi
605             fi
606
607             # static link with sdl ?
608             if test "$sdl" = "yes" ; then
609                 aa="no"
610                 `$sdl_config --static-libs 2>/dev/null | grep \\\-laa > /dev/null` && aa="yes"
611                 sdl_static_libs=`$sdl_config --static-libs 2>/dev/null`
612                 if [ "$aa" = "yes" ] ; then
613                     sdl_static_libs="$sdl_static_libs `aalib-config --static-libs`"
614                 fi
615
616                 if $cc -o $TMPE `$sdl_config --cflags 2> /dev/null` $TMPC $sdl_static_libs 2> /dev/null; then
617                     sdl_static=yes
618                 fi
619             fi # static link
620         fi # sdl compile test
621     fi # cross compilation
622 else
623     # Make sure to disable cocoa if sdl was set
624     if test "$sdl" = "yes" ; then
625        cocoa="no"
626        coreaudio="no"
627     fi
628 fi # -z $sdl
629
630 ##########################################
631 # VNC TLS detection
632 if test "$vnc_tls" = "yes" ; then
633   `pkg-config gnutls` || vnc_tls="no"
634 fi
635 if test "$vnc_tls" = "yes" ; then
636   vnc_tls_cflags=`pkg-config --cflags gnutls`
637   vnc_tls_libs=`pkg-config --libs gnutls`
638 fi
639
640 ##########################################
641 # alsa sound support libraries
642
643 if test "$alsa" = "yes" ; then
644   cat > $TMPC << EOF
645 #include <alsa/asoundlib.h>
646 int main(void) { snd_pcm_t **handle; return snd_pcm_close(*handle); }
647 EOF
648   if $cc -o $TMPE $TMPC -lasound 2> /dev/null ; then
649     :
650   else
651     echo
652     echo "Error: Could not find alsa"
653     echo "Make sure to have the alsa libs and headers installed."
654     echo
655     exit 1
656   fi
657 fi
658
659 # Check if tools are available to build documentation.
660 if [ -x "`which texi2html 2>/dev/null`" ] && \
661    [ -x "`which pod2man 2>/dev/null`" ]; then
662   build_docs="yes"
663 fi
664
665 if test "$mingw32" = "yes" ; then
666   if test -z "$prefix" ; then
667       prefix="/c/Program Files/Qemu"
668   fi
669   mansuffix=""
670   datasuffix=""
671   docsuffix=""
672   binsuffix=""
673 else
674   if test -z "$prefix" ; then
675       prefix="/usr/local"
676   fi
677   mansuffix="/share/man"
678   datasuffix="/share/qemu"
679   docsuffix="/share/doc/qemu"
680   binsuffix="/bin"
681 fi
682
683 echo "Install prefix    $prefix"
684 echo "BIOS directory    $prefix$datasuffix"
685 echo "binary directory  $prefix$binsuffix"
686 if test "$mingw32" = "no" ; then
687 echo "Manual directory  $prefix$mansuffix"
688 echo "ELF interp prefix $interp_prefix"
689 fi
690 echo "Source path       $source_path"
691 echo "C compiler        $cc"
692 echo "Host C compiler   $host_cc"
693 echo "make              $make"
694 echo "install           $install"
695 echo "host CPU          $cpu"
696 echo "host big endian   $bigendian"
697 echo "target list       $target_list"
698 echo "gprof enabled     $gprof"
699 echo "profiler          $profiler"
700 echo "static build      $static"
701 echo "-Werror enabled   $werror"
702 if test "$darwin" = "yes" ; then
703     echo "Cocoa support     $cocoa"
704 fi
705 echo "SDL support       $sdl"
706 if test "$sdl" != "no" ; then
707     echo "SDL static link   $sdl_static"
708 fi
709 echo "mingw32 support   $mingw32"
710 echo "Adlib support     $adlib"
711 echo "CoreAudio support $coreaudio"
712 echo "ALSA support      $alsa"
713 echo "DSound support    $dsound"
714 if test "$fmod" = "yes"; then
715     if test -z $fmod_lib || test -z $fmod_inc; then
716         echo
717         echo "Error: You must specify path to FMOD library and headers"
718         echo "Example: --fmod-inc=/path/include/fmod --fmod-lib=/path/lib/libfmod-3.74.so"
719         echo
720         exit 1
721     fi
722     fmod_support=" (lib='$fmod_lib' include='$fmod_inc')"
723 else
724     fmod_support=""
725 fi
726 echo "FMOD support      $fmod $fmod_support"
727 echo "OSS support       $oss"
728 echo "VNC TLS support   $vnc_tls"
729 if test "$vnc_tls" = "yes" ; then
730     echo "    TLS CFLAGS    $vnc_tls_cflags"
731     echo "    TLS LIBS      $vnc_tls_libs"
732 fi
733 if test -n "$sparc_cpu"; then
734     echo "Target Sparc Arch $sparc_cpu"
735 fi
736 echo "kqemu support     $kqemu"
737 echo "Documentation     $build_docs"
738 [ ! -z "$uname_release" ] && \
739 echo "uname -r          $uname_release"
740
741 if test $sdl_too_old = "yes"; then
742 echo "-> Your SDL version is too old - please upgrade to have SDL support"
743 fi
744 if [ -s /tmp/qemu-$$-sdl-config.log ]; then
745   echo "The error log from compiling the libSDL test is: "
746   cat /tmp/qemu-$$-sdl-config.log
747 fi
748 rm -f /tmp/qemu-$$-sdl-config.log
749 #if test "$sdl_static" = "no"; then
750 #  echo "WARNING: cannot compile statically with SDL - qemu-fast won't have a graphical output"
751 #fi
752 config_mak="config-host.mak"
753 config_h="config-host.h"
754
755 #echo "Creating $config_mak and $config_h"
756
757 test -f $config_h && mv $config_h ${config_h}~
758
759 echo "# Automatically generated by configure - do not modify" > $config_mak
760 echo "# Configured with: $0 $@" >> $config_mak
761 echo "/* Automatically generated by configure - do not modify */" > $config_h
762
763 echo "prefix=$prefix" >> $config_mak
764 echo "bindir=\${prefix}$binsuffix" >> $config_mak
765 echo "mandir=\${prefix}$mansuffix" >> $config_mak
766 echo "datadir=\${prefix}$datasuffix" >> $config_mak
767 echo "docdir=\${prefix}$docsuffix" >> $config_mak
768 echo "#define CONFIG_QEMU_SHAREDIR \"$prefix$datasuffix\"" >> $config_h
769 echo "MAKE=$make" >> $config_mak
770 echo "INSTALL=$install" >> $config_mak
771 echo "CC=$cc" >> $config_mak
772 echo "HOST_CC=$host_cc" >> $config_mak
773 echo "AR=$ar" >> $config_mak
774 echo "STRIP=$strip -s -R .comment -R .note" >> $config_mak
775 echo "OS_CFLAGS=$OS_CFLAGS" >> $config_mak
776 echo "OS_LDFLAGS=$OS_LDFLAGS" >> $config_mak
777 echo "VL_OS_LDFLAGS=$VL_OS_LDFLAGS" >> $config_mak
778 echo "ARCH_CFLAGS=$ARCH_CFLAGS" >> $config_mak
779 echo "ARCH_LDFLAGS=$ARCH_LDFLAGS" >> $config_mak
780 echo "CFLAGS=$CFLAGS" >> $config_mak
781 echo "LDFLAGS=$LDFLAGS" >> $config_mak
782 echo "EXESUF=$EXESUF" >> $config_mak
783 echo "AIOLIBS=$AIOLIBS" >> $config_mak
784 if test "$cpu" = "i386" ; then
785   echo "ARCH=i386" >> $config_mak
786   echo "#define HOST_I386 1" >> $config_h
787 elif test "$cpu" = "x86_64" ; then
788   echo "ARCH=x86_64" >> $config_mak
789   echo "#define HOST_X86_64 1" >> $config_h
790 elif test "$cpu" = "armv4b" ; then
791   echo "ARCH=arm" >> $config_mak
792   echo "#define HOST_ARM 1" >> $config_h
793 elif test "$cpu" = "armv4l" ; then
794   echo "ARCH=arm" >> $config_mak
795   echo "#define HOST_ARM 1" >> $config_h
796 elif test "$cpu" = "powerpc" ; then
797   echo "ARCH=ppc" >> $config_mak
798   echo "#define HOST_PPC 1" >> $config_h
799 elif test "$cpu" = "mips" ; then
800   echo "ARCH=mips" >> $config_mak
801   echo "#define HOST_MIPS 1" >> $config_h
802 elif test "$cpu" = "mips64" ; then
803   echo "ARCH=mips64" >> $config_mak
804   echo "#define HOST_MIPS64 1" >> $config_h
805 elif test "$cpu" = "cris" ; then
806   echo "ARCH=cris" >> $config_mak
807   echo "#define HOST_CRIS 1" >> $config_h
808 elif test "$cpu" = "s390" ; then
809   echo "ARCH=s390" >> $config_mak
810   echo "#define HOST_S390 1" >> $config_h
811 elif test "$cpu" = "alpha" ; then
812   echo "ARCH=alpha" >> $config_mak
813   echo "#define HOST_ALPHA 1" >> $config_h
814 elif test "$cpu" = "sparc" ; then
815   echo "ARCH=sparc" >> $config_mak
816   echo "#define HOST_SPARC 1" >> $config_h
817 elif test "$cpu" = "sparc64" ; then
818   echo "ARCH=sparc64" >> $config_mak
819   echo "#define HOST_SPARC64 1" >> $config_h
820 elif test "$cpu" = "ia64" ; then
821   echo "ARCH=ia64" >> $config_mak
822   echo "#define HOST_IA64 1" >> $config_h
823 elif test "$cpu" = "m68k" ; then
824   echo "ARCH=m68k" >> $config_mak
825   echo "#define HOST_M68K 1" >> $config_h
826 else
827   echo "Unsupported CPU = $cpu"
828   exit 1
829 fi
830 if test "$bigendian" = "yes" ; then
831   echo "WORDS_BIGENDIAN=yes" >> $config_mak
832   echo "#define WORDS_BIGENDIAN 1" >> $config_h
833 fi
834 echo "#define HOST_LONG_BITS $hostlongbits" >> $config_h
835 if test "$mingw32" = "yes" ; then
836   echo "CONFIG_WIN32=yes" >> $config_mak
837   echo "#define CONFIG_WIN32 1" >> $config_h
838 else
839   cat > $TMPC << EOF
840 #include <byteswap.h>
841 int main(void) { return bswap_32(0); }
842 EOF
843   if $cc -o $TMPE $TMPC 2> /dev/null ; then
844     echo "#define HAVE_BYTESWAP_H 1" >> $config_h
845   fi
846 fi
847 if test "$darwin" = "yes" ; then
848   echo "CONFIG_DARWIN=yes" >> $config_mak
849   echo "#define CONFIG_DARWIN 1" >> $config_h
850 fi
851 if test "$solaris" = "yes" ; then
852   echo "CONFIG_SOLARIS=yes" >> $config_mak
853   echo "#define HOST_SOLARIS $solarisrev" >> $config_h
854   if test "$needs_libsunmath" = "yes" ; then
855     echo "NEEDS_LIBSUNMATH=yes" >> $config_mak
856     echo "#define NEEDS_LIBSUNMATH 1" >> $config_h
857   fi
858 fi
859 if test -n "$sparc_cpu"; then
860   echo "CONFIG__sparc_${sparc_cpu}__=yes" >> $config_mak
861   echo "#define __sparc_${sparc_cpu}__ 1" >> $config_h
862 fi
863 if test "$gdbstub" = "yes" ; then
864   echo "CONFIG_GDBSTUB=yes" >> $config_mak
865   echo "#define CONFIG_GDBSTUB 1" >> $config_h
866 fi
867 if test "$gprof" = "yes" ; then
868   echo "TARGET_GPROF=yes" >> $config_mak
869   echo "#define HAVE_GPROF 1" >> $config_h
870 fi
871 if test "$static" = "yes" ; then
872   echo "CONFIG_STATIC=yes" >> $config_mak
873   echo "#define CONFIG_STATIC 1" >> $config_h
874 fi
875 if test $profiler = "yes" ; then
876   echo "#define CONFIG_PROFILER 1" >> $config_h
877 fi
878 if test "$slirp" = "yes" ; then
879   echo "CONFIG_SLIRP=yes" >> $config_mak
880   echo "#define CONFIG_SLIRP 1" >> $config_h
881 fi
882 if test "$adlib" = "yes" ; then
883   echo "CONFIG_ADLIB=yes" >> $config_mak
884   echo "#define CONFIG_ADLIB 1" >> $config_h
885 fi
886 if test "$oss" = "yes" ; then
887   echo "CONFIG_OSS=yes" >> $config_mak
888   echo "#define CONFIG_OSS 1" >> $config_h
889 fi
890 if test "$coreaudio" = "yes" ; then
891   echo "CONFIG_COREAUDIO=yes" >> $config_mak
892   echo "#define CONFIG_COREAUDIO 1" >> $config_h
893 fi
894 if test "$alsa" = "yes" ; then
895   echo "CONFIG_ALSA=yes" >> $config_mak
896   echo "#define CONFIG_ALSA 1" >> $config_h
897 fi
898 if test "$dsound" = "yes" ; then
899   echo "CONFIG_DSOUND=yes" >> $config_mak
900   echo "#define CONFIG_DSOUND 1" >> $config_h
901 fi
902 if test "$fmod" = "yes" ; then
903   echo "CONFIG_FMOD=yes" >> $config_mak
904   echo "CONFIG_FMOD_LIB=$fmod_lib" >> $config_mak
905   echo "CONFIG_FMOD_INC=$fmod_inc" >> $config_mak
906   echo "#define CONFIG_FMOD 1" >> $config_h
907 fi
908 if test "$vnc_tls" = "yes" ; then
909   echo "CONFIG_VNC_TLS=yes" >> $config_mak
910   echo "CONFIG_VNC_TLS_CFLAGS=$vnc_tls_cflags" >> $config_mak
911   echo "CONFIG_VNC_TLS_LIBS=$vnc_tls_libs" >> $config_mak
912   echo "#define CONFIG_VNC_TLS 1" >> $config_h
913 fi
914 qemu_version=`head $source_path/VERSION`
915 echo "VERSION=$qemu_version" >>$config_mak
916 echo "#define QEMU_VERSION \"$qemu_version\"" >> $config_h
917
918 echo "SRC_PATH=$source_path" >> $config_mak
919 if [ "$source_path_used" = "yes" ]; then
920   echo "VPATH=$source_path" >> $config_mak
921 fi
922 echo "TARGET_DIRS=$target_list" >> $config_mak
923 if [ "$build_docs" = "yes" ] ; then
924   echo "BUILD_DOCS=yes" >> $config_mak
925 fi
926 if test "$static" = "yes"; then
927   sdl1=$sdl_static
928 else
929   sdl1=$sdl
930 fi
931 if test "$sdl1" = "yes" ; then
932   echo "#define CONFIG_SDL 1" >> $config_h
933   echo "CONFIG_SDL=yes" >> $config_mak
934   if test "$target_softmmu" = "no" -o "$static" = "yes"; then
935     echo "SDL_LIBS=$sdl_static_libs" >> $config_mak
936   else
937     echo "SDL_LIBS=`$sdl_config --libs`" >> $config_mak
938   fi
939   if [ "${aa}" = "yes" ] ; then
940     echo "SDL_CFLAGS=`$sdl_config --cflags` `aalib-config --cflags`" >> $config_mak
941   else
942     echo "SDL_CFLAGS=`$sdl_config --cflags`" >> $config_mak
943   fi
944 fi
945 if test "$cocoa" = "yes" ; then
946     echo "#define CONFIG_COCOA 1" >> $config_h
947     echo "CONFIG_COCOA=yes" >> $config_mak
948 fi
949
950 # XXX: suppress that
951 if [ "$bsd" = "yes" ] ; then
952   echo "#define O_LARGEFILE 0" >> $config_h
953   echo "#define MAP_ANONYMOUS MAP_ANON" >> $config_h
954   echo "#define _BSD 1" >> $config_h
955 fi
956
957 echo "#define CONFIG_UNAME_RELEASE \"$uname_release\"" >> $config_h
958
959 tools=
960 if test `expr "$target_list" : ".*softmmu.*"` != 0 ; then
961   tools="qemu-img\$(EXESUF) $tools"
962 fi
963 echo "TOOLS=$tools" >> $config_mak
964
965 test -f ${config_h}~ && cmp -s $config_h ${config_h}~ && mv ${config_h}~ $config_h
966
967 for target in $target_list; do
968 target_dir="$target"
969 config_mak=$target_dir/config.mak
970 config_h=$target_dir/config.h
971 target_cpu=`echo $target | cut -d '-' -f 1`
972 target_bigendian="no"
973 [ "$target_cpu" = "armeb" ] && target_bigendian=yes
974 [ "$target_cpu" = "sparc" ] && target_bigendian=yes
975 [ "$target_cpu" = "sparc64" ] && target_bigendian=yes
976 [ "$target_cpu" = "sparc32plus" ] && target_bigendian=yes
977 [ "$target_cpu" = "ppc" ] && target_bigendian=yes
978 [ "$target_cpu" = "ppcemb" ] && target_bigendian=yes
979 [ "$target_cpu" = "ppc64" ] && target_bigendian=yes
980 [ "$target_cpu" = "ppc64abi32" ] && target_bigendian=yes
981 [ "$target_cpu" = "mips" ] && target_bigendian=yes
982 [ "$target_cpu" = "mipsn32" ] && target_bigendian=yes
983 [ "$target_cpu" = "mips64" ] && target_bigendian=yes
984 [ "$target_cpu" = "sh4eb" ] && target_bigendian=yes
985 [ "$target_cpu" = "m68k" ] && target_bigendian=yes
986 target_softmmu="no"
987 target_user_only="no"
988 target_linux_user="no"
989 target_darwin_user="no"
990 case "$target" in
991   ${target_cpu}-softmmu)
992     target_softmmu="yes"
993     ;;
994   ${target_cpu}-linux-user)
995     target_user_only="yes"
996     target_linux_user="yes"
997     ;;
998   ${target_cpu}-darwin-user)
999     target_user_only="yes"
1000     target_darwin_user="yes"
1001     ;;
1002   *)
1003     echo "ERROR: Target '$target' not recognised"
1004     exit 1
1005     ;;
1006 esac
1007
1008 if test "$target_user_only" = "no" -a "$check_gfx" = "yes" \
1009         -a "$sdl" = "no" -a "$cocoa" = "no" ; then
1010     echo "ERROR: QEMU requires SDL or Cocoa for graphical output"
1011     echo "To build QEMU without graphical output configure with --disable-gfx-check"
1012     echo "Note that this will disable all output from the virtual graphics card."
1013     exit 1;
1014 fi
1015
1016 #echo "Creating $config_mak, $config_h and $target_dir/Makefile"
1017
1018 test -f $config_h && mv $config_h ${config_h}~
1019
1020 mkdir -p $target_dir
1021 mkdir -p $target_dir/fpu
1022 if test "$target" = "arm-linux-user" -o "$target" = "armeb-linux-user" ; then
1023   mkdir -p $target_dir/nwfpe
1024 fi
1025
1026 #
1027 # don't use ln -sf as not all "ln -sf" over write the file/link
1028 #
1029 rm -f $target_dir/Makefile
1030 ln -s $source_path/Makefile.target $target_dir/Makefile
1031
1032
1033 echo "# Automatically generated by configure - do not modify" > $config_mak
1034 echo "/* Automatically generated by configure - do not modify */" > $config_h
1035
1036
1037 echo "include ../config-host.mak" >> $config_mak
1038 echo "#include \"../config-host.h\"" >> $config_h
1039
1040 bflt="no"
1041 elfload32="no"
1042 interp_prefix1=`echo "$interp_prefix" | sed "s/%M/$target_cpu/g"`
1043 echo "#define CONFIG_QEMU_PREFIX \"$interp_prefix1\"" >> $config_h
1044
1045 if test "$target_cpu" = "i386" ; then
1046   echo "TARGET_ARCH=i386" >> $config_mak
1047   echo "#define TARGET_ARCH \"i386\"" >> $config_h
1048   echo "#define TARGET_I386 1" >> $config_h
1049   if test $kqemu = "yes" -a "$target_softmmu" = "yes" -a $cpu = "i386" ; then
1050     echo "#define USE_KQEMU 1" >> $config_h
1051   fi
1052 elif test "$target_cpu" = "arm" -o "$target_cpu" = "armeb" ; then
1053   echo "TARGET_ARCH=arm" >> $config_mak
1054   echo "#define TARGET_ARCH \"arm\"" >> $config_h
1055   echo "#define TARGET_ARM 1" >> $config_h
1056   bflt="yes"
1057 elif test "$target_cpu" = "sparc" ; then
1058   echo "TARGET_ARCH=sparc" >> $config_mak
1059   echo "#define TARGET_ARCH \"sparc\"" >> $config_h
1060   echo "#define TARGET_SPARC 1" >> $config_h
1061 elif test "$target_cpu" = "sparc64" ; then
1062   echo "TARGET_ARCH=sparc64" >> $config_mak
1063   echo "#define TARGET_ARCH \"sparc64\"" >> $config_h
1064   echo "#define TARGET_SPARC 1" >> $config_h
1065   echo "#define TARGET_SPARC64 1" >> $config_h
1066   elfload32="yes"
1067 elif test "$target_cpu" = "sparc32plus" ; then
1068   echo "TARGET_ARCH=sparc64" >> $config_mak
1069   echo "TARGET_ABI_DIR=sparc" >> $config_mak
1070   echo "#define TARGET_ARCH \"sparc64\"" >> $config_h
1071   echo "#define TARGET_SPARC 1" >> $config_h
1072   echo "#define TARGET_SPARC64 1" >> $config_h
1073   echo "#define TARGET_ABI32 1" >> $config_h
1074 elif test "$target_cpu" = "ppc" ; then
1075   echo "TARGET_ARCH=ppc" >> $config_mak
1076   echo "#define TARGET_ARCH \"ppc\"" >> $config_h
1077   echo "#define TARGET_PPC 1" >> $config_h
1078 elif test "$target_cpu" = "ppcemb" ; then
1079   echo "TARGET_ARCH=ppcemb" >> $config_mak
1080   echo "TARGET_ABI_DIR=ppc" >> $config_mak
1081   echo "#define TARGET_ARCH \"ppcemb\"" >> $config_h
1082   echo "#define TARGET_PPC 1" >> $config_h
1083   echo "#define TARGET_PPCEMB 1" >> $config_h
1084 elif test "$target_cpu" = "ppc64" ; then
1085   echo "TARGET_ARCH=ppc64" >> $config_mak
1086   echo "TARGET_ABI_DIR=ppc" >> $config_mak
1087   echo "#define TARGET_ARCH \"ppc64\"" >> $config_h
1088   echo "#define TARGET_PPC 1" >> $config_h
1089   echo "#define TARGET_PPC64 1" >> $config_h
1090 elif test "$target_cpu" = "ppc64abi32" ; then
1091   echo "TARGET_ARCH=ppc64" >> $config_mak
1092   echo "TARGET_ABI_DIR=ppc" >> $config_mak
1093   echo "#define TARGET_ARCH \"ppc64\"" >> $config_h
1094   echo "#define TARGET_PPC 1" >> $config_h
1095   echo "#define TARGET_PPC64 1" >> $config_h
1096   echo "#define TARGET_ABI32 1" >> $config_h
1097 elif test "$target_cpu" = "x86_64" ; then
1098   echo "TARGET_ARCH=x86_64" >> $config_mak
1099   echo "#define TARGET_ARCH \"x86_64\"" >> $config_h
1100   echo "#define TARGET_I386 1" >> $config_h
1101   echo "#define TARGET_X86_64 1" >> $config_h
1102   if test $kqemu = "yes" -a "$target_softmmu" = "yes" -a $cpu = "x86_64"  ; then
1103     echo "#define USE_KQEMU 1" >> $config_h
1104   fi
1105 elif test "$target_cpu" = "mips" -o "$target_cpu" = "mipsel" ; then
1106   echo "TARGET_ARCH=mips" >> $config_mak
1107   echo "#define TARGET_ARCH \"mips\"" >> $config_h
1108   echo "#define TARGET_MIPS 1" >> $config_h
1109   echo "#define TARGET_ABI_MIPSO32 1" >> $config_h
1110 elif test "$target_cpu" = "mipsn32" -o "$target_cpu" = "mipsn32el" ; then
1111   echo "TARGET_ARCH=mipsn32" >> $config_mak
1112   echo "#define TARGET_ARCH \"mipsn32\"" >> $config_h
1113   echo "#define TARGET_MIPS 1" >> $config_h
1114   echo "#define TARGET_ABI_MIPSN32 1" >> $config_h
1115 elif test "$target_cpu" = "mips64" -o "$target_cpu" = "mips64el" ; then
1116   echo "TARGET_ARCH=mips64" >> $config_mak
1117   echo "#define TARGET_ARCH \"mips64\"" >> $config_h
1118   echo "#define TARGET_MIPS 1" >> $config_h
1119   echo "#define TARGET_MIPS64 1" >> $config_h
1120   echo "#define TARGET_ABI_MIPSN64 1" >> $config_h
1121 elif test "$target_cpu" = "cris" ; then
1122   echo "TARGET_ARCH=cris" >> $config_mak
1123   echo "#define TARGET_ARCH \"cris\"" >> $config_h
1124   echo "#define TARGET_CRIS 1" >> $config_h
1125   echo "CONFIG_SOFTFLOAT=yes" >> $config_mak
1126   echo "#define CONFIG_SOFTFLOAT 1" >> $config_h
1127 elif test "$target_cpu" = "sh4" -o "$target_cpu" = "sh4eb" ; then
1128   echo "TARGET_ARCH=sh4" >> $config_mak
1129   echo "#define TARGET_ARCH \"sh4\"" >> $config_h
1130   echo "#define TARGET_SH4 1" >> $config_h
1131   bflt="yes"
1132 elif test "$target_cpu" = "m68k" ; then
1133   echo "TARGET_ARCH=m68k" >> $config_mak
1134   echo "#define TARGET_ARCH \"m68k\"" >> $config_h
1135   echo "#define TARGET_M68K 1" >> $config_h
1136   bflt="yes"
1137 elif test "$target_cpu" = "alpha" ; then
1138   echo "TARGET_ARCH=alpha" >> $config_mak
1139   echo "#define TARGET_ARCH \"alpha\"" >> $config_h
1140   echo "#define TARGET_ALPHA 1" >> $config_h
1141 else
1142   echo "Unsupported target CPU"
1143   exit 1
1144 fi
1145 if test "$target_bigendian" = "yes" ; then
1146   echo "TARGET_WORDS_BIGENDIAN=yes" >> $config_mak
1147   echo "#define TARGET_WORDS_BIGENDIAN 1" >> $config_h
1148 fi
1149 if test "$target_softmmu" = "yes" ; then
1150   echo "CONFIG_SOFTMMU=yes" >> $config_mak
1151   echo "#define CONFIG_SOFTMMU 1" >> $config_h
1152 fi
1153 if test "$target_user_only" = "yes" ; then
1154   echo "CONFIG_USER_ONLY=yes" >> $config_mak
1155   echo "#define CONFIG_USER_ONLY 1" >> $config_h
1156 fi
1157 if test "$target_linux_user" = "yes" ; then
1158   echo "CONFIG_LINUX_USER=yes" >> $config_mak
1159   echo "#define CONFIG_LINUX_USER 1" >> $config_h
1160 fi
1161 if test "$target_darwin_user" = "yes" ; then
1162   echo "CONFIG_DARWIN_USER=yes" >> $config_mak
1163   echo "#define CONFIG_DARWIN_USER 1" >> $config_h
1164 fi
1165
1166 if test "$target_cpu" = "arm" -o "$target_cpu" = "armeb" -o "$target_cpu" = "sparc" -o "$target_cpu" = "sparc64"  -o "$target_cpu" = "sparc32plus" -o "$target_cpu" = "m68k" -o "$target_cpu" = "mips" -o "$target_cpu" = "mipsel" -o "$target_cpu" = "mipsn32" -o "$target_cpu" = "mipsn32el" -o "$target_cpu" = "mips64" -o "$target_cpu" = "mips64el"; then
1167   echo "CONFIG_SOFTFLOAT=yes" >> $config_mak
1168   echo "#define CONFIG_SOFTFLOAT 1" >> $config_h
1169 fi
1170 if test "$target_user_only" = "yes" -a "$bflt" = "yes"; then
1171   echo "TARGET_HAS_BFLT=yes" >> $config_mak
1172   echo "#define TARGET_HAS_BFLT 1" >> $config_h
1173 fi
1174 # 32 bit ELF loader in addition to native 64 bit loader?
1175 if test "$target_user_only" = "yes" -a "$elfload32" = "yes"; then
1176   echo "TARGET_HAS_ELFLOAD32=yes" >> $config_mak
1177   echo "#define TARGET_HAS_ELFLOAD32 1" >> $config_h
1178 fi
1179
1180 test -f ${config_h}~ && cmp -s $config_h ${config_h}~ && mv ${config_h}~ $config_h
1181
1182 done # for target in $targets
1183
1184 # build tree in object directory if source path is different from current one
1185 if test "$source_path_used" = "yes" ; then
1186     DIRS="tests tests/cris slirp audio"
1187     FILES="Makefile tests/Makefile"
1188     FILES="$FILES tests/cris/Makefile tests/cris/.gdbinit"
1189     for dir in $DIRS ; do
1190             mkdir -p $dir
1191     done
1192     # remove the link and recreate it, as not all "ln -sf" overwrite the link
1193     for f in $FILES ; do
1194         rm -f $f
1195         ln -s $source_path/$f $f
1196     done
1197 fi
1198
1199 rm -f $TMPO $TMPC $TMPE $TMPS