diff options
author | Alexander Graf <agraf@suse.de> | 2009-12-05 12:44:22 +0100 |
---|---|---|
committer | Aurelien Jarno <aurelien@aurel32.net> | 2009-12-05 17:36:00 +0100 |
commit | 24e804ec146fa491c32a39941dc9f259c8df41e6 (patch) | |
tree | b2ab8c26660986875662ed338eb0fee73d0b12a4 | |
parent | 10ec51174ca69a4c3c5149b0b3baaa6ccba66273 (diff) | |
download | hqemu-24e804ec146fa491c32a39941dc9f259c8df41e6.zip hqemu-24e804ec146fa491c32a39941dc9f259c8df41e6.tar.gz |
S/390 host/target build system support
This patch makes configure aware of S390 hosts and guests. When not explicitly
defined using --target-list= no S390 targets will be built though.
Signed-off-by: Alexander Graf <agraf@suse.de>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
-rwxr-xr-x | configure | 22 |
1 files changed, 15 insertions, 7 deletions
@@ -183,9 +183,12 @@ case "$cpu" in mips*) cpu="mips" ;; - s390*) + s390) cpu="s390" ;; + s390x) + cpu="s390x" + ;; sparc|sun4[cdmuv]) cpu="sparc" ;; @@ -881,7 +884,7 @@ else # if cross compiling, cannot launch a program, so make a static guess case "$cpu" in - armv4b|hppa|m68k|mips|mips64|ppc|ppc64|s390|sparc|sparc64) + armv4b|hppa|m68k|mips|mips64|ppc|ppc64|s390|s390x|sparc|sparc64) bigendian=yes ;; esac @@ -891,7 +894,7 @@ fi # host long bits test hostlongbits="32" case "$cpu" in - x86_64|alpha|ia64|sparc64|ppc64) + x86_64|alpha|ia64|sparc64|ppc64|s390x) hostlongbits=64 ;; esac @@ -1901,7 +1904,7 @@ echo >> $config_host_mak echo "CONFIG_QEMU_SHAREDIR=\"$prefix$datasuffix\"" >> $config_host_mak case "$cpu" in - i386|x86_64|alpha|cris|hppa|ia64|m68k|microblaze|mips|mips64|ppc|ppc64|s390|sparc|sparc64) + i386|x86_64|alpha|cris|hppa|ia64|m68k|microblaze|mips|mips64|ppc|ppc64|s390|s390x|sparc|sparc64) ARCH=$cpu ;; armv4b|armv4l) @@ -2188,7 +2191,7 @@ target_arch2=`echo $target | cut -d '-' -f 1` target_bigendian="no" case "$target_arch2" in - armeb|m68k|microblaze|mips|mipsn32|mips64|ppc|ppcemb|ppc64|ppc64abi32|sh4eb|sparc|sparc64|sparc32plus) + armeb|m68k|microblaze|mips|mipsn32|mips64|ppc|ppcemb|ppc64|ppc64abi32|s390x|sh4eb|sparc|sparc64|sparc32plus) target_bigendian=yes ;; esac @@ -2356,6 +2359,9 @@ case "$target_arch2" in echo "TARGET_ABI32=y" >> $config_target_mak target_phys_bits=64 ;; + s390x) + target_phys_bits=64 + ;; *) echo "Unsupported target CPU" exit 1 @@ -2424,7 +2430,7 @@ if test ! -z "$gdb_xml_files" ; then fi case "$target_arch2" in - arm|armeb|m68k|microblaze|mips|mipsel|mipsn32|mipsn32el|mips64|mips64el|ppc|ppc64|ppc64abi32|ppcemb|sparc|sparc64|sparc32plus) + arm|armeb|m68k|microblaze|mips|mipsel|mipsn32|mipsn32el|mips64|mips64el|ppc|ppc64|ppc64abi32|ppcemb|s390x|sparc|sparc64|sparc32plus) echo "CONFIG_SOFTFLOAT=y" >> $config_target_mak ;; *) @@ -2457,6 +2463,8 @@ ldflags="" if test "$ARCH" = "sparc64" ; then cflags="-I\$(SRC_PATH)/tcg/sparc $cflags" +elif test "$ARCH" = "s390x" ; then + cflags="-I\$(SRC_PATH)/tcg/s390 $cflags" else cflags="-I\$(SRC_PATH)/tcg/\$(ARCH) $cflags" fi @@ -2492,7 +2500,7 @@ for i in $ARCH $TARGET_BASE_ARCH ; do ppc*) echo "CONFIG_PPC_DIS=y" >> $config_target_mak ;; - s390) + s390*) echo "CONFIG_S390_DIS=y" >> $config_target_mak ;; sh4) |