Annotation of qemu/configure, revision 1.1.1.5

1.1       root        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"
1.1.1.5 ! root       25: gcc3_search="yes"
        !            26: gcc3_list="gcc-3.4 gcc34 gcc-3.3 gcc33 gcc-3.2 gcc32"
1.1       root       27: host_cc="gcc"
                     28: ar="ar"
                     29: make="make"
1.1.1.3   root       30: install="install"
1.1       root       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:   s390)
                     54:     cpu="s390"
                     55:   ;;
1.1.1.3   root       56:   sparc|sun4[muv])
1.1       root       57:     cpu="sparc"
                     58:   ;;
                     59:   sparc64)
                     60:     cpu="sparc64"
                     61:   ;;
                     62:   ia64)
                     63:     cpu="ia64"
                     64:   ;;
                     65:   m68k)
                     66:     cpu="m68k"
                     67:   ;;
                     68:   x86_64|amd64)
                     69:     cpu="x86_64"
                     70:   ;;
                     71:   *)
                     72:     cpu="unknown"
                     73:   ;;
                     74: esac
                     75: gprof="no"
                     76: bigendian="no"
                     77: mingw32="no"
                     78: EXESUF=""
                     79: gdbstub="yes"
                     80: slirp="yes"
                     81: adlib="no"
                     82: oss="no"
1.1.1.2   root       83: dsound="no"
                     84: coreaudio="no"
                     85: alsa="no"
1.1       root       86: fmod="no"
                     87: fmod_lib=""
                     88: fmod_inc=""
1.1.1.3   root       89: bsd="no"
1.1       root       90: linux="no"
                     91: kqemu="no"
1.1.1.3   root       92: profiler="no"
1.1       root       93: cocoa="no"
                     94: check_gfx="yes"
1.1.1.2   root       95: check_gcc="yes"
1.1.1.3   root       96: softmmu="yes"
1.1.1.5 ! root       97: linux_user="no"
        !            98: darwin_user="no"
1.1.1.3   root       99: build_docs="no"
1.1.1.4   root      100: uname_release=""
1.1       root      101: 
                    102: # OS specific
                    103: targetos=`uname -s`
                    104: case $targetos in
                    105: CYGWIN*)
                    106: mingw32="yes"
1.1.1.5 ! root      107: OS_CFLAGS="-mno-cygwin"
1.1       root      108: ;;
                    109: MINGW32*)
                    110: mingw32="yes"
                    111: ;;
                    112: FreeBSD)
                    113: bsd="yes"
                    114: oss="yes"
                    115: if [ "$cpu" = "i386" -o "$cpu" = "x86_64" ] ; then
                    116:     kqemu="yes"
                    117: fi
                    118: ;;
                    119: NetBSD)
                    120: bsd="yes"
                    121: oss="yes"
                    122: ;;
                    123: OpenBSD)
                    124: bsd="yes"
                    125: oss="yes"
                    126: ;;
                    127: Darwin)
                    128: bsd="yes"
                    129: darwin="yes"
1.1.1.5 ! root      130: darwin_user="yes"
        !           131: cocoa="yes"
        !           132: coreaudio="yes"
        !           133: OS_CFLAGS="-mdynamic-no-pic"
1.1       root      134: ;;
1.1.1.3   root      135: SunOS)
                    136: solaris="yes"
                    137: ;;
1.1.1.2   root      138: *)
1.1       root      139: oss="yes"
                    140: linux="yes"
1.1.1.5 ! root      141: linux_user="yes"
1.1       root      142: if [ "$cpu" = "i386" -o "$cpu" = "x86_64" ] ; then
                    143:     kqemu="yes"
                    144: fi
                    145: ;;
                    146: esac
                    147: 
                    148: if [ "$bsd" = "yes" ] ; then
1.1.1.3   root      149:   if [ "$darwin" != "yes" ] ; then
1.1       root      150:     make="gmake"
                    151:   fi
                    152: fi
                    153: 
1.1.1.3   root      154: if [ "$solaris" = "yes" ] ; then
                    155:     make="gmake"
                    156:     install="ginstall"
                    157:     solarisrev=`uname -r | cut -f2 -d.`
1.1.1.5 ! root      158:     if [ "$cpu" = "i386" -o "$cpu" = "x86_64" ] ; then
        !           159:         if test "$solarisrev" -gt 10 ; then
        !           160:             kqemu="yes"
        !           161:         fi
        !           162:     fi
1.1.1.3   root      163: fi
                    164: 
1.1       root      165: # find source path
1.1.1.3   root      166: source_path=`dirname "$0"`
                    167: if [ -z "$source_path" ]; then
1.1       root      168:     source_path=`pwd`
1.1.1.3   root      169: else
                    170:     source_path=`cd "$source_path"; pwd`
                    171: fi
                    172: if test "$source_path" = `pwd` ; then
1.1       root      173:     source_path_used="no"
1.1.1.3   root      174: else
                    175:     source_path_used="yes"
1.1       root      176: fi
                    177: 
                    178: for opt do
1.1.1.3   root      179:   optarg=`expr "x$opt" : 'x[^=]*=\(.*\)'`
1.1       root      180:   case "$opt" in
1.1.1.2   root      181:   --help|-h) show_help=yes
                    182:   ;;
1.1.1.3   root      183:   --prefix=*) prefix="$optarg"
1.1       root      184:   ;;
1.1.1.3   root      185:   --interp-prefix=*) interp_prefix="$optarg"
1.1       root      186:   ;;
1.1.1.3   root      187:   --source-path=*) source_path="$optarg"
                    188:   source_path_used="yes"
1.1       root      189:   ;;
1.1.1.3   root      190:   --cross-prefix=*) cross_prefix="$optarg"
1.1       root      191:   ;;
1.1.1.3   root      192:   --cc=*) cc="$optarg"
1.1.1.5 ! root      193:   gcc3_search="no"
1.1       root      194:   ;;
1.1.1.3   root      195:   --host-cc=*) host_cc="$optarg"
1.1       root      196:   ;;
1.1.1.3   root      197:   --make=*) make="$optarg"
1.1       root      198:   ;;
1.1.1.3   root      199:   --install=*) install="$optarg"
1.1       root      200:   ;;
1.1.1.3   root      201:   --extra-cflags=*) CFLAGS="$optarg"
1.1       root      202:   ;;
1.1.1.3   root      203:   --extra-ldflags=*) LDFLAGS="$optarg"
1.1       root      204:   ;;
1.1.1.3   root      205:   --cpu=*) cpu="$optarg"
                    206:   ;;
                    207:   --target-list=*) target_list="$optarg"
1.1       root      208:   ;;
                    209:   --enable-gprof) gprof="yes"
                    210:   ;;
                    211:   --static) static="yes"
                    212:   ;;
                    213:   --disable-sdl) sdl="no"
                    214:   ;;
1.1.1.2   root      215:   --enable-coreaudio) coreaudio="yes"
                    216:   ;;
                    217:   --enable-alsa) alsa="yes"
                    218:   ;;
                    219:   --enable-dsound) dsound="yes"
                    220:   ;;
1.1       root      221:   --enable-fmod) fmod="yes"
                    222:   ;;
1.1.1.3   root      223:   --fmod-lib=*) fmod_lib="$optarg"
1.1       root      224:   ;;
1.1.1.3   root      225:   --fmod-inc=*) fmod_inc="$optarg"
1.1       root      226:   ;;
1.1.1.4   root      227:   --enable-mingw32) mingw32="yes" ; cross_prefix="i386-mingw32-" ; user="no"
1.1.1.2   root      228:   ;;
1.1       root      229:   --disable-slirp) slirp="no"
1.1.1.2   root      230:   ;;
1.1       root      231:   --enable-adlib) adlib="yes"
1.1.1.2   root      232:   ;;
1.1       root      233:   --disable-kqemu) kqemu="no"
1.1.1.2   root      234:   ;;
1.1.1.3   root      235:   --enable-profiler) profiler="yes"
                    236:   ;;
1.1.1.2   root      237:   --enable-cocoa) cocoa="yes" ; coreaudio="yes" ; sdl="no"
                    238:   ;;
1.1       root      239:   --disable-gfx-check) check_gfx="no"
                    240:   ;;
1.1.1.2   root      241:   --disable-gcc-check) check_gcc="no"
                    242:   ;;
1.1.1.3   root      243:   --disable-system) softmmu="no"
                    244:   ;;
                    245:   --enable-system) softmmu="yes"
                    246:   ;;
1.1.1.5 ! root      247:   --disable-linux-user) linux_user="no"
1.1.1.3   root      248:   ;;
1.1.1.5 ! root      249:   --enable-linux-user) linux_user="yes"
1.1.1.3   root      250:   ;;
1.1.1.5 ! root      251:   --disable-darwin-user) darwin_user="no"
        !           252:   ;;
        !           253:   --enable-darwin-user) darwin_user="yes"
1.1.1.4   root      254:   ;;
1.1.1.5 ! root      255:   --enable-uname-release=*) uname_release="$optarg"
1.1.1.4   root      256:   ;;
1.1       root      257:   esac
                    258: done
                    259: 
1.1.1.5 ! root      260: # default flags for all hosts
        !           261: CFLAGS="$CFLAGS -Wall -O2 -g -fno-strict-aliasing"
        !           262: LDFLAGS="$LDFLAGS -g"
1.1       root      263: 
1.1.1.3   root      264: if test x"$show_help" = x"yes" ; then
                    265: cat << EOF
                    266: 
                    267: Usage: configure [options]
                    268: Options: [defaults in brackets after descriptions]
                    269: 
                    270: EOF
                    271: echo "Standard options:"
                    272: echo "  --help                   print this message"
                    273: echo "  --prefix=PREFIX          install in PREFIX [$prefix]"
                    274: echo "  --interp-prefix=PREFIX   where to find shared libraries, etc."
                    275: echo "                           use %M for cpu name [$interp_prefix]"
                    276: echo "  --target-list=LIST       set target list [$target_list]"
                    277: echo ""
                    278: echo "kqemu kernel acceleration support:"
                    279: echo "  --disable-kqemu          disable kqemu support"
                    280: echo ""
                    281: echo "Advanced options (experts only):"
                    282: echo "  --source-path=PATH       path of source code [$source_path]"
                    283: echo "  --cross-prefix=PREFIX    use PREFIX for compile tools [$cross_prefix]"
                    284: echo "  --cc=CC                  use C compiler CC [$cc]"
                    285: echo "  --host-cc=CC             use C compiler CC [$host_cc] for dyngen etc."
                    286: echo "  --make=MAKE              use specified make [$make]"
                    287: echo "  --install=INSTALL        use specified install [$install]"
                    288: echo "  --static                 enable static build [$static]"
                    289: echo "  --enable-cocoa           enable COCOA (Mac OS X only)"
                    290: echo "  --enable-mingw32         enable Win32 cross compilation with mingw32"
                    291: echo "  --enable-adlib           enable Adlib emulation"
                    292: echo "  --enable-coreaudio       enable Coreaudio audio driver"
                    293: echo "  --enable-alsa            enable ALSA audio driver"
                    294: echo "  --enable-fmod            enable FMOD audio driver"
                    295: echo "  --enabled-dsound         enable DirectSound audio driver"
                    296: echo "  --enable-system          enable all system emulation targets"
                    297: echo "  --disable-system         disable all system emulation targets"
1.1.1.5 ! root      298: echo "  --enable-linux-user      enable all linux usermode emulation targets"
        !           299: echo "  --disable-linux-user     disable all linux usermode emulation targets"
        !           300: echo "  --enable-darwin-user     enable all darwin usermode emulation targets"
        !           301: echo "  --disable-darwin-user    disable all darwin usermode emulation targets"
1.1.1.3   root      302: echo "  --fmod-lib               path to FMOD library"
                    303: echo "  --fmod-inc               path to FMOD includes"
1.1.1.4   root      304: echo "  --enable-uname-release=R Return R for uname -r in usermode emulation"
1.1.1.3   root      305: echo ""
1.1.1.5 ! root      306: echo "NOTE: The object files are built at the place where configure is launched"
1.1.1.3   root      307: exit 1
                    308: fi
                    309: 
1.1       root      310: cc="${cross_prefix}${cc}"
                    311: ar="${cross_prefix}${ar}"
                    312: strip="${cross_prefix}${strip}"
                    313: 
1.1.1.4   root      314: # check that the C compiler works.
                    315: cat > $TMPC <<EOF
                    316: int main(void) {}
                    317: EOF
                    318: 
                    319: if $cc -c -o $TMPO $TMPC 2>/dev/null ; then
                    320:   : C compiler works ok
                    321: else
                    322:     echo "ERROR: \"$cc\" either does not exist or does not work"
                    323:     exit 1
1.1.1.3   root      324: fi
                    325: 
1.1       root      326: if test "$mingw32" = "yes" ; then
                    327:     linux="no"
                    328:     EXESUF=".exe"
                    329:     oss="no"
                    330:     if [ "$cpu" = "i386" ] ; then
                    331:         kqemu="yes"
                    332:     fi
                    333: fi
                    334: 
1.1.1.5 ! root      335: # Check for gcc4, error if pre-gcc4 
        !           336: if test "$check_gcc" = "yes" ; then
        !           337:     cat > $TMPC <<EOF
        !           338: #if __GNUC__ < 4
        !           339: #error gcc3
        !           340: #endif
        !           341: int main(){return 0;}
        !           342: EOF
        !           343:     check_cc() {
        !           344:        which "$1" >&/dev/null
        !           345:        return $?
        !           346:     }
        !           347: 
        !           348:     if "$cc" -o $TMPE $TMPC 2>/dev/null ; then
        !           349:        echo "WARNING: \"$cc\" looks like gcc 4.x"
        !           350:        found_compat_cc="no"
        !           351:        if test "$gcc3_search" = "yes" ; then
        !           352:            echo "Looking for gcc 3.x"
        !           353:            for compat_cc in $gcc3_list ; do
        !           354:                if check_cc "$compat_cc" ; then
        !           355:                    echo "Found \"$compat_cc\""
        !           356:                    cc="$compat_cc"
        !           357:                    found_compat_cc="yes"
        !           358:                    break
        !           359:                fi
        !           360:            done
        !           361:            if test "$found_compat_cc" = "no" ; then
        !           362:                echo "gcc 3.x not found!"
        !           363:            fi
        !           364:        fi
        !           365:        if test "$found_compat_cc" = "no" ; then
        !           366:            echo "QEMU is known to have problems when compiled with gcc 4.x"
        !           367:            echo "It is recommended that you use gcc 3.x to build QEMU"
        !           368:            echo "To use this compiler anyway, configure with --disable-gcc-check"
        !           369:            exit 1;
        !           370:        fi
        !           371:     fi
        !           372: fi
        !           373: 
1.1.1.3   root      374: #
                    375: # Solaris specific configure tool chain decisions
                    376: #
                    377: if test "$solaris" = "yes" ; then
                    378:   #
                    379:   # gcc for solaris 10/fcs in /usr/sfw/bin doesn't compile qemu correctly
                    380:   # override the check with --disable-gcc-check
                    381:   # 
                    382:   if test "$solarisrev" -eq 10 -a "$check_gcc" = "yes" ; then
                    383:     solgcc=`which $cc`
                    384:     if test "$solgcc" = "/usr/sfw/bin/gcc" ; then
                    385:       echo "Solaris 10/FCS gcc in /usr/sfw/bin will not compiled qemu correctly."
                    386:       echo "please get gcc-3.4.3 or later, from www.blastwave.org using pkg-get -i gcc3"
                    387:       echo "or get the latest patch from SunSolve for gcc"
                    388:       exit 1
                    389:     fi
                    390:   fi
                    391:   solinst=`which $install 2> /dev/null | /usr/bin/grep -v "no $install in"`
                    392:   if test -z "$solinst" ; then
                    393:     echo "Solaris install program not found. Use --install=/usr/ucb/install or"
                    394:     echo "install fileutils from www.blastwave.org using pkg-get -i fileutils"
                    395:     echo "to get ginstall which is used by default (which lives in /opt/csw/bin)"
                    396:     exit 1
                    397:   fi
                    398:   if test "$solinst" = "/usr/sbin/install" ; then
                    399:     echo "Error: Solaris /usr/sbin/install is not an appropriate install program."
                    400:     echo "try ginstall from the GNU fileutils available from www.blastwave.org"
                    401:     echo "using pkg-get -i fileutils, or use --install=/usr/ucb/install"
                    402:     exit 1
                    403:   fi
                    404:   sol_ar=`which ar 2> /dev/null | /usr/bin/grep -v "no ar in"`
                    405:   if test -z "$sol_ar" ; then
                    406:     echo "Error: No path includes ar"
                    407:     if test -f /usr/ccs/bin/ar ; then
                    408:       echo "Add /usr/ccs/bin to your path and rerun configure"
                    409:     fi
                    410:     exit 1
                    411:   fi
                    412: fi 
                    413: 
                    414: 
1.1       root      415: if test -z "$target_list" ; then
                    416: # these targets are portable
1.1.1.3   root      417:     if [ "$softmmu" = "yes" ] ; then
                    418:         target_list="i386-softmmu ppc-softmmu sparc-softmmu x86_64-softmmu mips-softmmu mipsel-softmmu arm-softmmu"
                    419:     fi
1.1       root      420: # the following are Linux specific
1.1.1.5 ! root      421:     if [ "$linux_user" = "yes" ] ; then
        !           422:         target_list="i386-linux-user arm-linux-user armeb-linux-user sparc-linux-user ppc-linux-user mips-linux-user mipsel-linux-user m68k-linux-user $target_list"
        !           423:     fi
        !           424: # the following are Darwin specific
        !           425:     if [ "$darwin_user" = "yes" ] ; then
        !           426:         target_list="i386-darwin-user ppc-darwin-user $target_list"
1.1       root      427:     fi
                    428: else
1.1.1.3   root      429:     target_list=`echo "$target_list" | sed -e 's/,/ /g'`
                    430: fi
                    431: if test -z "$target_list" ; then
                    432:     echo "No targets enabled"
                    433:     exit 1
1.1       root      434: fi
                    435: 
                    436: if test -z "$cross_prefix" ; then
                    437: 
                    438: # ---
                    439: # big/little endian test
                    440: cat > $TMPC << EOF
                    441: #include <inttypes.h>
                    442: int main(int argc, char ** argv){
1.1.1.2   root      443:         volatile uint32_t i=0x01234567;
                    444:         return (*((uint8_t*)(&i))) == 0x67;
1.1       root      445: }
                    446: EOF
                    447: 
                    448: if $cc -o $TMPE $TMPC 2>/dev/null ; then
                    449: $TMPE && bigendian="yes"
                    450: else
                    451: echo big/little test failed
                    452: fi
                    453: 
                    454: else
                    455: 
                    456: # if cross compiling, cannot launch a program, so make a static guess
                    457: if test "$cpu" = "powerpc" -o "$cpu" = "mips" -o "$cpu" = "s390" -o "$cpu" = "sparc" -o "$cpu" = "sparc64" -o "$cpu" = "m68k" -o "$cpu" = "armv4b"; then
                    458:     bigendian="yes"
                    459: fi
                    460: 
                    461: fi
                    462: 
                    463: # host long bits test
                    464: hostlongbits="32"
                    465: if test "$cpu" = "sparc64" -o "$cpu" = "ia64" -o "$cpu" = "x86_64" -o "$cpu" = "alpha"; then
                    466:     hostlongbits="64"
                    467: fi
                    468: 
                    469: # check gcc options support
                    470: cat > $TMPC <<EOF
                    471: int main(void) {
                    472: }
                    473: EOF
                    474: 
                    475: have_gcc3_options="no"
                    476: if $cc -fno-reorder-blocks -fno-optimize-sibling-calls -o $TMPO $TMPC 2> /dev/null ; then
                    477:    have_gcc3_options="yes"
                    478: fi
                    479: 
                    480: ##########################################
                    481: # SDL probe
                    482: 
                    483: sdl_too_old=no
                    484: 
                    485: if test -z "$sdl" ; then
                    486: 
                    487: sdl_config="sdl-config"
                    488: sdl=no
                    489: sdl_static=no
                    490: 
                    491: if test "$mingw32" = "yes" -a ! -z "$cross_prefix" ; then
                    492: # win32 cross compilation case
                    493:     sdl_config="i386-mingw32msvc-sdl-config"
                    494:     sdl=yes
                    495: else
                    496: # normal SDL probe
                    497: cat > $TMPC << EOF
                    498: #include <SDL.h>
                    499: #undef main /* We don't want SDL to override our main() */
                    500: int main( void ) { return SDL_Init (SDL_INIT_VIDEO); }
                    501: EOF
                    502: 
                    503: if $cc -o $TMPE `$sdl_config --cflags 2> /dev/null` $TMPC `$sdl_config --libs 2> /dev/null` 2> /dev/null ; then
                    504: _sdlversion=`$sdl_config --version | sed 's/[^0-9]//g'`
                    505: if test "$_sdlversion" -lt 121 ; then
                    506: sdl_too_old=yes
                    507: else
1.1.1.5 ! root      508:  if test "$cocoa" = "no" ; then
        !           509:    sdl=yes
        !           510:  fi
1.1       root      511: fi
                    512: 
                    513: # static link with sdl ?
                    514: if test "$sdl" = "yes" ; then
                    515: aa="no"
                    516: `$sdl_config --static-libs | grep \\\-laa > /dev/null` && aa="yes"
                    517: sdl_static_libs=`$sdl_config --static-libs`
                    518: if [ "$aa" = "yes" ] ; then
                    519:   sdl_static_libs="$sdl_static_libs `aalib-config --static-libs`"
                    520: fi
                    521: 
                    522: if $cc -o $TMPE `$sdl_config --cflags 2> /dev/null` $TMPC $sdl_static_libs 2> /dev/null; then
                    523:   sdl_static=yes
                    524: fi
                    525: 
                    526: fi # static link
                    527: 
                    528: fi # sdl compile test
                    529: 
                    530: fi # cross compilation
1.1.1.5 ! root      531: 
        !           532: else
        !           533:  # Make sure to disable cocoa if sdl was set
        !           534:  if test "$sdl" = "yes" ; then
        !           535:    cocoa="no"
        !           536:    coreaudio="no"
        !           537:  fi
1.1       root      538: fi # -z $sdl
                    539: 
1.1.1.5 ! root      540: ##########################################
        !           541: # alsa sound support libraries
        !           542: 
        !           543: if test "$alsa" = "yes" ; then
        !           544:   cat > $TMPC << EOF
        !           545: #include <alsa/asoundlib.h>
        !           546: int main(void) { snd_pcm_t **handle; return snd_pcm_close(*handle); }
        !           547: EOF
        !           548:   if $cc -o $TMPE $TMPC -lasound 2> /dev/null ; then
        !           549:     :
        !           550:   else
        !           551:     echo
        !           552:     echo "Error: Could not find alsa"
        !           553:     echo "Make sure to have the alsa libs and headers installed."
        !           554:     echo
        !           555:     exit 1
        !           556:   fi
        !           557: fi
        !           558: 
1.1.1.3   root      559: # Check if tools are available to build documentation.
                    560: if [ -x "`which texi2html`" ] && [ -x "`which pod2man`" ]; then
                    561:   build_docs="yes"
1.1       root      562: fi
                    563: 
                    564: if test "$mingw32" = "yes" ; then
                    565: if test -z "$prefix" ; then
                    566:     prefix="/c/Program Files/Qemu"
                    567: fi
                    568: mandir="$prefix"
                    569: datadir="$prefix"
                    570: docdir="$prefix"
                    571: bindir="$prefix"
                    572: else
                    573: if test -z "$prefix" ; then
                    574:     prefix="/usr/local"
                    575: fi
                    576: mandir="$prefix/share/man"
                    577: datadir="$prefix/share/qemu"
                    578: docdir="$prefix/share/doc/qemu"
                    579: bindir="$prefix/bin"
                    580: fi
                    581: 
                    582: echo "Install prefix    $prefix"
                    583: echo "BIOS directory    $datadir"
                    584: echo "binary directory  $bindir"
                    585: if test "$mingw32" = "no" ; then
                    586: echo "Manual directory  $mandir"
                    587: echo "ELF interp prefix $interp_prefix"
                    588: fi
                    589: echo "Source path       $source_path"
                    590: echo "C compiler        $cc"
                    591: echo "Host C compiler   $host_cc"
                    592: echo "make              $make"
1.1.1.3   root      593: echo "install           $install"
1.1       root      594: echo "host CPU          $cpu"
                    595: echo "host big endian   $bigendian"
                    596: echo "target list       $target_list"
                    597: echo "gprof enabled     $gprof"
1.1.1.3   root      598: echo "profiler          $profiler"
1.1       root      599: echo "static build      $static"
                    600: if test "$darwin" = "yes" ; then
                    601:     echo "Cocoa support     $cocoa"
                    602: fi
                    603: echo "SDL support       $sdl"
                    604: if test "$sdl" != "no" ; then
                    605:     echo "SDL static link   $sdl_static"
                    606: fi
                    607: echo "mingw32 support   $mingw32"
                    608: echo "Adlib support     $adlib"
1.1.1.2   root      609: echo "CoreAudio support $coreaudio"
                    610: echo "ALSA support      $alsa"
                    611: echo "DSound support    $dsound"
                    612: if test "$fmod" = "yes"; then
                    613:     if test -z $fmod_lib || test -z $fmod_inc; then
                    614:         echo
                    615:         echo "Error: You must specify path to FMOD library and headers"
                    616:         echo "Example: --fmod-inc=/path/include/fmod --fmod-lib=/path/lib/libfmod-3.74.so"
                    617:         echo
                    618:         exit 1
                    619:     fi
1.1.1.3   root      620:     fmod_support=" (lib='$fmod_lib' include='$fmod_inc')"
1.1       root      621: else
1.1.1.3   root      622:     fmod_support=""
1.1       root      623: fi
1.1.1.3   root      624: echo "FMOD support      $fmod $fmod_support"
                    625: echo "kqemu support     $kqemu"
                    626: echo "Documentation     $build_docs"
1.1.1.4   root      627: [ ! -z "$uname_release" ] && \
                    628: echo "uname -r          $uname_release"
1.1       root      629: 
                    630: if test $sdl_too_old = "yes"; then
                    631: echo "-> Your SDL version is too old - please upgrade to have SDL support"
                    632: fi
                    633: #if test "$sdl_static" = "no"; then
                    634: #  echo "WARNING: cannot compile statically with SDL - qemu-fast won't have a graphical output"
                    635: #fi
                    636: config_mak="config-host.mak"
                    637: config_h="config-host.h"
                    638: 
                    639: #echo "Creating $config_mak and $config_h"
                    640: 
                    641: echo "# Automatically generated by configure - do not modify" > $config_mak
1.1.1.3   root      642: echo "# Configured with: $0 $@" >> $config_mak
1.1       root      643: echo "/* Automatically generated by configure - do not modify */" > $config_h
                    644: 
                    645: echo "prefix=$prefix" >> $config_mak
                    646: echo "bindir=$bindir" >> $config_mak
                    647: echo "mandir=$mandir" >> $config_mak
                    648: echo "datadir=$datadir" >> $config_mak
                    649: echo "docdir=$docdir" >> $config_mak
                    650: echo "#define CONFIG_QEMU_SHAREDIR \"$datadir\"" >> $config_h
                    651: echo "MAKE=$make" >> $config_mak
1.1.1.3   root      652: echo "INSTALL=$install" >> $config_mak
1.1       root      653: echo "CC=$cc" >> $config_mak
                    654: if test "$have_gcc3_options" = "yes" ; then
                    655:   echo "HAVE_GCC3_OPTIONS=yes" >> $config_mak
                    656: fi
                    657: echo "HOST_CC=$host_cc" >> $config_mak
                    658: echo "AR=$ar" >> $config_mak
                    659: echo "STRIP=$strip -s -R .comment -R .note" >> $config_mak
1.1.1.5 ! root      660: echo "OS_CFLAGS=$OS_CFLAGS" >> $config_mak
1.1       root      661: echo "CFLAGS=$CFLAGS" >> $config_mak
                    662: echo "LDFLAGS=$LDFLAGS" >> $config_mak
                    663: echo "EXESUF=$EXESUF" >> $config_mak
                    664: if test "$cpu" = "i386" ; then
                    665:   echo "ARCH=i386" >> $config_mak
                    666:   echo "#define HOST_I386 1" >> $config_h
                    667: elif test "$cpu" = "x86_64" ; then
                    668:   echo "ARCH=x86_64" >> $config_mak
                    669:   echo "#define HOST_X86_64 1" >> $config_h
                    670: elif test "$cpu" = "armv4b" ; then
                    671:   echo "ARCH=arm" >> $config_mak
                    672:   echo "#define HOST_ARM 1" >> $config_h
                    673: elif test "$cpu" = "armv4l" ; then
                    674:   echo "ARCH=arm" >> $config_mak
                    675:   echo "#define HOST_ARM 1" >> $config_h
                    676: elif test "$cpu" = "powerpc" ; then
                    677:   echo "ARCH=ppc" >> $config_mak
                    678:   echo "#define HOST_PPC 1" >> $config_h
                    679: elif test "$cpu" = "mips" ; then
                    680:   echo "ARCH=mips" >> $config_mak
                    681:   echo "#define HOST_MIPS 1" >> $config_h
                    682: elif test "$cpu" = "s390" ; then
                    683:   echo "ARCH=s390" >> $config_mak
                    684:   echo "#define HOST_S390 1" >> $config_h
                    685: elif test "$cpu" = "alpha" ; then
                    686:   echo "ARCH=alpha" >> $config_mak
                    687:   echo "#define HOST_ALPHA 1" >> $config_h
                    688: elif test "$cpu" = "sparc" ; then
                    689:   echo "ARCH=sparc" >> $config_mak
                    690:   echo "#define HOST_SPARC 1" >> $config_h
                    691: elif test "$cpu" = "sparc64" ; then
                    692:   echo "ARCH=sparc64" >> $config_mak
                    693:   echo "#define HOST_SPARC64 1" >> $config_h
                    694: elif test "$cpu" = "ia64" ; then
                    695:   echo "ARCH=ia64" >> $config_mak
                    696:   echo "#define HOST_IA64 1" >> $config_h
                    697: elif test "$cpu" = "m68k" ; then
                    698:   echo "ARCH=m68k" >> $config_mak
                    699:   echo "#define HOST_M68K 1" >> $config_h
                    700: else
                    701:   echo "Unsupported CPU"
                    702:   exit 1
                    703: fi
                    704: if test "$bigendian" = "yes" ; then
                    705:   echo "WORDS_BIGENDIAN=yes" >> $config_mak
                    706:   echo "#define WORDS_BIGENDIAN 1" >> $config_h
                    707: fi
                    708: echo "#define HOST_LONG_BITS $hostlongbits" >> $config_h
                    709: if test "$mingw32" = "yes" ; then
                    710:   echo "CONFIG_WIN32=yes" >> $config_mak
                    711:   echo "#define CONFIG_WIN32 1" >> $config_h
                    712: elif test -f "/usr/include/byteswap.h" ; then
                    713:   echo "#define HAVE_BYTESWAP_H 1" >> $config_h
                    714: fi
                    715: if test "$darwin" = "yes" ; then
                    716:   echo "CONFIG_DARWIN=yes" >> $config_mak
                    717:   echo "#define CONFIG_DARWIN 1" >> $config_h
                    718: fi
1.1.1.3   root      719: if test "$solaris" = "yes" ; then
                    720:   echo "CONFIG_SOLARIS=yes" >> $config_mak
                    721:   echo "#define HOST_SOLARIS $solarisrev" >> $config_h
                    722: fi
1.1       root      723: if test "$gdbstub" = "yes" ; then
                    724:   echo "CONFIG_GDBSTUB=yes" >> $config_mak
                    725:   echo "#define CONFIG_GDBSTUB 1" >> $config_h
                    726: fi
                    727: if test "$gprof" = "yes" ; then
                    728:   echo "TARGET_GPROF=yes" >> $config_mak
                    729:   echo "#define HAVE_GPROF 1" >> $config_h
                    730: fi
                    731: if test "$static" = "yes" ; then
                    732:   echo "CONFIG_STATIC=yes" >> $config_mak
                    733:   echo "#define CONFIG_STATIC 1" >> $config_h
                    734: fi
1.1.1.3   root      735: if test $profiler = "yes" ; then
                    736:   echo "#define CONFIG_PROFILER 1" >> $config_h
                    737: fi
1.1       root      738: if test "$slirp" = "yes" ; then
                    739:   echo "CONFIG_SLIRP=yes" >> $config_mak
                    740:   echo "#define CONFIG_SLIRP 1" >> $config_h
                    741: fi
                    742: if test "$adlib" = "yes" ; then
                    743:   echo "CONFIG_ADLIB=yes" >> $config_mak
                    744:   echo "#define CONFIG_ADLIB 1" >> $config_h
                    745: fi
                    746: if test "$oss" = "yes" ; then
                    747:   echo "CONFIG_OSS=yes" >> $config_mak
                    748:   echo "#define CONFIG_OSS 1" >> $config_h
                    749: fi
1.1.1.2   root      750: if test "$coreaudio" = "yes" ; then
                    751:   echo "CONFIG_COREAUDIO=yes" >> $config_mak
                    752:   echo "#define CONFIG_COREAUDIO 1" >> $config_h
                    753: fi
                    754: if test "$alsa" = "yes" ; then
                    755:   echo "CONFIG_ALSA=yes" >> $config_mak
                    756:   echo "#define CONFIG_ALSA 1" >> $config_h
                    757: fi
                    758: if test "$dsound" = "yes" ; then
                    759:   echo "CONFIG_DSOUND=yes" >> $config_mak
                    760:   echo "#define CONFIG_DSOUND 1" >> $config_h
                    761: fi
1.1       root      762: if test "$fmod" = "yes" ; then
                    763:   echo "CONFIG_FMOD=yes" >> $config_mak
                    764:   echo "CONFIG_FMOD_LIB=$fmod_lib" >> $config_mak
                    765:   echo "CONFIG_FMOD_INC=$fmod_inc" >> $config_mak
                    766:   echo "#define CONFIG_FMOD 1" >> $config_h
                    767: fi
1.1.1.3   root      768: qemu_version=`head $source_path/VERSION`
                    769: echo "VERSION=$qemu_version" >>$config_mak
                    770: echo "#define QEMU_VERSION \"$qemu_version\"" >> $config_h
                    771: 
1.1       root      772: echo "SRC_PATH=$source_path" >> $config_mak
1.1.1.3   root      773: if [ "$source_path_used" = "yes" ]; then
                    774:   echo "VPATH=$source_path" >> $config_mak
                    775: fi
1.1       root      776: echo "TARGET_DIRS=$target_list" >> $config_mak
1.1.1.3   root      777: if [ "$build_docs" = "yes" ] ; then
                    778:   echo "BUILD_DOCS=yes" >> $config_mak
                    779: fi
1.1       root      780: 
                    781: # XXX: suppress that
                    782: if [ "$bsd" = "yes" ] ; then
                    783:   echo "#define O_LARGEFILE 0" >> $config_h
                    784:   echo "#define MAP_ANONYMOUS MAP_ANON" >> $config_h
                    785:   echo "#define _BSD 1" >> $config_h
                    786: fi
                    787: 
1.1.1.4   root      788: echo "#define CONFIG_UNAME_RELEASE \"$uname_release\"" >> $config_h
                    789: 
1.1.1.2   root      790: for target in $target_list; do
1.1       root      791: target_dir="$target"
                    792: config_mak=$target_dir/config.mak
                    793: config_h=$target_dir/config.h
                    794: target_cpu=`echo $target | cut -d '-' -f 1`
                    795: target_bigendian="no"
                    796: [ "$target_cpu" = "armeb" ] && target_bigendian=yes
                    797: [ "$target_cpu" = "sparc" ] && target_bigendian=yes
                    798: [ "$target_cpu" = "sparc64" ] && target_bigendian=yes
                    799: [ "$target_cpu" = "ppc" ] && target_bigendian=yes
                    800: [ "$target_cpu" = "ppc64" ] && target_bigendian=yes
                    801: [ "$target_cpu" = "mips" ] && target_bigendian=yes
1.1.1.4   root      802: [ "$target_cpu" = "sh4eb" ] && target_bigendian=yes
1.1.1.5 ! root      803: [ "$target_cpu" = "m68k" ] && target_bigendian=yes
1.1       root      804: target_softmmu="no"
                    805: if expr $target : '.*-softmmu' > /dev/null ; then
                    806:   target_softmmu="yes"
                    807: fi
                    808: target_user_only="no"
                    809: if expr $target : '.*-user' > /dev/null ; then
                    810:   target_user_only="yes"
                    811: fi
                    812: 
1.1.1.5 ! root      813: target_linux_user="no"
        !           814: if expr $target : '.*-linux-user' > /dev/null ; then
        !           815:   target_linux_user="yes"
        !           816: fi
        !           817: 
        !           818: target_darwin_user="no"
        !           819: if expr $target : '.*-darwin-user' > /dev/null ; then
        !           820:   target_darwin_user="yes"
        !           821: fi
        !           822: 
1.1       root      823: if test "$target_user_only" = "no" -a "$check_gfx" = "yes" \
1.1.1.2   root      824:         -a "$sdl" = "no" -a "$cocoa" = "no" ; then
1.1       root      825:     echo "ERROR: QEMU requires SDL or Cocoa for graphical output"
1.1.1.3   root      826:     echo "To build QEMU without graphical output configure with --disable-gfx-check"
1.1       root      827:     echo "Note that this will disable all output from the virtual graphics card."
                    828:     exit 1;
                    829: fi
                    830: 
                    831: #echo "Creating $config_mak, $config_h and $target_dir/Makefile"
                    832: 
                    833: mkdir -p $target_dir
                    834: mkdir -p $target_dir/fpu
1.1.1.5 ! root      835: if test "$target" = "arm-linux-user" -o "$target" = "armeb-linux-user" ; then
1.1       root      836:   mkdir -p $target_dir/nwfpe
                    837: fi
                    838: if test "$target_user_only" = "no" ; then
                    839:   mkdir -p $target_dir/slirp
                    840: fi
                    841: 
1.1.1.3   root      842: #
                    843: # don't use ln -sf as not all "ln -sf" over write the file/link
                    844: #
                    845: rm -f $target_dir/Makefile
                    846: ln -s $source_path/Makefile.target $target_dir/Makefile
                    847: 
1.1       root      848: 
                    849: echo "# Automatically generated by configure - do not modify" > $config_mak
                    850: echo "/* Automatically generated by configure - do not modify */" > $config_h
                    851: 
                    852: 
                    853: echo "include ../config-host.mak" >> $config_mak
                    854: echo "#include \"../config-host.h\"" >> $config_h
                    855: 
1.1.1.4   root      856: bflt="no"
1.1       root      857: interp_prefix1=`echo "$interp_prefix" | sed "s/%M/$target_cpu/g"`
                    858: echo "#define CONFIG_QEMU_PREFIX \"$interp_prefix1\"" >> $config_h
                    859: 
                    860: if test "$target_cpu" = "i386" ; then
                    861:   echo "TARGET_ARCH=i386" >> $config_mak
                    862:   echo "#define TARGET_ARCH \"i386\"" >> $config_h
                    863:   echo "#define TARGET_I386 1" >> $config_h
                    864:   if test $kqemu = "yes" -a "$target_softmmu" = "yes" -a $cpu = "i386" ; then
                    865:     echo "#define USE_KQEMU 1" >> $config_h
                    866:   fi
                    867: elif test "$target_cpu" = "arm" -o "$target_cpu" = "armeb" ; then
                    868:   echo "TARGET_ARCH=arm" >> $config_mak
                    869:   echo "#define TARGET_ARCH \"arm\"" >> $config_h
                    870:   echo "#define TARGET_ARM 1" >> $config_h
1.1.1.4   root      871:   bflt="yes"
1.1       root      872: elif test "$target_cpu" = "sparc" ; then
                    873:   echo "TARGET_ARCH=sparc" >> $config_mak
                    874:   echo "#define TARGET_ARCH \"sparc\"" >> $config_h
                    875:   echo "#define TARGET_SPARC 1" >> $config_h
                    876: elif test "$target_cpu" = "sparc64" ; then
                    877:   echo "TARGET_ARCH=sparc64" >> $config_mak
                    878:   echo "#define TARGET_ARCH \"sparc64\"" >> $config_h
                    879:   echo "#define TARGET_SPARC 1" >> $config_h
                    880:   echo "#define TARGET_SPARC64 1" >> $config_h
                    881: elif test "$target_cpu" = "ppc" ; then
                    882:   echo "TARGET_ARCH=ppc" >> $config_mak
                    883:   echo "#define TARGET_ARCH \"ppc\"" >> $config_h
                    884:   echo "#define TARGET_PPC 1" >> $config_h
                    885: elif test "$target_cpu" = "ppc64" ; then
                    886:   echo "TARGET_ARCH=ppc64" >> $config_mak
                    887:   echo "#define TARGET_ARCH \"ppc64\"" >> $config_h
                    888:   echo "#define TARGET_PPC 1" >> $config_h
                    889:   echo "#define TARGET_PPC64 1" >> $config_h
                    890: elif test "$target_cpu" = "x86_64" ; then
                    891:   echo "TARGET_ARCH=x86_64" >> $config_mak
                    892:   echo "#define TARGET_ARCH \"x86_64\"" >> $config_h
                    893:   echo "#define TARGET_I386 1" >> $config_h
                    894:   echo "#define TARGET_X86_64 1" >> $config_h
                    895:   if test $kqemu = "yes" -a "$target_softmmu" = "yes" -a $cpu = "x86_64"  ; then
                    896:     echo "#define USE_KQEMU 1" >> $config_h
                    897:   fi
1.1.1.2   root      898: elif test "$target_cpu" = "mips" -o "$target_cpu" = "mipsel" ; then
1.1       root      899:   echo "TARGET_ARCH=mips" >> $config_mak
                    900:   echo "#define TARGET_ARCH \"mips\"" >> $config_h
                    901:   echo "#define TARGET_MIPS 1" >> $config_h
1.1.1.4   root      902:   echo "CONFIG_SOFTFLOAT=yes" >> $config_mak
                    903:   echo "#define CONFIG_SOFTFLOAT 1" >> $config_h
                    904: elif test "$target_cpu" = "sh4" -o "$target_cpu" = "sh4eb" ; then
1.1.1.3   root      905:   echo "TARGET_ARCH=sh4" >> $config_mak
                    906:   echo "#define TARGET_ARCH \"sh4\"" >> $config_h
                    907:   echo "#define TARGET_SH4 1" >> $config_h
1.1.1.4   root      908:   bflt="yes"
1.1.1.5 ! root      909: elif test "$target_cpu" = "m68k" ; then
        !           910:   echo "TARGET_ARCH=m68k" >> $config_mak
        !           911:   echo "#define TARGET_ARCH \"m68k\"" >> $config_h
        !           912:   echo "#define TARGET_M68K 1" >> $config_h
        !           913:   bflt="yes"
1.1       root      914: else
                    915:   echo "Unsupported target CPU"
                    916:   exit 1
                    917: fi
                    918: if test "$target_bigendian" = "yes" ; then
                    919:   echo "TARGET_WORDS_BIGENDIAN=yes" >> $config_mak
                    920:   echo "#define TARGET_WORDS_BIGENDIAN 1" >> $config_h
                    921: fi
                    922: if test "$target_softmmu" = "yes" ; then
                    923:   echo "CONFIG_SOFTMMU=yes" >> $config_mak
                    924:   echo "#define CONFIG_SOFTMMU 1" >> $config_h
                    925: fi
                    926: if test "$target_user_only" = "yes" ; then
                    927:   echo "CONFIG_USER_ONLY=yes" >> $config_mak
                    928:   echo "#define CONFIG_USER_ONLY 1" >> $config_h
                    929: fi
1.1.1.5 ! root      930: if test "$target_linux_user" = "yes" ; then
        !           931:   echo "CONFIG_LINUX_USER=yes" >> $config_mak
        !           932:   echo "#define CONFIG_LINUX_USER 1" >> $config_h
        !           933: fi
        !           934: if test "$target_darwin_user" = "yes" ; then
        !           935:   echo "CONFIG_DARWIN_USER=yes" >> $config_mak
        !           936:   echo "#define CONFIG_DARWIN_USER 1" >> $config_h
        !           937: fi
1.1       root      938: 
1.1.1.5 ! root      939: if test "$target_cpu" = "arm" -o "$target_cpu" = "armeb" -o "$target_cpu" = "sparc" -o "$target_cpu" = "sparc64" -o "$target_cpu" = "m68k"; then
1.1       root      940:   echo "CONFIG_SOFTFLOAT=yes" >> $config_mak
                    941:   echo "#define CONFIG_SOFTFLOAT 1" >> $config_h
                    942: fi
1.1.1.4   root      943: if test "$target_user_only" = "yes" -a "$bflt" = "yes"; then
                    944:   echo "TARGET_HAS_BFLT=yes" >> $config_mak
                    945:   echo "#define TARGET_HAS_BFLT 1" >> $config_h
                    946: fi
1.1       root      947: # sdl defines
                    948: 
                    949: if test "$target_user_only" = "no"; then
                    950:     if test "$target_softmmu" = "no" -o "$static" = "yes"; then
                    951:         sdl1=$sdl_static
                    952:     else
                    953:         sdl1=$sdl
                    954:     fi
                    955:     if test "$sdl1" = "yes" ; then
                    956:         echo "#define CONFIG_SDL 1" >> $config_h
                    957:         echo "CONFIG_SDL=yes" >> $config_mak
                    958:         if test "$target_softmmu" = "no" -o "$static" = "yes"; then
                    959:             echo "SDL_LIBS=$sdl_static_libs" >> $config_mak
                    960:         else
                    961:             echo "SDL_LIBS=`$sdl_config --libs`" >> $config_mak
                    962:         fi
                    963:         if [ "${aa}" = "yes" ] ; then
1.1.1.3   root      964:             echo "SDL_CFLAGS=`$sdl_config --cflags` `aalib-config --cflags`" >> $config_mak
                    965:         else
                    966:             echo "SDL_CFLAGS=`$sdl_config --cflags`" >> $config_mak
1.1       root      967:         fi
                    968:     fi
                    969: fi
                    970: 
                    971: if test "$cocoa" = "yes" ; then
                    972:     echo "#define CONFIG_COCOA 1" >> $config_h
                    973:     echo "CONFIG_COCOA=yes" >> $config_mak
                    974: fi
                    975: 
                    976: done # for target in $targets
                    977: 
                    978: # build tree in object directory if source path is different from current one
                    979: if test "$source_path_used" = "yes" ; then
                    980:     DIRS="tests"
                    981:     FILES="Makefile tests/Makefile"
                    982:     for dir in $DIRS ; do
                    983:             mkdir -p $dir
                    984:     done
1.1.1.3   root      985:     # remove the link and recreate it, as not all "ln -sf" overwrite the link
1.1       root      986:     for f in $FILES ; do
1.1.1.3   root      987:         rm -f $f
                    988:         ln -s $source_path/$f $f
1.1       root      989:     done
                    990: fi
                    991: 
                    992: rm -f $TMPO $TMPC $TMPE $TMPS

unix.superglobalmegacorp.com