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