Statistics
| Branch: | Revision:

root / configure @ e85e7c6e

History | View | Annotate | Download (35.4 kB)

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 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
for opt do
217
  optarg=`expr "x$opt" : 'x[^=]*=\(.*\)'`
218
  case "$opt" in
219
  --help|-h) show_help=yes
220
  ;;
221
  --prefix=*) prefix="$optarg"
222
  ;;
223
  --interp-prefix=*) interp_prefix="$optarg"
224
  ;;
225
  --source-path=*) source_path="$optarg"
226
  source_path_used="yes"
227
  ;;
228
  --cross-prefix=*) cross_prefix="$optarg"
229
  ;;
230
  --cc=*) cc="$optarg"
231
  gcc3_search="no"
232
  ;;
233
  --host-cc=*) host_cc="$optarg"
234
  ;;
235
  --make=*) make="$optarg"
236
  ;;
237
  --install=*) install="$optarg"
238
  ;;
239
  --extra-cflags=*) CFLAGS="$optarg"
240
  ;;
241
  --extra-ldflags=*) LDFLAGS="$optarg"
242
  ;;
243
  --cpu=*) cpu="$optarg"
244
  ;;
245
  --target-list=*) target_list="$optarg"
246
  ;;
247
  --enable-gprof) gprof="yes"
248
  ;;
249
  --static) static="yes"
250
  ;;
251
  --disable-sdl) sdl="no"
252
  ;;
253
  --enable-coreaudio) coreaudio="yes"
254
  ;;
255
  --enable-alsa) alsa="yes"
256
  ;;
257
  --enable-dsound) dsound="yes"
258
  ;;
259
  --enable-fmod) fmod="yes"
260
  ;;
261
  --fmod-lib=*) fmod_lib="$optarg"
262
  ;;
263
  --fmod-inc=*) fmod_inc="$optarg"
264
  ;;
265
  --disable-vnc-tls) vnc_tls="no"
266
  ;;
267
  --enable-mingw32) mingw32="yes" ; cross_prefix="i386-mingw32-" ; linux_user="no"
268
  ;;
269
  --disable-slirp) slirp="no"
270
  ;;
271
  --enable-adlib) adlib="yes"
272
  ;;
273
  --disable-kqemu) kqemu="no"
274
  ;;
275
  --enable-profiler) profiler="yes"
276
  ;;
277
  --enable-cocoa) cocoa="yes" ; coreaudio="yes" ; sdl="no"
278
  ;;
279
  --disable-gfx-check) check_gfx="no"
280
  ;;
281
  --disable-gcc-check) check_gcc="no"
282
  ;;
283
  --disable-system) softmmu="no"
284
  ;;
285
  --enable-system) softmmu="yes"
286
  ;;
287
  --disable-linux-user) linux_user="no"
288
  ;;
289
  --enable-linux-user) linux_user="yes"
290
  ;;
291
  --disable-darwin-user) darwin_user="no"
292
  ;;
293
  --enable-darwin-user) darwin_user="yes"
294
  ;;
295
  --enable-uname-release=*) uname_release="$optarg"
296
  ;;
297
  --sparc_cpu=*)
298
      sparc_cpu="$optarg"
299
      case $sparc_cpu in
300
        v7|v8) SP_CFLAGS="-m32 -mcpu=${sparc_cpu} -D__sparc_${sparc_cpu}__"; SP_LDFLAGS="-m32"
301
                 target_cpu="sparc"; cpu="sparc" ;;
302
        v8plus|v8plusa) SP_CFLAGS="-m32 -mcpu=ultrasparc -D__sparc_${sparc_cpu}__"; SP_LDFLAGS="-m32"
303
                 target_cpu="sparc"; cpu="sparc" ;;
304
        v9)    SP_CFLAGS="-m64 -mcpu=ultrasparc -D__sparc_${sparc_cpu}__"; SP_LDFLAGS="-m64"
305
                 target_cpu="sparc64"; cpu="sparc64" ;;
306
        *)     echo "undefined SPARC architecture. Exiting";exit 1;;
307
      esac
308
  ;;
309
  esac
310
done
311

    
312
if [ "$bsd" = "yes" -o "$darwin" = "yes" -o "$mingw32" = "yes" ] ; then
313
    AIOLIBS=
314
else
315
    AIOLIBS="-lrt"
316
fi
317

    
318
# default flags for all hosts
319
CFLAGS="$CFLAGS -Wall -O2 -g -fno-strict-aliasing"
320
LDFLAGS="$LDFLAGS -g"
321

    
322
#
323
# If cpu ~= sparc and  sparc_cpu hasn't been defined, plug in the right
324
# ARCH_CFLAGS/ARCH_LDFLAGS (assume sparc_v8plus for 32-bit and sparc_v9 for 64-bit)
325
#
326
case $cpu in
327
    sparc) if test -z "$sparc_cpu" ; then
328
               ARCH_CFLAGS="-m32 -mcpu=ultrasparc -D__sparc_v8plus__"
329
               ARCH_LDFLAGS="-m32"
330
           else
331
               ARCH_CFLAGS="${SP_CFLAGS}"
332
               ARCH_LDFLAGS="${SP_LDFLAGS}"
333
           fi
334
           ;;
335
    sparc64) if test -z "$sparc_cpu" ; then
336
               ARCH_CFLAGS="-m64 -mcpu=ultrasparc -D__sparc_v9__"
337
               ARCH_LDFLAGS="-m64"
338
           else
339
               ARCH_CFLAGS="${SP_CFLAGS}"
340
               ARCH_LDFLAGS="${SP_LDFLAGS}"
341
           fi
342
           ;;
343
esac
344

    
345
if [ "$solaris" = "yes" -a  "$cpu" = "x86_64" ] ; then
346
    CFLAGS="${CFLAGS} -m64"
347
    OS_CFLAGS="${OS_CFLAGS} -m64"
348
fi
349

    
350
if [ "$solaris" = "yes" -a  "$cpu" = "i386" ] ; then
351
    CFLAGS="${CFLAGS} -m32"
352
    OS_CFLAGS="${OS_CFLAGS} -m32"
353
fi
354

    
355
if test x"$show_help" = x"yes" ; then
356
cat << EOF
357

    
358
Usage: configure [options]
359
Options: [defaults in brackets after descriptions]
360

    
361
EOF
362
echo "Standard options:"
363
echo "  --help                   print this message"
364
echo "  --prefix=PREFIX          install in PREFIX [$prefix]"
365
echo "  --interp-prefix=PREFIX   where to find shared libraries, etc."
366
echo "                           use %M for cpu name [$interp_prefix]"
367
echo "  --target-list=LIST       set target list [$target_list]"
368
echo ""
369
echo "kqemu kernel acceleration support:"
370
echo "  --disable-kqemu          disable kqemu support"
371
echo ""
372
echo "Advanced options (experts only):"
373
echo "  --source-path=PATH       path of source code [$source_path]"
374
echo "  --cross-prefix=PREFIX    use PREFIX for compile tools [$cross_prefix]"
375
echo "  --cc=CC                  use C compiler CC [$cc]"
376
echo "  --host-cc=CC             use C compiler CC [$host_cc] for dyngen etc."
377
echo "  --make=MAKE              use specified make [$make]"
378
echo "  --install=INSTALL        use specified install [$install]"
379
echo "  --static                 enable static build [$static]"
380
echo "  --enable-cocoa           enable COCOA (Mac OS X only)"
381
echo "  --enable-mingw32         enable Win32 cross compilation with mingw32"
382
echo "  --enable-adlib           enable Adlib emulation"
383
echo "  --enable-coreaudio       enable Coreaudio audio driver"
384
echo "  --enable-alsa            enable ALSA audio driver"
385
echo "  --enable-fmod            enable FMOD audio driver"
386
echo "  --enable-dsound          enable DirectSound audio driver"
387
echo "  --disable-vnc-tls        disable TLS encryption for VNC server"
388
echo "  --enable-system          enable all system emulation targets"
389
echo "  --disable-system         disable all system emulation targets"
390
echo "  --enable-linux-user      enable all linux usermode emulation targets"
391
echo "  --disable-linux-user     disable all linux usermode emulation targets"
392
echo "  --enable-darwin-user     enable all darwin usermode emulation targets"
393
echo "  --disable-darwin-user    disable all darwin usermode emulation targets"
394
echo "  --fmod-lib               path to FMOD library"
395
echo "  --fmod-inc               path to FMOD includes"
396
echo "  --enable-uname-release=R Return R for uname -r in usermode emulation"
397
echo "  --sparc_cpu=V            Build qemu for Sparc architecture v7, v8, v8plus, v8plusa, v9"
398
echo ""
399
echo "NOTE: The object files are built at the place where configure is launched"
400
exit 1
401
fi
402

    
403
cc="${cross_prefix}${cc}"
404
ar="${cross_prefix}${ar}"
405
strip="${cross_prefix}${strip}"
406

    
407
# check that the C compiler works.
408
cat > $TMPC <<EOF
409
int main(void) {}
410
EOF
411

    
412
if $cc -c -o $TMPO $TMPC 2> /dev/null ; then
413
  : C compiler works ok
414
else
415
    echo "ERROR: \"$cc\" either does not exist or does not work"
416
    exit 1
417
fi
418

    
419
if test "$mingw32" = "yes" ; then
420
    linux="no"
421
    EXESUF=".exe"
422
    oss="no"
423
fi
424

    
425
# Check for gcc4, error if pre-gcc4
426
if test "$check_gcc" = "yes" ; then
427
    cat > $TMPC <<EOF
428
#if __GNUC__ < 4
429
#error gcc3
430
#endif
431
int main(){return 0;}
432
EOF
433
    if "$cc" -o $TMPE $TMPC 2> /dev/null ; then
434
	echo "WARNING: \"$cc\" looks like gcc 4.x"
435
	found_compat_cc="no"
436
	if test "$gcc3_search" = "yes" ; then
437
	    echo "Looking for gcc 3.x"
438
	    for compat_cc in $gcc3_list ; do
439
		if "$cross_prefix$compat_cc" --version 2> /dev/null | fgrep '(GCC) 3.' > /dev/null 2>&1 ; then
440
		    echo "Found \"$compat_cc\""
441
		    cc="$cross_prefix$compat_cc"
442
		    found_compat_cc="yes"
443
		    break
444
		fi
445
	    done
446
	    if test "$found_compat_cc" = "no" ; then
447
		echo "gcc 3.x not found!"
448
	    fi
449
	fi
450
	if test "$found_compat_cc" = "no" ; then
451
	    echo "QEMU is known to have problems when compiled with gcc 4.x"
452
	    echo "It is recommended that you use gcc 3.x to build QEMU"
453
	    echo "To use this compiler anyway, configure with --disable-gcc-check"
454
	    exit 1;
455
	fi
456
    fi
457
fi
458

    
459
#
460
# Solaris specific configure tool chain decisions
461
#
462
if test "$solaris" = "yes" ; then
463
  #
464
  # gcc for solaris 10/fcs in /usr/sfw/bin doesn't compile qemu correctly
465
  # override the check with --disable-gcc-check
466
  #
467
  if test "$solarisrev" -eq 10 -a "$check_gcc" = "yes" ; then
468
    solgcc=`which $cc`
469
    if test "$solgcc" = "/usr/sfw/bin/gcc" ; then
470
      echo "Solaris 10/FCS gcc in /usr/sfw/bin will not compiled qemu correctly."
471
      echo "please get gcc-3.4.3 or later, from www.blastwave.org using pkg-get -i gcc3"
472
      echo "or get the latest patch from SunSolve for gcc"
473
      exit 1
474
    fi
475
  fi
476
  solinst=`which $install 2> /dev/null | /usr/bin/grep -v "no $install in"`
477
  if test -z "$solinst" ; then
478
    echo "Solaris install program not found. Use --install=/usr/ucb/install or"
479
    echo "install fileutils from www.blastwave.org using pkg-get -i fileutils"
480
    echo "to get ginstall which is used by default (which lives in /opt/csw/bin)"
481
    exit 1
482
  fi
483
  if test "$solinst" = "/usr/sbin/install" ; then
484
    echo "Error: Solaris /usr/sbin/install is not an appropriate install program."
485
    echo "try ginstall from the GNU fileutils available from www.blastwave.org"
486
    echo "using pkg-get -i fileutils, or use --install=/usr/ucb/install"
487
    exit 1
488
  fi
489
  sol_ar=`which ar 2> /dev/null | /usr/bin/grep -v "no ar in"`
490
  if test -z "$sol_ar" ; then
491
    echo "Error: No path includes ar"
492
    if test -f /usr/ccs/bin/ar ; then
493
      echo "Add /usr/ccs/bin to your path and rerun configure"
494
    fi
495
    exit 1
496
  fi
497
fi
498

    
499

    
500
if test -z "$target_list" ; then
501
# these targets are portable
502
    if [ "$softmmu" = "yes" ] ; then
503
        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"
504
    fi
505
# the following are Linux specific
506
    if [ "$linux_user" = "yes" ] ; then
507
        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 ppcemb-linux-user ppc64-linux-user ppc64abi32-linux-user x86_64-linux-user cris-linux-user $target_list"
508
    fi
509
# the following are Darwin specific
510
    if [ "$darwin_user" = "yes" ] ; then
511
        target_list="i386-darwin-user ppc-darwin-user $target_list"
512
    fi
513
else
514
    target_list=`echo "$target_list" | sed -e 's/,/ /g'`
515
fi
516
if test -z "$target_list" ; then
517
    echo "No targets enabled"
518
    exit 1
519
fi
520

    
521
if test -z "$cross_prefix" ; then
522

    
523
# ---
524
# big/little endian test
525
cat > $TMPC << EOF
526
#include <inttypes.h>
527
int main(int argc, char ** argv){
528
        volatile uint32_t i=0x01234567;
529
        return (*((uint8_t*)(&i))) == 0x67;
530
}
531
EOF
532

    
533
if $cc -o $TMPE $TMPC 2> /dev/null ; then
534
$TMPE && bigendian="yes"
535
else
536
echo big/little test failed
537
fi
538

    
539
else
540

    
541
# if cross compiling, cannot launch a program, so make a static guess
542
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
543
    bigendian="yes"
544
fi
545

    
546
fi
547

    
548
# host long bits test
549
hostlongbits="32"
550
if test "$cpu" = "sparc64" -o "$cpu" = "ia64" -o "$cpu" = "x86_64" -o "$cpu" = "alpha"; then
551
    hostlongbits="64"
552
fi
553

    
554
# check gcc options support
555
cat > $TMPC <<EOF
556
int main(void) {
557
}
558
EOF
559

    
560
##########################################
561
# SDL probe
562

    
563
sdl_too_old=no
564

    
565
if test -z "$sdl" ; then
566
    sdl_config="sdl-config"
567
    sdl=no
568
    sdl_static=no
569

    
570
    if test "$mingw32" = "yes" -a ! -z "$cross_prefix" ; then
571
    # win32 cross compilation case
572
        sdl_config="i386-mingw32msvc-sdl-config"
573
        sdl=yes
574
    else
575
        # normal SDL probe
576
cat > $TMPC << EOF
577
#include <SDL.h>
578
#undef main /* We don't want SDL to override our main() */
579
int main( void ) { return SDL_Init (SDL_INIT_VIDEO); }
580
EOF
581
        if $cc -o $TMPE `$sdl_config --cflags 2> /dev/null` $TMPC `$sdl_config --libs 2> /dev/null` 2> /tmp/qemu-$$-sdl-config.log ; then
582
            _sdlversion=`$sdl_config --version | sed 's/[^0-9]//g'`
583
            if test "$_sdlversion" -lt 121 ; then
584
                sdl_too_old=yes
585
            else
586
                if test "$cocoa" = "no" ; then
587
                    sdl=yes
588
                fi
589
            fi
590

    
591
            # static link with sdl ?
592
            if test "$sdl" = "yes" ; then
593
                aa="no"
594
                `$sdl_config --static-libs 2>/dev/null | grep \\\-laa > /dev/null` && aa="yes"
595
                sdl_static_libs=`$sdl_config --static-libs 2>/dev/null`
596
                if [ "$aa" = "yes" ] ; then
597
                    sdl_static_libs="$sdl_static_libs `aalib-config --static-libs`"
598
                fi
599

    
600
                if $cc -o $TMPE `$sdl_config --cflags 2> /dev/null` $TMPC $sdl_static_libs 2> /dev/null; then
601
                    sdl_static=yes
602
                fi
603
            fi # static link
604
        fi # sdl compile test
605
    fi # cross compilation
606
else
607
    # Make sure to disable cocoa if sdl was set
608
    if test "$sdl" = "yes" ; then
609
       cocoa="no"
610
       coreaudio="no"
611
    fi
612
fi # -z $sdl
613

    
614
##########################################
615
# VNC TLS detection
616
if test "$vnc_tls" = "yes" ; then
617
  `pkg-config gnutls` || vnc_tls="no"
618
fi
619
if test "$vnc_tls" = "yes" ; then
620
  vnc_tls_cflags=`pkg-config --cflags gnutls`
621
  vnc_tls_libs=`pkg-config --libs gnutls`
622
fi
623

    
624
##########################################
625
# alsa sound support libraries
626

    
627
if test "$alsa" = "yes" ; then
628
  cat > $TMPC << EOF
629
#include <alsa/asoundlib.h>
630
int main(void) { snd_pcm_t **handle; return snd_pcm_close(*handle); }
631
EOF
632
  if $cc -o $TMPE $TMPC -lasound 2> /dev/null ; then
633
    :
634
  else
635
    echo
636
    echo "Error: Could not find alsa"
637
    echo "Make sure to have the alsa libs and headers installed."
638
    echo
639
    exit 1
640
  fi
641
fi
642

    
643
# Check if tools are available to build documentation.
644
if [ -x "`which texi2html 2>/dev/null`" ] && \
645
   [ -x "`which pod2man 2>/dev/null`" ]; then
646
  build_docs="yes"
647
fi
648

    
649
if test "$mingw32" = "yes" ; then
650
  if test -z "$prefix" ; then
651
      prefix="/c/Program Files/Qemu"
652
  fi
653
  mansuffix=""
654
  datasuffix=""
655
  docsuffix=""
656
  binsuffix=""
657
else
658
  if test -z "$prefix" ; then
659
      prefix="/usr/local"
660
  fi
661
  mansuffix="/share/man"
662
  datasuffix="/share/qemu"
663
  docsuffix="/share/doc/qemu"
664
  binsuffix="/bin"
665
fi
666

    
667
echo "Install prefix    $prefix"
668
echo "BIOS directory    $prefix$datasuffix"
669
echo "binary directory  $prefix$binsuffix"
670
if test "$mingw32" = "no" ; then
671
echo "Manual directory  $prefix$mansuffix"
672
echo "ELF interp prefix $interp_prefix"
673
fi
674
echo "Source path       $source_path"
675
echo "C compiler        $cc"
676
echo "Host C compiler   $host_cc"
677
echo "make              $make"
678
echo "install           $install"
679
echo "host CPU          $cpu"
680
echo "host big endian   $bigendian"
681
echo "target list       $target_list"
682
echo "gprof enabled     $gprof"
683
echo "profiler          $profiler"
684
echo "static build      $static"
685
if test "$darwin" = "yes" ; then
686
    echo "Cocoa support     $cocoa"
687
fi
688
echo "SDL support       $sdl"
689
if test "$sdl" != "no" ; then
690
    echo "SDL static link   $sdl_static"
691
fi
692
echo "mingw32 support   $mingw32"
693
echo "Adlib support     $adlib"
694
echo "CoreAudio support $coreaudio"
695
echo "ALSA support      $alsa"
696
echo "DSound support    $dsound"
697
if test "$fmod" = "yes"; then
698
    if test -z $fmod_lib || test -z $fmod_inc; then
699
        echo
700
        echo "Error: You must specify path to FMOD library and headers"
701
        echo "Example: --fmod-inc=/path/include/fmod --fmod-lib=/path/lib/libfmod-3.74.so"
702
        echo
703
        exit 1
704
    fi
705
    fmod_support=" (lib='$fmod_lib' include='$fmod_inc')"
706
else
707
    fmod_support=""
708
fi
709
echo "FMOD support      $fmod $fmod_support"
710
echo "OSS support       $oss"
711
echo "VNC TLS support   $vnc_tls"
712
if test "$vnc_tls" = "yes" ; then
713
    echo "    TLS CFLAGS    $vnc_tls_cflags"
714
    echo "    TLS LIBS      $vnc_tls_libs"
715
fi
716
if test -n "$sparc_cpu"; then
717
    echo "Target Sparc Arch $sparc_cpu"
718
fi
719
echo "kqemu support     $kqemu"
720
echo "Documentation     $build_docs"
721
[ ! -z "$uname_release" ] && \
722
echo "uname -r          $uname_release"
723

    
724
if test $sdl_too_old = "yes"; then
725
echo "-> Your SDL version is too old - please upgrade to have SDL support"
726
fi
727
if [ -s /tmp/qemu-$$-sdl-config.log ]; then
728
  echo "The error log from compiling the libSDL test is: "
729
  cat /tmp/qemu-$$-sdl-config.log
730
fi
731
rm -f /tmp/qemu-$$-sdl-config.log
732
#if test "$sdl_static" = "no"; then
733
#  echo "WARNING: cannot compile statically with SDL - qemu-fast won't have a graphical output"
734
#fi
735
config_mak="config-host.mak"
736
config_h="config-host.h"
737

    
738
#echo "Creating $config_mak and $config_h"
739

    
740
test -f $config_h && mv $config_h ${config_h}~
741

    
742
echo "# Automatically generated by configure - do not modify" > $config_mak
743
echo "# Configured with: $0 $@" >> $config_mak
744
echo "/* Automatically generated by configure - do not modify */" > $config_h
745

    
746
echo "prefix=$prefix" >> $config_mak
747
echo "bindir=\${prefix}$binsuffix" >> $config_mak
748
echo "mandir=\${prefix}$mansuffix" >> $config_mak
749
echo "datadir=\${prefix}$datasuffix" >> $config_mak
750
echo "docdir=\${prefix}$docsuffix" >> $config_mak
751
echo "#define CONFIG_QEMU_SHAREDIR \"$prefix$datasuffix\"" >> $config_h
752
echo "MAKE=$make" >> $config_mak
753
echo "INSTALL=$install" >> $config_mak
754
echo "CC=$cc" >> $config_mak
755
echo "HOST_CC=$host_cc" >> $config_mak
756
echo "AR=$ar" >> $config_mak
757
echo "STRIP=$strip -s -R .comment -R .note" >> $config_mak
758
echo "OS_CFLAGS=$OS_CFLAGS" >> $config_mak
759
echo "OS_LDFLAGS=$OS_LDFLAGS" >> $config_mak
760
echo "VL_OS_LDFLAGS=$VL_OS_LDFLAGS" >> $config_mak
761
echo "ARCH_CFLAGS=$ARCH_CFLAGS" >> $config_mak
762
echo "ARCH_LDFLAGS=$ARCH_LDFLAGS" >> $config_mak
763
echo "CFLAGS=$CFLAGS" >> $config_mak
764
echo "LDFLAGS=$LDFLAGS" >> $config_mak
765
echo "EXESUF=$EXESUF" >> $config_mak
766
echo "AIOLIBS=$AIOLIBS" >> $config_mak
767
if test "$cpu" = "i386" ; then
768
  echo "ARCH=i386" >> $config_mak
769
  echo "#define HOST_I386 1" >> $config_h
770
elif test "$cpu" = "x86_64" ; then
771
  echo "ARCH=x86_64" >> $config_mak
772
  echo "#define HOST_X86_64 1" >> $config_h
773
elif test "$cpu" = "armv4b" ; then
774
  echo "ARCH=arm" >> $config_mak
775
  echo "#define HOST_ARM 1" >> $config_h
776
elif test "$cpu" = "armv4l" ; then
777
  echo "ARCH=arm" >> $config_mak
778
  echo "#define HOST_ARM 1" >> $config_h
779
elif test "$cpu" = "powerpc" ; then
780
  echo "ARCH=ppc" >> $config_mak
781
  echo "#define HOST_PPC 1" >> $config_h
782
elif test "$cpu" = "mips" ; then
783
  echo "ARCH=mips" >> $config_mak
784
  echo "#define HOST_MIPS 1" >> $config_h
785
elif test "$cpu" = "mips64" ; then
786
  echo "ARCH=mips64" >> $config_mak
787
  echo "#define HOST_MIPS64 1" >> $config_h
788
elif test "$cpu" = "cris" ; then
789
  echo "ARCH=cris" >> $config_mak
790
  echo "#define HOST_CRIS 1" >> $config_h
791
elif test "$cpu" = "s390" ; then
792
  echo "ARCH=s390" >> $config_mak
793
  echo "#define HOST_S390 1" >> $config_h
794
elif test "$cpu" = "alpha" ; then
795
  echo "ARCH=alpha" >> $config_mak
796
  echo "#define HOST_ALPHA 1" >> $config_h
797
elif test "$cpu" = "sparc" ; then
798
  echo "ARCH=sparc" >> $config_mak
799
  echo "#define HOST_SPARC 1" >> $config_h
800
elif test "$cpu" = "sparc64" ; then
801
  echo "ARCH=sparc64" >> $config_mak
802
  echo "#define HOST_SPARC64 1" >> $config_h
803
elif test "$cpu" = "ia64" ; then
804
  echo "ARCH=ia64" >> $config_mak
805
  echo "#define HOST_IA64 1" >> $config_h
806
elif test "$cpu" = "m68k" ; then
807
  echo "ARCH=m68k" >> $config_mak
808
  echo "#define HOST_M68K 1" >> $config_h
809
else
810
  echo "Unsupported CPU = $cpu"
811
  exit 1
812
fi
813
if test "$bigendian" = "yes" ; then
814
  echo "WORDS_BIGENDIAN=yes" >> $config_mak
815
  echo "#define WORDS_BIGENDIAN 1" >> $config_h
816
fi
817
echo "#define HOST_LONG_BITS $hostlongbits" >> $config_h
818
if test "$mingw32" = "yes" ; then
819
  echo "CONFIG_WIN32=yes" >> $config_mak
820
  echo "#define CONFIG_WIN32 1" >> $config_h
821
else
822
  cat > $TMPC << EOF
823
#include <byteswap.h>
824
int main(void) { return bswap_32(0); }
825
EOF
826
  if $cc -o $TMPE $TMPC 2> /dev/null ; then
827
    echo "#define HAVE_BYTESWAP_H 1" >> $config_h
828
  fi
829
fi
830
if test "$darwin" = "yes" ; then
831
  echo "CONFIG_DARWIN=yes" >> $config_mak
832
  echo "#define CONFIG_DARWIN 1" >> $config_h
833
fi
834
if test "$solaris" = "yes" ; then
835
  echo "CONFIG_SOLARIS=yes" >> $config_mak
836
  echo "#define HOST_SOLARIS $solarisrev" >> $config_h
837
  if test "$needs_libsunmath" = "yes" ; then
838
    echo "NEEDS_LIBSUNMATH=yes" >> $config_mak
839
    echo "#define NEEDS_LIBSUNMATH 1" >> $config_h
840
  fi
841
fi
842
if test -n "$sparc_cpu"; then
843
  echo "CONFIG__sparc_${sparc_cpu}__=yes" >> $config_mak
844
  echo "#define __sparc_${sparc_cpu}__ 1" >> $config_h
845
fi
846
if test "$gdbstub" = "yes" ; then
847
  echo "CONFIG_GDBSTUB=yes" >> $config_mak
848
  echo "#define CONFIG_GDBSTUB 1" >> $config_h
849
fi
850
if test "$gprof" = "yes" ; then
851
  echo "TARGET_GPROF=yes" >> $config_mak
852
  echo "#define HAVE_GPROF 1" >> $config_h
853
fi
854
if test "$static" = "yes" ; then
855
  echo "CONFIG_STATIC=yes" >> $config_mak
856
  echo "#define CONFIG_STATIC 1" >> $config_h
857
fi
858
if test $profiler = "yes" ; then
859
  echo "#define CONFIG_PROFILER 1" >> $config_h
860
fi
861
if test "$slirp" = "yes" ; then
862
  echo "CONFIG_SLIRP=yes" >> $config_mak
863
  echo "#define CONFIG_SLIRP 1" >> $config_h
864
fi
865
if test "$adlib" = "yes" ; then
866
  echo "CONFIG_ADLIB=yes" >> $config_mak
867
  echo "#define CONFIG_ADLIB 1" >> $config_h
868
fi
869
if test "$oss" = "yes" ; then
870
  echo "CONFIG_OSS=yes" >> $config_mak
871
  echo "#define CONFIG_OSS 1" >> $config_h
872
fi
873
if test "$coreaudio" = "yes" ; then
874
  echo "CONFIG_COREAUDIO=yes" >> $config_mak
875
  echo "#define CONFIG_COREAUDIO 1" >> $config_h
876
fi
877
if test "$alsa" = "yes" ; then
878
  echo "CONFIG_ALSA=yes" >> $config_mak
879
  echo "#define CONFIG_ALSA 1" >> $config_h
880
fi
881
if test "$dsound" = "yes" ; then
882
  echo "CONFIG_DSOUND=yes" >> $config_mak
883
  echo "#define CONFIG_DSOUND 1" >> $config_h
884
fi
885
if test "$fmod" = "yes" ; then
886
  echo "CONFIG_FMOD=yes" >> $config_mak
887
  echo "CONFIG_FMOD_LIB=$fmod_lib" >> $config_mak
888
  echo "CONFIG_FMOD_INC=$fmod_inc" >> $config_mak
889
  echo "#define CONFIG_FMOD 1" >> $config_h
890
fi
891
if test "$vnc_tls" = "yes" ; then
892
  echo "CONFIG_VNC_TLS=yes" >> $config_mak
893
  echo "CONFIG_VNC_TLS_CFLAGS=$vnc_tls_cflags" >> $config_mak
894
  echo "CONFIG_VNC_TLS_LIBS=$vnc_tls_libs" >> $config_mak
895
  echo "#define CONFIG_VNC_TLS 1" >> $config_h
896
fi
897
qemu_version=`head $source_path/VERSION`
898
echo "VERSION=$qemu_version" >>$config_mak
899
echo "#define QEMU_VERSION \"$qemu_version\"" >> $config_h
900

    
901
echo "SRC_PATH=$source_path" >> $config_mak
902
if [ "$source_path_used" = "yes" ]; then
903
  echo "VPATH=$source_path" >> $config_mak
904
fi
905
echo "TARGET_DIRS=$target_list" >> $config_mak
906
if [ "$build_docs" = "yes" ] ; then
907
  echo "BUILD_DOCS=yes" >> $config_mak
908
fi
909

    
910
# XXX: suppress that
911
if [ "$bsd" = "yes" ] ; then
912
  echo "#define O_LARGEFILE 0" >> $config_h
913
  echo "#define MAP_ANONYMOUS MAP_ANON" >> $config_h
914
  echo "#define _BSD 1" >> $config_h
915
fi
916

    
917
echo "#define CONFIG_UNAME_RELEASE \"$uname_release\"" >> $config_h
918

    
919
tools=
920
if test `expr "$target_list" : ".*softmmu.*"` != 0 ; then
921
  tools="qemu-img\$(EXESUF) $tools"
922
fi
923
echo "TOOLS=$tools" >> $config_mak
924

    
925
test -f ${config_h}~ && cmp -s $config_h ${config_h}~ && mv ${config_h}~ $config_h
926

    
927
for target in $target_list; do
928
target_dir="$target"
929
config_mak=$target_dir/config.mak
930
config_h=$target_dir/config.h
931
target_cpu=`echo $target | cut -d '-' -f 1`
932
target_bigendian="no"
933
[ "$target_cpu" = "armeb" ] && target_bigendian=yes
934
[ "$target_cpu" = "sparc" ] && target_bigendian=yes
935
[ "$target_cpu" = "sparc64" ] && target_bigendian=yes
936
[ "$target_cpu" = "sparc32plus" ] && target_bigendian=yes
937
[ "$target_cpu" = "ppc" ] && target_bigendian=yes
938
[ "$target_cpu" = "ppcemb" ] && target_bigendian=yes
939
[ "$target_cpu" = "ppc64" ] && target_bigendian=yes
940
[ "$target_cpu" = "ppc64abi32" ] && target_bigendian=yes
941
[ "$target_cpu" = "ppc64h" ] && target_bigendian=yes
942
[ "$target_cpu" = "mips" ] && target_bigendian=yes
943
[ "$target_cpu" = "mipsn32" ] && target_bigendian=yes
944
[ "$target_cpu" = "mips64" ] && target_bigendian=yes
945
[ "$target_cpu" = "sh4eb" ] && target_bigendian=yes
946
[ "$target_cpu" = "m68k" ] && target_bigendian=yes
947
target_softmmu="no"
948
target_user_only="no"
949
target_linux_user="no"
950
target_darwin_user="no"
951
case "$target" in
952
  ${target_cpu}-softmmu)
953
    target_softmmu="yes"
954
    ;;
955
  ${target_cpu}-linux-user)
956
    target_user_only="yes"
957
    target_linux_user="yes"
958
    ;;
959
  ${target_cpu}-darwin-user)
960
    target_user_only="yes"
961
    target_darwin_user="yes"
962
    ;;
963
  *)
964
    echo "ERROR: Target '$target' not recognised"
965
    exit 1
966
    ;;
967
esac
968

    
969
if test "$target_user_only" = "no" -a "$check_gfx" = "yes" \
970
        -a "$sdl" = "no" -a "$cocoa" = "no" ; then
971
    echo "ERROR: QEMU requires SDL or Cocoa for graphical output"
972
    echo "To build QEMU without graphical output configure with --disable-gfx-check"
973
    echo "Note that this will disable all output from the virtual graphics card."
974
    exit 1;
975
fi
976

    
977
#echo "Creating $config_mak, $config_h and $target_dir/Makefile"
978

    
979
test -f $config_h && mv $config_h ${config_h}~
980

    
981
mkdir -p $target_dir
982
mkdir -p $target_dir/fpu
983
if test "$target" = "arm-linux-user" -o "$target" = "armeb-linux-user" ; then
984
  mkdir -p $target_dir/nwfpe
985
fi
986
if test "$target_user_only" = "no" ; then
987
  mkdir -p $target_dir/slirp
988
fi
989

    
990
#
991
# don't use ln -sf as not all "ln -sf" over write the file/link
992
#
993
rm -f $target_dir/Makefile
994
ln -s $source_path/Makefile.target $target_dir/Makefile
995

    
996

    
997
echo "# Automatically generated by configure - do not modify" > $config_mak
998
echo "/* Automatically generated by configure - do not modify */" > $config_h
999

    
1000

    
1001
echo "include ../config-host.mak" >> $config_mak
1002
echo "#include \"../config-host.h\"" >> $config_h
1003

    
1004
bflt="no"
1005
elfload32="no"
1006
interp_prefix1=`echo "$interp_prefix" | sed "s/%M/$target_cpu/g"`
1007
echo "#define CONFIG_QEMU_PREFIX \"$interp_prefix1\"" >> $config_h
1008

    
1009
if test "$target_cpu" = "i386" ; then
1010
  echo "TARGET_ARCH=i386" >> $config_mak
1011
  echo "#define TARGET_ARCH \"i386\"" >> $config_h
1012
  echo "#define TARGET_I386 1" >> $config_h
1013
  if test $kqemu = "yes" -a "$target_softmmu" = "yes" -a $cpu = "i386" ; then
1014
    echo "#define USE_KQEMU 1" >> $config_h
1015
  fi
1016
elif test "$target_cpu" = "arm" -o "$target_cpu" = "armeb" ; then
1017
  echo "TARGET_ARCH=arm" >> $config_mak
1018
  echo "#define TARGET_ARCH \"arm\"" >> $config_h
1019
  echo "#define TARGET_ARM 1" >> $config_h
1020
  bflt="yes"
1021
elif test "$target_cpu" = "sparc" ; then
1022
  echo "TARGET_ARCH=sparc" >> $config_mak
1023
  echo "#define TARGET_ARCH \"sparc\"" >> $config_h
1024
  echo "#define TARGET_SPARC 1" >> $config_h
1025
elif test "$target_cpu" = "sparc64" ; then
1026
  echo "TARGET_ARCH=sparc64" >> $config_mak
1027
  echo "#define TARGET_ARCH \"sparc64\"" >> $config_h
1028
  echo "#define TARGET_SPARC 1" >> $config_h
1029
  echo "#define TARGET_SPARC64 1" >> $config_h
1030
  elfload32="yes"
1031
elif test "$target_cpu" = "sparc32plus" ; then
1032
  echo "TARGET_ARCH=sparc64" >> $config_mak
1033
  echo "TARGET_ABI_DIR=sparc" >> $config_mak
1034
  echo "#define TARGET_ARCH \"sparc64\"" >> $config_h
1035
  echo "#define TARGET_SPARC 1" >> $config_h
1036
  echo "#define TARGET_SPARC64 1" >> $config_h
1037
  echo "#define TARGET_ABI32 1" >> $config_h
1038
elif test "$target_cpu" = "ppc" ; then
1039
  echo "TARGET_ARCH=ppc" >> $config_mak
1040
  echo "#define TARGET_ARCH \"ppc\"" >> $config_h
1041
  echo "#define TARGET_PPC 1" >> $config_h
1042
elif test "$target_cpu" = "ppcemb" ; then
1043
  echo "TARGET_ARCH=ppcemb" >> $config_mak
1044
  echo "TARGET_ABI_DIR=ppc" >> $config_mak
1045
  echo "#define TARGET_ARCH \"ppcemb\"" >> $config_h
1046
  echo "#define TARGET_PPC 1" >> $config_h
1047
  echo "#define TARGET_PPCEMB 1" >> $config_h
1048
elif test "$target_cpu" = "ppc64" ; then
1049
  echo "TARGET_ARCH=ppc64" >> $config_mak
1050
  echo "#define TARGET_ARCH \"ppc64\"" >> $config_h
1051
  echo "#define TARGET_PPC 1" >> $config_h
1052
  echo "#define TARGET_PPC64 1" >> $config_h
1053
elif test "$target_cpu" = "ppc64abi32" ; then
1054
  echo "TARGET_ARCH=ppc64" >> $config_mak
1055
  echo "#define TARGET_ARCH \"ppc64\"" >> $config_h
1056
  echo "TARGET_ABI_DIR=ppc" >> $config_mak
1057
  echo "#define TARGET_PPC 1" >> $config_h
1058
  echo "#define TARGET_PPC64 1" >> $config_h
1059
  echo "#define TARGET_ABI32 1" >> $config_h
1060
elif test "$target_cpu" = "ppc64h" ; then
1061
  echo "TARGET_ARCH=ppc64h" >> $config_mak
1062
  echo "#define TARGET_ARCH \"ppc64h\"" >> $config_h
1063
  echo "#define TARGET_PPC 1" >> $config_h
1064
  echo "#define TARGET_PPC64 1" >> $config_h
1065
  echo "#define TARGET_PPC64H 1" >> $config_h
1066
elif test "$target_cpu" = "x86_64" ; then
1067
  echo "TARGET_ARCH=x86_64" >> $config_mak
1068
  echo "#define TARGET_ARCH \"x86_64\"" >> $config_h
1069
  echo "#define TARGET_I386 1" >> $config_h
1070
  echo "#define TARGET_X86_64 1" >> $config_h
1071
  if test $kqemu = "yes" -a "$target_softmmu" = "yes" -a $cpu = "x86_64"  ; then
1072
    echo "#define USE_KQEMU 1" >> $config_h
1073
  fi
1074
elif test "$target_cpu" = "mips" -o "$target_cpu" = "mipsel" ; then
1075
  echo "TARGET_ARCH=mips" >> $config_mak
1076
  echo "#define TARGET_ARCH \"mips\"" >> $config_h
1077
  echo "#define TARGET_MIPS 1" >> $config_h
1078
elif test "$target_cpu" = "mipsn32" -o "$target_cpu" = "mipsn32el" ; then
1079
  echo "TARGET_ARCH=mipsn32" >> $config_mak
1080
  echo "#define TARGET_ARCH \"mipsn32\"" >> $config_h
1081
  echo "#define TARGET_MIPS 1" >> $config_h
1082
  echo "#define TARGET_MIPSN32 1" >> $config_h
1083
elif test "$target_cpu" = "mips64" -o "$target_cpu" = "mips64el" ; then
1084
  echo "TARGET_ARCH=mips64" >> $config_mak
1085
  echo "#define TARGET_ARCH \"mips64\"" >> $config_h
1086
  echo "#define TARGET_MIPS 1" >> $config_h
1087
  echo "#define TARGET_MIPS64 1" >> $config_h
1088
elif test "$target_cpu" = "cris" ; then
1089
  echo "TARGET_ARCH=cris" >> $config_mak
1090
  echo "#define TARGET_ARCH \"cris\"" >> $config_h
1091
  echo "#define TARGET_CRIS 1" >> $config_h
1092
  echo "CONFIG_SOFTFLOAT=yes" >> $config_mak
1093
  echo "#define CONFIG_SOFTFLOAT 1" >> $config_h
1094
elif test "$target_cpu" = "sh4" -o "$target_cpu" = "sh4eb" ; then
1095
  echo "TARGET_ARCH=sh4" >> $config_mak
1096
  echo "#define TARGET_ARCH \"sh4\"" >> $config_h
1097
  echo "#define TARGET_SH4 1" >> $config_h
1098
  bflt="yes"
1099
elif test "$target_cpu" = "m68k" ; then
1100
  echo "TARGET_ARCH=m68k" >> $config_mak
1101
  echo "#define TARGET_ARCH \"m68k\"" >> $config_h
1102
  echo "#define TARGET_M68K 1" >> $config_h
1103
  bflt="yes"
1104
elif test "$target_cpu" = "alpha" ; then
1105
  echo "TARGET_ARCH=alpha" >> $config_mak
1106
  echo "#define TARGET_ARCH \"alpha\"" >> $config_h
1107
  echo "#define TARGET_ALPHA 1" >> $config_h
1108
else
1109
  echo "Unsupported target CPU"
1110
  exit 1
1111
fi
1112
if test "$target_bigendian" = "yes" ; then
1113
  echo "TARGET_WORDS_BIGENDIAN=yes" >> $config_mak
1114
  echo "#define TARGET_WORDS_BIGENDIAN 1" >> $config_h
1115
fi
1116
if test "$target_softmmu" = "yes" ; then
1117
  echo "CONFIG_SOFTMMU=yes" >> $config_mak
1118
  echo "#define CONFIG_SOFTMMU 1" >> $config_h
1119
fi
1120
if test "$target_user_only" = "yes" ; then
1121
  echo "CONFIG_USER_ONLY=yes" >> $config_mak
1122
  echo "#define CONFIG_USER_ONLY 1" >> $config_h
1123
fi
1124
if test "$target_linux_user" = "yes" ; then
1125
  echo "CONFIG_LINUX_USER=yes" >> $config_mak
1126
  echo "#define CONFIG_LINUX_USER 1" >> $config_h
1127
fi
1128
if test "$target_darwin_user" = "yes" ; then
1129
  echo "CONFIG_DARWIN_USER=yes" >> $config_mak
1130
  echo "#define CONFIG_DARWIN_USER 1" >> $config_h
1131
fi
1132

    
1133
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
1134
  echo "CONFIG_SOFTFLOAT=yes" >> $config_mak
1135
  echo "#define CONFIG_SOFTFLOAT 1" >> $config_h
1136
fi
1137
if test "$target_user_only" = "yes" -a "$bflt" = "yes"; then
1138
  echo "TARGET_HAS_BFLT=yes" >> $config_mak
1139
  echo "#define TARGET_HAS_BFLT 1" >> $config_h
1140
fi
1141
# 32 bit ELF loader in addition to native 64 bit loader?
1142
if test "$target_user_only" = "yes" -a "$elfload32" = "yes"; then
1143
  echo "TARGET_HAS_ELFLOAD32=yes" >> $config_mak
1144
  echo "#define TARGET_HAS_ELFLOAD32 1" >> $config_h
1145
fi
1146
# sdl defines
1147

    
1148
if test "$target_user_only" = "no"; then
1149
    if test "$target_softmmu" = "no" -o "$static" = "yes"; then
1150
        sdl1=$sdl_static
1151
    else
1152
        sdl1=$sdl
1153
    fi
1154
    if test "$sdl1" = "yes" ; then
1155
        echo "#define CONFIG_SDL 1" >> $config_h
1156
        echo "CONFIG_SDL=yes" >> $config_mak
1157
        if test "$target_softmmu" = "no" -o "$static" = "yes"; then
1158
            echo "SDL_LIBS=$sdl_static_libs" >> $config_mak
1159
        else
1160
            echo "SDL_LIBS=`$sdl_config --libs`" >> $config_mak
1161
        fi
1162
        if [ "${aa}" = "yes" ] ; then
1163
            echo "SDL_CFLAGS=`$sdl_config --cflags` `aalib-config --cflags`" >> $config_mak
1164
        else
1165
            echo "SDL_CFLAGS=`$sdl_config --cflags`" >> $config_mak
1166
        fi
1167
    fi
1168
fi
1169

    
1170
if test "$cocoa" = "yes" ; then
1171
    echo "#define CONFIG_COCOA 1" >> $config_h
1172
    echo "CONFIG_COCOA=yes" >> $config_mak
1173
fi
1174

    
1175
test -f ${config_h}~ && cmp -s $config_h ${config_h}~ && mv ${config_h}~ $config_h
1176

    
1177
done # for target in $targets
1178

    
1179
# build tree in object directory if source path is different from current one
1180
if test "$source_path_used" = "yes" ; then
1181
    DIRS="tests tests/cris"
1182
    FILES="Makefile tests/Makefile"
1183
    FILES="$FILES tests/cris/Makefile tests/cris/.gdbinit"
1184
    for dir in $DIRS ; do
1185
            mkdir -p $dir
1186
    done
1187
    # remove the link and recreate it, as not all "ln -sf" overwrite the link
1188
    for f in $FILES ; do
1189
        rm -f $f
1190
        ln -s $source_path/$f $f
1191
    done
1192
fi
1193

    
1194
rm -f $TMPO $TMPC $TMPE $TMPS