File:  [Qemu by Fabrice Bellard] / qemu / configure
Revision 1.1.1.6 (vendor branch): download - view: text, annotated - select for diffs
Tue Apr 24 16:47:22 2018 UTC (2 years, 3 months ago) by root
Branches: qemu, MAIN
CVS tags: qemu0091, HEAD
qemu 0.9.1

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

unix.superglobalmegacorp.com