Annotation of qemu/configure, revision 1.1.1.4

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

unix.superglobalmegacorp.com