xref: /qemu/configure (revision 992f48a036cccf7101e31bf3e5d901ce5320e886)
1#!/bin/sh
2#
3# qemu configure script (c) 2003 Fabrice Bellard
4#
5# set temporary file name
6if test ! -z "$TMPDIR" ; then
7    TMPDIR1="${TMPDIR}"
8elif test ! -z "$TEMPDIR" ; then
9    TMPDIR1="${TEMPDIR}"
10else
11    TMPDIR1="/tmp"
12fi
13
14TMPC="${TMPDIR1}/qemu-conf-${RANDOM}-$$-${RANDOM}.c"
15TMPO="${TMPDIR1}/qemu-conf-${RANDOM}-$$-${RANDOM}.o"
16TMPE="${TMPDIR1}/qemu-conf-${RANDOM}-$$-${RANDOM}"
17TMPS="${TMPDIR1}/qemu-conf-${RANDOM}-$$-${RANDOM}.S"
18
19# default parameters
20prefix=""
21interp_prefix="/usr/gnemul/qemu-%M"
22static="no"
23cross_prefix=""
24cc="gcc"
25gcc3_search="yes"
26gcc3_list="gcc-3.4 gcc34 gcc-3.3.6 gcc-3.3 gcc33 gcc-3.2 gcc32"
27host_cc="gcc"
28ar="ar"
29make="make"
30install="install"
31strip="strip"
32cpu=`uname -m`
33target_list=""
34case "$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  ;;
80esac
81gprof="no"
82bigendian="no"
83mingw32="no"
84EXESUF=""
85gdbstub="yes"
86slirp="yes"
87adlib="no"
88oss="no"
89dsound="no"
90coreaudio="no"
91alsa="no"
92fmod="no"
93fmod_lib=""
94fmod_inc=""
95vnc_tls="yes"
96bsd="no"
97linux="no"
98kqemu="no"
99profiler="no"
100cocoa="no"
101check_gfx="yes"
102check_gcc="yes"
103softmmu="yes"
104linux_user="no"
105darwin_user="no"
106build_docs="no"
107uname_release=""
108
109# OS specific
110targetos=`uname -s`
111case $targetos in
112CYGWIN*)
113mingw32="yes"
114OS_CFLAGS="-mno-cygwin"
115VL_OS_LDFLAGS="-mno-cygwin"
116if [ "$cpu" = "i386" ] ; then
117    kqemu="yes"
118fi
119;;
120MINGW32*)
121mingw32="yes"
122if [ "$cpu" = "i386" ] ; then
123    kqemu="yes"
124fi
125;;
126GNU/kFreeBSD)
127oss="yes"
128if [ "$cpu" = "i386" -o "$cpu" = "x86_64" ] ; then
129    kqemu="yes"
130fi
131;;
132FreeBSD)
133bsd="yes"
134oss="yes"
135if [ "$cpu" = "i386" -o "$cpu" = "x86_64" ] ; then
136    kqemu="yes"
137fi
138;;
139NetBSD)
140bsd="yes"
141oss="yes"
142;;
143OpenBSD)
144bsd="yes"
145oss="yes"
146;;
147Darwin)
148bsd="yes"
149darwin="yes"
150darwin_user="yes"
151cocoa="yes"
152coreaudio="yes"
153OS_CFLAGS="-mdynamic-no-pic"
154;;
155SunOS)
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*)
188oss="yes"
189linux="yes"
190linux_user="yes"
191if [ "$cpu" = "i386" -o "$cpu" = "x86_64" ] ; then
192    kqemu="yes"
193fi
194;;
195esac
196
197if [ "$bsd" = "yes" ] ; then
198  if [ "$darwin" != "yes" ] ; then
199    make="gmake"
200  fi
201fi
202
203# find source path
204source_path=`dirname "$0"`
205if [ -z "$source_path" ]; then
206    source_path=`pwd`
207else
208    source_path=`cd "$source_path"; pwd`
209fi
210if test "$source_path" = `pwd` ; then
211    source_path_used="no"
212else
213    source_path_used="yes"
214fi
215
216for 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
310done
311
312if [ "$bsd" = "yes" -o "$darwin" = "yes" -o "$mingw32" = "yes" ] ; then
313    AIOLIBS=
314else
315    AIOLIBS="-lrt"
316fi
317
318# default flags for all hosts
319CFLAGS="$CFLAGS -Wall -O2 -g -fno-strict-aliasing"
320LDFLAGS="$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#
326case $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           ;;
343esac
344
345if [ "$solaris" = "yes" -a  "$cpu" = "x86_64" ] ; then
346    CFLAGS="${CFLAGS} -m64"
347    OS_CFLAGS="${OS_CFLAGS} -m64"
348fi
349
350if [ "$solaris" = "yes" -a  "$cpu" = "i386" ] ; then
351    CFLAGS="${CFLAGS} -m32"
352    OS_CFLAGS="${OS_CFLAGS} -m32"
353fi
354
355if test x"$show_help" = x"yes" ; then
356cat << EOF
357
358Usage: configure [options]
359Options: [defaults in brackets after descriptions]
360
361EOF
362echo "Standard options:"
363echo "  --help                   print this message"
364echo "  --prefix=PREFIX          install in PREFIX [$prefix]"
365echo "  --interp-prefix=PREFIX   where to find shared libraries, etc."
366echo "                           use %M for cpu name [$interp_prefix]"
367echo "  --target-list=LIST       set target list [$target_list]"
368echo ""
369echo "kqemu kernel acceleration support:"
370echo "  --disable-kqemu          disable kqemu support"
371echo ""
372echo "Advanced options (experts only):"
373echo "  --source-path=PATH       path of source code [$source_path]"
374echo "  --cross-prefix=PREFIX    use PREFIX for compile tools [$cross_prefix]"
375echo "  --cc=CC                  use C compiler CC [$cc]"
376echo "  --host-cc=CC             use C compiler CC [$host_cc] for dyngen etc."
377echo "  --make=MAKE              use specified make [$make]"
378echo "  --install=INSTALL        use specified install [$install]"
379echo "  --static                 enable static build [$static]"
380echo "  --enable-cocoa           enable COCOA (Mac OS X only)"
381echo "  --enable-mingw32         enable Win32 cross compilation with mingw32"
382echo "  --enable-adlib           enable Adlib emulation"
383echo "  --enable-coreaudio       enable Coreaudio audio driver"
384echo "  --enable-alsa            enable ALSA audio driver"
385echo "  --enable-fmod            enable FMOD audio driver"
386echo "  --enable-dsound          enable DirectSound audio driver"
387echo "  --disable-vnc-tls        disable TLS encryption for VNC server"
388echo "  --enable-system          enable all system emulation targets"
389echo "  --disable-system         disable all system emulation targets"
390echo "  --enable-linux-user      enable all linux usermode emulation targets"
391echo "  --disable-linux-user     disable all linux usermode emulation targets"
392echo "  --enable-darwin-user     enable all darwin usermode emulation targets"
393echo "  --disable-darwin-user    disable all darwin usermode emulation targets"
394echo "  --fmod-lib               path to FMOD library"
395echo "  --fmod-inc               path to FMOD includes"
396echo "  --enable-uname-release=R Return R for uname -r in usermode emulation"
397echo "  --sparc_cpu=V            Build qemu for Sparc architecture v7, v8, v8plus, v8plusa, v9"
398echo ""
399echo "NOTE: The object files are built at the place where configure is launched"
400exit 1
401fi
402
403cc="${cross_prefix}${cc}"
404ar="${cross_prefix}${ar}"
405strip="${cross_prefix}${strip}"
406
407# check that the C compiler works.
408cat > $TMPC <<EOF
409int main(void) {}
410EOF
411
412if $cc -c -o $TMPO $TMPC 2> /dev/null ; then
413  : C compiler works ok
414else
415    echo "ERROR: \"$cc\" either does not exist or does not work"
416    exit 1
417fi
418
419if test "$mingw32" = "yes" ; then
420    linux="no"
421    EXESUF=".exe"
422    oss="no"
423fi
424
425# Check for gcc4, error if pre-gcc4
426if test "$check_gcc" = "yes" ; then
427    cat > $TMPC <<EOF
428#if __GNUC__ < 4
429#error gcc3
430#endif
431int main(){return 0;}
432EOF
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
457fi
458
459#
460# Solaris specific configure tool chain decisions
461#
462if 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
497fi
498
499
500if 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 ppc64-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
513else
514    target_list=`echo "$target_list" | sed -e 's/,/ /g'`
515fi
516if test -z "$target_list" ; then
517    echo "No targets enabled"
518    exit 1
519fi
520
521if test -z "$cross_prefix" ; then
522
523# ---
524# big/little endian test
525cat > $TMPC << EOF
526#include <inttypes.h>
527int main(int argc, char ** argv){
528        volatile uint32_t i=0x01234567;
529        return (*((uint8_t*)(&i))) == 0x67;
530}
531EOF
532
533if $cc -o $TMPE $TMPC 2> /dev/null ; then
534$TMPE && bigendian="yes"
535else
536echo big/little test failed
537fi
538
539else
540
541# if cross compiling, cannot launch a program, so make a static guess
542if 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"
544fi
545
546fi
547
548# host long bits test
549hostlongbits="32"
550if test "$cpu" = "sparc64" -o "$cpu" = "ia64" -o "$cpu" = "x86_64" -o "$cpu" = "alpha"; then
551    hostlongbits="64"
552fi
553
554# check gcc options support
555cat > $TMPC <<EOF
556int main(void) {
557}
558EOF
559
560##########################################
561# SDL probe
562
563sdl_too_old=no
564
565if 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
576cat > $TMPC << EOF
577#include <SDL.h>
578#undef main /* We don't want SDL to override our main() */
579int main( void ) { return SDL_Init (SDL_INIT_VIDEO); }
580EOF
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
606else
607    # Make sure to disable cocoa if sdl was set
608    if test "$sdl" = "yes" ; then
609       cocoa="no"
610       coreaudio="no"
611    fi
612fi # -z $sdl
613
614##########################################
615# VNC TLS detection
616if test "$vnc_tls" = "yes" ; then
617  `pkg-config gnutls` || vnc_tls="no"
618fi
619if test "$vnc_tls" = "yes" ; then
620  vnc_tls_cflags=`pkg-config --cflags gnutls`
621  vnc_tls_libs=`pkg-config --libs gnutls`
622fi
623
624##########################################
625# alsa sound support libraries
626
627if test "$alsa" = "yes" ; then
628  cat > $TMPC << EOF
629#include <alsa/asoundlib.h>
630int main(void) { snd_pcm_t **handle; return snd_pcm_close(*handle); }
631EOF
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
641fi
642
643# Check if tools are available to build documentation.
644if [ -x "`which texi2html 2>/dev/null`" ] && \
645   [ -x "`which pod2man 2>/dev/null`" ]; then
646  build_docs="yes"
647fi
648
649if 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=""
657else
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"
665fi
666
667echo "Install prefix    $prefix"
668echo "BIOS directory    $prefix$datasuffix"
669echo "binary directory  $prefix$binsuffix"
670if test "$mingw32" = "no" ; then
671echo "Manual directory  $prefix$mansuffix"
672echo "ELF interp prefix $interp_prefix"
673fi
674echo "Source path       $source_path"
675echo "C compiler        $cc"
676echo "Host C compiler   $host_cc"
677echo "make              $make"
678echo "install           $install"
679echo "host CPU          $cpu"
680echo "host big endian   $bigendian"
681echo "target list       $target_list"
682echo "gprof enabled     $gprof"
683echo "profiler          $profiler"
684echo "static build      $static"
685if test "$darwin" = "yes" ; then
686    echo "Cocoa support     $cocoa"
687fi
688echo "SDL support       $sdl"
689if test "$sdl" != "no" ; then
690    echo "SDL static link   $sdl_static"
691fi
692echo "mingw32 support   $mingw32"
693echo "Adlib support     $adlib"
694echo "CoreAudio support $coreaudio"
695echo "ALSA support      $alsa"
696echo "DSound support    $dsound"
697if 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')"
706else
707    fmod_support=""
708fi
709echo "FMOD support      $fmod $fmod_support"
710echo "OSS support       $oss"
711echo "VNC TLS support   $vnc_tls"
712if test "$vnc_tls" = "yes" ; then
713    echo "    TLS CFLAGS    $vnc_tls_cflags"
714    echo "    TLS LIBS      $vnc_tls_libs"
715fi
716if test -n "$sparc_cpu"; then
717    echo "Target Sparc Arch $sparc_cpu"
718fi
719echo "kqemu support     $kqemu"
720echo "Documentation     $build_docs"
721[ ! -z "$uname_release" ] && \
722echo "uname -r          $uname_release"
723
724if test $sdl_too_old = "yes"; then
725echo "-> Your SDL version is too old - please upgrade to have SDL support"
726fi
727if [ -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
730fi
731rm -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
735config_mak="config-host.mak"
736config_h="config-host.h"
737
738#echo "Creating $config_mak and $config_h"
739
740test -f $config_h && mv $config_h ${config_h}~
741
742echo "# Automatically generated by configure - do not modify" > $config_mak
743echo "# Configured with: $0 $@" >> $config_mak
744echo "/* Automatically generated by configure - do not modify */" > $config_h
745
746echo "prefix=$prefix" >> $config_mak
747echo "bindir=\${prefix}$binsuffix" >> $config_mak
748echo "mandir=\${prefix}$mansuffix" >> $config_mak
749echo "datadir=\${prefix}$datasuffix" >> $config_mak
750echo "docdir=\${prefix}$docsuffix" >> $config_mak
751echo "#define CONFIG_QEMU_SHAREDIR \"$prefix$datasuffix\"" >> $config_h
752echo "MAKE=$make" >> $config_mak
753echo "INSTALL=$install" >> $config_mak
754echo "CC=$cc" >> $config_mak
755echo "HOST_CC=$host_cc" >> $config_mak
756echo "AR=$ar" >> $config_mak
757echo "STRIP=$strip -s -R .comment -R .note" >> $config_mak
758echo "OS_CFLAGS=$OS_CFLAGS" >> $config_mak
759echo "OS_LDFLAGS=$OS_LDFLAGS" >> $config_mak
760echo "VL_OS_LDFLAGS=$VL_OS_LDFLAGS" >> $config_mak
761echo "ARCH_CFLAGS=$ARCH_CFLAGS" >> $config_mak
762echo "ARCH_LDFLAGS=$ARCH_LDFLAGS" >> $config_mak
763echo "CFLAGS=$CFLAGS" >> $config_mak
764echo "LDFLAGS=$LDFLAGS" >> $config_mak
765echo "EXESUF=$EXESUF" >> $config_mak
766echo "AIOLIBS=$AIOLIBS" >> $config_mak
767if test "$cpu" = "i386" ; then
768  echo "ARCH=i386" >> $config_mak
769  echo "#define HOST_I386 1" >> $config_h
770elif test "$cpu" = "x86_64" ; then
771  echo "ARCH=x86_64" >> $config_mak
772  echo "#define HOST_X86_64 1" >> $config_h
773elif test "$cpu" = "armv4b" ; then
774  echo "ARCH=arm" >> $config_mak
775  echo "#define HOST_ARM 1" >> $config_h
776elif test "$cpu" = "armv4l" ; then
777  echo "ARCH=arm" >> $config_mak
778  echo "#define HOST_ARM 1" >> $config_h
779elif test "$cpu" = "powerpc" ; then
780  echo "ARCH=ppc" >> $config_mak
781  echo "#define HOST_PPC 1" >> $config_h
782elif test "$cpu" = "mips" ; then
783  echo "ARCH=mips" >> $config_mak
784  echo "#define HOST_MIPS 1" >> $config_h
785elif test "$cpu" = "mips64" ; then
786  echo "ARCH=mips64" >> $config_mak
787  echo "#define HOST_MIPS64 1" >> $config_h
788elif test "$cpu" = "cris" ; then
789  echo "ARCH=cris" >> $config_mak
790  echo "#define HOST_CRIS 1" >> $config_h
791elif test "$cpu" = "s390" ; then
792  echo "ARCH=s390" >> $config_mak
793  echo "#define HOST_S390 1" >> $config_h
794elif test "$cpu" = "alpha" ; then
795  echo "ARCH=alpha" >> $config_mak
796  echo "#define HOST_ALPHA 1" >> $config_h
797elif test "$cpu" = "sparc" ; then
798  echo "ARCH=sparc" >> $config_mak
799  echo "#define HOST_SPARC 1" >> $config_h
800elif test "$cpu" = "sparc64" ; then
801  echo "ARCH=sparc64" >> $config_mak
802  echo "#define HOST_SPARC64 1" >> $config_h
803elif test "$cpu" = "ia64" ; then
804  echo "ARCH=ia64" >> $config_mak
805  echo "#define HOST_IA64 1" >> $config_h
806elif test "$cpu" = "m68k" ; then
807  echo "ARCH=m68k" >> $config_mak
808  echo "#define HOST_M68K 1" >> $config_h
809else
810  echo "Unsupported CPU = $cpu"
811  exit 1
812fi
813if test "$bigendian" = "yes" ; then
814  echo "WORDS_BIGENDIAN=yes" >> $config_mak
815  echo "#define WORDS_BIGENDIAN 1" >> $config_h
816fi
817echo "#define HOST_LONG_BITS $hostlongbits" >> $config_h
818if test "$mingw32" = "yes" ; then
819  echo "CONFIG_WIN32=yes" >> $config_mak
820  echo "#define CONFIG_WIN32 1" >> $config_h
821else
822  cat > $TMPC << EOF
823#include <byteswap.h>
824int main(void) { return bswap_32(0); }
825EOF
826  if $cc -o $TMPE $TMPC 2> /dev/null ; then
827    echo "#define HAVE_BYTESWAP_H 1" >> $config_h
828  fi
829fi
830if test "$darwin" = "yes" ; then
831  echo "CONFIG_DARWIN=yes" >> $config_mak
832  echo "#define CONFIG_DARWIN 1" >> $config_h
833fi
834if 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
841fi
842if test -n "$sparc_cpu"; then
843  echo "CONFIG__sparc_${sparc_cpu}__=yes" >> $config_mak
844  echo "#define __sparc_${sparc_cpu}__ 1" >> $config_h
845fi
846if test "$gdbstub" = "yes" ; then
847  echo "CONFIG_GDBSTUB=yes" >> $config_mak
848  echo "#define CONFIG_GDBSTUB 1" >> $config_h
849fi
850if test "$gprof" = "yes" ; then
851  echo "TARGET_GPROF=yes" >> $config_mak
852  echo "#define HAVE_GPROF 1" >> $config_h
853fi
854if test "$static" = "yes" ; then
855  echo "CONFIG_STATIC=yes" >> $config_mak
856  echo "#define CONFIG_STATIC 1" >> $config_h
857fi
858if test $profiler = "yes" ; then
859  echo "#define CONFIG_PROFILER 1" >> $config_h
860fi
861if test "$slirp" = "yes" ; then
862  echo "CONFIG_SLIRP=yes" >> $config_mak
863  echo "#define CONFIG_SLIRP 1" >> $config_h
864fi
865if test "$adlib" = "yes" ; then
866  echo "CONFIG_ADLIB=yes" >> $config_mak
867  echo "#define CONFIG_ADLIB 1" >> $config_h
868fi
869if test "$oss" = "yes" ; then
870  echo "CONFIG_OSS=yes" >> $config_mak
871  echo "#define CONFIG_OSS 1" >> $config_h
872fi
873if test "$coreaudio" = "yes" ; then
874  echo "CONFIG_COREAUDIO=yes" >> $config_mak
875  echo "#define CONFIG_COREAUDIO 1" >> $config_h
876fi
877if test "$alsa" = "yes" ; then
878  echo "CONFIG_ALSA=yes" >> $config_mak
879  echo "#define CONFIG_ALSA 1" >> $config_h
880fi
881if test "$dsound" = "yes" ; then
882  echo "CONFIG_DSOUND=yes" >> $config_mak
883  echo "#define CONFIG_DSOUND 1" >> $config_h
884fi
885if 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
890fi
891if 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
896fi
897qemu_version=`head $source_path/VERSION`
898echo "VERSION=$qemu_version" >>$config_mak
899echo "#define QEMU_VERSION \"$qemu_version\"" >> $config_h
900
901echo "SRC_PATH=$source_path" >> $config_mak
902if [ "$source_path_used" = "yes" ]; then
903  echo "VPATH=$source_path" >> $config_mak
904fi
905echo "TARGET_DIRS=$target_list" >> $config_mak
906if [ "$build_docs" = "yes" ] ; then
907  echo "BUILD_DOCS=yes" >> $config_mak
908fi
909
910# XXX: suppress that
911if [ "$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
915fi
916
917echo "#define CONFIG_UNAME_RELEASE \"$uname_release\"" >> $config_h
918
919tools=
920if test `expr "$target_list" : ".*softmmu.*"` != 0 ; then
921  tools="qemu-img\$(EXESUF) $tools"
922fi
923echo "TOOLS=$tools" >> $config_mak
924
925test -f ${config_h}~ && cmp -s $config_h ${config_h}~ && mv ${config_h}~ $config_h
926
927for target in $target_list; do
928target_dir="$target"
929config_mak=$target_dir/config.mak
930config_h=$target_dir/config.h
931target_cpu=`echo $target | cut -d '-' -f 1`
932target_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" = "ppc64h" ] && target_bigendian=yes
941[ "$target_cpu" = "mips" ] && target_bigendian=yes
942[ "$target_cpu" = "mipsn32" ] && target_bigendian=yes
943[ "$target_cpu" = "mips64" ] && target_bigendian=yes
944[ "$target_cpu" = "sh4eb" ] && target_bigendian=yes
945[ "$target_cpu" = "m68k" ] && target_bigendian=yes
946target_softmmu="no"
947target_user_only="no"
948target_linux_user="no"
949target_darwin_user="no"
950case "$target" in
951  ${target_cpu}-softmmu)
952    target_softmmu="yes"
953    ;;
954  ${target_cpu}-linux-user)
955    target_user_only="yes"
956    target_linux_user="yes"
957    ;;
958  ${target_cpu}-darwin-user)
959    target_user_only="yes"
960    target_darwin_user="yes"
961    ;;
962  *)
963    echo "ERROR: Target '$target' not recognised"
964    exit 1
965    ;;
966esac
967
968if test "$target_user_only" = "no" -a "$check_gfx" = "yes" \
969        -a "$sdl" = "no" -a "$cocoa" = "no" ; then
970    echo "ERROR: QEMU requires SDL or Cocoa for graphical output"
971    echo "To build QEMU without graphical output configure with --disable-gfx-check"
972    echo "Note that this will disable all output from the virtual graphics card."
973    exit 1;
974fi
975
976#echo "Creating $config_mak, $config_h and $target_dir/Makefile"
977
978test -f $config_h && mv $config_h ${config_h}~
979
980mkdir -p $target_dir
981mkdir -p $target_dir/fpu
982if test "$target" = "arm-linux-user" -o "$target" = "armeb-linux-user" ; then
983  mkdir -p $target_dir/nwfpe
984fi
985if test "$target_user_only" = "no" ; then
986  mkdir -p $target_dir/slirp
987fi
988
989#
990# don't use ln -sf as not all "ln -sf" over write the file/link
991#
992rm -f $target_dir/Makefile
993ln -s $source_path/Makefile.target $target_dir/Makefile
994
995
996echo "# Automatically generated by configure - do not modify" > $config_mak
997echo "/* Automatically generated by configure - do not modify */" > $config_h
998
999
1000echo "include ../config-host.mak" >> $config_mak
1001echo "#include \"../config-host.h\"" >> $config_h
1002
1003bflt="no"
1004elfload32="no"
1005interp_prefix1=`echo "$interp_prefix" | sed "s/%M/$target_cpu/g"`
1006echo "#define CONFIG_QEMU_PREFIX \"$interp_prefix1\"" >> $config_h
1007
1008if test "$target_cpu" = "i386" ; then
1009  echo "TARGET_ARCH=i386" >> $config_mak
1010  echo "#define TARGET_ARCH \"i386\"" >> $config_h
1011  echo "#define TARGET_I386 1" >> $config_h
1012  if test $kqemu = "yes" -a "$target_softmmu" = "yes" -a $cpu = "i386" ; then
1013    echo "#define USE_KQEMU 1" >> $config_h
1014  fi
1015elif test "$target_cpu" = "arm" -o "$target_cpu" = "armeb" ; then
1016  echo "TARGET_ARCH=arm" >> $config_mak
1017  echo "#define TARGET_ARCH \"arm\"" >> $config_h
1018  echo "#define TARGET_ARM 1" >> $config_h
1019  bflt="yes"
1020elif test "$target_cpu" = "sparc" ; then
1021  echo "TARGET_ARCH=sparc" >> $config_mak
1022  echo "#define TARGET_ARCH \"sparc\"" >> $config_h
1023  echo "#define TARGET_SPARC 1" >> $config_h
1024elif test "$target_cpu" = "sparc64" ; then
1025  echo "TARGET_ARCH=sparc64" >> $config_mak
1026  echo "#define TARGET_ARCH \"sparc64\"" >> $config_h
1027  echo "#define TARGET_SPARC 1" >> $config_h
1028  echo "#define TARGET_SPARC64 1" >> $config_h
1029  elfload32="yes"
1030elif test "$target_cpu" = "sparc32plus" ; then
1031  echo "TARGET_ARCH=sparc64" >> $config_mak
1032  echo "TARGET_ABI_DIR=sparc" >> $config_mak
1033  echo "#define TARGET_ARCH \"sparc64\"" >> $config_h
1034  echo "#define TARGET_SPARC 1" >> $config_h
1035  echo "#define TARGET_SPARC64 1" >> $config_h
1036  echo "#define TARGET_ABI32 1" >> $config_h
1037elif test "$target_cpu" = "ppc" ; then
1038  echo "TARGET_ARCH=ppc" >> $config_mak
1039  echo "#define TARGET_ARCH \"ppc\"" >> $config_h
1040  echo "#define TARGET_PPC 1" >> $config_h
1041elif test "$target_cpu" = "ppcemb" ; then
1042  echo "TARGET_ARCH=ppcemb" >> $config_mak
1043  echo "#define TARGET_ARCH \"ppcemb\"" >> $config_h
1044  echo "#define TARGET_PPC 1" >> $config_h
1045  echo "#define TARGET_PPCEMB 1" >> $config_h
1046elif test "$target_cpu" = "ppc64" ; then
1047  echo "TARGET_ARCH=ppc64" >> $config_mak
1048  echo "#define TARGET_ARCH \"ppc64\"" >> $config_h
1049  echo "#define TARGET_PPC 1" >> $config_h
1050  echo "#define TARGET_PPC64 1" >> $config_h
1051elif test "$target_cpu" = "ppc64h" ; then
1052  echo "TARGET_ARCH=ppc64h" >> $config_mak
1053  echo "#define TARGET_ARCH \"ppc64h\"" >> $config_h
1054  echo "#define TARGET_PPC 1" >> $config_h
1055  echo "#define TARGET_PPC64 1" >> $config_h
1056  echo "#define TARGET_PPC64H 1" >> $config_h
1057elif test "$target_cpu" = "x86_64" ; then
1058  echo "TARGET_ARCH=x86_64" >> $config_mak
1059  echo "#define TARGET_ARCH \"x86_64\"" >> $config_h
1060  echo "#define TARGET_I386 1" >> $config_h
1061  echo "#define TARGET_X86_64 1" >> $config_h
1062  if test $kqemu = "yes" -a "$target_softmmu" = "yes" -a $cpu = "x86_64"  ; then
1063    echo "#define USE_KQEMU 1" >> $config_h
1064  fi
1065elif test "$target_cpu" = "mips" -o "$target_cpu" = "mipsel" ; then
1066  echo "TARGET_ARCH=mips" >> $config_mak
1067  echo "#define TARGET_ARCH \"mips\"" >> $config_h
1068  echo "#define TARGET_MIPS 1" >> $config_h
1069elif test "$target_cpu" = "mipsn32" -o "$target_cpu" = "mipsn32el" ; then
1070  echo "TARGET_ARCH=mipsn32" >> $config_mak
1071  echo "#define TARGET_ARCH \"mipsn32\"" >> $config_h
1072  echo "#define TARGET_MIPS 1" >> $config_h
1073  echo "#define TARGET_MIPSN32 1" >> $config_h
1074elif test "$target_cpu" = "mips64" -o "$target_cpu" = "mips64el" ; then
1075  echo "TARGET_ARCH=mips64" >> $config_mak
1076  echo "#define TARGET_ARCH \"mips64\"" >> $config_h
1077  echo "#define TARGET_MIPS 1" >> $config_h
1078  echo "#define TARGET_MIPS64 1" >> $config_h
1079elif test "$target_cpu" = "cris" ; then
1080  echo "TARGET_ARCH=cris" >> $config_mak
1081  echo "#define TARGET_ARCH \"cris\"" >> $config_h
1082  echo "#define TARGET_CRIS 1" >> $config_h
1083  echo "CONFIG_SOFTFLOAT=yes" >> $config_mak
1084  echo "#define CONFIG_SOFTFLOAT 1" >> $config_h
1085elif test "$target_cpu" = "sh4" -o "$target_cpu" = "sh4eb" ; then
1086  echo "TARGET_ARCH=sh4" >> $config_mak
1087  echo "#define TARGET_ARCH \"sh4\"" >> $config_h
1088  echo "#define TARGET_SH4 1" >> $config_h
1089  bflt="yes"
1090elif test "$target_cpu" = "m68k" ; then
1091  echo "TARGET_ARCH=m68k" >> $config_mak
1092  echo "#define TARGET_ARCH \"m68k\"" >> $config_h
1093  echo "#define TARGET_M68K 1" >> $config_h
1094  bflt="yes"
1095elif test "$target_cpu" = "alpha" ; then
1096  echo "TARGET_ARCH=alpha" >> $config_mak
1097  echo "#define TARGET_ARCH \"alpha\"" >> $config_h
1098  echo "#define TARGET_ALPHA 1" >> $config_h
1099else
1100  echo "Unsupported target CPU"
1101  exit 1
1102fi
1103if test "$target_bigendian" = "yes" ; then
1104  echo "TARGET_WORDS_BIGENDIAN=yes" >> $config_mak
1105  echo "#define TARGET_WORDS_BIGENDIAN 1" >> $config_h
1106fi
1107if test "$target_softmmu" = "yes" ; then
1108  echo "CONFIG_SOFTMMU=yes" >> $config_mak
1109  echo "#define CONFIG_SOFTMMU 1" >> $config_h
1110fi
1111if test "$target_user_only" = "yes" ; then
1112  echo "CONFIG_USER_ONLY=yes" >> $config_mak
1113  echo "#define CONFIG_USER_ONLY 1" >> $config_h
1114fi
1115if test "$target_linux_user" = "yes" ; then
1116  echo "CONFIG_LINUX_USER=yes" >> $config_mak
1117  echo "#define CONFIG_LINUX_USER 1" >> $config_h
1118fi
1119if test "$target_darwin_user" = "yes" ; then
1120  echo "CONFIG_DARWIN_USER=yes" >> $config_mak
1121  echo "#define CONFIG_DARWIN_USER 1" >> $config_h
1122fi
1123
1124if 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
1125  echo "CONFIG_SOFTFLOAT=yes" >> $config_mak
1126  echo "#define CONFIG_SOFTFLOAT 1" >> $config_h
1127fi
1128if test "$target_user_only" = "yes" -a "$bflt" = "yes"; then
1129  echo "TARGET_HAS_BFLT=yes" >> $config_mak
1130  echo "#define TARGET_HAS_BFLT 1" >> $config_h
1131fi
1132# 32 bit ELF loader in addition to native 64 bit loader?
1133if test "$target_user_only" = "yes" -a "$elfload32" = "yes"; then
1134  echo "TARGET_HAS_ELFLOAD32=yes" >> $config_mak
1135  echo "#define TARGET_HAS_ELFLOAD32 1" >> $config_h
1136fi
1137# sdl defines
1138
1139if test "$target_user_only" = "no"; then
1140    if test "$target_softmmu" = "no" -o "$static" = "yes"; then
1141        sdl1=$sdl_static
1142    else
1143        sdl1=$sdl
1144    fi
1145    if test "$sdl1" = "yes" ; then
1146        echo "#define CONFIG_SDL 1" >> $config_h
1147        echo "CONFIG_SDL=yes" >> $config_mak
1148        if test "$target_softmmu" = "no" -o "$static" = "yes"; then
1149            echo "SDL_LIBS=$sdl_static_libs" >> $config_mak
1150        else
1151            echo "SDL_LIBS=`$sdl_config --libs`" >> $config_mak
1152        fi
1153        if [ "${aa}" = "yes" ] ; then
1154            echo "SDL_CFLAGS=`$sdl_config --cflags` `aalib-config --cflags`" >> $config_mak
1155        else
1156            echo "SDL_CFLAGS=`$sdl_config --cflags`" >> $config_mak
1157        fi
1158    fi
1159fi
1160
1161if test "$cocoa" = "yes" ; then
1162    echo "#define CONFIG_COCOA 1" >> $config_h
1163    echo "CONFIG_COCOA=yes" >> $config_mak
1164fi
1165
1166test -f ${config_h}~ && cmp -s $config_h ${config_h}~ && mv ${config_h}~ $config_h
1167
1168done # for target in $targets
1169
1170# build tree in object directory if source path is different from current one
1171if test "$source_path_used" = "yes" ; then
1172    DIRS="tests tests/cris"
1173    FILES="Makefile tests/Makefile"
1174    FILES="$FILES tests/cris/Makefile tests/cris/.gdbinit"
1175    for dir in $DIRS ; do
1176            mkdir -p $dir
1177    done
1178    # remove the link and recreate it, as not all "ln -sf" overwrite the link
1179    for f in $FILES ; do
1180        rm -f $f
1181        ln -s $source_path/$f $f
1182    done
1183fi
1184
1185rm -f $TMPO $TMPC $TMPE $TMPS
1186