Message ID | 20200920130708.1156310-8-pbonzini@redhat.com |
---|---|
State | New |
Headers | show |
Series | Move target configuration to meson | expand |
Can these be generated from meson directly? as makefile finally need to be removed On Sun, Sep 20, 2020 at 9:09 PM Paolo Bonzini <pbonzini@redhat.com> wrote: > > The config-target.mak files are small constant, we can therefore just > write them down explicitly. > > This removes about 10% of the configure script, including the > whole logic to detect which accelerators are supported by each > target. > > Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> > --- > configure | 407 +----------------- > .../targets/aarch64-linux-user.mak | 5 + > default-configs/targets/aarch64-softmmu.mak | 5 + > .../targets/aarch64_be-linux-user.mak | 6 + > default-configs/targets/alpha-linux-user.mak | 6 + > default-configs/targets/alpha-softmmu.mak | 7 + > default-configs/targets/arm-linux-user.mak | 7 + > default-configs/targets/arm-softmmu.mak | 7 + > default-configs/targets/armeb-linux-user.mak | 8 + > default-configs/targets/avr-softmmu.mak | 4 + > default-configs/targets/cris-linux-user.mak | 3 + > default-configs/targets/cris-softmmu.mak | 3 + > default-configs/targets/hppa-linux-user.mak | 7 + > default-configs/targets/hppa-softmmu.mak | 8 + > default-configs/targets/i386-bsd-user.mak | 6 + > default-configs/targets/i386-linux-user.mak | 6 + > default-configs/targets/i386-softmmu.mak | 7 + > default-configs/targets/lm32-softmmu.mak | 4 + > default-configs/targets/m68k-linux-user.mak | 8 + > default-configs/targets/m68k-softmmu.mak | 7 + > .../targets/microblaze-linux-user.mak | 7 + > .../targets/microblaze-softmmu.mak | 7 + > .../targets/microblazeel-linux-user.mak | 6 + > .../targets/microblazeel-softmmu.mak | 6 + > default-configs/targets/mips-linux-user.mak | 8 + > default-configs/targets/mips-softmmu.mak | 9 + > default-configs/targets/mips64-linux-user.mak | 8 + > default-configs/targets/mips64-softmmu.mak | 8 + > .../targets/mips64el-linux-user.mak | 7 + > default-configs/targets/mips64el-softmmu.mak | 7 + > default-configs/targets/mipsel-linux-user.mak | 7 + > default-configs/targets/mipsel-softmmu.mak | 8 + > .../targets/mipsn32-linux-user.mak | 9 + > .../targets/mipsn32el-linux-user.mak | 8 + > default-configs/targets/moxie-softmmu.mak | 4 + > default-configs/targets/nios2-linux-user.mak | 3 + > default-configs/targets/nios2-softmmu.mak | 3 + > default-configs/targets/or1k-linux-user.mak | 4 + > default-configs/targets/or1k-softmmu.mak | 4 + > default-configs/targets/ppc-linux-user.mak | 7 + > default-configs/targets/ppc-softmmu.mak | 7 + > default-configs/targets/ppc64-linux-user.mak | 7 + > default-configs/targets/ppc64-softmmu.mak | 8 + > .../targets/ppc64abi32-linux-user.mak | 8 + > .../targets/ppc64le-linux-user.mak | 6 + > .../targets/riscv32-linux-user.mak | 4 + > default-configs/targets/riscv32-softmmu.mak | 5 + > .../targets/riscv64-linux-user.mak | 4 + > default-configs/targets/riscv64-softmmu.mak | 5 + > default-configs/targets/rx-softmmu.mak | 4 + > default-configs/targets/s390x-linux-user.mak | 7 + > default-configs/targets/s390x-softmmu.mak | 8 + > default-configs/targets/sh4-linux-user.mak | 7 + > default-configs/targets/sh4-softmmu.mak | 6 + > default-configs/targets/sh4eb-linux-user.mak | 8 + > default-configs/targets/sh4eb-softmmu.mak | 7 + > default-configs/targets/sparc-bsd-user.mak | 7 + > default-configs/targets/sparc-linux-user.mak | 7 + > default-configs/targets/sparc-softmmu.mak | 7 + > .../targets/sparc32plus-linux-user.mak | 8 + > default-configs/targets/sparc64-bsd-user.mak | 7 + > .../targets/sparc64-linux-user.mak | 7 + > default-configs/targets/sparc64-softmmu.mak | 7 + > default-configs/targets/tilegx-linux-user.mak | 3 + > default-configs/targets/tricore-softmmu.mak | 3 + > default-configs/targets/unicore32-softmmu.mak | 3 + > default-configs/targets/x86_64-bsd-user.mak | 6 + > default-configs/targets/x86_64-linux-user.mak | 6 + > default-configs/targets/x86_64-softmmu.mak | 7 + > default-configs/targets/xtensa-linux-user.mak | 7 + > default-configs/targets/xtensa-softmmu.mak | 7 + > .../targets/xtensaeb-linux-user.mak | 8 + > default-configs/targets/xtensaeb-softmmu.mak | 8 + > meson.build | 27 +- > 74 files changed, 482 insertions(+), 405 deletions(-) > create mode 100644 default-configs/targets/aarch64-linux-user.mak > create mode 100644 default-configs/targets/aarch64-softmmu.mak > create mode 100644 default-configs/targets/aarch64_be-linux-user.mak > create mode 100644 default-configs/targets/alpha-linux-user.mak > create mode 100644 default-configs/targets/alpha-softmmu.mak > create mode 100644 default-configs/targets/arm-linux-user.mak > create mode 100644 default-configs/targets/arm-softmmu.mak > create mode 100644 default-configs/targets/armeb-linux-user.mak > create mode 100644 default-configs/targets/avr-softmmu.mak > create mode 100644 default-configs/targets/cris-linux-user.mak > create mode 100644 default-configs/targets/cris-softmmu.mak > create mode 100644 default-configs/targets/hppa-linux-user.mak > create mode 100644 default-configs/targets/hppa-softmmu.mak > create mode 100644 default-configs/targets/i386-bsd-user.mak > create mode 100644 default-configs/targets/i386-linux-user.mak > create mode 100644 default-configs/targets/i386-softmmu.mak > create mode 100644 default-configs/targets/lm32-softmmu.mak > create mode 100644 default-configs/targets/m68k-linux-user.mak > create mode 100644 default-configs/targets/m68k-softmmu.mak > create mode 100644 default-configs/targets/microblaze-linux-user.mak > create mode 100644 default-configs/targets/microblaze-softmmu.mak > create mode 100644 default-configs/targets/microblazeel-linux-user.mak > create mode 100644 default-configs/targets/microblazeel-softmmu.mak > create mode 100644 default-configs/targets/mips-linux-user.mak > create mode 100644 default-configs/targets/mips-softmmu.mak > create mode 100644 default-configs/targets/mips64-linux-user.mak > create mode 100644 default-configs/targets/mips64-softmmu.mak > create mode 100644 default-configs/targets/mips64el-linux-user.mak > create mode 100644 default-configs/targets/mips64el-softmmu.mak > create mode 100644 default-configs/targets/mipsel-linux-user.mak > create mode 100644 default-configs/targets/mipsel-softmmu.mak > create mode 100644 default-configs/targets/mipsn32-linux-user.mak > create mode 100644 default-configs/targets/mipsn32el-linux-user.mak > create mode 100644 default-configs/targets/moxie-softmmu.mak > create mode 100644 default-configs/targets/nios2-linux-user.mak > create mode 100644 default-configs/targets/nios2-softmmu.mak > create mode 100644 default-configs/targets/or1k-linux-user.mak > create mode 100644 default-configs/targets/or1k-softmmu.mak > create mode 100644 default-configs/targets/ppc-linux-user.mak > create mode 100644 default-configs/targets/ppc-softmmu.mak > create mode 100644 default-configs/targets/ppc64-linux-user.mak > create mode 100644 default-configs/targets/ppc64-softmmu.mak > create mode 100644 default-configs/targets/ppc64abi32-linux-user.mak > create mode 100644 default-configs/targets/ppc64le-linux-user.mak > create mode 100644 default-configs/targets/riscv32-linux-user.mak > create mode 100644 default-configs/targets/riscv32-softmmu.mak > create mode 100644 default-configs/targets/riscv64-linux-user.mak > create mode 100644 default-configs/targets/riscv64-softmmu.mak > create mode 100644 default-configs/targets/rx-softmmu.mak > create mode 100644 default-configs/targets/s390x-linux-user.mak > create mode 100644 default-configs/targets/s390x-softmmu.mak > create mode 100644 default-configs/targets/sh4-linux-user.mak > create mode 100644 default-configs/targets/sh4-softmmu.mak > create mode 100644 default-configs/targets/sh4eb-linux-user.mak > create mode 100644 default-configs/targets/sh4eb-softmmu.mak > create mode 100644 default-configs/targets/sparc-bsd-user.mak > create mode 100644 default-configs/targets/sparc-linux-user.mak > create mode 100644 default-configs/targets/sparc-softmmu.mak > create mode 100644 default-configs/targets/sparc32plus-linux-user.mak > create mode 100644 default-configs/targets/sparc64-bsd-user.mak > create mode 100644 default-configs/targets/sparc64-linux-user.mak > create mode 100644 default-configs/targets/sparc64-softmmu.mak > create mode 100644 default-configs/targets/tilegx-linux-user.mak > create mode 100644 default-configs/targets/tricore-softmmu.mak > create mode 100644 default-configs/targets/unicore32-softmmu.mak > create mode 100644 default-configs/targets/x86_64-bsd-user.mak > create mode 100644 default-configs/targets/x86_64-linux-user.mak > create mode 100644 default-configs/targets/x86_64-softmmu.mak > create mode 100644 default-configs/targets/xtensa-linux-user.mak > create mode 100644 default-configs/targets/xtensa-softmmu.mak > create mode 100644 default-configs/targets/xtensaeb-linux-user.mak > create mode 100644 default-configs/targets/xtensaeb-softmmu.mak > > diff --git a/configure b/configure > index e64327e0f8..f6275d95fc 100755 > --- a/configure > +++ b/configure > @@ -220,99 +220,6 @@ glob() { > eval test -z '"${1#'"$2"'}"' > } > > -supported_hax_target() { > - test "$hax" = "enabled" || return 1 > - glob "$1" "*-softmmu" || return 1 > - case "${1%-softmmu}" in > - i386|x86_64) > - return 0 > - ;; > - esac > - return 1 > -} > - > -supported_kvm_target() { > - test "$kvm" = "enabled" || return 1 > - glob "$1" "*-softmmu" || return 1 > - case "${1%-softmmu}:$cpu" in > - aarch64:aarch64 | \ > - i386:i386 | i386:x86_64 | i386:x32 | \ > - x86_64:i386 | x86_64:x86_64 | x86_64:x32 | \ > - mips:mips | mipsel:mips | mips64:mips | mips64el:mips | \ > - ppc:ppc | ppc64:ppc | ppc:ppc64 | ppc64:ppc64 | ppc64:ppc64le | \ > - s390x:s390x) > - return 0 > - ;; > - esac > - return 1 > -} > - > -supported_xen_target() { > - test "$xen" = "enabled" || return 1 > - glob "$1" "*-softmmu" || return 1 > - # Only i386 and x86_64 provide the xenpv machine. > - case "${1%-softmmu}" in > - i386|x86_64) > - return 0 > - ;; > - esac > - return 1 > -} > - > -supported_hvf_target() { > - test "$hvf" = "enabled" || return 1 > - glob "$1" "*-softmmu" || return 1 > - case "${1%-softmmu}" in > - x86_64) > - return 0 > - ;; > - esac > - return 1 > -} > - > -supported_whpx_target() { > - test "$whpx" = "enabled" || return 1 > - glob "$1" "*-softmmu" || return 1 > - case "${1%-softmmu}" in > - i386|x86_64) > - return 0 > - ;; > - esac > - return 1 > -} > - > -supported_target() { > - case "$1" in > - *-softmmu) > - ;; > - *-linux-user) > - if test "$linux" != "yes"; then > - print_error "Target '$target' is only available on a Linux host" > - return 1 > - fi > - ;; > - *-bsd-user) > - if test "$bsd" != "yes"; then > - print_error "Target '$target' is only available on a BSD host" > - return 1 > - fi > - ;; > - *) > - print_error "Invalid target name '$target'" > - return 1 > - ;; > - esac > - test "$tcg" = "enabled" && return 0 > - supported_kvm_target "$1" && return 0 > - supported_xen_target "$1" && return 0 > - supported_hax_target "$1" && return 0 > - supported_hvf_target "$1" && return 0 > - supported_whpx_target "$1" && return 0 > - print_error "TCG disabled, but hardware accelerator not available for '$target'" > - return 1 > -} > - > - > ld_has() { > $ld --help 2>/dev/null | grep ".$1" >/dev/null 2>&1 > } > @@ -2292,12 +2199,13 @@ if test "$solaris" = "yes" ; then > fi > > if test -z "${target_list+xxx}" ; then > + default_targets=yes > for target in $default_target_list; do > - supported_target $target 2>/dev/null && \ > - target_list="$target_list $target" > + target_list="$target_list $target" > done > target_list="${target_list# }" > else > + default_targets=no > target_list=$(echo "$target_list" | sed -e 's/,/ /g') > for target in $target_list; do > # Check that we recognised the target name; this allows a more > @@ -2309,7 +2217,6 @@ else > error_exit "Unknown target name '$target'" > ;; > esac > - supported_target $target || exit 1 > done > fi > > @@ -2653,27 +2560,6 @@ if test "$seccomp" != "no" ; then > fi > fi > > -########################################## > -# simple accelerator probes > - > -if test "$kvm" = "auto" ; then > - if test "$linux" = yes ; then > - kvm=enabled > - else > - if test "$kvm" = "enabled" ; then > - feature_not_found "kvm" "KVM is only available on Linux" > - fi > - fi > -fi > - > -if test "$hax" = "auto" ; then > - if test "$mingw" = yes || test "$darwin" = yes || test "$targetos" = NetBSD; then > - hax=enabled > - else > - hax=disabled > - fi > -fi > - > ########################################## > # xen probe > > @@ -2992,22 +2878,6 @@ if test "$xen_pci_passthrough" != "disabled"; then > fi > fi > > -########################################## > -# Windows Hypervisor Platform accelerator (WHPX) check > -if test "$whpx" = "enabled" && test "$ARCH" != "x86_64"; then > - error_exit "WHPX requires 64-bit host" > -fi > -if test "$whpx" != "disabled" && test "$ARCH" = "x86_64"; then > - if check_include "WinHvPlatform.h" && check_include "WinHvEmulation.h"; then > - whpx="yes" > - else > - if test "$whpx" = "auto"; then > - feature_not_found "WinHvPlatform" "WinHvEmulation is not installed" > - fi > - whpx="disabled" > - fi > -fi > - > ########################################## > # gettext probe > if test "$gettext" != "false" ; then > @@ -7375,281 +7245,13 @@ fi > > for target in $target_list; do > target_dir="$target" > -config_target_mak=$target_dir/config-target.mak > target_name=$(echo $target | cut -d '-' -f 1) > -target_aligned_only="no" > -case "$target_name" in > - alpha|hppa|mips64el|mips64|mipsel|mips|mipsn32|mipsn32el|sh4|sh4eb|sparc|sparc64|sparc32plus|xtensa|xtensaeb) > - target_aligned_only="yes" > - ;; > -esac > -target_bigendian="no" > -case "$target_name" in > - armeb|aarch64_be|hppa|lm32|m68k|microblaze|mips|mipsn32|mips64|moxie|or1k|ppc|ppc64|ppc64abi32|s390x|sh4eb|sparc|sparc64|sparc32plus|xtensaeb) > - target_bigendian="yes" > - ;; > -esac > -target_softmmu="no" > -target_user_only="no" > -target_linux_user="no" > -target_bsd_user="no" > -case "$target" in > - ${target_name}-softmmu) > - target_softmmu="yes" > - ;; > - ${target_name}-linux-user) > - target_user_only="yes" > - target_linux_user="yes" > - ;; > - ${target_name}-bsd-user) > - target_user_only="yes" > - target_bsd_user="yes" > - ;; > - *) > - error_exit "Target '$target' not recognised" > - exit 1 > - ;; > -esac > - > mkdir -p $target_dir > -echo "# Automatically generated by configure - do not modify" > $config_target_mak > - > -bflt="no" > -mttcg="no" > -interp_prefix1=$(echo "$interp_prefix" | sed "s/%M/$target_name/g") > -gdb_xml_files="" > - > -TARGET_ARCH="$target_name" > -TARGET_BASE_ARCH="" > -TARGET_ABI_DIR="" > -TARGET_SYSTBL_ABI="" > -TARGET_SYSTBL="" > - > -case "$target_name" in > - i386) > - mttcg="yes" > - gdb_xml_files="i386-32bit.xml" > - TARGET_SYSTBL_ABI=i386 > - TARGET_SYSTBL=syscall_32.tbl > - ;; > - x86_64) > - TARGET_BASE_ARCH=i386 > - TARGET_SYSTBL_ABI=common,64 > - TARGET_SYSTBL=syscall_64.tbl > - mttcg="yes" > - gdb_xml_files="i386-64bit.xml" > - ;; > - alpha) > - mttcg="yes" > - TARGET_SYSTBL_ABI=common > - ;; > - arm|armeb) > - TARGET_ARCH=arm > - TARGET_SYSTBL_ABI=common,oabi > - bflt="yes" > - mttcg="yes" > - gdb_xml_files="arm-core.xml arm-vfp.xml arm-vfp3.xml arm-neon.xml arm-m-profile.xml" > - ;; > - aarch64|aarch64_be) > - TARGET_ARCH=aarch64 > - TARGET_BASE_ARCH=arm > - bflt="yes" > - mttcg="yes" > - gdb_xml_files="aarch64-core.xml aarch64-fpu.xml arm-core.xml arm-vfp.xml arm-vfp3.xml arm-neon.xml arm-m-profile.xml" > - ;; > - avr) > - gdb_xml_files="avr-cpu.xml" > - target_compiler=$cross_cc_avr > - ;; > - cris) > - ;; > - hppa) > - mttcg="yes" > - TARGET_SYSTBL_ABI=common,32 > - ;; > - lm32) > - ;; > - m68k) > - bflt="yes" > - gdb_xml_files="cf-core.xml cf-fp.xml m68k-core.xml m68k-fp.xml" > - TARGET_SYSTBL_ABI=common > - ;; > - microblaze|microblazeel) > - TARGET_ARCH=microblaze > - TARGET_SYSTBL_ABI=common > - mttcg="yes" > - bflt="yes" > - ;; > - mips|mipsel) > - mttcg="yes" > - TARGET_ARCH=mips > - echo "TARGET_ABI_MIPSO32=y" >> $config_target_mak > - TARGET_SYSTBL_ABI=o32 > - TARGET_SYSTBL=syscall_o32.tbl > - ;; > - mipsn32|mipsn32el) > - mttcg="yes" > - TARGET_ARCH=mips64 > - TARGET_BASE_ARCH=mips > - echo "TARGET_ABI_MIPSN32=y" >> $config_target_mak > - echo "TARGET_ABI32=y" >> $config_target_mak > - TARGET_SYSTBL_ABI=n32 > - TARGET_SYSTBL=syscall_n32.tbl > - ;; > - mips64|mips64el) > - mttcg="no" > - TARGET_ARCH=mips64 > - TARGET_BASE_ARCH=mips > - echo "TARGET_ABI_MIPSN64=y" >> $config_target_mak > - TARGET_SYSTBL_ABI=n64 > - TARGET_SYSTBL=syscall_n64.tbl > - ;; > - moxie) > - ;; > - nios2) > - ;; > - or1k) > - TARGET_ARCH=openrisc > - TARGET_BASE_ARCH=openrisc > - ;; > - ppc) > - gdb_xml_files="power-core.xml power-fpu.xml power-altivec.xml power-spe.xml" > - TARGET_SYSTBL_ABI=common,nospu,32 > - ;; > - ppc64) > - TARGET_BASE_ARCH=ppc > - TARGET_ABI_DIR=ppc > - TARGET_SYSTBL_ABI=common,nospu,64 > - mttcg=yes > - gdb_xml_files="power64-core.xml power-fpu.xml power-altivec.xml power-spe.xml power-vsx.xml" > - ;; > - ppc64le) > - TARGET_ARCH=ppc64 > - TARGET_BASE_ARCH=ppc > - TARGET_ABI_DIR=ppc > - TARGET_SYSTBL_ABI=common,nospu,64 > - mttcg=yes > - gdb_xml_files="power64-core.xml power-fpu.xml power-altivec.xml power-spe.xml power-vsx.xml" > - ;; > - ppc64abi32) > - TARGET_ARCH=ppc64 > - TARGET_BASE_ARCH=ppc > - TARGET_ABI_DIR=ppc > - TARGET_SYSTBL_ABI=common,nospu,32 > - echo "TARGET_ABI32=y" >> $config_target_mak > - gdb_xml_files="power64-core.xml power-fpu.xml power-altivec.xml power-spe.xml power-vsx.xml" > - deprecated_features="ppc64abi32 ${deprecated_features}" > - ;; > - riscv32) > - TARGET_BASE_ARCH=riscv > - TARGET_ABI_DIR=riscv > - mttcg=yes > - gdb_xml_files="riscv-32bit-cpu.xml riscv-32bit-fpu.xml riscv-64bit-fpu.xml riscv-32bit-csr.xml riscv-32bit-virtual.xml" > - ;; > - riscv64) > - TARGET_BASE_ARCH=riscv > - TARGET_ABI_DIR=riscv > - mttcg=yes > - gdb_xml_files="riscv-64bit-cpu.xml riscv-32bit-fpu.xml riscv-64bit-fpu.xml riscv-64bit-csr.xml riscv-64bit-virtual.xml" > - ;; > - rx) > - TARGET_ARCH=rx > - bflt="yes" > - target_compiler=$cross_cc_rx > - gdb_xml_files="rx-core.xml" > - ;; > - sh4|sh4eb) > - TARGET_ARCH=sh4 > - TARGET_SYSTBL_ABI=common > - bflt="yes" > - ;; > - sparc) > - TARGET_SYSTBL_ABI=common,32 > - ;; > - sparc64) > - TARGET_BASE_ARCH=sparc > - TARGET_SYSTBL_ABI=common,64 > - ;; > - sparc32plus) > - TARGET_ARCH=sparc64 > - TARGET_BASE_ARCH=sparc > - TARGET_ABI_DIR=sparc > - TARGET_SYSTBL_ABI=common,32 > - echo "TARGET_ABI32=y" >> $config_target_mak > - ;; > - s390x) > - TARGET_SYSTBL_ABI=common,64 > - mttcg=yes > - gdb_xml_files="s390x-core64.xml s390-acr.xml s390-fpr.xml s390-vx.xml s390-cr.xml s390-virt.xml s390-gs.xml" > - ;; > - tilegx) > - ;; > - tricore) > - ;; > - unicore32) > - ;; > - xtensa|xtensaeb) > - TARGET_ARCH=xtensa > - TARGET_SYSTBL_ABI=common > - bflt="yes" > - mttcg="yes" > - ;; > - *) > - error_exit "Unsupported target CPU" > - ;; > -esac > -# TARGET_BASE_ARCH needs to be defined after TARGET_ARCH > -if [ "$TARGET_BASE_ARCH" = "" ]; then > - TARGET_BASE_ARCH=$TARGET_ARCH > -fi > -if [ "$TARGET_SYSTBL_ABI" != "" ] && [ "$TARGET_SYSTBL" = "" ]; then > - TARGET_SYSTBL=syscall.tbl > -fi > - > -upper() { > - echo "$@"| LC_ALL=C tr '[a-z]' '[A-Z]' > -} > - > -target_arch_name="$(upper $TARGET_ARCH)" > -echo "TARGET_$target_arch_name=y" >> $config_target_mak > -echo "TARGET_BASE_ARCH=$TARGET_BASE_ARCH" >> $config_target_mak > -if [ "$TARGET_ABI_DIR" = "" ]; then > - TARGET_ABI_DIR=$TARGET_ARCH > -fi > -echo "TARGET_ABI_DIR=$TARGET_ABI_DIR" >> $config_target_mak > -if [ "$TARGET_SYSTBL_ABI" != "" ]; then > - echo "TARGET_SYSTBL_ABI=$TARGET_SYSTBL_ABI" >> $config_target_mak > - echo "TARGET_SYSTBL=$TARGET_SYSTBL" >> $config_target_mak > -fi > - > -if test "$target_aligned_only" = "yes" ; then > - echo "TARGET_ALIGNED_ONLY=y" >> $config_target_mak > -fi > -if test "$target_bigendian" = "yes" ; then > - echo "TARGET_WORDS_BIGENDIAN=y" >> $config_target_mak > -fi > -if test "$target_softmmu" = "yes" ; then > - if test "$mttcg" = "yes" ; then > - echo "TARGET_SUPPORTS_MTTCG=y" >> $config_target_mak > - fi > -fi > if test "$target_user_only" = "yes" ; then > symlink "../qemu-$target_name" "$target_dir/qemu-$target_name" > else > symlink "../qemu-system-$target_name" "$target_dir/qemu-system-$target_name" > fi > -list="" > -if test ! -z "$gdb_xml_files" ; then > - for x in $gdb_xml_files; do > - list="$list gdb-xml/$x" > - done > - echo "TARGET_XML_FILES=$list" >> $config_target_mak > -fi > - > -if test "$target_user_only" = "yes" && test "$bflt" = "yes"; then > - echo "TARGET_HAS_BFLT=y" >> $config_target_mak > -fi > - > done # for target in $targets > > if [ "$fdt" = "git" ]; then > @@ -7659,6 +7261,9 @@ if [ "$capstone" = "git" -o "$capstone" = "internal" ]; then > subdirs="$subdirs capstone" > fi > echo "CONFIG_QEMU_INTERP_PREFIX=$interp_prefix" | sed 's/%M/@0@/' >> $config_host_mak > +if test "$default_targets" = "yes"; then > + echo "CONFIG_DEFAULT_TARGETS=y" >> $config_host_mak > +fi > echo "SUBDIRS=$subdirs" >> $config_host_mak > if test -n "$LIBCAPSTONE"; then > echo "LIBCAPSTONE=$LIBCAPSTONE" >> $config_host_mak > diff --git a/default-configs/targets/aarch64-linux-user.mak b/default-configs/targets/aarch64-linux-user.mak > new file mode 100644 > index 0000000000..4495e86509 > --- /dev/null > +++ b/default-configs/targets/aarch64-linux-user.mak > @@ -0,0 +1,5 @@ > +TARGET_AARCH64=y > +TARGET_BASE_ARCH=arm > +TARGET_ABI_DIR=aarch64 > +TARGET_XML_FILES= gdb-xml/aarch64-core.xml gdb-xml/aarch64-fpu.xml gdb-xml/arm-core.xml gdb-xml/arm-vfp.xml gdb-xml/arm-vfp3.xml gdb-xml/arm-neon.xml gdb-xml/arm-m-profile.xml > +TARGET_HAS_BFLT=y > diff --git a/default-configs/targets/aarch64-softmmu.mak b/default-configs/targets/aarch64-softmmu.mak > new file mode 100644 > index 0000000000..53f83ea81f > --- /dev/null > +++ b/default-configs/targets/aarch64-softmmu.mak > @@ -0,0 +1,5 @@ > +TARGET_AARCH64=y > +TARGET_BASE_ARCH=arm > +TARGET_ABI_DIR=aarch64 > +TARGET_SUPPORTS_MTTCG=y > +TARGET_XML_FILES= gdb-xml/aarch64-core.xml gdb-xml/aarch64-fpu.xml gdb-xml/arm-core.xml gdb-xml/arm-vfp.xml gdb-xml/arm-vfp3.xml gdb-xml/arm-neon.xml gdb-xml/arm-m-profile.xml > diff --git a/default-configs/targets/aarch64_be-linux-user.mak b/default-configs/targets/aarch64_be-linux-user.mak > new file mode 100644 > index 0000000000..da13693d3d > --- /dev/null > +++ b/default-configs/targets/aarch64_be-linux-user.mak > @@ -0,0 +1,6 @@ > +TARGET_AARCH64=y > +TARGET_BASE_ARCH=arm > +TARGET_ABI_DIR=aarch64 > +TARGET_WORDS_BIGENDIAN=y > +TARGET_XML_FILES= gdb-xml/aarch64-core.xml gdb-xml/aarch64-fpu.xml gdb-xml/arm-core.xml gdb-xml/arm-vfp.xml gdb-xml/arm-vfp3.xml gdb-xml/arm-neon.xml gdb-xml/arm-m-profile.xml > +TARGET_HAS_BFLT=y > diff --git a/default-configs/targets/alpha-linux-user.mak b/default-configs/targets/alpha-linux-user.mak > new file mode 100644 > index 0000000000..5ff89f5d48 > --- /dev/null > +++ b/default-configs/targets/alpha-linux-user.mak > @@ -0,0 +1,6 @@ > +TARGET_ALPHA=y > +TARGET_BASE_ARCH=alpha > +TARGET_ABI_DIR=alpha > +TARGET_SYSTBL_ABI=common > +TARGET_SYSTBL=syscall.tbl > +TARGET_ALIGNED_ONLY=y > diff --git a/default-configs/targets/alpha-softmmu.mak b/default-configs/targets/alpha-softmmu.mak > new file mode 100644 > index 0000000000..b78114b028 > --- /dev/null > +++ b/default-configs/targets/alpha-softmmu.mak > @@ -0,0 +1,7 @@ > +TARGET_ALPHA=y > +TARGET_BASE_ARCH=alpha > +TARGET_ABI_DIR=alpha > +TARGET_SYSTBL_ABI=common > +TARGET_SYSTBL=syscall.tbl > +TARGET_ALIGNED_ONLY=y > +TARGET_SUPPORTS_MTTCG=y > diff --git a/default-configs/targets/arm-linux-user.mak b/default-configs/targets/arm-linux-user.mak > new file mode 100644 > index 0000000000..7c54c3c2a2 > --- /dev/null > +++ b/default-configs/targets/arm-linux-user.mak > @@ -0,0 +1,7 @@ > +TARGET_ARM=y > +TARGET_BASE_ARCH=arm > +TARGET_ABI_DIR=arm > +TARGET_SYSTBL_ABI=common,oabi > +TARGET_SYSTBL=syscall.tbl > +TARGET_XML_FILES= gdb-xml/arm-core.xml gdb-xml/arm-vfp.xml gdb-xml/arm-vfp3.xml gdb-xml/arm-neon.xml gdb-xml/arm-m-profile.xml > +TARGET_HAS_BFLT=y > diff --git a/default-configs/targets/arm-softmmu.mak b/default-configs/targets/arm-softmmu.mak > new file mode 100644 > index 0000000000..d40b995f25 > --- /dev/null > +++ b/default-configs/targets/arm-softmmu.mak > @@ -0,0 +1,7 @@ > +TARGET_ARM=y > +TARGET_BASE_ARCH=arm > +TARGET_ABI_DIR=arm > +TARGET_SYSTBL_ABI=common,oabi > +TARGET_SYSTBL=syscall.tbl > +TARGET_SUPPORTS_MTTCG=y > +TARGET_XML_FILES= gdb-xml/arm-core.xml gdb-xml/arm-vfp.xml gdb-xml/arm-vfp3.xml gdb-xml/arm-neon.xml gdb-xml/arm-m-profile.xml > diff --git a/default-configs/targets/armeb-linux-user.mak b/default-configs/targets/armeb-linux-user.mak > new file mode 100644 > index 0000000000..1882aa472d > --- /dev/null > +++ b/default-configs/targets/armeb-linux-user.mak > @@ -0,0 +1,8 @@ > +TARGET_ARM=y > +TARGET_BASE_ARCH=arm > +TARGET_ABI_DIR=arm > +TARGET_SYSTBL_ABI=common,oabi > +TARGET_SYSTBL=syscall.tbl > +TARGET_WORDS_BIGENDIAN=y > +TARGET_XML_FILES= gdb-xml/arm-core.xml gdb-xml/arm-vfp.xml gdb-xml/arm-vfp3.xml gdb-xml/arm-neon.xml gdb-xml/arm-m-profile.xml > +TARGET_HAS_BFLT=y > diff --git a/default-configs/targets/avr-softmmu.mak b/default-configs/targets/avr-softmmu.mak > new file mode 100644 > index 0000000000..ecd292b2f7 > --- /dev/null > +++ b/default-configs/targets/avr-softmmu.mak > @@ -0,0 +1,4 @@ > +TARGET_AVR=y > +TARGET_BASE_ARCH=avr > +TARGET_ABI_DIR=avr > +TARGET_XML_FILES= gdb-xml/avr-cpu.xml > diff --git a/default-configs/targets/cris-linux-user.mak b/default-configs/targets/cris-linux-user.mak > new file mode 100644 > index 0000000000..ba61135172 > --- /dev/null > +++ b/default-configs/targets/cris-linux-user.mak > @@ -0,0 +1,3 @@ > +TARGET_CRIS=y > +TARGET_BASE_ARCH=cris > +TARGET_ABI_DIR=cris > diff --git a/default-configs/targets/cris-softmmu.mak b/default-configs/targets/cris-softmmu.mak > new file mode 100644 > index 0000000000..ba61135172 > --- /dev/null > +++ b/default-configs/targets/cris-softmmu.mak > @@ -0,0 +1,3 @@ > +TARGET_CRIS=y > +TARGET_BASE_ARCH=cris > +TARGET_ABI_DIR=cris > diff --git a/default-configs/targets/hppa-linux-user.mak b/default-configs/targets/hppa-linux-user.mak > new file mode 100644 > index 0000000000..94222e8fc6 > --- /dev/null > +++ b/default-configs/targets/hppa-linux-user.mak > @@ -0,0 +1,7 @@ > +TARGET_HPPA=y > +TARGET_BASE_ARCH=hppa > +TARGET_ABI_DIR=hppa > +TARGET_SYSTBL_ABI=common,32 > +TARGET_SYSTBL=syscall.tbl > +TARGET_ALIGNED_ONLY=y > +TARGET_WORDS_BIGENDIAN=y > diff --git a/default-configs/targets/hppa-softmmu.mak b/default-configs/targets/hppa-softmmu.mak > new file mode 100644 > index 0000000000..617c6483c0 > --- /dev/null > +++ b/default-configs/targets/hppa-softmmu.mak > @@ -0,0 +1,8 @@ > +TARGET_HPPA=y > +TARGET_BASE_ARCH=hppa > +TARGET_ABI_DIR=hppa > +TARGET_SYSTBL_ABI=common,32 > +TARGET_SYSTBL=syscall.tbl > +TARGET_ALIGNED_ONLY=y > +TARGET_WORDS_BIGENDIAN=y > +TARGET_SUPPORTS_MTTCG=y > diff --git a/default-configs/targets/i386-bsd-user.mak b/default-configs/targets/i386-bsd-user.mak > new file mode 100644 > index 0000000000..34b52e9ee2 > --- /dev/null > +++ b/default-configs/targets/i386-bsd-user.mak > @@ -0,0 +1,6 @@ > +TARGET_I386=y > +TARGET_BASE_ARCH=i386 > +TARGET_ABI_DIR=i386 > +TARGET_SYSTBL_ABI=i386 > +TARGET_SYSTBL=syscall_32.tbl > +TARGET_XML_FILES= gdb-xml/i386-32bit.xml > diff --git a/default-configs/targets/i386-linux-user.mak b/default-configs/targets/i386-linux-user.mak > new file mode 100644 > index 0000000000..34b52e9ee2 > --- /dev/null > +++ b/default-configs/targets/i386-linux-user.mak > @@ -0,0 +1,6 @@ > +TARGET_I386=y > +TARGET_BASE_ARCH=i386 > +TARGET_ABI_DIR=i386 > +TARGET_SYSTBL_ABI=i386 > +TARGET_SYSTBL=syscall_32.tbl > +TARGET_XML_FILES= gdb-xml/i386-32bit.xml > diff --git a/default-configs/targets/i386-softmmu.mak b/default-configs/targets/i386-softmmu.mak > new file mode 100644 > index 0000000000..be9198bb84 > --- /dev/null > +++ b/default-configs/targets/i386-softmmu.mak > @@ -0,0 +1,7 @@ > +TARGET_I386=y > +TARGET_BASE_ARCH=i386 > +TARGET_ABI_DIR=i386 > +TARGET_SYSTBL_ABI=i386 > +TARGET_SYSTBL=syscall_32.tbl > +TARGET_SUPPORTS_MTTCG=y > +TARGET_XML_FILES= gdb-xml/i386-32bit.xml > diff --git a/default-configs/targets/lm32-softmmu.mak b/default-configs/targets/lm32-softmmu.mak > new file mode 100644 > index 0000000000..c327d27d5f > --- /dev/null > +++ b/default-configs/targets/lm32-softmmu.mak > @@ -0,0 +1,4 @@ > +TARGET_LM32=y > +TARGET_BASE_ARCH=lm32 > +TARGET_ABI_DIR=lm32 > +TARGET_WORDS_BIGENDIAN=y > diff --git a/default-configs/targets/m68k-linux-user.mak b/default-configs/targets/m68k-linux-user.mak > new file mode 100644 > index 0000000000..e7c0af5881 > --- /dev/null > +++ b/default-configs/targets/m68k-linux-user.mak > @@ -0,0 +1,8 @@ > +TARGET_M68K=y > +TARGET_BASE_ARCH=m68k > +TARGET_ABI_DIR=m68k > +TARGET_SYSTBL_ABI=common > +TARGET_SYSTBL=syscall.tbl > +TARGET_WORDS_BIGENDIAN=y > +TARGET_XML_FILES= gdb-xml/cf-core.xml gdb-xml/cf-fp.xml gdb-xml/m68k-core.xml gdb-xml/m68k-fp.xml > +TARGET_HAS_BFLT=y > diff --git a/default-configs/targets/m68k-softmmu.mak b/default-configs/targets/m68k-softmmu.mak > new file mode 100644 > index 0000000000..f8bf4fc5ac > --- /dev/null > +++ b/default-configs/targets/m68k-softmmu.mak > @@ -0,0 +1,7 @@ > +TARGET_M68K=y > +TARGET_BASE_ARCH=m68k > +TARGET_ABI_DIR=m68k > +TARGET_SYSTBL_ABI=common > +TARGET_SYSTBL=syscall.tbl > +TARGET_WORDS_BIGENDIAN=y > +TARGET_XML_FILES= gdb-xml/cf-core.xml gdb-xml/cf-fp.xml gdb-xml/m68k-core.xml gdb-xml/m68k-fp.xml > diff --git a/default-configs/targets/microblaze-linux-user.mak b/default-configs/targets/microblaze-linux-user.mak > new file mode 100644 > index 0000000000..809819424d > --- /dev/null > +++ b/default-configs/targets/microblaze-linux-user.mak > @@ -0,0 +1,7 @@ > +TARGET_MICROBLAZE=y > +TARGET_BASE_ARCH=microblaze > +TARGET_ABI_DIR=microblaze > +TARGET_SYSTBL_ABI=common > +TARGET_SYSTBL=syscall.tbl > +TARGET_WORDS_BIGENDIAN=y > +TARGET_HAS_BFLT=y > diff --git a/default-configs/targets/microblaze-softmmu.mak b/default-configs/targets/microblaze-softmmu.mak > new file mode 100644 > index 0000000000..1b0a76a61f > --- /dev/null > +++ b/default-configs/targets/microblaze-softmmu.mak > @@ -0,0 +1,7 @@ > +TARGET_MICROBLAZE=y > +TARGET_BASE_ARCH=microblaze > +TARGET_ABI_DIR=microblaze > +TARGET_SYSTBL_ABI=common > +TARGET_SYSTBL=syscall.tbl > +TARGET_WORDS_BIGENDIAN=y > +TARGET_SUPPORTS_MTTCG=y > diff --git a/default-configs/targets/microblazeel-linux-user.mak b/default-configs/targets/microblazeel-linux-user.mak > new file mode 100644 > index 0000000000..416b42eeb6 > --- /dev/null > +++ b/default-configs/targets/microblazeel-linux-user.mak > @@ -0,0 +1,6 @@ > +TARGET_MICROBLAZE=y > +TARGET_BASE_ARCH=microblaze > +TARGET_ABI_DIR=microblaze > +TARGET_SYSTBL_ABI=common > +TARGET_SYSTBL=syscall.tbl > +TARGET_HAS_BFLT=y > diff --git a/default-configs/targets/microblazeel-softmmu.mak b/default-configs/targets/microblazeel-softmmu.mak > new file mode 100644 > index 0000000000..3a2cf8be0f > --- /dev/null > +++ b/default-configs/targets/microblazeel-softmmu.mak > @@ -0,0 +1,6 @@ > +TARGET_MICROBLAZE=y > +TARGET_BASE_ARCH=microblaze > +TARGET_ABI_DIR=microblaze > +TARGET_SYSTBL_ABI=common > +TARGET_SYSTBL=syscall.tbl > +TARGET_SUPPORTS_MTTCG=y > diff --git a/default-configs/targets/mips-linux-user.mak b/default-configs/targets/mips-linux-user.mak > new file mode 100644 > index 0000000000..bcfff16a7b > --- /dev/null > +++ b/default-configs/targets/mips-linux-user.mak > @@ -0,0 +1,8 @@ > +TARGET_ABI_MIPSO32=y > +TARGET_MIPS=y > +TARGET_BASE_ARCH=mips > +TARGET_ABI_DIR=mips > +TARGET_SYSTBL_ABI=o32 > +TARGET_SYSTBL=syscall_o32.tbl > +TARGET_ALIGNED_ONLY=y > +TARGET_WORDS_BIGENDIAN=y > diff --git a/default-configs/targets/mips-softmmu.mak b/default-configs/targets/mips-softmmu.mak > new file mode 100644 > index 0000000000..8ab9ff2ac9 > --- /dev/null > +++ b/default-configs/targets/mips-softmmu.mak > @@ -0,0 +1,9 @@ > +TARGET_ABI_MIPSO32=y > +TARGET_MIPS=y > +TARGET_BASE_ARCH=mips > +TARGET_ABI_DIR=mips > +TARGET_SYSTBL_ABI=o32 > +TARGET_SYSTBL=syscall_o32.tbl > +TARGET_ALIGNED_ONLY=y > +TARGET_WORDS_BIGENDIAN=y > +TARGET_SUPPORTS_MTTCG=y > diff --git a/default-configs/targets/mips64-linux-user.mak b/default-configs/targets/mips64-linux-user.mak > new file mode 100644 > index 0000000000..c02c5460a7 > --- /dev/null > +++ b/default-configs/targets/mips64-linux-user.mak > @@ -0,0 +1,8 @@ > +TARGET_ABI_MIPSN64=y > +TARGET_MIPS64=y > +TARGET_BASE_ARCH=mips > +TARGET_ABI_DIR=mips64 > +TARGET_SYSTBL_ABI=n64 > +TARGET_SYSTBL=syscall_n64.tbl > +TARGET_ALIGNED_ONLY=y > +TARGET_WORDS_BIGENDIAN=y > diff --git a/default-configs/targets/mips64-softmmu.mak b/default-configs/targets/mips64-softmmu.mak > new file mode 100644 > index 0000000000..c02c5460a7 > --- /dev/null > +++ b/default-configs/targets/mips64-softmmu.mak > @@ -0,0 +1,8 @@ > +TARGET_ABI_MIPSN64=y > +TARGET_MIPS64=y > +TARGET_BASE_ARCH=mips > +TARGET_ABI_DIR=mips64 > +TARGET_SYSTBL_ABI=n64 > +TARGET_SYSTBL=syscall_n64.tbl > +TARGET_ALIGNED_ONLY=y > +TARGET_WORDS_BIGENDIAN=y > diff --git a/default-configs/targets/mips64el-linux-user.mak b/default-configs/targets/mips64el-linux-user.mak > new file mode 100644 > index 0000000000..8cbbc38e78 > --- /dev/null > +++ b/default-configs/targets/mips64el-linux-user.mak > @@ -0,0 +1,7 @@ > +TARGET_ABI_MIPSN64=y > +TARGET_MIPS64=y > +TARGET_BASE_ARCH=mips > +TARGET_ABI_DIR=mips64 > +TARGET_SYSTBL_ABI=n64 > +TARGET_SYSTBL=syscall_n64.tbl > +TARGET_ALIGNED_ONLY=y > diff --git a/default-configs/targets/mips64el-softmmu.mak b/default-configs/targets/mips64el-softmmu.mak > new file mode 100644 > index 0000000000..8cbbc38e78 > --- /dev/null > +++ b/default-configs/targets/mips64el-softmmu.mak > @@ -0,0 +1,7 @@ > +TARGET_ABI_MIPSN64=y > +TARGET_MIPS64=y > +TARGET_BASE_ARCH=mips > +TARGET_ABI_DIR=mips64 > +TARGET_SYSTBL_ABI=n64 > +TARGET_SYSTBL=syscall_n64.tbl > +TARGET_ALIGNED_ONLY=y > diff --git a/default-configs/targets/mipsel-linux-user.mak b/default-configs/targets/mipsel-linux-user.mak > new file mode 100644 > index 0000000000..26aa9c8279 > --- /dev/null > +++ b/default-configs/targets/mipsel-linux-user.mak > @@ -0,0 +1,7 @@ > +TARGET_ABI_MIPSO32=y > +TARGET_MIPS=y > +TARGET_BASE_ARCH=mips > +TARGET_ABI_DIR=mips > +TARGET_SYSTBL_ABI=o32 > +TARGET_SYSTBL=syscall_o32.tbl > +TARGET_ALIGNED_ONLY=y > diff --git a/default-configs/targets/mipsel-softmmu.mak b/default-configs/targets/mipsel-softmmu.mak > new file mode 100644 > index 0000000000..afa0851887 > --- /dev/null > +++ b/default-configs/targets/mipsel-softmmu.mak > @@ -0,0 +1,8 @@ > +TARGET_ABI_MIPSO32=y > +TARGET_MIPS=y > +TARGET_BASE_ARCH=mips > +TARGET_ABI_DIR=mips > +TARGET_SYSTBL_ABI=o32 > +TARGET_SYSTBL=syscall_o32.tbl > +TARGET_ALIGNED_ONLY=y > +TARGET_SUPPORTS_MTTCG=y > diff --git a/default-configs/targets/mipsn32-linux-user.mak b/default-configs/targets/mipsn32-linux-user.mak > new file mode 100644 > index 0000000000..81d548e699 > --- /dev/null > +++ b/default-configs/targets/mipsn32-linux-user.mak > @@ -0,0 +1,9 @@ > +TARGET_ABI_MIPSN32=y > +TARGET_ABI32=y > +TARGET_MIPS64=y > +TARGET_BASE_ARCH=mips > +TARGET_ABI_DIR=mips64 > +TARGET_SYSTBL_ABI=n32 > +TARGET_SYSTBL=syscall_n32.tbl > +TARGET_ALIGNED_ONLY=y > +TARGET_WORDS_BIGENDIAN=y > diff --git a/default-configs/targets/mipsn32el-linux-user.mak b/default-configs/targets/mipsn32el-linux-user.mak > new file mode 100644 > index 0000000000..6de47f2a79 > --- /dev/null > +++ b/default-configs/targets/mipsn32el-linux-user.mak > @@ -0,0 +1,8 @@ > +TARGET_ABI_MIPSN32=y > +TARGET_ABI32=y > +TARGET_MIPS64=y > +TARGET_BASE_ARCH=mips > +TARGET_ABI_DIR=mips64 > +TARGET_SYSTBL_ABI=n32 > +TARGET_SYSTBL=syscall_n32.tbl > +TARGET_ALIGNED_ONLY=y > diff --git a/default-configs/targets/moxie-softmmu.mak b/default-configs/targets/moxie-softmmu.mak > new file mode 100644 > index 0000000000..da093f5b36 > --- /dev/null > +++ b/default-configs/targets/moxie-softmmu.mak > @@ -0,0 +1,4 @@ > +TARGET_MOXIE=y > +TARGET_BASE_ARCH=moxie > +TARGET_ABI_DIR=moxie > +TARGET_WORDS_BIGENDIAN=y > diff --git a/default-configs/targets/nios2-linux-user.mak b/default-configs/targets/nios2-linux-user.mak > new file mode 100644 > index 0000000000..a2308a16aa > --- /dev/null > +++ b/default-configs/targets/nios2-linux-user.mak > @@ -0,0 +1,3 @@ > +TARGET_NIOS2=y > +TARGET_BASE_ARCH=nios2 > +TARGET_ABI_DIR=nios2 > diff --git a/default-configs/targets/nios2-softmmu.mak b/default-configs/targets/nios2-softmmu.mak > new file mode 100644 > index 0000000000..a2308a16aa > --- /dev/null > +++ b/default-configs/targets/nios2-softmmu.mak > @@ -0,0 +1,3 @@ > +TARGET_NIOS2=y > +TARGET_BASE_ARCH=nios2 > +TARGET_ABI_DIR=nios2 > diff --git a/default-configs/targets/or1k-linux-user.mak b/default-configs/targets/or1k-linux-user.mak > new file mode 100644 > index 0000000000..2f5ff844df > --- /dev/null > +++ b/default-configs/targets/or1k-linux-user.mak > @@ -0,0 +1,4 @@ > +TARGET_OPENRISC=y > +TARGET_BASE_ARCH=openrisc > +TARGET_ABI_DIR=openrisc > +TARGET_WORDS_BIGENDIAN=y > diff --git a/default-configs/targets/or1k-softmmu.mak b/default-configs/targets/or1k-softmmu.mak > new file mode 100644 > index 0000000000..2f5ff844df > --- /dev/null > +++ b/default-configs/targets/or1k-softmmu.mak > @@ -0,0 +1,4 @@ > +TARGET_OPENRISC=y > +TARGET_BASE_ARCH=openrisc > +TARGET_ABI_DIR=openrisc > +TARGET_WORDS_BIGENDIAN=y > diff --git a/default-configs/targets/ppc-linux-user.mak b/default-configs/targets/ppc-linux-user.mak > new file mode 100644 > index 0000000000..c4d912bfb1 > --- /dev/null > +++ b/default-configs/targets/ppc-linux-user.mak > @@ -0,0 +1,7 @@ > +TARGET_PPC=y > +TARGET_BASE_ARCH=ppc > +TARGET_ABI_DIR=ppc > +TARGET_SYSTBL_ABI=common,nospu,32 > +TARGET_SYSTBL=syscall.tbl > +TARGET_WORDS_BIGENDIAN=y > +TARGET_XML_FILES= gdb-xml/power-core.xml gdb-xml/power-fpu.xml gdb-xml/power-altivec.xml gdb-xml/power-spe.xml > diff --git a/default-configs/targets/ppc-softmmu.mak b/default-configs/targets/ppc-softmmu.mak > new file mode 100644 > index 0000000000..c4d912bfb1 > --- /dev/null > +++ b/default-configs/targets/ppc-softmmu.mak > @@ -0,0 +1,7 @@ > +TARGET_PPC=y > +TARGET_BASE_ARCH=ppc > +TARGET_ABI_DIR=ppc > +TARGET_SYSTBL_ABI=common,nospu,32 > +TARGET_SYSTBL=syscall.tbl > +TARGET_WORDS_BIGENDIAN=y > +TARGET_XML_FILES= gdb-xml/power-core.xml gdb-xml/power-fpu.xml gdb-xml/power-altivec.xml gdb-xml/power-spe.xml > diff --git a/default-configs/targets/ppc64-linux-user.mak b/default-configs/targets/ppc64-linux-user.mak > new file mode 100644 > index 0000000000..7f96ab7e9d > --- /dev/null > +++ b/default-configs/targets/ppc64-linux-user.mak > @@ -0,0 +1,7 @@ > +TARGET_PPC64=y > +TARGET_BASE_ARCH=ppc > +TARGET_ABI_DIR=ppc > +TARGET_SYSTBL_ABI=common,nospu,64 > +TARGET_SYSTBL=syscall.tbl > +TARGET_WORDS_BIGENDIAN=y > +TARGET_XML_FILES= gdb-xml/power64-core.xml gdb-xml/power-fpu.xml gdb-xml/power-altivec.xml gdb-xml/power-spe.xml gdb-xml/power-vsx.xml > diff --git a/default-configs/targets/ppc64-softmmu.mak b/default-configs/targets/ppc64-softmmu.mak > new file mode 100644 > index 0000000000..a73211918a > --- /dev/null > +++ b/default-configs/targets/ppc64-softmmu.mak > @@ -0,0 +1,8 @@ > +TARGET_PPC64=y > +TARGET_BASE_ARCH=ppc > +TARGET_ABI_DIR=ppc > +TARGET_SYSTBL_ABI=common,nospu,64 > +TARGET_SYSTBL=syscall.tbl > +TARGET_WORDS_BIGENDIAN=y > +TARGET_SUPPORTS_MTTCG=y > +TARGET_XML_FILES= gdb-xml/power64-core.xml gdb-xml/power-fpu.xml gdb-xml/power-altivec.xml gdb-xml/power-spe.xml gdb-xml/power-vsx.xml > diff --git a/default-configs/targets/ppc64abi32-linux-user.mak b/default-configs/targets/ppc64abi32-linux-user.mak > new file mode 100644 > index 0000000000..13a02700aa > --- /dev/null > +++ b/default-configs/targets/ppc64abi32-linux-user.mak > @@ -0,0 +1,8 @@ > +TARGET_ABI32=y > +TARGET_PPC64=y > +TARGET_BASE_ARCH=ppc > +TARGET_ABI_DIR=ppc > +TARGET_SYSTBL_ABI=common,nospu,32 > +TARGET_SYSTBL=syscall.tbl > +TARGET_WORDS_BIGENDIAN=y > +TARGET_XML_FILES= gdb-xml/power64-core.xml gdb-xml/power-fpu.xml gdb-xml/power-altivec.xml gdb-xml/power-spe.xml gdb-xml/power-vsx.xml > diff --git a/default-configs/targets/ppc64le-linux-user.mak b/default-configs/targets/ppc64le-linux-user.mak > new file mode 100644 > index 0000000000..3dd54b894c > --- /dev/null > +++ b/default-configs/targets/ppc64le-linux-user.mak > @@ -0,0 +1,6 @@ > +TARGET_PPC64=y > +TARGET_BASE_ARCH=ppc > +TARGET_ABI_DIR=ppc > +TARGET_SYSTBL_ABI=common,nospu,64 > +TARGET_SYSTBL=syscall.tbl > +TARGET_XML_FILES= gdb-xml/power64-core.xml gdb-xml/power-fpu.xml gdb-xml/power-altivec.xml gdb-xml/power-spe.xml gdb-xml/power-vsx.xml > diff --git a/default-configs/targets/riscv32-linux-user.mak b/default-configs/targets/riscv32-linux-user.mak > new file mode 100644 > index 0000000000..91d72a46b0 > --- /dev/null > +++ b/default-configs/targets/riscv32-linux-user.mak > @@ -0,0 +1,4 @@ > +TARGET_RISCV32=y > +TARGET_BASE_ARCH=riscv > +TARGET_ABI_DIR=riscv > +TARGET_XML_FILES= gdb-xml/riscv-32bit-cpu.xml gdb-xml/riscv-32bit-fpu.xml gdb-xml/riscv-64bit-fpu.xml gdb-xml/riscv-32bit-csr.xml gdb-xml/riscv-32bit-virtual.xml > diff --git a/default-configs/targets/riscv32-softmmu.mak b/default-configs/targets/riscv32-softmmu.mak > new file mode 100644 > index 0000000000..35e5b2fb85 > --- /dev/null > +++ b/default-configs/targets/riscv32-softmmu.mak > @@ -0,0 +1,5 @@ > +TARGET_RISCV32=y > +TARGET_BASE_ARCH=riscv > +TARGET_ABI_DIR=riscv > +TARGET_SUPPORTS_MTTCG=y > +TARGET_XML_FILES= gdb-xml/riscv-32bit-cpu.xml gdb-xml/riscv-32bit-fpu.xml gdb-xml/riscv-64bit-fpu.xml gdb-xml/riscv-32bit-csr.xml gdb-xml/riscv-32bit-virtual.xml > diff --git a/default-configs/targets/riscv64-linux-user.mak b/default-configs/targets/riscv64-linux-user.mak > new file mode 100644 > index 0000000000..9e53193cdb > --- /dev/null > +++ b/default-configs/targets/riscv64-linux-user.mak > @@ -0,0 +1,4 @@ > +TARGET_RISCV64=y > +TARGET_BASE_ARCH=riscv > +TARGET_ABI_DIR=riscv > +TARGET_XML_FILES= gdb-xml/riscv-64bit-cpu.xml gdb-xml/riscv-32bit-fpu.xml gdb-xml/riscv-64bit-fpu.xml gdb-xml/riscv-64bit-csr.xml gdb-xml/riscv-64bit-virtual.xml > diff --git a/default-configs/targets/riscv64-softmmu.mak b/default-configs/targets/riscv64-softmmu.mak > new file mode 100644 > index 0000000000..4b9a61cd8f > --- /dev/null > +++ b/default-configs/targets/riscv64-softmmu.mak > @@ -0,0 +1,5 @@ > +TARGET_RISCV64=y > +TARGET_BASE_ARCH=riscv > +TARGET_ABI_DIR=riscv > +TARGET_SUPPORTS_MTTCG=y > +TARGET_XML_FILES= gdb-xml/riscv-64bit-cpu.xml gdb-xml/riscv-32bit-fpu.xml gdb-xml/riscv-64bit-fpu.xml gdb-xml/riscv-64bit-csr.xml gdb-xml/riscv-64bit-virtual.xml > diff --git a/default-configs/targets/rx-softmmu.mak b/default-configs/targets/rx-softmmu.mak > new file mode 100644 > index 0000000000..52a8c0df10 > --- /dev/null > +++ b/default-configs/targets/rx-softmmu.mak > @@ -0,0 +1,4 @@ > +TARGET_RX=y > +TARGET_BASE_ARCH=rx > +TARGET_ABI_DIR=rx > +TARGET_XML_FILES= gdb-xml/rx-core.xml > diff --git a/default-configs/targets/s390x-linux-user.mak b/default-configs/targets/s390x-linux-user.mak > new file mode 100644 > index 0000000000..77ebec769f > --- /dev/null > +++ b/default-configs/targets/s390x-linux-user.mak > @@ -0,0 +1,7 @@ > +TARGET_S390X=y > +TARGET_BASE_ARCH=s390x > +TARGET_ABI_DIR=s390x > +TARGET_SYSTBL_ABI=common,64 > +TARGET_SYSTBL=syscall.tbl > +TARGET_WORDS_BIGENDIAN=y > +TARGET_XML_FILES= gdb-xml/s390x-core64.xml gdb-xml/s390-acr.xml gdb-xml/s390-fpr.xml gdb-xml/s390-vx.xml gdb-xml/s390-cr.xml gdb-xml/s390-virt.xml gdb-xml/s390-gs.xml > diff --git a/default-configs/targets/s390x-softmmu.mak b/default-configs/targets/s390x-softmmu.mak > new file mode 100644 > index 0000000000..f2a80d3208 > --- /dev/null > +++ b/default-configs/targets/s390x-softmmu.mak > @@ -0,0 +1,8 @@ > +TARGET_S390X=y > +TARGET_BASE_ARCH=s390x > +TARGET_ABI_DIR=s390x > +TARGET_SYSTBL_ABI=common,64 > +TARGET_SYSTBL=syscall.tbl > +TARGET_WORDS_BIGENDIAN=y > +TARGET_SUPPORTS_MTTCG=y > +TARGET_XML_FILES= gdb-xml/s390x-core64.xml gdb-xml/s390-acr.xml gdb-xml/s390-fpr.xml gdb-xml/s390-vx.xml gdb-xml/s390-cr.xml gdb-xml/s390-virt.xml gdb-xml/s390-gs.xml > diff --git a/default-configs/targets/sh4-linux-user.mak b/default-configs/targets/sh4-linux-user.mak > new file mode 100644 > index 0000000000..4292dd6128 > --- /dev/null > +++ b/default-configs/targets/sh4-linux-user.mak > @@ -0,0 +1,7 @@ > +TARGET_SH4=y > +TARGET_BASE_ARCH=sh4 > +TARGET_ABI_DIR=sh4 > +TARGET_SYSTBL_ABI=common > +TARGET_SYSTBL=syscall.tbl > +TARGET_ALIGNED_ONLY=y > +TARGET_HAS_BFLT=y > diff --git a/default-configs/targets/sh4-softmmu.mak b/default-configs/targets/sh4-softmmu.mak > new file mode 100644 > index 0000000000..e46bf0e278 > --- /dev/null > +++ b/default-configs/targets/sh4-softmmu.mak > @@ -0,0 +1,6 @@ > +TARGET_SH4=y > +TARGET_BASE_ARCH=sh4 > +TARGET_ABI_DIR=sh4 > +TARGET_SYSTBL_ABI=common > +TARGET_SYSTBL=syscall.tbl > +TARGET_ALIGNED_ONLY=y > diff --git a/default-configs/targets/sh4eb-linux-user.mak b/default-configs/targets/sh4eb-linux-user.mak > new file mode 100644 > index 0000000000..cf9178f4ea > --- /dev/null > +++ b/default-configs/targets/sh4eb-linux-user.mak > @@ -0,0 +1,8 @@ > +TARGET_SH4=y > +TARGET_BASE_ARCH=sh4 > +TARGET_ABI_DIR=sh4 > +TARGET_SYSTBL_ABI=common > +TARGET_SYSTBL=syscall.tbl > +TARGET_ALIGNED_ONLY=y > +TARGET_WORDS_BIGENDIAN=y > +TARGET_HAS_BFLT=y > diff --git a/default-configs/targets/sh4eb-softmmu.mak b/default-configs/targets/sh4eb-softmmu.mak > new file mode 100644 > index 0000000000..db4140ec32 > --- /dev/null > +++ b/default-configs/targets/sh4eb-softmmu.mak > @@ -0,0 +1,7 @@ > +TARGET_SH4=y > +TARGET_BASE_ARCH=sh4 > +TARGET_ABI_DIR=sh4 > +TARGET_SYSTBL_ABI=common > +TARGET_SYSTBL=syscall.tbl > +TARGET_ALIGNED_ONLY=y > +TARGET_WORDS_BIGENDIAN=y > diff --git a/default-configs/targets/sparc-bsd-user.mak b/default-configs/targets/sparc-bsd-user.mak > new file mode 100644 > index 0000000000..7f2fcba978 > --- /dev/null > +++ b/default-configs/targets/sparc-bsd-user.mak > @@ -0,0 +1,7 @@ > +TARGET_SPARC=y > +TARGET_BASE_ARCH=sparc > +TARGET_ABI_DIR=sparc > +TARGET_SYSTBL_ABI=common,32 > +TARGET_SYSTBL=syscall.tbl > +TARGET_ALIGNED_ONLY=y > +TARGET_WORDS_BIGENDIAN=y > diff --git a/default-configs/targets/sparc-linux-user.mak b/default-configs/targets/sparc-linux-user.mak > new file mode 100644 > index 0000000000..7f2fcba978 > --- /dev/null > +++ b/default-configs/targets/sparc-linux-user.mak > @@ -0,0 +1,7 @@ > +TARGET_SPARC=y > +TARGET_BASE_ARCH=sparc > +TARGET_ABI_DIR=sparc > +TARGET_SYSTBL_ABI=common,32 > +TARGET_SYSTBL=syscall.tbl > +TARGET_ALIGNED_ONLY=y > +TARGET_WORDS_BIGENDIAN=y > diff --git a/default-configs/targets/sparc-softmmu.mak b/default-configs/targets/sparc-softmmu.mak > new file mode 100644 > index 0000000000..7f2fcba978 > --- /dev/null > +++ b/default-configs/targets/sparc-softmmu.mak > @@ -0,0 +1,7 @@ > +TARGET_SPARC=y > +TARGET_BASE_ARCH=sparc > +TARGET_ABI_DIR=sparc > +TARGET_SYSTBL_ABI=common,32 > +TARGET_SYSTBL=syscall.tbl > +TARGET_ALIGNED_ONLY=y > +TARGET_WORDS_BIGENDIAN=y > diff --git a/default-configs/targets/sparc32plus-linux-user.mak b/default-configs/targets/sparc32plus-linux-user.mak > new file mode 100644 > index 0000000000..f5fcb7879e > --- /dev/null > +++ b/default-configs/targets/sparc32plus-linux-user.mak > @@ -0,0 +1,8 @@ > +TARGET_ABI32=y > +TARGET_SPARC64=y > +TARGET_BASE_ARCH=sparc > +TARGET_ABI_DIR=sparc > +TARGET_SYSTBL_ABI=common,32 > +TARGET_SYSTBL=syscall.tbl > +TARGET_ALIGNED_ONLY=y > +TARGET_WORDS_BIGENDIAN=y > diff --git a/default-configs/targets/sparc64-bsd-user.mak b/default-configs/targets/sparc64-bsd-user.mak > new file mode 100644 > index 0000000000..817529e587 > --- /dev/null > +++ b/default-configs/targets/sparc64-bsd-user.mak > @@ -0,0 +1,7 @@ > +TARGET_SPARC64=y > +TARGET_BASE_ARCH=sparc > +TARGET_ABI_DIR=sparc64 > +TARGET_SYSTBL_ABI=common,64 > +TARGET_SYSTBL=syscall.tbl > +TARGET_ALIGNED_ONLY=y > +TARGET_WORDS_BIGENDIAN=y > diff --git a/default-configs/targets/sparc64-linux-user.mak b/default-configs/targets/sparc64-linux-user.mak > new file mode 100644 > index 0000000000..817529e587 > --- /dev/null > +++ b/default-configs/targets/sparc64-linux-user.mak > @@ -0,0 +1,7 @@ > +TARGET_SPARC64=y > +TARGET_BASE_ARCH=sparc > +TARGET_ABI_DIR=sparc64 > +TARGET_SYSTBL_ABI=common,64 > +TARGET_SYSTBL=syscall.tbl > +TARGET_ALIGNED_ONLY=y > +TARGET_WORDS_BIGENDIAN=y > diff --git a/default-configs/targets/sparc64-softmmu.mak b/default-configs/targets/sparc64-softmmu.mak > new file mode 100644 > index 0000000000..817529e587 > --- /dev/null > +++ b/default-configs/targets/sparc64-softmmu.mak > @@ -0,0 +1,7 @@ > +TARGET_SPARC64=y > +TARGET_BASE_ARCH=sparc > +TARGET_ABI_DIR=sparc64 > +TARGET_SYSTBL_ABI=common,64 > +TARGET_SYSTBL=syscall.tbl > +TARGET_ALIGNED_ONLY=y > +TARGET_WORDS_BIGENDIAN=y > diff --git a/default-configs/targets/tilegx-linux-user.mak b/default-configs/targets/tilegx-linux-user.mak > new file mode 100644 > index 0000000000..064d3320d7 > --- /dev/null > +++ b/default-configs/targets/tilegx-linux-user.mak > @@ -0,0 +1,3 @@ > +TARGET_TILEGX=y > +TARGET_BASE_ARCH=tilegx > +TARGET_ABI_DIR=tilegx > diff --git a/default-configs/targets/tricore-softmmu.mak b/default-configs/targets/tricore-softmmu.mak > new file mode 100644 > index 0000000000..356e5d8669 > --- /dev/null > +++ b/default-configs/targets/tricore-softmmu.mak > @@ -0,0 +1,3 @@ > +TARGET_TRICORE=y > +TARGET_BASE_ARCH=tricore > +TARGET_ABI_DIR=tricore > diff --git a/default-configs/targets/unicore32-softmmu.mak b/default-configs/targets/unicore32-softmmu.mak > new file mode 100644 > index 0000000000..d8c7860ac1 > --- /dev/null > +++ b/default-configs/targets/unicore32-softmmu.mak > @@ -0,0 +1,3 @@ > +TARGET_UNICORE32=y > +TARGET_BASE_ARCH=unicore32 > +TARGET_ABI_DIR=unicore32 > diff --git a/default-configs/targets/x86_64-bsd-user.mak b/default-configs/targets/x86_64-bsd-user.mak > new file mode 100644 > index 0000000000..6a9418f9ff > --- /dev/null > +++ b/default-configs/targets/x86_64-bsd-user.mak > @@ -0,0 +1,6 @@ > +TARGET_X86_64=y > +TARGET_BASE_ARCH=i386 > +TARGET_ABI_DIR=x86_64 > +TARGET_SYSTBL_ABI=common,64 > +TARGET_SYSTBL=syscall_64.tbl > +TARGET_XML_FILES= gdb-xml/i386-64bit.xml > diff --git a/default-configs/targets/x86_64-linux-user.mak b/default-configs/targets/x86_64-linux-user.mak > new file mode 100644 > index 0000000000..6a9418f9ff > --- /dev/null > +++ b/default-configs/targets/x86_64-linux-user.mak > @@ -0,0 +1,6 @@ > +TARGET_X86_64=y > +TARGET_BASE_ARCH=i386 > +TARGET_ABI_DIR=x86_64 > +TARGET_SYSTBL_ABI=common,64 > +TARGET_SYSTBL=syscall_64.tbl > +TARGET_XML_FILES= gdb-xml/i386-64bit.xml > diff --git a/default-configs/targets/x86_64-softmmu.mak b/default-configs/targets/x86_64-softmmu.mak > new file mode 100644 > index 0000000000..8b56e6e6da > --- /dev/null > +++ b/default-configs/targets/x86_64-softmmu.mak > @@ -0,0 +1,7 @@ > +TARGET_X86_64=y > +TARGET_BASE_ARCH=i386 > +TARGET_ABI_DIR=x86_64 > +TARGET_SYSTBL_ABI=common,64 > +TARGET_SYSTBL=syscall_64.tbl > +TARGET_SUPPORTS_MTTCG=y > +TARGET_XML_FILES= gdb-xml/i386-64bit.xml > diff --git a/default-configs/targets/xtensa-linux-user.mak b/default-configs/targets/xtensa-linux-user.mak > new file mode 100644 > index 0000000000..63d9cff69f > --- /dev/null > +++ b/default-configs/targets/xtensa-linux-user.mak > @@ -0,0 +1,7 @@ > +TARGET_XTENSA=y > +TARGET_BASE_ARCH=xtensa > +TARGET_ABI_DIR=xtensa > +TARGET_SYSTBL_ABI=common > +TARGET_SYSTBL=syscall.tbl > +TARGET_ALIGNED_ONLY=y > +TARGET_HAS_BFLT=y > diff --git a/default-configs/targets/xtensa-softmmu.mak b/default-configs/targets/xtensa-softmmu.mak > new file mode 100644 > index 0000000000..2166f97738 > --- /dev/null > +++ b/default-configs/targets/xtensa-softmmu.mak > @@ -0,0 +1,7 @@ > +TARGET_XTENSA=y > +TARGET_BASE_ARCH=xtensa > +TARGET_ABI_DIR=xtensa > +TARGET_SYSTBL_ABI=common > +TARGET_SYSTBL=syscall.tbl > +TARGET_ALIGNED_ONLY=y > +TARGET_SUPPORTS_MTTCG=y > diff --git a/default-configs/targets/xtensaeb-linux-user.mak b/default-configs/targets/xtensaeb-linux-user.mak > new file mode 100644 > index 0000000000..e66b7dd0e3 > --- /dev/null > +++ b/default-configs/targets/xtensaeb-linux-user.mak > @@ -0,0 +1,8 @@ > +TARGET_XTENSA=y > +TARGET_BASE_ARCH=xtensa > +TARGET_ABI_DIR=xtensa > +TARGET_SYSTBL_ABI=common > +TARGET_SYSTBL=syscall.tbl > +TARGET_ALIGNED_ONLY=y > +TARGET_WORDS_BIGENDIAN=y > +TARGET_HAS_BFLT=y > diff --git a/default-configs/targets/xtensaeb-softmmu.mak b/default-configs/targets/xtensaeb-softmmu.mak > new file mode 100644 > index 0000000000..2372d22492 > --- /dev/null > +++ b/default-configs/targets/xtensaeb-softmmu.mak > @@ -0,0 +1,8 @@ > +TARGET_XTENSA=y > +TARGET_BASE_ARCH=xtensa > +TARGET_ABI_DIR=xtensa > +TARGET_SYSTBL_ABI=common > +TARGET_SYSTBL=syscall.tbl > +TARGET_ALIGNED_ONLY=y > +TARGET_WORDS_BIGENDIAN=y > +TARGET_SUPPORTS_MTTCG=y > diff --git a/meson.build b/meson.build > index 6863b9febf..5ddaf16b88 100644 > --- a/meson.build > +++ b/meson.build > @@ -722,13 +722,25 @@ kconfig_external_symbols = [ > ] > ignored = ['TARGET_XML_FILES', 'TARGET_ABI_DIR', 'TARGET_DIRS'] > > +default_targets = 'CONFIG_DEFAULT_TARGETS' in config_host > +actual_target_dirs = [] > foreach target : target_dirs > config_target = { 'TARGET_NAME': target.split('-')[0] } > if target.endswith('linux-user') > - assert(targetos == 'linux') > + if targetos != 'linux' > + if default_targets > + continue > + endif > + error('Target @0@ is only available on a Linux host'.format(target)) > + endif > config_target += { 'CONFIG_LINUX_USER': 'y' } > elif target.endswith('bsd-user') > - assert('CONFIG_BSD' in config_host) > + if not 'CONFIG_BSD' in config_host > + if default_targets > + continue > + endif > + error('Target @0@ is only available on a BSD host'.format(target)) > + endif > config_target += { 'CONFIG_BSD_USER': 'y' } > elif target.endswith('softmmu') > config_target += { 'CONFIG_SOFTMMU': 'y' } > @@ -752,8 +764,14 @@ foreach target : target_dirs > endif > have_accel = true > endforeach > - assert(have_accel) > + if not have_accel > + if default_targets > + continue > + endif > + error('No accelerator available for target @0@'.format(target)) > + endif > > + actual_target_dirs += target > config_target += keyval.load('default-configs/targets' / target + '.mak') > > foreach k, v: disassemblers > @@ -815,6 +833,7 @@ foreach target : target_dirs > endif > config_target_mak += {target: config_target} > endforeach > +target_dirs = actual_target_dirs > > # This configuration is used to build files that are shared by > # multiple binaries, and then extracted out of the "common" > @@ -1600,7 +1619,7 @@ if config_host.has_key('CONFIG_MODULES') > endif > summary_info += {'host CPU': cpu} > summary_info += {'host endianness': build_machine.endian()} > -summary_info += {'target list': config_host['TARGET_DIRS']} > +summary_info += {'target list': ' '.join(target_dirs)} > summary_info += {'gprof enabled': config_host.has_key('CONFIG_GPROF')} > summary_info += {'sparse enabled': meson.get_compiler('c').cmd_array().contains('cgcc')} > summary_info += {'strip binaries': get_option('strip')} > -- > 2.26.2 > > > -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo <div dir="ltr">Can these be generated from meson directly?<div>as makefile finally need to be removed<br><br>On Sun, Sep 20, 2020 at 9:09 PM Paolo Bonzini <<a href="mailto:pbonzini@redhat.com">pbonzini@redhat.com</a>> wrote:<br>><br>> The config-target.mak files are small constant, we can therefore just<br>> write them down explicitly.<br>><br>> This removes about 10% of the configure script, including the<br>> whole logic to detect which accelerators are supported by each<br>> target.<br>><br>> Signed-off-by: Paolo Bonzini <<a href="mailto:pbonzini@redhat.com">pbonzini@redhat.com</a>><br>> ---<br>> configure | 407 +-----------------<br>> .../targets/aarch64-linux-user.mak | 5 +<br>> default-configs/targets/aarch64-softmmu.mak | 5 +<br>> .../targets/aarch64_be-linux-user.mak | 6 +<br>> default-configs/targets/alpha-linux-user.mak | 6 +<br>> default-configs/targets/alpha-softmmu.mak | 7 +<br>> default-configs/targets/arm-linux-user.mak | 7 +<br>> default-configs/targets/arm-softmmu.mak | 7 +<br>> default-configs/targets/armeb-linux-user.mak | 8 +<br>> default-configs/targets/avr-softmmu.mak | 4 +<br>> default-configs/targets/cris-linux-user.mak | 3 +<br>> default-configs/targets/cris-softmmu.mak | 3 +<br>> default-configs/targets/hppa-linux-user.mak | 7 +<br>> default-configs/targets/hppa-softmmu.mak | 8 +<br>> default-configs/targets/i386-bsd-user.mak | 6 +<br>> default-configs/targets/i386-linux-user.mak | 6 +<br>> default-configs/targets/i386-softmmu.mak | 7 +<br>> default-configs/targets/lm32-softmmu.mak | 4 +<br>> default-configs/targets/m68k-linux-user.mak | 8 +<br>> default-configs/targets/m68k-softmmu.mak | 7 +<br>> .../targets/microblaze-linux-user.mak | 7 +<br>> .../targets/microblaze-softmmu.mak | 7 +<br>> .../targets/microblazeel-linux-user.mak | 6 +<br>> .../targets/microblazeel-softmmu.mak | 6 +<br>> default-configs/targets/mips-linux-user.mak | 8 +<br>> default-configs/targets/mips-softmmu.mak | 9 +<br>> default-configs/targets/mips64-linux-user.mak | 8 +<br>> default-configs/targets/mips64-softmmu.mak | 8 +<br>> .../targets/mips64el-linux-user.mak | 7 +<br>> default-configs/targets/mips64el-softmmu.mak | 7 +<br>> default-configs/targets/mipsel-linux-user.mak | 7 +<br>> default-configs/targets/mipsel-softmmu.mak | 8 +<br>> .../targets/mipsn32-linux-user.mak | 9 +<br>> .../targets/mipsn32el-linux-user.mak | 8 +<br>> default-configs/targets/moxie-softmmu.mak | 4 +<br>> default-configs/targets/nios2-linux-user.mak | 3 +<br>> default-configs/targets/nios2-softmmu.mak | 3 +<br>> default-configs/targets/or1k-linux-user.mak | 4 +<br>> default-configs/targets/or1k-softmmu.mak | 4 +<br>> default-configs/targets/ppc-linux-user.mak | 7 +<br>> default-configs/targets/ppc-softmmu.mak | 7 +<br>> default-configs/targets/ppc64-linux-user.mak | 7 +<br>> default-configs/targets/ppc64-softmmu.mak | 8 +<br>> .../targets/ppc64abi32-linux-user.mak | 8 +<br>> .../targets/ppc64le-linux-user.mak | 6 +<br>> .../targets/riscv32-linux-user.mak | 4 +<br>> default-configs/targets/riscv32-softmmu.mak | 5 +<br>> .../targets/riscv64-linux-user.mak | 4 +<br>> default-configs/targets/riscv64-softmmu.mak | 5 +<br>> default-configs/targets/rx-softmmu.mak | 4 +<br>> default-configs/targets/s390x-linux-user.mak | 7 +<br>> default-configs/targets/s390x-softmmu.mak | 8 +<br>> default-configs/targets/sh4-linux-user.mak | 7 +<br>> default-configs/targets/sh4-softmmu.mak | 6 +<br>> default-configs/targets/sh4eb-linux-user.mak | 8 +<br>> default-configs/targets/sh4eb-softmmu.mak | 7 +<br>> default-configs/targets/sparc-bsd-user.mak | 7 +<br>> default-configs/targets/sparc-linux-user.mak | 7 +<br>> default-configs/targets/sparc-softmmu.mak | 7 +<br>> .../targets/sparc32plus-linux-user.mak | 8 +<br>> default-configs/targets/sparc64-bsd-user.mak | 7 +<br>> .../targets/sparc64-linux-user.mak | 7 +<br>> default-configs/targets/sparc64-softmmu.mak | 7 +<br>> default-configs/targets/tilegx-linux-user.mak | 3 +<br>> default-configs/targets/tricore-softmmu.mak | 3 +<br>> default-configs/targets/unicore32-softmmu.mak | 3 +<br>> default-configs/targets/x86_64-bsd-user.mak | 6 +<br>> default-configs/targets/x86_64-linux-user.mak | 6 +<br>> default-configs/targets/x86_64-softmmu.mak | 7 +<br>> default-configs/targets/xtensa-linux-user.mak | 7 +<br>> default-configs/targets/xtensa-softmmu.mak | 7 +<br>> .../targets/xtensaeb-linux-user.mak | 8 +<br>> default-configs/targets/xtensaeb-softmmu.mak | 8 +<br>> meson.build | 27 +-<br>> 74 files changed, 482 insertions(+), 405 deletions(-)<br>> create mode 100644 default-configs/targets/aarch64-linux-user.mak<br>> create mode 100644 default-configs/targets/aarch64-softmmu.mak<br>> create mode 100644 default-configs/targets/aarch64_be-linux-user.mak<br>> create mode 100644 default-configs/targets/alpha-linux-user.mak<br>> create mode 100644 default-configs/targets/alpha-softmmu.mak<br>> create mode 100644 default-configs/targets/arm-linux-user.mak<br>> create mode 100644 default-configs/targets/arm-softmmu.mak<br>> create mode 100644 default-configs/targets/armeb-linux-user.mak<br>> create mode 100644 default-configs/targets/avr-softmmu.mak<br>> create mode 100644 default-configs/targets/cris-linux-user.mak<br>> create mode 100644 default-configs/targets/cris-softmmu.mak<br>> create mode 100644 default-configs/targets/hppa-linux-user.mak<br>> create mode 100644 default-configs/targets/hppa-softmmu.mak<br>> create mode 100644 default-configs/targets/i386-bsd-user.mak<br>> create mode 100644 default-configs/targets/i386-linux-user.mak<br>> create mode 100644 default-configs/targets/i386-softmmu.mak<br>> create mode 100644 default-configs/targets/lm32-softmmu.mak<br>> create mode 100644 default-configs/targets/m68k-linux-user.mak<br>> create mode 100644 default-configs/targets/m68k-softmmu.mak<br>> create mode 100644 default-configs/targets/microblaze-linux-user.mak<br>> create mode 100644 default-configs/targets/microblaze-softmmu.mak<br>> create mode 100644 default-configs/targets/microblazeel-linux-user.mak<br>> create mode 100644 default-configs/targets/microblazeel-softmmu.mak<br>> create mode 100644 default-configs/targets/mips-linux-user.mak<br>> create mode 100644 default-configs/targets/mips-softmmu.mak<br>> create mode 100644 default-configs/targets/mips64-linux-user.mak<br>> create mode 100644 default-configs/targets/mips64-softmmu.mak<br>> create mode 100644 default-configs/targets/mips64el-linux-user.mak<br>> create mode 100644 default-configs/targets/mips64el-softmmu.mak<br>> create mode 100644 default-configs/targets/mipsel-linux-user.mak<br>> create mode 100644 default-configs/targets/mipsel-softmmu.mak<br>> create mode 100644 default-configs/targets/mipsn32-linux-user.mak<br>> create mode 100644 default-configs/targets/mipsn32el-linux-user.mak<br>> create mode 100644 default-configs/targets/moxie-softmmu.mak<br>> create mode 100644 default-configs/targets/nios2-linux-user.mak<br>> create mode 100644 default-configs/targets/nios2-softmmu.mak<br>> create mode 100644 default-configs/targets/or1k-linux-user.mak<br>> create mode 100644 default-configs/targets/or1k-softmmu.mak<br>> create mode 100644 default-configs/targets/ppc-linux-user.mak<br>> create mode 100644 default-configs/targets/ppc-softmmu.mak<br>> create mode 100644 default-configs/targets/ppc64-linux-user.mak<br>> create mode 100644 default-configs/targets/ppc64-softmmu.mak<br>> create mode 100644 default-configs/targets/ppc64abi32-linux-user.mak<br>> create mode 100644 default-configs/targets/ppc64le-linux-user.mak<br>> create mode 100644 default-configs/targets/riscv32-linux-user.mak<br>> create mode 100644 default-configs/targets/riscv32-softmmu.mak<br>> create mode 100644 default-configs/targets/riscv64-linux-user.mak<br>> create mode 100644 default-configs/targets/riscv64-softmmu.mak<br>> create mode 100644 default-configs/targets/rx-softmmu.mak<br>> create mode 100644 default-configs/targets/s390x-linux-user.mak<br>> create mode 100644 default-configs/targets/s390x-softmmu.mak<br>> create mode 100644 default-configs/targets/sh4-linux-user.mak<br>> create mode 100644 default-configs/targets/sh4-softmmu.mak<br>> create mode 100644 default-configs/targets/sh4eb-linux-user.mak<br>> create mode 100644 default-configs/targets/sh4eb-softmmu.mak<br>> create mode 100644 default-configs/targets/sparc-bsd-user.mak<br>> create mode 100644 default-configs/targets/sparc-linux-user.mak<br>> create mode 100644 default-configs/targets/sparc-softmmu.mak<br>> create mode 100644 default-configs/targets/sparc32plus-linux-user.mak<br>> create mode 100644 default-configs/targets/sparc64-bsd-user.mak<br>> create mode 100644 default-configs/targets/sparc64-linux-user.mak<br>> create mode 100644 default-configs/targets/sparc64-softmmu.mak<br>> create mode 100644 default-configs/targets/tilegx-linux-user.mak<br>> create mode 100644 default-configs/targets/tricore-softmmu.mak<br>> create mode 100644 default-configs/targets/unicore32-softmmu.mak<br>> create mode 100644 default-configs/targets/x86_64-bsd-user.mak<br>> create mode 100644 default-configs/targets/x86_64-linux-user.mak<br>> create mode 100644 default-configs/targets/x86_64-softmmu.mak<br>> create mode 100644 default-configs/targets/xtensa-linux-user.mak<br>> create mode 100644 default-configs/targets/xtensa-softmmu.mak<br>> create mode 100644 default-configs/targets/xtensaeb-linux-user.mak<br>> create mode 100644 default-configs/targets/xtensaeb-softmmu.mak<br>><br>> diff --git a/configure b/configure<br>> index e64327e0f8..f6275d95fc 100755<br>> --- a/configure<br>> +++ b/configure<br>> @@ -220,99 +220,6 @@ glob() {<br>> eval test -z '"${1#'"$2"'}"'<br>> }<br>><br>> -supported_hax_target() {<br>> - test "$hax" = "enabled" || return 1<br>> - glob "$1" "*-softmmu" || return 1<br>> - case "${1%-softmmu}" in<br>> - i386|x86_64)<br>> - return 0<br>> - ;;<br>> - esac<br>> - return 1<br>> -}<br>> -<br>> -supported_kvm_target() {<br>> - test "$kvm" = "enabled" || return 1<br>> - glob "$1" "*-softmmu" || return 1<br>> - case "${1%-softmmu}:$cpu" in<br>> - aarch64:aarch64 | \<br>> - i386:i386 | i386:x86_64 | i386:x32 | \<br>> - x86_64:i386 | x86_64:x86_64 | x86_64:x32 | \<br>> - mips:mips | mipsel:mips | mips64:mips | mips64el:mips | \<br>> - ppc:ppc | ppc64:ppc | ppc:ppc64 | ppc64:ppc64 | ppc64:ppc64le | \<br>> - s390x:s390x)<br>> - return 0<br>> - ;;<br>> - esac<br>> - return 1<br>> -}<br>> -<br>> -supported_xen_target() {<br>> - test "$xen" = "enabled" || return 1<br>> - glob "$1" "*-softmmu" || return 1<br>> - # Only i386 and x86_64 provide the xenpv machine.<br>> - case "${1%-softmmu}" in<br>> - i386|x86_64)<br>> - return 0<br>> - ;;<br>> - esac<br>> - return 1<br>> -}<br>> -<br>> -supported_hvf_target() {<br>> - test "$hvf" = "enabled" || return 1<br>> - glob "$1" "*-softmmu" || return 1<br>> - case "${1%-softmmu}" in<br>> - x86_64)<br>> - return 0<br>> - ;;<br>> - esac<br>> - return 1<br>> -}<br>> -<br>> -supported_whpx_target() {<br>> - test "$whpx" = "enabled" || return 1<br>> - glob "$1" "*-softmmu" || return 1<br>> - case "${1%-softmmu}" in<br>> - i386|x86_64)<br>> - return 0<br>> - ;;<br>> - esac<br>> - return 1<br>> -}<br>> -<br>> -supported_target() {<br>> - case "$1" in<br>> - *-softmmu)<br>> - ;;<br>> - *-linux-user)<br>> - if test "$linux" != "yes"; then<br>> - print_error "Target '$target' is only available on a Linux host"<br>> - return 1<br>> - fi<br>> - ;;<br>> - *-bsd-user)<br>> - if test "$bsd" != "yes"; then<br>> - print_error "Target '$target' is only available on a BSD host"<br>> - return 1<br>> - fi<br>> - ;;<br>> - *)<br>> - print_error "Invalid target name '$target'"<br>> - return 1<br>> - ;;<br>> - esac<br>> - test "$tcg" = "enabled" && return 0<br>> - supported_kvm_target "$1" && return 0<br>> - supported_xen_target "$1" && return 0<br>> - supported_hax_target "$1" && return 0<br>> - supported_hvf_target "$1" && return 0<br>> - supported_whpx_target "$1" && return 0<br>> - print_error "TCG disabled, but hardware accelerator not available for '$target'"<br>> - return 1<br>> -}<br>> -<br>> -<br>> ld_has() {<br>> $ld --help 2>/dev/null | grep ".$1" >/dev/null 2>&1<br>> }<br>> @@ -2292,12 +2199,13 @@ if test "$solaris" = "yes" ; then<br>> fi<br>><br>> if test -z "${target_list+xxx}" ; then<br>> + default_targets=yes<br>> for target in $default_target_list; do<br>> - supported_target $target 2>/dev/null && \<br>> - target_list="$target_list $target"<br>> + target_list="$target_list $target"<br>> done<br>> target_list="${target_list# }"<br>> else<br>> + default_targets=no<br>> target_list=$(echo "$target_list" | sed -e 's/,/ /g')<br>> for target in $target_list; do<br>> # Check that we recognised the target name; this allows a more<br>> @@ -2309,7 +2217,6 @@ else<br>> error_exit "Unknown target name '$target'"<br>> ;;<br>> esac<br>> - supported_target $target || exit 1<br>> done<br>> fi<br>><br>> @@ -2653,27 +2560,6 @@ if test "$seccomp" != "no" ; then<br>> fi<br>> fi<br>><br>> -##########################################<br>> -# simple accelerator probes<br>> -<br>> -if test "$kvm" = "auto" ; then<br>> - if test "$linux" = yes ; then<br>> - kvm=enabled<br>> - else<br>> - if test "$kvm" = "enabled" ; then<br>> - feature_not_found "kvm" "KVM is only available on Linux"<br>> - fi<br>> - fi<br>> -fi<br>> -<br>> -if test "$hax" = "auto" ; then<br>> - if test "$mingw" = yes || test "$darwin" = yes || test "$targetos" = NetBSD; then<br>> - hax=enabled<br>> - else<br>> - hax=disabled<br>> - fi<br>> -fi<br>> -<br>> ##########################################<br>> # xen probe<br>><br>> @@ -2992,22 +2878,6 @@ if test "$xen_pci_passthrough" != "disabled"; then<br>> fi<br>> fi<br>><br>> -##########################################<br>> -# Windows Hypervisor Platform accelerator (WHPX) check<br>> -if test "$whpx" = "enabled" && test "$ARCH" != "x86_64"; then<br>> - error_exit "WHPX requires 64-bit host"<br>> -fi<br>> -if test "$whpx" != "disabled" && test "$ARCH" = "x86_64"; then<br>> - if check_include "WinHvPlatform.h" && check_include "WinHvEmulation.h"; then<br>> - whpx="yes"<br>> - else<br>> - if test "$whpx" = "auto"; then<br>> - feature_not_found "WinHvPlatform" "WinHvEmulation is not installed"<br>> - fi<br>> - whpx="disabled"<br>> - fi<br>> -fi<br>> -<br>> ##########################################<br>> # gettext probe<br>> if test "$gettext" != "false" ; then<br>> @@ -7375,281 +7245,13 @@ fi<br>><br>> for target in $target_list; do<br>> target_dir="$target"<br>> -config_target_mak=$target_dir/config-target.mak<br>> target_name=$(echo $target | cut -d '-' -f 1)<br>> -target_aligned_only="no"<br>> -case "$target_name" in<br>> - alpha|hppa|mips64el|mips64|mipsel|mips|mipsn32|mipsn32el|sh4|sh4eb|sparc|sparc64|sparc32plus|xtensa|xtensaeb)<br>> - target_aligned_only="yes"<br>> - ;;<br>> -esac<br>> -target_bigendian="no"<br>> -case "$target_name" in<br>> - armeb|aarch64_be|hppa|lm32|m68k|microblaze|mips|mipsn32|mips64|moxie|or1k|ppc|ppc64|ppc64abi32|s390x|sh4eb|sparc|sparc64|sparc32plus|xtensaeb)<br>> - target_bigendian="yes"<br>> - ;;<br>> -esac<br>> -target_softmmu="no"<br>> -target_user_only="no"<br>> -target_linux_user="no"<br>> -target_bsd_user="no"<br>> -case "$target" in<br>> - ${target_name}-softmmu)<br>> - target_softmmu="yes"<br>> - ;;<br>> - ${target_name}-linux-user)<br>> - target_user_only="yes"<br>> - target_linux_user="yes"<br>> - ;;<br>> - ${target_name}-bsd-user)<br>> - target_user_only="yes"<br>> - target_bsd_user="yes"<br>> - ;;<br>> - *)<br>> - error_exit "Target '$target' not recognised"<br>> - exit 1<br>> - ;;<br>> -esac<br>> -<br>> mkdir -p $target_dir<br>> -echo "# Automatically generated by configure - do not modify" > $config_target_mak<br>> -<br>> -bflt="no"<br>> -mttcg="no"<br>> -interp_prefix1=$(echo "$interp_prefix" | sed "s/%M/$target_name/g")<br>> -gdb_xml_files=""<br>> -<br>> -TARGET_ARCH="$target_name"<br>> -TARGET_BASE_ARCH=""<br>> -TARGET_ABI_DIR=""<br>> -TARGET_SYSTBL_ABI=""<br>> -TARGET_SYSTBL=""<br>> -<br>> -case "$target_name" in<br>> - i386)<br>> - mttcg="yes"<br>> - gdb_xml_files="i386-32bit.xml"<br>> - TARGET_SYSTBL_ABI=i386<br>> - TARGET_SYSTBL=syscall_32.tbl<br>> - ;;<br>> - x86_64)<br>> - TARGET_BASE_ARCH=i386<br>> - TARGET_SYSTBL_ABI=common,64<br>> - TARGET_SYSTBL=syscall_64.tbl<br>> - mttcg="yes"<br>> - gdb_xml_files="i386-64bit.xml"<br>> - ;;<br>> - alpha)<br>> - mttcg="yes"<br>> - TARGET_SYSTBL_ABI=common<br>> - ;;<br>> - arm|armeb)<br>> - TARGET_ARCH=arm<br>> - TARGET_SYSTBL_ABI=common,oabi<br>> - bflt="yes"<br>> - mttcg="yes"<br>> - gdb_xml_files="arm-core.xml arm-vfp.xml arm-vfp3.xml arm-neon.xml arm-m-profile.xml"<br>> - ;;<br>> - aarch64|aarch64_be)<br>> - TARGET_ARCH=aarch64<br>> - TARGET_BASE_ARCH=arm<br>> - bflt="yes"<br>> - mttcg="yes"<br>> - gdb_xml_files="aarch64-core.xml aarch64-fpu.xml arm-core.xml arm-vfp.xml arm-vfp3.xml arm-neon.xml arm-m-profile.xml"<br>> - ;;<br>> - avr)<br>> - gdb_xml_files="avr-cpu.xml"<br>> - target_compiler=$cross_cc_avr<br>> - ;;<br>> - cris)<br>> - ;;<br>> - hppa)<br>> - mttcg="yes"<br>> - TARGET_SYSTBL_ABI=common,32<br>> - ;;<br>> - lm32)<br>> - ;;<br>> - m68k)<br>> - bflt="yes"<br>> - gdb_xml_files="cf-core.xml cf-fp.xml m68k-core.xml m68k-fp.xml"<br>> - TARGET_SYSTBL_ABI=common<br>> - ;;<br>> - microblaze|microblazeel)<br>> - TARGET_ARCH=microblaze<br>> - TARGET_SYSTBL_ABI=common<br>> - mttcg="yes"<br>> - bflt="yes"<br>> - ;;<br>> - mips|mipsel)<br>> - mttcg="yes"<br>> - TARGET_ARCH=mips<br>> - echo "TARGET_ABI_MIPSO32=y" >> $config_target_mak<br>> - TARGET_SYSTBL_ABI=o32<br>> - TARGET_SYSTBL=syscall_o32.tbl<br>> - ;;<br>> - mipsn32|mipsn32el)<br>> - mttcg="yes"<br>> - TARGET_ARCH=mips64<br>> - TARGET_BASE_ARCH=mips<br>> - echo "TARGET_ABI_MIPSN32=y" >> $config_target_mak<br>> - echo "TARGET_ABI32=y" >> $config_target_mak<br>> - TARGET_SYSTBL_ABI=n32<br>> - TARGET_SYSTBL=syscall_n32.tbl<br>> - ;;<br>> - mips64|mips64el)<br>> - mttcg="no"<br>> - TARGET_ARCH=mips64<br>> - TARGET_BASE_ARCH=mips<br>> - echo "TARGET_ABI_MIPSN64=y" >> $config_target_mak<br>> - TARGET_SYSTBL_ABI=n64<br>> - TARGET_SYSTBL=syscall_n64.tbl<br>> - ;;<br>> - moxie)<br>> - ;;<br>> - nios2)<br>> - ;;<br>> - or1k)<br>> - TARGET_ARCH=openrisc<br>> - TARGET_BASE_ARCH=openrisc<br>> - ;;<br>> - ppc)<br>> - gdb_xml_files="power-core.xml power-fpu.xml power-altivec.xml power-spe.xml"<br>> - TARGET_SYSTBL_ABI=common,nospu,32<br>> - ;;<br>> - ppc64)<br>> - TARGET_BASE_ARCH=ppc<br>> - TARGET_ABI_DIR=ppc<br>> - TARGET_SYSTBL_ABI=common,nospu,64<br>> - mttcg=yes<br>> - gdb_xml_files="power64-core.xml power-fpu.xml power-altivec.xml power-spe.xml power-vsx.xml"<br>> - ;;<br>> - ppc64le)<br>> - TARGET_ARCH=ppc64<br>> - TARGET_BASE_ARCH=ppc<br>> - TARGET_ABI_DIR=ppc<br>> - TARGET_SYSTBL_ABI=common,nospu,64<br>> - mttcg=yes<br>> - gdb_xml_files="power64-core.xml power-fpu.xml power-altivec.xml power-spe.xml power-vsx.xml"<br>> - ;;<br>> - ppc64abi32)<br>> - TARGET_ARCH=ppc64<br>> - TARGET_BASE_ARCH=ppc<br>> - TARGET_ABI_DIR=ppc<br>> - TARGET_SYSTBL_ABI=common,nospu,32<br>> - echo "TARGET_ABI32=y" >> $config_target_mak<br>> - gdb_xml_files="power64-core.xml power-fpu.xml power-altivec.xml power-spe.xml power-vsx.xml"<br>> - deprecated_features="ppc64abi32 ${deprecated_features}"<br>> - ;;<br>> - riscv32)<br>> - TARGET_BASE_ARCH=riscv<br>> - TARGET_ABI_DIR=riscv<br>> - mttcg=yes<br>> - gdb_xml_files="riscv-32bit-cpu.xml riscv-32bit-fpu.xml riscv-64bit-fpu.xml riscv-32bit-csr.xml riscv-32bit-virtual.xml"<br>> - ;;<br>> - riscv64)<br>> - TARGET_BASE_ARCH=riscv<br>> - TARGET_ABI_DIR=riscv<br>> - mttcg=yes<br>> - gdb_xml_files="riscv-64bit-cpu.xml riscv-32bit-fpu.xml riscv-64bit-fpu.xml riscv-64bit-csr.xml riscv-64bit-virtual.xml"<br>> - ;;<br>> - rx)<br>> - TARGET_ARCH=rx<br>> - bflt="yes"<br>> - target_compiler=$cross_cc_rx<br>> - gdb_xml_files="rx-core.xml"<br>> - ;;<br>> - sh4|sh4eb)<br>> - TARGET_ARCH=sh4<br>> - TARGET_SYSTBL_ABI=common<br>> - bflt="yes"<br>> - ;;<br>> - sparc)<br>> - TARGET_SYSTBL_ABI=common,32<br>> - ;;<br>> - sparc64)<br>> - TARGET_BASE_ARCH=sparc<br>> - TARGET_SYSTBL_ABI=common,64<br>> - ;;<br>> - sparc32plus)<br>> - TARGET_ARCH=sparc64<br>> - TARGET_BASE_ARCH=sparc<br>> - TARGET_ABI_DIR=sparc<br>> - TARGET_SYSTBL_ABI=common,32<br>> - echo "TARGET_ABI32=y" >> $config_target_mak<br>> - ;;<br>> - s390x)<br>> - TARGET_SYSTBL_ABI=common,64<br>> - mttcg=yes<br>> - gdb_xml_files="s390x-core64.xml s390-acr.xml s390-fpr.xml s390-vx.xml s390-cr.xml s390-virt.xml s390-gs.xml"<br>> - ;;<br>> - tilegx)<br>> - ;;<br>> - tricore)<br>> - ;;<br>> - unicore32)<br>> - ;;<br>> - xtensa|xtensaeb)<br>> - TARGET_ARCH=xtensa<br>> - TARGET_SYSTBL_ABI=common<br>> - bflt="yes"<br>> - mttcg="yes"<br>> - ;;<br>> - *)<br>> - error_exit "Unsupported target CPU"<br>> - ;;<br>> -esac<br>> -# TARGET_BASE_ARCH needs to be defined after TARGET_ARCH<br>> -if [ "$TARGET_BASE_ARCH" = "" ]; then<br>> - TARGET_BASE_ARCH=$TARGET_ARCH<br>> -fi<br>> -if [ "$TARGET_SYSTBL_ABI" != "" ] && [ "$TARGET_SYSTBL" = "" ]; then<br>> - TARGET_SYSTBL=syscall.tbl<br>> -fi<br>> -<br>> -upper() {<br>> - echo "$@"| LC_ALL=C tr '[a-z]' '[A-Z]'<br>> -}<br>> -<br>> -target_arch_name="$(upper $TARGET_ARCH)"<br>> -echo "TARGET_$target_arch_name=y" >> $config_target_mak<br>> -echo "TARGET_BASE_ARCH=$TARGET_BASE_ARCH" >> $config_target_mak<br>> -if [ "$TARGET_ABI_DIR" = "" ]; then<br>> - TARGET_ABI_DIR=$TARGET_ARCH<br>> -fi<br>> -echo "TARGET_ABI_DIR=$TARGET_ABI_DIR" >> $config_target_mak<br>> -if [ "$TARGET_SYSTBL_ABI" != "" ]; then<br>> - echo "TARGET_SYSTBL_ABI=$TARGET_SYSTBL_ABI" >> $config_target_mak<br>> - echo "TARGET_SYSTBL=$TARGET_SYSTBL" >> $config_target_mak<br>> -fi<br>> -<br>> -if test "$target_aligned_only" = "yes" ; then<br>> - echo "TARGET_ALIGNED_ONLY=y" >> $config_target_mak<br>> -fi<br>> -if test "$target_bigendian" = "yes" ; then<br>> - echo "TARGET_WORDS_BIGENDIAN=y" >> $config_target_mak<br>> -fi<br>> -if test "$target_softmmu" = "yes" ; then<br>> - if test "$mttcg" = "yes" ; then<br>> - echo "TARGET_SUPPORTS_MTTCG=y" >> $config_target_mak<br>> - fi<br>> -fi<br>> if test "$target_user_only" = "yes" ; then<br>> symlink "../qemu-$target_name" "$target_dir/qemu-$target_name"<br>> else<br>> symlink "../qemu-system-$target_name" "$target_dir/qemu-system-$target_name"<br>> fi<br>> -list=""<br>> -if test ! -z "$gdb_xml_files" ; then<br>> - for x in $gdb_xml_files; do<br>> - list="$list gdb-xml/$x"<br>> - done<br>> - echo "TARGET_XML_FILES=$list" >> $config_target_mak<br>> -fi<br>> -<br>> -if test "$target_user_only" = "yes" && test "$bflt" = "yes"; then<br>> - echo "TARGET_HAS_BFLT=y" >> $config_target_mak<br>> -fi<br>> -<br>> done # for target in $targets<br>><br>> if [ "$fdt" = "git" ]; then<br>> @@ -7659,6 +7261,9 @@ if [ "$capstone" = "git" -o "$capstone" = "internal" ]; then<br>> subdirs="$subdirs capstone"<br>> fi<br>> echo "CONFIG_QEMU_INTERP_PREFIX=$interp_prefix" | sed 's/%M/@0@/' >> $config_host_mak<br>> +if test "$default_targets" = "yes"; then<br>> + echo "CONFIG_DEFAULT_TARGETS=y" >> $config_host_mak<br>> +fi<br>> echo "SUBDIRS=$subdirs" >> $config_host_mak<br>> if test -n "$LIBCAPSTONE"; then<br>> echo "LIBCAPSTONE=$LIBCAPSTONE" >> $config_host_mak<br>> diff --git a/default-configs/targets/aarch64-linux-user.mak b/default-configs/targets/aarch64-linux-user.mak<br>> new file mode 100644<br>> index 0000000000..4495e86509<br>> --- /dev/null<br>> +++ b/default-configs/targets/aarch64-linux-user.mak<br>> @@ -0,0 +1,5 @@<br>> +TARGET_AARCH64=y<br>> +TARGET_BASE_ARCH=arm<br>> +TARGET_ABI_DIR=aarch64<br>> +TARGET_XML_FILES= gdb-xml/aarch64-core.xml gdb-xml/aarch64-fpu.xml gdb-xml/arm-core.xml gdb-xml/arm-vfp.xml gdb-xml/arm-vfp3.xml gdb-xml/arm-neon.xml gdb-xml/arm-m-profile.xml<br>> +TARGET_HAS_BFLT=y<br>> diff --git a/default-configs/targets/aarch64-softmmu.mak b/default-configs/targets/aarch64-softmmu.mak<br>> new file mode 100644<br>> index 0000000000..53f83ea81f<br>> --- /dev/null<br>> +++ b/default-configs/targets/aarch64-softmmu.mak<br>> @@ -0,0 +1,5 @@<br>> +TARGET_AARCH64=y<br>> +TARGET_BASE_ARCH=arm<br>> +TARGET_ABI_DIR=aarch64<br>> +TARGET_SUPPORTS_MTTCG=y<br>> +TARGET_XML_FILES= gdb-xml/aarch64-core.xml gdb-xml/aarch64-fpu.xml gdb-xml/arm-core.xml gdb-xml/arm-vfp.xml gdb-xml/arm-vfp3.xml gdb-xml/arm-neon.xml gdb-xml/arm-m-profile.xml<br>> diff --git a/default-configs/targets/aarch64_be-linux-user.mak b/default-configs/targets/aarch64_be-linux-user.mak<br>> new file mode 100644<br>> index 0000000000..da13693d3d<br>> --- /dev/null<br>> +++ b/default-configs/targets/aarch64_be-linux-user.mak<br>> @@ -0,0 +1,6 @@<br>> +TARGET_AARCH64=y<br>> +TARGET_BASE_ARCH=arm<br>> +TARGET_ABI_DIR=aarch64<br>> +TARGET_WORDS_BIGENDIAN=y<br>> +TARGET_XML_FILES= gdb-xml/aarch64-core.xml gdb-xml/aarch64-fpu.xml gdb-xml/arm-core.xml gdb-xml/arm-vfp.xml gdb-xml/arm-vfp3.xml gdb-xml/arm-neon.xml gdb-xml/arm-m-profile.xml<br>> +TARGET_HAS_BFLT=y<br>> diff --git a/default-configs/targets/alpha-linux-user.mak b/default-configs/targets/alpha-linux-user.mak<br>> new file mode 100644<br>> index 0000000000..5ff89f5d48<br>> --- /dev/null<br>> +++ b/default-configs/targets/alpha-linux-user.mak<br>> @@ -0,0 +1,6 @@<br>> +TARGET_ALPHA=y<br>> +TARGET_BASE_ARCH=alpha<br>> +TARGET_ABI_DIR=alpha<br>> +TARGET_SYSTBL_ABI=common<br>> +TARGET_SYSTBL=syscall.tbl<br>> +TARGET_ALIGNED_ONLY=y<br>> diff --git a/default-configs/targets/alpha-softmmu.mak b/default-configs/targets/alpha-softmmu.mak<br>> new file mode 100644<br>> index 0000000000..b78114b028<br>> --- /dev/null<br>> +++ b/default-configs/targets/alpha-softmmu.mak<br>> @@ -0,0 +1,7 @@<br>> +TARGET_ALPHA=y<br>> +TARGET_BASE_ARCH=alpha<br>> +TARGET_ABI_DIR=alpha<br>> +TARGET_SYSTBL_ABI=common<br>> +TARGET_SYSTBL=syscall.tbl<br>> +TARGET_ALIGNED_ONLY=y<br>> +TARGET_SUPPORTS_MTTCG=y<br>> diff --git a/default-configs/targets/arm-linux-user.mak b/default-configs/targets/arm-linux-user.mak<br>> new file mode 100644<br>> index 0000000000..7c54c3c2a2<br>> --- /dev/null<br>> +++ b/default-configs/targets/arm-linux-user.mak<br>> @@ -0,0 +1,7 @@<br>> +TARGET_ARM=y<br>> +TARGET_BASE_ARCH=arm<br>> +TARGET_ABI_DIR=arm<br>> +TARGET_SYSTBL_ABI=common,oabi<br>> +TARGET_SYSTBL=syscall.tbl<br>> +TARGET_XML_FILES= gdb-xml/arm-core.xml gdb-xml/arm-vfp.xml gdb-xml/arm-vfp3.xml gdb-xml/arm-neon.xml gdb-xml/arm-m-profile.xml<br>> +TARGET_HAS_BFLT=y<br>> diff --git a/default-configs/targets/arm-softmmu.mak b/default-configs/targets/arm-softmmu.mak<br>> new file mode 100644<br>> index 0000000000..d40b995f25<br>> --- /dev/null<br>> +++ b/default-configs/targets/arm-softmmu.mak<br>> @@ -0,0 +1,7 @@<br>> +TARGET_ARM=y<br>> +TARGET_BASE_ARCH=arm<br>> +TARGET_ABI_DIR=arm<br>> +TARGET_SYSTBL_ABI=common,oabi<br>> +TARGET_SYSTBL=syscall.tbl<br>> +TARGET_SUPPORTS_MTTCG=y<br>> +TARGET_XML_FILES= gdb-xml/arm-core.xml gdb-xml/arm-vfp.xml gdb-xml/arm-vfp3.xml gdb-xml/arm-neon.xml gdb-xml/arm-m-profile.xml<br>> diff --git a/default-configs/targets/armeb-linux-user.mak b/default-configs/targets/armeb-linux-user.mak<br>> new file mode 100644<br>> index 0000000000..1882aa472d<br>> --- /dev/null<br>> +++ b/default-configs/targets/armeb-linux-user.mak<br>> @@ -0,0 +1,8 @@<br>> +TARGET_ARM=y<br>> +TARGET_BASE_ARCH=arm<br>> +TARGET_ABI_DIR=arm<br>> +TARGET_SYSTBL_ABI=common,oabi<br>> +TARGET_SYSTBL=syscall.tbl<br>> +TARGET_WORDS_BIGENDIAN=y<br>> +TARGET_XML_FILES= gdb-xml/arm-core.xml gdb-xml/arm-vfp.xml gdb-xml/arm-vfp3.xml gdb-xml/arm-neon.xml gdb-xml/arm-m-profile.xml<br>> +TARGET_HAS_BFLT=y<br>> diff --git a/default-configs/targets/avr-softmmu.mak b/default-configs/targets/avr-softmmu.mak<br>> new file mode 100644<br>> index 0000000000..ecd292b2f7<br>> --- /dev/null<br>> +++ b/default-configs/targets/avr-softmmu.mak<br>> @@ -0,0 +1,4 @@<br>> +TARGET_AVR=y<br>> +TARGET_BASE_ARCH=avr<br>> +TARGET_ABI_DIR=avr<br>> +TARGET_XML_FILES= gdb-xml/avr-cpu.xml<br>> diff --git a/default-configs/targets/cris-linux-user.mak b/default-configs/targets/cris-linux-user.mak<br>> new file mode 100644<br>> index 0000000000..ba61135172<br>> --- /dev/null<br>> +++ b/default-configs/targets/cris-linux-user.mak<br>> @@ -0,0 +1,3 @@<br>> +TARGET_CRIS=y<br>> +TARGET_BASE_ARCH=cris<br>> +TARGET_ABI_DIR=cris<br>> diff --git a/default-configs/targets/cris-softmmu.mak b/default-configs/targets/cris-softmmu.mak<br>> new file mode 100644<br>> index 0000000000..ba61135172<br>> --- /dev/null<br>> +++ b/default-configs/targets/cris-softmmu.mak<br>> @@ -0,0 +1,3 @@<br>> +TARGET_CRIS=y<br>> +TARGET_BASE_ARCH=cris<br>> +TARGET_ABI_DIR=cris<br>> diff --git a/default-configs/targets/hppa-linux-user.mak b/default-configs/targets/hppa-linux-user.mak<br>> new file mode 100644<br>> index 0000000000..94222e8fc6<br>> --- /dev/null<br>> +++ b/default-configs/targets/hppa-linux-user.mak<br>> @@ -0,0 +1,7 @@<br>> +TARGET_HPPA=y<br>> +TARGET_BASE_ARCH=hppa<br>> +TARGET_ABI_DIR=hppa<br>> +TARGET_SYSTBL_ABI=common,32<br>> +TARGET_SYSTBL=syscall.tbl<br>> +TARGET_ALIGNED_ONLY=y<br>> +TARGET_WORDS_BIGENDIAN=y<br>> diff --git a/default-configs/targets/hppa-softmmu.mak b/default-configs/targets/hppa-softmmu.mak<br>> new file mode 100644<br>> index 0000000000..617c6483c0<br>> --- /dev/null<br>> +++ b/default-configs/targets/hppa-softmmu.mak<br>> @@ -0,0 +1,8 @@<br>> +TARGET_HPPA=y<br>> +TARGET_BASE_ARCH=hppa<br>> +TARGET_ABI_DIR=hppa<br>> +TARGET_SYSTBL_ABI=common,32<br>> +TARGET_SYSTBL=syscall.tbl<br>> +TARGET_ALIGNED_ONLY=y<br>> +TARGET_WORDS_BIGENDIAN=y<br>> +TARGET_SUPPORTS_MTTCG=y<br>> diff --git a/default-configs/targets/i386-bsd-user.mak b/default-configs/targets/i386-bsd-user.mak<br>> new file mode 100644<br>> index 0000000000..34b52e9ee2<br>> --- /dev/null<br>> +++ b/default-configs/targets/i386-bsd-user.mak<br>> @@ -0,0 +1,6 @@<br>> +TARGET_I386=y<br>> +TARGET_BASE_ARCH=i386<br>> +TARGET_ABI_DIR=i386<br>> +TARGET_SYSTBL_ABI=i386<br>> +TARGET_SYSTBL=syscall_32.tbl<br>> +TARGET_XML_FILES= gdb-xml/i386-32bit.xml<br>> diff --git a/default-configs/targets/i386-linux-user.mak b/default-configs/targets/i386-linux-user.mak<br>> new file mode 100644<br>> index 0000000000..34b52e9ee2<br>> --- /dev/null<br>> +++ b/default-configs/targets/i386-linux-user.mak<br>> @@ -0,0 +1,6 @@<br>> +TARGET_I386=y<br>> +TARGET_BASE_ARCH=i386<br>> +TARGET_ABI_DIR=i386<br>> +TARGET_SYSTBL_ABI=i386<br>> +TARGET_SYSTBL=syscall_32.tbl<br>> +TARGET_XML_FILES= gdb-xml/i386-32bit.xml<br>> diff --git a/default-configs/targets/i386-softmmu.mak b/default-configs/targets/i386-softmmu.mak<br>> new file mode 100644<br>> index 0000000000..be9198bb84<br>> --- /dev/null<br>> +++ b/default-configs/targets/i386-softmmu.mak<br>> @@ -0,0 +1,7 @@<br>> +TARGET_I386=y<br>> +TARGET_BASE_ARCH=i386<br>> +TARGET_ABI_DIR=i386<br>> +TARGET_SYSTBL_ABI=i386<br>> +TARGET_SYSTBL=syscall_32.tbl<br>> +TARGET_SUPPORTS_MTTCG=y<br>> +TARGET_XML_FILES= gdb-xml/i386-32bit.xml<br>> diff --git a/default-configs/targets/lm32-softmmu.mak b/default-configs/targets/lm32-softmmu.mak<br>> new file mode 100644<br>> index 0000000000..c327d27d5f<br>> --- /dev/null<br>> +++ b/default-configs/targets/lm32-softmmu.mak<br>> @@ -0,0 +1,4 @@<br>> +TARGET_LM32=y<br>> +TARGET_BASE_ARCH=lm32<br>> +TARGET_ABI_DIR=lm32<br>> +TARGET_WORDS_BIGENDIAN=y<br>> diff --git a/default-configs/targets/m68k-linux-user.mak b/default-configs/targets/m68k-linux-user.mak<br>> new file mode 100644<br>> index 0000000000..e7c0af5881<br>> --- /dev/null<br>> +++ b/default-configs/targets/m68k-linux-user.mak<br>> @@ -0,0 +1,8 @@<br>> +TARGET_M68K=y<br>> +TARGET_BASE_ARCH=m68k<br>> +TARGET_ABI_DIR=m68k<br>> +TARGET_SYSTBL_ABI=common<br>> +TARGET_SYSTBL=syscall.tbl<br>> +TARGET_WORDS_BIGENDIAN=y<br>> +TARGET_XML_FILES= gdb-xml/cf-core.xml gdb-xml/cf-fp.xml gdb-xml/m68k-core.xml gdb-xml/m68k-fp.xml<br>> +TARGET_HAS_BFLT=y<br>> diff --git a/default-configs/targets/m68k-softmmu.mak b/default-configs/targets/m68k-softmmu.mak<br>> new file mode 100644<br>> index 0000000000..f8bf4fc5ac<br>> --- /dev/null<br>> +++ b/default-configs/targets/m68k-softmmu.mak<br>> @@ -0,0 +1,7 @@<br>> +TARGET_M68K=y<br>> +TARGET_BASE_ARCH=m68k<br>> +TARGET_ABI_DIR=m68k<br>> +TARGET_SYSTBL_ABI=common<br>> +TARGET_SYSTBL=syscall.tbl<br>> +TARGET_WORDS_BIGENDIAN=y<br>> +TARGET_XML_FILES= gdb-xml/cf-core.xml gdb-xml/cf-fp.xml gdb-xml/m68k-core.xml gdb-xml/m68k-fp.xml<br>> diff --git a/default-configs/targets/microblaze-linux-user.mak b/default-configs/targets/microblaze-linux-user.mak<br>> new file mode 100644<br>> index 0000000000..809819424d<br>> --- /dev/null<br>> +++ b/default-configs/targets/microblaze-linux-user.mak<br>> @@ -0,0 +1,7 @@<br>> +TARGET_MICROBLAZE=y<br>> +TARGET_BASE_ARCH=microblaze<br>> +TARGET_ABI_DIR=microblaze<br>> +TARGET_SYSTBL_ABI=common<br>> +TARGET_SYSTBL=syscall.tbl<br>> +TARGET_WORDS_BIGENDIAN=y<br>> +TARGET_HAS_BFLT=y<br>> diff --git a/default-configs/targets/microblaze-softmmu.mak b/default-configs/targets/microblaze-softmmu.mak<br>> new file mode 100644<br>> index 0000000000..1b0a76a61f<br>> --- /dev/null<br>> +++ b/default-configs/targets/microblaze-softmmu.mak<br>> @@ -0,0 +1,7 @@<br>> +TARGET_MICROBLAZE=y<br>> +TARGET_BASE_ARCH=microblaze<br>> +TARGET_ABI_DIR=microblaze<br>> +TARGET_SYSTBL_ABI=common<br>> +TARGET_SYSTBL=syscall.tbl<br>> +TARGET_WORDS_BIGENDIAN=y<br>> +TARGET_SUPPORTS_MTTCG=y<br>> diff --git a/default-configs/targets/microblazeel-linux-user.mak b/default-configs/targets/microblazeel-linux-user.mak<br>> new file mode 100644<br>> index 0000000000..416b42eeb6<br>> --- /dev/null<br>> +++ b/default-configs/targets/microblazeel-linux-user.mak<br>> @@ -0,0 +1,6 @@<br>> +TARGET_MICROBLAZE=y<br>> +TARGET_BASE_ARCH=microblaze<br>> +TARGET_ABI_DIR=microblaze<br>> +TARGET_SYSTBL_ABI=common<br>> +TARGET_SYSTBL=syscall.tbl<br>> +TARGET_HAS_BFLT=y<br>> diff --git a/default-configs/targets/microblazeel-softmmu.mak b/default-configs/targets/microblazeel-softmmu.mak<br>> new file mode 100644<br>> index 0000000000..3a2cf8be0f<br>> --- /dev/null<br>> +++ b/default-configs/targets/microblazeel-softmmu.mak<br>> @@ -0,0 +1,6 @@<br>> +TARGET_MICROBLAZE=y<br>> +TARGET_BASE_ARCH=microblaze<br>> +TARGET_ABI_DIR=microblaze<br>> +TARGET_SYSTBL_ABI=common<br>> +TARGET_SYSTBL=syscall.tbl<br>> +TARGET_SUPPORTS_MTTCG=y<br>> diff --git a/default-configs/targets/mips-linux-user.mak b/default-configs/targets/mips-linux-user.mak<br>> new file mode 100644<br>> index 0000000000..bcfff16a7b<br>> --- /dev/null<br>> +++ b/default-configs/targets/mips-linux-user.mak<br>> @@ -0,0 +1,8 @@<br>> +TARGET_ABI_MIPSO32=y<br>> +TARGET_MIPS=y<br>> +TARGET_BASE_ARCH=mips<br>> +TARGET_ABI_DIR=mips<br>> +TARGET_SYSTBL_ABI=o32<br>> +TARGET_SYSTBL=syscall_o32.tbl<br>> +TARGET_ALIGNED_ONLY=y<br>> +TARGET_WORDS_BIGENDIAN=y<br>> diff --git a/default-configs/targets/mips-softmmu.mak b/default-configs/targets/mips-softmmu.mak<br>> new file mode 100644<br>> index 0000000000..8ab9ff2ac9<br>> --- /dev/null<br>> +++ b/default-configs/targets/mips-softmmu.mak<br>> @@ -0,0 +1,9 @@<br>> +TARGET_ABI_MIPSO32=y<br>> +TARGET_MIPS=y<br>> +TARGET_BASE_ARCH=mips<br>> +TARGET_ABI_DIR=mips<br>> +TARGET_SYSTBL_ABI=o32<br>> +TARGET_SYSTBL=syscall_o32.tbl<br>> +TARGET_ALIGNED_ONLY=y<br>> +TARGET_WORDS_BIGENDIAN=y<br>> +TARGET_SUPPORTS_MTTCG=y<br>> diff --git a/default-configs/targets/mips64-linux-user.mak b/default-configs/targets/mips64-linux-user.mak<br>> new file mode 100644<br>> index 0000000000..c02c5460a7<br>> --- /dev/null<br>> +++ b/default-configs/targets/mips64-linux-user.mak<br>> @@ -0,0 +1,8 @@<br>> +TARGET_ABI_MIPSN64=y<br>> +TARGET_MIPS64=y<br>> +TARGET_BASE_ARCH=mips<br>> +TARGET_ABI_DIR=mips64<br>> +TARGET_SYSTBL_ABI=n64<br>> +TARGET_SYSTBL=syscall_n64.tbl<br>> +TARGET_ALIGNED_ONLY=y<br>> +TARGET_WORDS_BIGENDIAN=y<br>> diff --git a/default-configs/targets/mips64-softmmu.mak b/default-configs/targets/mips64-softmmu.mak<br>> new file mode 100644<br>> index 0000000000..c02c5460a7<br>> --- /dev/null<br>> +++ b/default-configs/targets/mips64-softmmu.mak<br>> @@ -0,0 +1,8 @@<br>> +TARGET_ABI_MIPSN64=y<br>> +TARGET_MIPS64=y<br>> +TARGET_BASE_ARCH=mips<br>> +TARGET_ABI_DIR=mips64<br>> +TARGET_SYSTBL_ABI=n64<br>> +TARGET_SYSTBL=syscall_n64.tbl<br>> +TARGET_ALIGNED_ONLY=y<br>> +TARGET_WORDS_BIGENDIAN=y<br>> diff --git a/default-configs/targets/mips64el-linux-user.mak b/default-configs/targets/mips64el-linux-user.mak<br>> new file mode 100644<br>> index 0000000000..8cbbc38e78<br>> --- /dev/null<br>> +++ b/default-configs/targets/mips64el-linux-user.mak<br>> @@ -0,0 +1,7 @@<br>> +TARGET_ABI_MIPSN64=y<br>> +TARGET_MIPS64=y<br>> +TARGET_BASE_ARCH=mips<br>> +TARGET_ABI_DIR=mips64<br>> +TARGET_SYSTBL_ABI=n64<br>> +TARGET_SYSTBL=syscall_n64.tbl<br>> +TARGET_ALIGNED_ONLY=y<br>> diff --git a/default-configs/targets/mips64el-softmmu.mak b/default-configs/targets/mips64el-softmmu.mak<br>> new file mode 100644<br>> index 0000000000..8cbbc38e78<br>> --- /dev/null<br>> +++ b/default-configs/targets/mips64el-softmmu.mak<br>> @@ -0,0 +1,7 @@<br>> +TARGET_ABI_MIPSN64=y<br>> +TARGET_MIPS64=y<br>> +TARGET_BASE_ARCH=mips<br>> +TARGET_ABI_DIR=mips64<br>> +TARGET_SYSTBL_ABI=n64<br>> +TARGET_SYSTBL=syscall_n64.tbl<br>> +TARGET_ALIGNED_ONLY=y<br>> diff --git a/default-configs/targets/mipsel-linux-user.mak b/default-configs/targets/mipsel-linux-user.mak<br>> new file mode 100644<br>> index 0000000000..26aa9c8279<br>> --- /dev/null<br>> +++ b/default-configs/targets/mipsel-linux-user.mak<br>> @@ -0,0 +1,7 @@<br>> +TARGET_ABI_MIPSO32=y<br>> +TARGET_MIPS=y<br>> +TARGET_BASE_ARCH=mips<br>> +TARGET_ABI_DIR=mips<br>> +TARGET_SYSTBL_ABI=o32<br>> +TARGET_SYSTBL=syscall_o32.tbl<br>> +TARGET_ALIGNED_ONLY=y<br>> diff --git a/default-configs/targets/mipsel-softmmu.mak b/default-configs/targets/mipsel-softmmu.mak<br>> new file mode 100644<br>> index 0000000000..afa0851887<br>> --- /dev/null<br>> +++ b/default-configs/targets/mipsel-softmmu.mak<br>> @@ -0,0 +1,8 @@<br>> +TARGET_ABI_MIPSO32=y<br>> +TARGET_MIPS=y<br>> +TARGET_BASE_ARCH=mips<br>> +TARGET_ABI_DIR=mips<br>> +TARGET_SYSTBL_ABI=o32<br>> +TARGET_SYSTBL=syscall_o32.tbl<br>> +TARGET_ALIGNED_ONLY=y<br>> +TARGET_SUPPORTS_MTTCG=y<br>> diff --git a/default-configs/targets/mipsn32-linux-user.mak b/default-configs/targets/mipsn32-linux-user.mak<br>> new file mode 100644<br>> index 0000000000..81d548e699<br>> --- /dev/null<br>> +++ b/default-configs/targets/mipsn32-linux-user.mak<br>> @@ -0,0 +1,9 @@<br>> +TARGET_ABI_MIPSN32=y<br>> +TARGET_ABI32=y<br>> +TARGET_MIPS64=y<br>> +TARGET_BASE_ARCH=mips<br>> +TARGET_ABI_DIR=mips64<br>> +TARGET_SYSTBL_ABI=n32<br>> +TARGET_SYSTBL=syscall_n32.tbl<br>> +TARGET_ALIGNED_ONLY=y<br>> +TARGET_WORDS_BIGENDIAN=y<br>> diff --git a/default-configs/targets/mipsn32el-linux-user.mak b/default-configs/targets/mipsn32el-linux-user.mak<br>> new file mode 100644<br>> index 0000000000..6de47f2a79<br>> --- /dev/null<br>> +++ b/default-configs/targets/mipsn32el-linux-user.mak<br>> @@ -0,0 +1,8 @@<br>> +TARGET_ABI_MIPSN32=y<br>> +TARGET_ABI32=y<br>> +TARGET_MIPS64=y<br>> +TARGET_BASE_ARCH=mips<br>> +TARGET_ABI_DIR=mips64<br>> +TARGET_SYSTBL_ABI=n32<br>> +TARGET_SYSTBL=syscall_n32.tbl<br>> +TARGET_ALIGNED_ONLY=y<br>> diff --git a/default-configs/targets/moxie-softmmu.mak b/default-configs/targets/moxie-softmmu.mak<br>> new file mode 100644<br>> index 0000000000..da093f5b36<br>> --- /dev/null<br>> +++ b/default-configs/targets/moxie-softmmu.mak<br>> @@ -0,0 +1,4 @@<br>> +TARGET_MOXIE=y<br>> +TARGET_BASE_ARCH=moxie<br>> +TARGET_ABI_DIR=moxie<br>> +TARGET_WORDS_BIGENDIAN=y<br>> diff --git a/default-configs/targets/nios2-linux-user.mak b/default-configs/targets/nios2-linux-user.mak<br>> new file mode 100644<br>> index 0000000000..a2308a16aa<br>> --- /dev/null<br>> +++ b/default-configs/targets/nios2-linux-user.mak<br>> @@ -0,0 +1,3 @@<br>> +TARGET_NIOS2=y<br>> +TARGET_BASE_ARCH=nios2<br>> +TARGET_ABI_DIR=nios2<br>> diff --git a/default-configs/targets/nios2-softmmu.mak b/default-configs/targets/nios2-softmmu.mak<br>> new file mode 100644<br>> index 0000000000..a2308a16aa<br>> --- /dev/null<br>> +++ b/default-configs/targets/nios2-softmmu.mak<br>> @@ -0,0 +1,3 @@<br>> +TARGET_NIOS2=y<br>> +TARGET_BASE_ARCH=nios2<br>> +TARGET_ABI_DIR=nios2<br>> diff --git a/default-configs/targets/or1k-linux-user.mak b/default-configs/targets/or1k-linux-user.mak<br>> new file mode 100644<br>> index 0000000000..2f5ff844df<br>> --- /dev/null<br>> +++ b/default-configs/targets/or1k-linux-user.mak<br>> @@ -0,0 +1,4 @@<br>> +TARGET_OPENRISC=y<br>> +TARGET_BASE_ARCH=openrisc<br>> +TARGET_ABI_DIR=openrisc<br>> +TARGET_WORDS_BIGENDIAN=y<br>> diff --git a/default-configs/targets/or1k-softmmu.mak b/default-configs/targets/or1k-softmmu.mak<br>> new file mode 100644<br>> index 0000000000..2f5ff844df<br>> --- /dev/null<br>> +++ b/default-configs/targets/or1k-softmmu.mak<br>> @@ -0,0 +1,4 @@<br>> +TARGET_OPENRISC=y<br>> +TARGET_BASE_ARCH=openrisc<br>> +TARGET_ABI_DIR=openrisc<br>> +TARGET_WORDS_BIGENDIAN=y<br>> diff --git a/default-configs/targets/ppc-linux-user.mak b/default-configs/targets/ppc-linux-user.mak<br>> new file mode 100644<br>> index 0000000000..c4d912bfb1<br>> --- /dev/null<br>> +++ b/default-configs/targets/ppc-linux-user.mak<br>> @@ -0,0 +1,7 @@<br>> +TARGET_PPC=y<br>> +TARGET_BASE_ARCH=ppc<br>> +TARGET_ABI_DIR=ppc<br>> +TARGET_SYSTBL_ABI=common,nospu,32<br>> +TARGET_SYSTBL=syscall.tbl<br>> +TARGET_WORDS_BIGENDIAN=y<br>> +TARGET_XML_FILES= gdb-xml/power-core.xml gdb-xml/power-fpu.xml gdb-xml/power-altivec.xml gdb-xml/power-spe.xml<br>> diff --git a/default-configs/targets/ppc-softmmu.mak b/default-configs/targets/ppc-softmmu.mak<br>> new file mode 100644<br>> index 0000000000..c4d912bfb1<br>> --- /dev/null<br>> +++ b/default-configs/targets/ppc-softmmu.mak<br>> @@ -0,0 +1,7 @@<br>> +TARGET_PPC=y<br>> +TARGET_BASE_ARCH=ppc<br>> +TARGET_ABI_DIR=ppc<br>> +TARGET_SYSTBL_ABI=common,nospu,32<br>> +TARGET_SYSTBL=syscall.tbl<br>> +TARGET_WORDS_BIGENDIAN=y<br>> +TARGET_XML_FILES= gdb-xml/power-core.xml gdb-xml/power-fpu.xml gdb-xml/power-altivec.xml gdb-xml/power-spe.xml<br>> diff --git a/default-configs/targets/ppc64-linux-user.mak b/default-configs/targets/ppc64-linux-user.mak<br>> new file mode 100644<br>> index 0000000000..7f96ab7e9d<br>> --- /dev/null<br>> +++ b/default-configs/targets/ppc64-linux-user.mak<br>> @@ -0,0 +1,7 @@<br>> +TARGET_PPC64=y<br>> +TARGET_BASE_ARCH=ppc<br>> +TARGET_ABI_DIR=ppc<br>> +TARGET_SYSTBL_ABI=common,nospu,64<br>> +TARGET_SYSTBL=syscall.tbl<br>> +TARGET_WORDS_BIGENDIAN=y<br>> +TARGET_XML_FILES= gdb-xml/power64-core.xml gdb-xml/power-fpu.xml gdb-xml/power-altivec.xml gdb-xml/power-spe.xml gdb-xml/power-vsx.xml<br>> diff --git a/default-configs/targets/ppc64-softmmu.mak b/default-configs/targets/ppc64-softmmu.mak<br>> new file mode 100644<br>> index 0000000000..a73211918a<br>> --- /dev/null<br>> +++ b/default-configs/targets/ppc64-softmmu.mak<br>> @@ -0,0 +1,8 @@<br>> +TARGET_PPC64=y<br>> +TARGET_BASE_ARCH=ppc<br>> +TARGET_ABI_DIR=ppc<br>> +TARGET_SYSTBL_ABI=common,nospu,64<br>> +TARGET_SYSTBL=syscall.tbl<br>> +TARGET_WORDS_BIGENDIAN=y<br>> +TARGET_SUPPORTS_MTTCG=y<br>> +TARGET_XML_FILES= gdb-xml/power64-core.xml gdb-xml/power-fpu.xml gdb-xml/power-altivec.xml gdb-xml/power-spe.xml gdb-xml/power-vsx.xml<br>> diff --git a/default-configs/targets/ppc64abi32-linux-user.mak b/default-configs/targets/ppc64abi32-linux-user.mak<br>> new file mode 100644<br>> index 0000000000..13a02700aa<br>> --- /dev/null<br>> +++ b/default-configs/targets/ppc64abi32-linux-user.mak<br>> @@ -0,0 +1,8 @@<br>> +TARGET_ABI32=y<br>> +TARGET_PPC64=y<br>> +TARGET_BASE_ARCH=ppc<br>> +TARGET_ABI_DIR=ppc<br>> +TARGET_SYSTBL_ABI=common,nospu,32<br>> +TARGET_SYSTBL=syscall.tbl<br>> +TARGET_WORDS_BIGENDIAN=y<br>> +TARGET_XML_FILES= gdb-xml/power64-core.xml gdb-xml/power-fpu.xml gdb-xml/power-altivec.xml gdb-xml/power-spe.xml gdb-xml/power-vsx.xml<br>> diff --git a/default-configs/targets/ppc64le-linux-user.mak b/default-configs/targets/ppc64le-linux-user.mak<br>> new file mode 100644<br>> index 0000000000..3dd54b894c<br>> --- /dev/null<br>> +++ b/default-configs/targets/ppc64le-linux-user.mak<br>> @@ -0,0 +1,6 @@<br>> +TARGET_PPC64=y<br>> +TARGET_BASE_ARCH=ppc<br>> +TARGET_ABI_DIR=ppc<br>> +TARGET_SYSTBL_ABI=common,nospu,64<br>> +TARGET_SYSTBL=syscall.tbl<br>> +TARGET_XML_FILES= gdb-xml/power64-core.xml gdb-xml/power-fpu.xml gdb-xml/power-altivec.xml gdb-xml/power-spe.xml gdb-xml/power-vsx.xml<br>> diff --git a/default-configs/targets/riscv32-linux-user.mak b/default-configs/targets/riscv32-linux-user.mak<br>> new file mode 100644<br>> index 0000000000..91d72a46b0<br>> --- /dev/null<br>> +++ b/default-configs/targets/riscv32-linux-user.mak<br>> @@ -0,0 +1,4 @@<br>> +TARGET_RISCV32=y<br>> +TARGET_BASE_ARCH=riscv<br>> +TARGET_ABI_DIR=riscv<br>> +TARGET_XML_FILES= gdb-xml/riscv-32bit-cpu.xml gdb-xml/riscv-32bit-fpu.xml gdb-xml/riscv-64bit-fpu.xml gdb-xml/riscv-32bit-csr.xml gdb-xml/riscv-32bit-virtual.xml<br>> diff --git a/default-configs/targets/riscv32-softmmu.mak b/default-configs/targets/riscv32-softmmu.mak<br>> new file mode 100644<br>> index 0000000000..35e5b2fb85<br>> --- /dev/null<br>> +++ b/default-configs/targets/riscv32-softmmu.mak<br>> @@ -0,0 +1,5 @@<br>> +TARGET_RISCV32=y<br>> +TARGET_BASE_ARCH=riscv<br>> +TARGET_ABI_DIR=riscv<br>> +TARGET_SUPPORTS_MTTCG=y<br>> +TARGET_XML_FILES= gdb-xml/riscv-32bit-cpu.xml gdb-xml/riscv-32bit-fpu.xml gdb-xml/riscv-64bit-fpu.xml gdb-xml/riscv-32bit-csr.xml gdb-xml/riscv-32bit-virtual.xml<br>> diff --git a/default-configs/targets/riscv64-linux-user.mak b/default-configs/targets/riscv64-linux-user.mak<br>> new file mode 100644<br>> index 0000000000..9e53193cdb<br>> --- /dev/null<br>> +++ b/default-configs/targets/riscv64-linux-user.mak<br>> @@ -0,0 +1,4 @@<br>> +TARGET_RISCV64=y<br>> +TARGET_BASE_ARCH=riscv<br>> +TARGET_ABI_DIR=riscv<br>> +TARGET_XML_FILES= gdb-xml/riscv-64bit-cpu.xml gdb-xml/riscv-32bit-fpu.xml gdb-xml/riscv-64bit-fpu.xml gdb-xml/riscv-64bit-csr.xml gdb-xml/riscv-64bit-virtual.xml<br>> diff --git a/default-configs/targets/riscv64-softmmu.mak b/default-configs/targets/riscv64-softmmu.mak<br>> new file mode 100644<br>> index 0000000000..4b9a61cd8f<br>> --- /dev/null<br>> +++ b/default-configs/targets/riscv64-softmmu.mak<br>> @@ -0,0 +1,5 @@<br>> +TARGET_RISCV64=y<br>> +TARGET_BASE_ARCH=riscv<br>> +TARGET_ABI_DIR=riscv<br>> +TARGET_SUPPORTS_MTTCG=y<br>> +TARGET_XML_FILES= gdb-xml/riscv-64bit-cpu.xml gdb-xml/riscv-32bit-fpu.xml gdb-xml/riscv-64bit-fpu.xml gdb-xml/riscv-64bit-csr.xml gdb-xml/riscv-64bit-virtual.xml<br>> diff --git a/default-configs/targets/rx-softmmu.mak b/default-configs/targets/rx-softmmu.mak<br>> new file mode 100644<br>> index 0000000000..52a8c0df10<br>> --- /dev/null<br>> +++ b/default-configs/targets/rx-softmmu.mak<br>> @@ -0,0 +1,4 @@<br>> +TARGET_RX=y<br>> +TARGET_BASE_ARCH=rx<br>> +TARGET_ABI_DIR=rx<br>> +TARGET_XML_FILES= gdb-xml/rx-core.xml<br>> diff --git a/default-configs/targets/s390x-linux-user.mak b/default-configs/targets/s390x-linux-user.mak<br>> new file mode 100644<br>> index 0000000000..77ebec769f<br>> --- /dev/null<br>> +++ b/default-configs/targets/s390x-linux-user.mak<br>> @@ -0,0 +1,7 @@<br>> +TARGET_S390X=y<br>> +TARGET_BASE_ARCH=s390x<br>> +TARGET_ABI_DIR=s390x<br>> +TARGET_SYSTBL_ABI=common,64<br>> +TARGET_SYSTBL=syscall.tbl<br>> +TARGET_WORDS_BIGENDIAN=y<br>> +TARGET_XML_FILES= gdb-xml/s390x-core64.xml gdb-xml/s390-acr.xml gdb-xml/s390-fpr.xml gdb-xml/s390-vx.xml gdb-xml/s390-cr.xml gdb-xml/s390-virt.xml gdb-xml/s390-gs.xml<br>> diff --git a/default-configs/targets/s390x-softmmu.mak b/default-configs/targets/s390x-softmmu.mak<br>> new file mode 100644<br>> index 0000000000..f2a80d3208<br>> --- /dev/null<br>> +++ b/default-configs/targets/s390x-softmmu.mak<br>> @@ -0,0 +1,8 @@<br>> +TARGET_S390X=y<br>> +TARGET_BASE_ARCH=s390x<br>> +TARGET_ABI_DIR=s390x<br>> +TARGET_SYSTBL_ABI=common,64<br>> +TARGET_SYSTBL=syscall.tbl<br>> +TARGET_WORDS_BIGENDIAN=y<br>> +TARGET_SUPPORTS_MTTCG=y<br>> +TARGET_XML_FILES= gdb-xml/s390x-core64.xml gdb-xml/s390-acr.xml gdb-xml/s390-fpr.xml gdb-xml/s390-vx.xml gdb-xml/s390-cr.xml gdb-xml/s390-virt.xml gdb-xml/s390-gs.xml<br>> diff --git a/default-configs/targets/sh4-linux-user.mak b/default-configs/targets/sh4-linux-user.mak<br>> new file mode 100644<br>> index 0000000000..4292dd6128<br>> --- /dev/null<br>> +++ b/default-configs/targets/sh4-linux-user.mak<br>> @@ -0,0 +1,7 @@<br>> +TARGET_SH4=y<br>> +TARGET_BASE_ARCH=sh4<br>> +TARGET_ABI_DIR=sh4<br>> +TARGET_SYSTBL_ABI=common<br>> +TARGET_SYSTBL=syscall.tbl<br>> +TARGET_ALIGNED_ONLY=y<br>> +TARGET_HAS_BFLT=y<br>> diff --git a/default-configs/targets/sh4-softmmu.mak b/default-configs/targets/sh4-softmmu.mak<br>> new file mode 100644<br>> index 0000000000..e46bf0e278<br>> --- /dev/null<br>> +++ b/default-configs/targets/sh4-softmmu.mak<br>> @@ -0,0 +1,6 @@<br>> +TARGET_SH4=y<br>> +TARGET_BASE_ARCH=sh4<br>> +TARGET_ABI_DIR=sh4<br>> +TARGET_SYSTBL_ABI=common<br>> +TARGET_SYSTBL=syscall.tbl<br>> +TARGET_ALIGNED_ONLY=y<br>> diff --git a/default-configs/targets/sh4eb-linux-user.mak b/default-configs/targets/sh4eb-linux-user.mak<br>> new file mode 100644<br>> index 0000000000..cf9178f4ea<br>> --- /dev/null<br>> +++ b/default-configs/targets/sh4eb-linux-user.mak<br>> @@ -0,0 +1,8 @@<br>> +TARGET_SH4=y<br>> +TARGET_BASE_ARCH=sh4<br>> +TARGET_ABI_DIR=sh4<br>> +TARGET_SYSTBL_ABI=common<br>> +TARGET_SYSTBL=syscall.tbl<br>> +TARGET_ALIGNED_ONLY=y<br>> +TARGET_WORDS_BIGENDIAN=y<br>> +TARGET_HAS_BFLT=y<br>> diff --git a/default-configs/targets/sh4eb-softmmu.mak b/default-configs/targets/sh4eb-softmmu.mak<br>> new file mode 100644<br>> index 0000000000..db4140ec32<br>> --- /dev/null<br>> +++ b/default-configs/targets/sh4eb-softmmu.mak<br>> @@ -0,0 +1,7 @@<br>> +TARGET_SH4=y<br>> +TARGET_BASE_ARCH=sh4<br>> +TARGET_ABI_DIR=sh4<br>> +TARGET_SYSTBL_ABI=common<br>> +TARGET_SYSTBL=syscall.tbl<br>> +TARGET_ALIGNED_ONLY=y<br>> +TARGET_WORDS_BIGENDIAN=y<br>> diff --git a/default-configs/targets/sparc-bsd-user.mak b/default-configs/targets/sparc-bsd-user.mak<br>> new file mode 100644<br>> index 0000000000..7f2fcba978<br>> --- /dev/null<br>> +++ b/default-configs/targets/sparc-bsd-user.mak<br>> @@ -0,0 +1,7 @@<br>> +TARGET_SPARC=y<br>> +TARGET_BASE_ARCH=sparc<br>> +TARGET_ABI_DIR=sparc<br>> +TARGET_SYSTBL_ABI=common,32<br>> +TARGET_SYSTBL=syscall.tbl<br>> +TARGET_ALIGNED_ONLY=y<br>> +TARGET_WORDS_BIGENDIAN=y<br>> diff --git a/default-configs/targets/sparc-linux-user.mak b/default-configs/targets/sparc-linux-user.mak<br>> new file mode 100644<br>> index 0000000000..7f2fcba978<br>> --- /dev/null<br>> +++ b/default-configs/targets/sparc-linux-user.mak<br>> @@ -0,0 +1,7 @@<br>> +TARGET_SPARC=y<br>> +TARGET_BASE_ARCH=sparc<br>> +TARGET_ABI_DIR=sparc<br>> +TARGET_SYSTBL_ABI=common,32<br>> +TARGET_SYSTBL=syscall.tbl<br>> +TARGET_ALIGNED_ONLY=y<br>> +TARGET_WORDS_BIGENDIAN=y<br>> diff --git a/default-configs/targets/sparc-softmmu.mak b/default-configs/targets/sparc-softmmu.mak<br>> new file mode 100644<br>> index 0000000000..7f2fcba978<br>> --- /dev/null<br>> +++ b/default-configs/targets/sparc-softmmu.mak<br>> @@ -0,0 +1,7 @@<br>> +TARGET_SPARC=y<br>> +TARGET_BASE_ARCH=sparc<br>> +TARGET_ABI_DIR=sparc<br>> +TARGET_SYSTBL_ABI=common,32<br>> +TARGET_SYSTBL=syscall.tbl<br>> +TARGET_ALIGNED_ONLY=y<br>> +TARGET_WORDS_BIGENDIAN=y<br>> diff --git a/default-configs/targets/sparc32plus-linux-user.mak b/default-configs/targets/sparc32plus-linux-user.mak<br>> new file mode 100644<br>> index 0000000000..f5fcb7879e<br>> --- /dev/null<br>> +++ b/default-configs/targets/sparc32plus-linux-user.mak<br>> @@ -0,0 +1,8 @@<br>> +TARGET_ABI32=y<br>> +TARGET_SPARC64=y<br>> +TARGET_BASE_ARCH=sparc<br>> +TARGET_ABI_DIR=sparc<br>> +TARGET_SYSTBL_ABI=common,32<br>> +TARGET_SYSTBL=syscall.tbl<br>> +TARGET_ALIGNED_ONLY=y<br>> +TARGET_WORDS_BIGENDIAN=y<br>> diff --git a/default-configs/targets/sparc64-bsd-user.mak b/default-configs/targets/sparc64-bsd-user.mak<br>> new file mode 100644<br>> index 0000000000..817529e587<br>> --- /dev/null<br>> +++ b/default-configs/targets/sparc64-bsd-user.mak<br>> @@ -0,0 +1,7 @@<br>> +TARGET_SPARC64=y<br>> +TARGET_BASE_ARCH=sparc<br>> +TARGET_ABI_DIR=sparc64<br>> +TARGET_SYSTBL_ABI=common,64<br>> +TARGET_SYSTBL=syscall.tbl<br>> +TARGET_ALIGNED_ONLY=y<br>> +TARGET_WORDS_BIGENDIAN=y<br>> diff --git a/default-configs/targets/sparc64-linux-user.mak b/default-configs/targets/sparc64-linux-user.mak<br>> new file mode 100644<br>> index 0000000000..817529e587<br>> --- /dev/null<br>> +++ b/default-configs/targets/sparc64-linux-user.mak<br>> @@ -0,0 +1,7 @@<br>> +TARGET_SPARC64=y<br>> +TARGET_BASE_ARCH=sparc<br>> +TARGET_ABI_DIR=sparc64<br>> +TARGET_SYSTBL_ABI=common,64<br>> +TARGET_SYSTBL=syscall.tbl<br>> +TARGET_ALIGNED_ONLY=y<br>> +TARGET_WORDS_BIGENDIAN=y<br>> diff --git a/default-configs/targets/sparc64-softmmu.mak b/default-configs/targets/sparc64-softmmu.mak<br>> new file mode 100644<br>> index 0000000000..817529e587<br>> --- /dev/null<br>> +++ b/default-configs/targets/sparc64-softmmu.mak<br>> @@ -0,0 +1,7 @@<br>> +TARGET_SPARC64=y<br>> +TARGET_BASE_ARCH=sparc<br>> +TARGET_ABI_DIR=sparc64<br>> +TARGET_SYSTBL_ABI=common,64<br>> +TARGET_SYSTBL=syscall.tbl<br>> +TARGET_ALIGNED_ONLY=y<br>> +TARGET_WORDS_BIGENDIAN=y<br>> diff --git a/default-configs/targets/tilegx-linux-user.mak b/default-configs/targets/tilegx-linux-user.mak<br>> new file mode 100644<br>> index 0000000000..064d3320d7<br>> --- /dev/null<br>> +++ b/default-configs/targets/tilegx-linux-user.mak<br>> @@ -0,0 +1,3 @@<br>> +TARGET_TILEGX=y<br>> +TARGET_BASE_ARCH=tilegx<br>> +TARGET_ABI_DIR=tilegx<br>> diff --git a/default-configs/targets/tricore-softmmu.mak b/default-configs/targets/tricore-softmmu.mak<br>> new file mode 100644<br>> index 0000000000..356e5d8669<br>> --- /dev/null<br>> +++ b/default-configs/targets/tricore-softmmu.mak<br>> @@ -0,0 +1,3 @@<br>> +TARGET_TRICORE=y<br>> +TARGET_BASE_ARCH=tricore<br>> +TARGET_ABI_DIR=tricore<br>> diff --git a/default-configs/targets/unicore32-softmmu.mak b/default-configs/targets/unicore32-softmmu.mak<br>> new file mode 100644<br>> index 0000000000..d8c7860ac1<br>> --- /dev/null<br>> +++ b/default-configs/targets/unicore32-softmmu.mak<br>> @@ -0,0 +1,3 @@<br>> +TARGET_UNICORE32=y<br>> +TARGET_BASE_ARCH=unicore32<br>> +TARGET_ABI_DIR=unicore32<br>> diff --git a/default-configs/targets/x86_64-bsd-user.mak b/default-configs/targets/x86_64-bsd-user.mak<br>> new file mode 100644<br>> index 0000000000..6a9418f9ff<br>> --- /dev/null<br>> +++ b/default-configs/targets/x86_64-bsd-user.mak<br>> @@ -0,0 +1,6 @@<br>> +TARGET_X86_64=y<br>> +TARGET_BASE_ARCH=i386<br>> +TARGET_ABI_DIR=x86_64<br>> +TARGET_SYSTBL_ABI=common,64<br>> +TARGET_SYSTBL=syscall_64.tbl<br>> +TARGET_XML_FILES= gdb-xml/i386-64bit.xml<br>> diff --git a/default-configs/targets/x86_64-linux-user.mak b/default-configs/targets/x86_64-linux-user.mak<br>> new file mode 100644<br>> index 0000000000..6a9418f9ff<br>> --- /dev/null<br>> +++ b/default-configs/targets/x86_64-linux-user.mak<br>> @@ -0,0 +1,6 @@<br>> +TARGET_X86_64=y<br>> +TARGET_BASE_ARCH=i386<br>> +TARGET_ABI_DIR=x86_64<br>> +TARGET_SYSTBL_ABI=common,64<br>> +TARGET_SYSTBL=syscall_64.tbl<br>> +TARGET_XML_FILES= gdb-xml/i386-64bit.xml<br>> diff --git a/default-configs/targets/x86_64-softmmu.mak b/default-configs/targets/x86_64-softmmu.mak<br>> new file mode 100644<br>> index 0000000000..8b56e6e6da<br>> --- /dev/null<br>> +++ b/default-configs/targets/x86_64-softmmu.mak<br>> @@ -0,0 +1,7 @@<br>> +TARGET_X86_64=y<br>> +TARGET_BASE_ARCH=i386<br>> +TARGET_ABI_DIR=x86_64<br>> +TARGET_SYSTBL_ABI=common,64<br>> +TARGET_SYSTBL=syscall_64.tbl<br>> +TARGET_SUPPORTS_MTTCG=y<br>> +TARGET_XML_FILES= gdb-xml/i386-64bit.xml<br>> diff --git a/default-configs/targets/xtensa-linux-user.mak b/default-configs/targets/xtensa-linux-user.mak<br>> new file mode 100644<br>> index 0000000000..63d9cff69f<br>> --- /dev/null<br>> +++ b/default-configs/targets/xtensa-linux-user.mak<br>> @@ -0,0 +1,7 @@<br>> +TARGET_XTENSA=y<br>> +TARGET_BASE_ARCH=xtensa<br>> +TARGET_ABI_DIR=xtensa<br>> +TARGET_SYSTBL_ABI=common<br>> +TARGET_SYSTBL=syscall.tbl<br>> +TARGET_ALIGNED_ONLY=y<br>> +TARGET_HAS_BFLT=y<br>> diff --git a/default-configs/targets/xtensa-softmmu.mak b/default-configs/targets/xtensa-softmmu.mak<br>> new file mode 100644<br>> index 0000000000..2166f97738<br>> --- /dev/null<br>> +++ b/default-configs/targets/xtensa-softmmu.mak<br>> @@ -0,0 +1,7 @@<br>> +TARGET_XTENSA=y<br>> +TARGET_BASE_ARCH=xtensa<br>> +TARGET_ABI_DIR=xtensa<br>> +TARGET_SYSTBL_ABI=common<br>> +TARGET_SYSTBL=syscall.tbl<br>> +TARGET_ALIGNED_ONLY=y<br>> +TARGET_SUPPORTS_MTTCG=y<br>> diff --git a/default-configs/targets/xtensaeb-linux-user.mak b/default-configs/targets/xtensaeb-linux-user.mak<br>> new file mode 100644<br>> index 0000000000..e66b7dd0e3<br>> --- /dev/null<br>> +++ b/default-configs/targets/xtensaeb-linux-user.mak<br>> @@ -0,0 +1,8 @@<br>> +TARGET_XTENSA=y<br>> +TARGET_BASE_ARCH=xtensa<br>> +TARGET_ABI_DIR=xtensa<br>> +TARGET_SYSTBL_ABI=common<br>> +TARGET_SYSTBL=syscall.tbl<br>> +TARGET_ALIGNED_ONLY=y<br>> +TARGET_WORDS_BIGENDIAN=y<br>> +TARGET_HAS_BFLT=y<br>> diff --git a/default-configs/targets/xtensaeb-softmmu.mak b/default-configs/targets/xtensaeb-softmmu.mak<br>> new file mode 100644<br>> index 0000000000..2372d22492<br>> --- /dev/null<br>> +++ b/default-configs/targets/xtensaeb-softmmu.mak<br>> @@ -0,0 +1,8 @@<br>> +TARGET_XTENSA=y<br>> +TARGET_BASE_ARCH=xtensa<br>> +TARGET_ABI_DIR=xtensa<br>> +TARGET_SYSTBL_ABI=common<br>> +TARGET_SYSTBL=syscall.tbl<br>> +TARGET_ALIGNED_ONLY=y<br>> +TARGET_WORDS_BIGENDIAN=y<br>> +TARGET_SUPPORTS_MTTCG=y<br>> diff --git a/meson.build b/meson.build<br>> index 6863b9febf..5ddaf16b88 100644<br>> --- a/meson.build<br>> +++ b/meson.build<br>> @@ -722,13 +722,25 @@ kconfig_external_symbols = [<br>> ]<br>> ignored = ['TARGET_XML_FILES', 'TARGET_ABI_DIR', 'TARGET_DIRS']<br>><br>> +default_targets = 'CONFIG_DEFAULT_TARGETS' in config_host<br>> +actual_target_dirs = []<br>> foreach target : target_dirs<br>> config_target = { 'TARGET_NAME': target.split('-')[0] }<br>> if target.endswith('linux-user')<br>> - assert(targetos == 'linux')<br>> + if targetos != 'linux'<br>> + if default_targets<br>> + continue<br>> + endif<br>> + error('Target @0@ is only available on a Linux host'.format(target))<br>> + endif<br>> config_target += { 'CONFIG_LINUX_USER': 'y' }<br>> elif target.endswith('bsd-user')<br>> - assert('CONFIG_BSD' in config_host)<br>> + if not 'CONFIG_BSD' in config_host<br>> + if default_targets<br>> + continue<br>> + endif<br>> + error('Target @0@ is only available on a BSD host'.format(target))<br>> + endif<br>> config_target += { 'CONFIG_BSD_USER': 'y' }<br>> elif target.endswith('softmmu')<br>> config_target += { 'CONFIG_SOFTMMU': 'y' }<br>> @@ -752,8 +764,14 @@ foreach target : target_dirs<br>> endif<br>> have_accel = true<br>> endforeach<br>> - assert(have_accel)<br>> + if not have_accel<br>> + if default_targets<br>> + continue<br>> + endif<br>> + error('No accelerator available for target @0@'.format(target))<br>> + endif<br>><br>> + actual_target_dirs += target<br>> config_target += keyval.load('default-configs/targets' / target + '.mak')<br>><br>> foreach k, v: disassemblers<br>> @@ -815,6 +833,7 @@ foreach target : target_dirs<br>> endif<br>> config_target_mak += {target: config_target}<br>> endforeach<br>> +target_dirs = actual_target_dirs<br>><br>> # This configuration is used to build files that are shared by<br>> # multiple binaries, and then extracted out of the "common"<br>> @@ -1600,7 +1619,7 @@ if config_host.has_key('CONFIG_MODULES')<br>> endif<br>> summary_info += {'host CPU': cpu}<br>> summary_info += {'host endianness': build_machine.endian()}<br>> -summary_info += {'target list': config_host['TARGET_DIRS']}<br>> +summary_info += {'target list': ' '.join(target_dirs)}<br>> summary_info += {'gprof enabled': config_host.has_key('CONFIG_GPROF')}<br>> summary_info += {'sparse enabled': meson.get_compiler('c').cmd_array().contains('cgcc')}<br>> summary_info += {'strip binaries': get_option('strip')}<br>> --<br>> 2.26.2<br>><br>><br>><br><br><br>--<br> 此致<br>礼<br>罗勇刚<br>Yours<br> sincerely,<br>Yonggang Luo</div></div>
diff --git a/configure b/configure index e64327e0f8..f6275d95fc 100755 --- a/configure +++ b/configure @@ -220,99 +220,6 @@ glob() { eval test -z '"${1#'"$2"'}"' } -supported_hax_target() { - test "$hax" = "enabled" || return 1 - glob "$1" "*-softmmu" || return 1 - case "${1%-softmmu}" in - i386|x86_64) - return 0 - ;; - esac - return 1 -} - -supported_kvm_target() { - test "$kvm" = "enabled" || return 1 - glob "$1" "*-softmmu" || return 1 - case "${1%-softmmu}:$cpu" in - aarch64:aarch64 | \ - i386:i386 | i386:x86_64 | i386:x32 | \ - x86_64:i386 | x86_64:x86_64 | x86_64:x32 | \ - mips:mips | mipsel:mips | mips64:mips | mips64el:mips | \ - ppc:ppc | ppc64:ppc | ppc:ppc64 | ppc64:ppc64 | ppc64:ppc64le | \ - s390x:s390x) - return 0 - ;; - esac - return 1 -} - -supported_xen_target() { - test "$xen" = "enabled" || return 1 - glob "$1" "*-softmmu" || return 1 - # Only i386 and x86_64 provide the xenpv machine. - case "${1%-softmmu}" in - i386|x86_64) - return 0 - ;; - esac - return 1 -} - -supported_hvf_target() { - test "$hvf" = "enabled" || return 1 - glob "$1" "*-softmmu" || return 1 - case "${1%-softmmu}" in - x86_64) - return 0 - ;; - esac - return 1 -} - -supported_whpx_target() { - test "$whpx" = "enabled" || return 1 - glob "$1" "*-softmmu" || return 1 - case "${1%-softmmu}" in - i386|x86_64) - return 0 - ;; - esac - return 1 -} - -supported_target() { - case "$1" in - *-softmmu) - ;; - *-linux-user) - if test "$linux" != "yes"; then - print_error "Target '$target' is only available on a Linux host" - return 1 - fi - ;; - *-bsd-user) - if test "$bsd" != "yes"; then - print_error "Target '$target' is only available on a BSD host" - return 1 - fi - ;; - *) - print_error "Invalid target name '$target'" - return 1 - ;; - esac - test "$tcg" = "enabled" && return 0 - supported_kvm_target "$1" && return 0 - supported_xen_target "$1" && return 0 - supported_hax_target "$1" && return 0 - supported_hvf_target "$1" && return 0 - supported_whpx_target "$1" && return 0 - print_error "TCG disabled, but hardware accelerator not available for '$target'" - return 1 -} - - ld_has() { $ld --help 2>/dev/null | grep ".$1" >/dev/null 2>&1 } @@ -2292,12 +2199,13 @@ if test "$solaris" = "yes" ; then fi if test -z "${target_list+xxx}" ; then + default_targets=yes for target in $default_target_list; do - supported_target $target 2>/dev/null && \ - target_list="$target_list $target" + target_list="$target_list $target" done target_list="${target_list# }" else + default_targets=no target_list=$(echo "$target_list" | sed -e 's/,/ /g') for target in $target_list; do # Check that we recognised the target name; this allows a more @@ -2309,7 +2217,6 @@ else error_exit "Unknown target name '$target'" ;; esac - supported_target $target || exit 1 done fi @@ -2653,27 +2560,6 @@ if test "$seccomp" != "no" ; then fi fi -########################################## -# simple accelerator probes - -if test "$kvm" = "auto" ; then - if test "$linux" = yes ; then - kvm=enabled - else - if test "$kvm" = "enabled" ; then - feature_not_found "kvm" "KVM is only available on Linux" - fi - fi -fi - -if test "$hax" = "auto" ; then - if test "$mingw" = yes || test "$darwin" = yes || test "$targetos" = NetBSD; then - hax=enabled - else - hax=disabled - fi -fi - ########################################## # xen probe @@ -2992,22 +2878,6 @@ if test "$xen_pci_passthrough" != "disabled"; then fi fi -########################################## -# Windows Hypervisor Platform accelerator (WHPX) check -if test "$whpx" = "enabled" && test "$ARCH" != "x86_64"; then - error_exit "WHPX requires 64-bit host" -fi -if test "$whpx" != "disabled" && test "$ARCH" = "x86_64"; then - if check_include "WinHvPlatform.h" && check_include "WinHvEmulation.h"; then - whpx="yes" - else - if test "$whpx" = "auto"; then - feature_not_found "WinHvPlatform" "WinHvEmulation is not installed" - fi - whpx="disabled" - fi -fi - ########################################## # gettext probe if test "$gettext" != "false" ; then @@ -7375,281 +7245,13 @@ fi for target in $target_list; do target_dir="$target" -config_target_mak=$target_dir/config-target.mak target_name=$(echo $target | cut -d '-' -f 1) -target_aligned_only="no" -case "$target_name" in - alpha|hppa|mips64el|mips64|mipsel|mips|mipsn32|mipsn32el|sh4|sh4eb|sparc|sparc64|sparc32plus|xtensa|xtensaeb) - target_aligned_only="yes" - ;; -esac -target_bigendian="no" -case "$target_name" in - armeb|aarch64_be|hppa|lm32|m68k|microblaze|mips|mipsn32|mips64|moxie|or1k|ppc|ppc64|ppc64abi32|s390x|sh4eb|sparc|sparc64|sparc32plus|xtensaeb) - target_bigendian="yes" - ;; -esac -target_softmmu="no" -target_user_only="no" -target_linux_user="no" -target_bsd_user="no" -case "$target" in - ${target_name}-softmmu) - target_softmmu="yes" - ;; - ${target_name}-linux-user) - target_user_only="yes" - target_linux_user="yes" - ;; - ${target_name}-bsd-user) - target_user_only="yes" - target_bsd_user="yes" - ;; - *) - error_exit "Target '$target' not recognised" - exit 1 - ;; -esac - mkdir -p $target_dir -echo "# Automatically generated by configure - do not modify" > $config_target_mak - -bflt="no" -mttcg="no" -interp_prefix1=$(echo "$interp_prefix" | sed "s/%M/$target_name/g") -gdb_xml_files="" - -TARGET_ARCH="$target_name" -TARGET_BASE_ARCH="" -TARGET_ABI_DIR="" -TARGET_SYSTBL_ABI="" -TARGET_SYSTBL="" - -case "$target_name" in - i386) - mttcg="yes" - gdb_xml_files="i386-32bit.xml" - TARGET_SYSTBL_ABI=i386 - TARGET_SYSTBL=syscall_32.tbl - ;; - x86_64) - TARGET_BASE_ARCH=i386 - TARGET_SYSTBL_ABI=common,64 - TARGET_SYSTBL=syscall_64.tbl - mttcg="yes" - gdb_xml_files="i386-64bit.xml" - ;; - alpha) - mttcg="yes" - TARGET_SYSTBL_ABI=common - ;; - arm|armeb) - TARGET_ARCH=arm - TARGET_SYSTBL_ABI=common,oabi - bflt="yes" - mttcg="yes" - gdb_xml_files="arm-core.xml arm-vfp.xml arm-vfp3.xml arm-neon.xml arm-m-profile.xml" - ;; - aarch64|aarch64_be) - TARGET_ARCH=aarch64 - TARGET_BASE_ARCH=arm - bflt="yes" - mttcg="yes" - gdb_xml_files="aarch64-core.xml aarch64-fpu.xml arm-core.xml arm-vfp.xml arm-vfp3.xml arm-neon.xml arm-m-profile.xml" - ;; - avr) - gdb_xml_files="avr-cpu.xml" - target_compiler=$cross_cc_avr - ;; - cris) - ;; - hppa) - mttcg="yes" - TARGET_SYSTBL_ABI=common,32 - ;; - lm32) - ;; - m68k) - bflt="yes" - gdb_xml_files="cf-core.xml cf-fp.xml m68k-core.xml m68k-fp.xml" - TARGET_SYSTBL_ABI=common - ;; - microblaze|microblazeel) - TARGET_ARCH=microblaze - TARGET_SYSTBL_ABI=common - mttcg="yes" - bflt="yes" - ;; - mips|mipsel) - mttcg="yes" - TARGET_ARCH=mips - echo "TARGET_ABI_MIPSO32=y" >> $config_target_mak - TARGET_SYSTBL_ABI=o32 - TARGET_SYSTBL=syscall_o32.tbl - ;; - mipsn32|mipsn32el) - mttcg="yes" - TARGET_ARCH=mips64 - TARGET_BASE_ARCH=mips - echo "TARGET_ABI_MIPSN32=y" >> $config_target_mak - echo "TARGET_ABI32=y" >> $config_target_mak - TARGET_SYSTBL_ABI=n32 - TARGET_SYSTBL=syscall_n32.tbl - ;; - mips64|mips64el) - mttcg="no" - TARGET_ARCH=mips64 - TARGET_BASE_ARCH=mips - echo "TARGET_ABI_MIPSN64=y" >> $config_target_mak - TARGET_SYSTBL_ABI=n64 - TARGET_SYSTBL=syscall_n64.tbl - ;; - moxie) - ;; - nios2) - ;; - or1k) - TARGET_ARCH=openrisc - TARGET_BASE_ARCH=openrisc - ;; - ppc) - gdb_xml_files="power-core.xml power-fpu.xml power-altivec.xml power-spe.xml" - TARGET_SYSTBL_ABI=common,nospu,32 - ;; - ppc64) - TARGET_BASE_ARCH=ppc - TARGET_ABI_DIR=ppc - TARGET_SYSTBL_ABI=common,nospu,64 - mttcg=yes - gdb_xml_files="power64-core.xml power-fpu.xml power-altivec.xml power-spe.xml power-vsx.xml" - ;; - ppc64le) - TARGET_ARCH=ppc64 - TARGET_BASE_ARCH=ppc - TARGET_ABI_DIR=ppc - TARGET_SYSTBL_ABI=common,nospu,64 - mttcg=yes - gdb_xml_files="power64-core.xml power-fpu.xml power-altivec.xml power-spe.xml power-vsx.xml" - ;; - ppc64abi32) - TARGET_ARCH=ppc64 - TARGET_BASE_ARCH=ppc - TARGET_ABI_DIR=ppc - TARGET_SYSTBL_ABI=common,nospu,32 - echo "TARGET_ABI32=y" >> $config_target_mak - gdb_xml_files="power64-core.xml power-fpu.xml power-altivec.xml power-spe.xml power-vsx.xml" - deprecated_features="ppc64abi32 ${deprecated_features}" - ;; - riscv32) - TARGET_BASE_ARCH=riscv - TARGET_ABI_DIR=riscv - mttcg=yes - gdb_xml_files="riscv-32bit-cpu.xml riscv-32bit-fpu.xml riscv-64bit-fpu.xml riscv-32bit-csr.xml riscv-32bit-virtual.xml" - ;; - riscv64) - TARGET_BASE_ARCH=riscv - TARGET_ABI_DIR=riscv - mttcg=yes - gdb_xml_files="riscv-64bit-cpu.xml riscv-32bit-fpu.xml riscv-64bit-fpu.xml riscv-64bit-csr.xml riscv-64bit-virtual.xml" - ;; - rx) - TARGET_ARCH=rx - bflt="yes" - target_compiler=$cross_cc_rx - gdb_xml_files="rx-core.xml" - ;; - sh4|sh4eb) - TARGET_ARCH=sh4 - TARGET_SYSTBL_ABI=common - bflt="yes" - ;; - sparc) - TARGET_SYSTBL_ABI=common,32 - ;; - sparc64) - TARGET_BASE_ARCH=sparc - TARGET_SYSTBL_ABI=common,64 - ;; - sparc32plus) - TARGET_ARCH=sparc64 - TARGET_BASE_ARCH=sparc - TARGET_ABI_DIR=sparc - TARGET_SYSTBL_ABI=common,32 - echo "TARGET_ABI32=y" >> $config_target_mak - ;; - s390x) - TARGET_SYSTBL_ABI=common,64 - mttcg=yes - gdb_xml_files="s390x-core64.xml s390-acr.xml s390-fpr.xml s390-vx.xml s390-cr.xml s390-virt.xml s390-gs.xml" - ;; - tilegx) - ;; - tricore) - ;; - unicore32) - ;; - xtensa|xtensaeb) - TARGET_ARCH=xtensa - TARGET_SYSTBL_ABI=common - bflt="yes" - mttcg="yes" - ;; - *) - error_exit "Unsupported target CPU" - ;; -esac -# TARGET_BASE_ARCH needs to be defined after TARGET_ARCH -if [ "$TARGET_BASE_ARCH" = "" ]; then - TARGET_BASE_ARCH=$TARGET_ARCH -fi -if [ "$TARGET_SYSTBL_ABI" != "" ] && [ "$TARGET_SYSTBL" = "" ]; then - TARGET_SYSTBL=syscall.tbl -fi - -upper() { - echo "$@"| LC_ALL=C tr '[a-z]' '[A-Z]' -} - -target_arch_name="$(upper $TARGET_ARCH)" -echo "TARGET_$target_arch_name=y" >> $config_target_mak -echo "TARGET_BASE_ARCH=$TARGET_BASE_ARCH" >> $config_target_mak -if [ "$TARGET_ABI_DIR" = "" ]; then - TARGET_ABI_DIR=$TARGET_ARCH -fi -echo "TARGET_ABI_DIR=$TARGET_ABI_DIR" >> $config_target_mak -if [ "$TARGET_SYSTBL_ABI" != "" ]; then - echo "TARGET_SYSTBL_ABI=$TARGET_SYSTBL_ABI" >> $config_target_mak - echo "TARGET_SYSTBL=$TARGET_SYSTBL" >> $config_target_mak -fi - -if test "$target_aligned_only" = "yes" ; then - echo "TARGET_ALIGNED_ONLY=y" >> $config_target_mak -fi -if test "$target_bigendian" = "yes" ; then - echo "TARGET_WORDS_BIGENDIAN=y" >> $config_target_mak -fi -if test "$target_softmmu" = "yes" ; then - if test "$mttcg" = "yes" ; then - echo "TARGET_SUPPORTS_MTTCG=y" >> $config_target_mak - fi -fi if test "$target_user_only" = "yes" ; then symlink "../qemu-$target_name" "$target_dir/qemu-$target_name" else symlink "../qemu-system-$target_name" "$target_dir/qemu-system-$target_name" fi -list="" -if test ! -z "$gdb_xml_files" ; then - for x in $gdb_xml_files; do - list="$list gdb-xml/$x" - done - echo "TARGET_XML_FILES=$list" >> $config_target_mak -fi - -if test "$target_user_only" = "yes" && test "$bflt" = "yes"; then - echo "TARGET_HAS_BFLT=y" >> $config_target_mak -fi - done # for target in $targets if [ "$fdt" = "git" ]; then @@ -7659,6 +7261,9 @@ if [ "$capstone" = "git" -o "$capstone" = "internal" ]; then subdirs="$subdirs capstone" fi echo "CONFIG_QEMU_INTERP_PREFIX=$interp_prefix" | sed 's/%M/@0@/' >> $config_host_mak +if test "$default_targets" = "yes"; then + echo "CONFIG_DEFAULT_TARGETS=y" >> $config_host_mak +fi echo "SUBDIRS=$subdirs" >> $config_host_mak if test -n "$LIBCAPSTONE"; then echo "LIBCAPSTONE=$LIBCAPSTONE" >> $config_host_mak diff --git a/default-configs/targets/aarch64-linux-user.mak b/default-configs/targets/aarch64-linux-user.mak new file mode 100644 index 0000000000..4495e86509 --- /dev/null +++ b/default-configs/targets/aarch64-linux-user.mak @@ -0,0 +1,5 @@ +TARGET_AARCH64=y +TARGET_BASE_ARCH=arm +TARGET_ABI_DIR=aarch64 +TARGET_XML_FILES= gdb-xml/aarch64-core.xml gdb-xml/aarch64-fpu.xml gdb-xml/arm-core.xml gdb-xml/arm-vfp.xml gdb-xml/arm-vfp3.xml gdb-xml/arm-neon.xml gdb-xml/arm-m-profile.xml +TARGET_HAS_BFLT=y diff --git a/default-configs/targets/aarch64-softmmu.mak b/default-configs/targets/aarch64-softmmu.mak new file mode 100644 index 0000000000..53f83ea81f --- /dev/null +++ b/default-configs/targets/aarch64-softmmu.mak @@ -0,0 +1,5 @@ +TARGET_AARCH64=y +TARGET_BASE_ARCH=arm +TARGET_ABI_DIR=aarch64 +TARGET_SUPPORTS_MTTCG=y +TARGET_XML_FILES= gdb-xml/aarch64-core.xml gdb-xml/aarch64-fpu.xml gdb-xml/arm-core.xml gdb-xml/arm-vfp.xml gdb-xml/arm-vfp3.xml gdb-xml/arm-neon.xml gdb-xml/arm-m-profile.xml diff --git a/default-configs/targets/aarch64_be-linux-user.mak b/default-configs/targets/aarch64_be-linux-user.mak new file mode 100644 index 0000000000..da13693d3d --- /dev/null +++ b/default-configs/targets/aarch64_be-linux-user.mak @@ -0,0 +1,6 @@ +TARGET_AARCH64=y +TARGET_BASE_ARCH=arm +TARGET_ABI_DIR=aarch64 +TARGET_WORDS_BIGENDIAN=y +TARGET_XML_FILES= gdb-xml/aarch64-core.xml gdb-xml/aarch64-fpu.xml gdb-xml/arm-core.xml gdb-xml/arm-vfp.xml gdb-xml/arm-vfp3.xml gdb-xml/arm-neon.xml gdb-xml/arm-m-profile.xml +TARGET_HAS_BFLT=y diff --git a/default-configs/targets/alpha-linux-user.mak b/default-configs/targets/alpha-linux-user.mak new file mode 100644 index 0000000000..5ff89f5d48 --- /dev/null +++ b/default-configs/targets/alpha-linux-user.mak @@ -0,0 +1,6 @@ +TARGET_ALPHA=y +TARGET_BASE_ARCH=alpha +TARGET_ABI_DIR=alpha +TARGET_SYSTBL_ABI=common +TARGET_SYSTBL=syscall.tbl +TARGET_ALIGNED_ONLY=y diff --git a/default-configs/targets/alpha-softmmu.mak b/default-configs/targets/alpha-softmmu.mak new file mode 100644 index 0000000000..b78114b028 --- /dev/null +++ b/default-configs/targets/alpha-softmmu.mak @@ -0,0 +1,7 @@ +TARGET_ALPHA=y +TARGET_BASE_ARCH=alpha +TARGET_ABI_DIR=alpha +TARGET_SYSTBL_ABI=common +TARGET_SYSTBL=syscall.tbl +TARGET_ALIGNED_ONLY=y +TARGET_SUPPORTS_MTTCG=y diff --git a/default-configs/targets/arm-linux-user.mak b/default-configs/targets/arm-linux-user.mak new file mode 100644 index 0000000000..7c54c3c2a2 --- /dev/null +++ b/default-configs/targets/arm-linux-user.mak @@ -0,0 +1,7 @@ +TARGET_ARM=y +TARGET_BASE_ARCH=arm +TARGET_ABI_DIR=arm +TARGET_SYSTBL_ABI=common,oabi +TARGET_SYSTBL=syscall.tbl +TARGET_XML_FILES= gdb-xml/arm-core.xml gdb-xml/arm-vfp.xml gdb-xml/arm-vfp3.xml gdb-xml/arm-neon.xml gdb-xml/arm-m-profile.xml +TARGET_HAS_BFLT=y diff --git a/default-configs/targets/arm-softmmu.mak b/default-configs/targets/arm-softmmu.mak new file mode 100644 index 0000000000..d40b995f25 --- /dev/null +++ b/default-configs/targets/arm-softmmu.mak @@ -0,0 +1,7 @@ +TARGET_ARM=y +TARGET_BASE_ARCH=arm +TARGET_ABI_DIR=arm +TARGET_SYSTBL_ABI=common,oabi +TARGET_SYSTBL=syscall.tbl +TARGET_SUPPORTS_MTTCG=y +TARGET_XML_FILES= gdb-xml/arm-core.xml gdb-xml/arm-vfp.xml gdb-xml/arm-vfp3.xml gdb-xml/arm-neon.xml gdb-xml/arm-m-profile.xml diff --git a/default-configs/targets/armeb-linux-user.mak b/default-configs/targets/armeb-linux-user.mak new file mode 100644 index 0000000000..1882aa472d --- /dev/null +++ b/default-configs/targets/armeb-linux-user.mak @@ -0,0 +1,8 @@ +TARGET_ARM=y +TARGET_BASE_ARCH=arm +TARGET_ABI_DIR=arm +TARGET_SYSTBL_ABI=common,oabi +TARGET_SYSTBL=syscall.tbl +TARGET_WORDS_BIGENDIAN=y +TARGET_XML_FILES= gdb-xml/arm-core.xml gdb-xml/arm-vfp.xml gdb-xml/arm-vfp3.xml gdb-xml/arm-neon.xml gdb-xml/arm-m-profile.xml +TARGET_HAS_BFLT=y diff --git a/default-configs/targets/avr-softmmu.mak b/default-configs/targets/avr-softmmu.mak new file mode 100644 index 0000000000..ecd292b2f7 --- /dev/null +++ b/default-configs/targets/avr-softmmu.mak @@ -0,0 +1,4 @@ +TARGET_AVR=y +TARGET_BASE_ARCH=avr +TARGET_ABI_DIR=avr +TARGET_XML_FILES= gdb-xml/avr-cpu.xml diff --git a/default-configs/targets/cris-linux-user.mak b/default-configs/targets/cris-linux-user.mak new file mode 100644 index 0000000000..ba61135172 --- /dev/null +++ b/default-configs/targets/cris-linux-user.mak @@ -0,0 +1,3 @@ +TARGET_CRIS=y +TARGET_BASE_ARCH=cris +TARGET_ABI_DIR=cris diff --git a/default-configs/targets/cris-softmmu.mak b/default-configs/targets/cris-softmmu.mak new file mode 100644 index 0000000000..ba61135172 --- /dev/null +++ b/default-configs/targets/cris-softmmu.mak @@ -0,0 +1,3 @@ +TARGET_CRIS=y +TARGET_BASE_ARCH=cris +TARGET_ABI_DIR=cris diff --git a/default-configs/targets/hppa-linux-user.mak b/default-configs/targets/hppa-linux-user.mak new file mode 100644 index 0000000000..94222e8fc6 --- /dev/null +++ b/default-configs/targets/hppa-linux-user.mak @@ -0,0 +1,7 @@ +TARGET_HPPA=y +TARGET_BASE_ARCH=hppa +TARGET_ABI_DIR=hppa +TARGET_SYSTBL_ABI=common,32 +TARGET_SYSTBL=syscall.tbl +TARGET_ALIGNED_ONLY=y +TARGET_WORDS_BIGENDIAN=y diff --git a/default-configs/targets/hppa-softmmu.mak b/default-configs/targets/hppa-softmmu.mak new file mode 100644 index 0000000000..617c6483c0 --- /dev/null +++ b/default-configs/targets/hppa-softmmu.mak @@ -0,0 +1,8 @@ +TARGET_HPPA=y +TARGET_BASE_ARCH=hppa +TARGET_ABI_DIR=hppa +TARGET_SYSTBL_ABI=common,32 +TARGET_SYSTBL=syscall.tbl +TARGET_ALIGNED_ONLY=y +TARGET_WORDS_BIGENDIAN=y +TARGET_SUPPORTS_MTTCG=y diff --git a/default-configs/targets/i386-bsd-user.mak b/default-configs/targets/i386-bsd-user.mak new file mode 100644 index 0000000000..34b52e9ee2 --- /dev/null +++ b/default-configs/targets/i386-bsd-user.mak @@ -0,0 +1,6 @@ +TARGET_I386=y +TARGET_BASE_ARCH=i386 +TARGET_ABI_DIR=i386 +TARGET_SYSTBL_ABI=i386 +TARGET_SYSTBL=syscall_32.tbl +TARGET_XML_FILES= gdb-xml/i386-32bit.xml diff --git a/default-configs/targets/i386-linux-user.mak b/default-configs/targets/i386-linux-user.mak new file mode 100644 index 0000000000..34b52e9ee2 --- /dev/null +++ b/default-configs/targets/i386-linux-user.mak @@ -0,0 +1,6 @@ +TARGET_I386=y +TARGET_BASE_ARCH=i386 +TARGET_ABI_DIR=i386 +TARGET_SYSTBL_ABI=i386 +TARGET_SYSTBL=syscall_32.tbl +TARGET_XML_FILES= gdb-xml/i386-32bit.xml diff --git a/default-configs/targets/i386-softmmu.mak b/default-configs/targets/i386-softmmu.mak new file mode 100644 index 0000000000..be9198bb84 --- /dev/null +++ b/default-configs/targets/i386-softmmu.mak @@ -0,0 +1,7 @@ +TARGET_I386=y +TARGET_BASE_ARCH=i386 +TARGET_ABI_DIR=i386 +TARGET_SYSTBL_ABI=i386 +TARGET_SYSTBL=syscall_32.tbl +TARGET_SUPPORTS_MTTCG=y +TARGET_XML_FILES= gdb-xml/i386-32bit.xml diff --git a/default-configs/targets/lm32-softmmu.mak b/default-configs/targets/lm32-softmmu.mak new file mode 100644 index 0000000000..c327d27d5f --- /dev/null +++ b/default-configs/targets/lm32-softmmu.mak @@ -0,0 +1,4 @@ +TARGET_LM32=y +TARGET_BASE_ARCH=lm32 +TARGET_ABI_DIR=lm32 +TARGET_WORDS_BIGENDIAN=y diff --git a/default-configs/targets/m68k-linux-user.mak b/default-configs/targets/m68k-linux-user.mak new file mode 100644 index 0000000000..e7c0af5881 --- /dev/null +++ b/default-configs/targets/m68k-linux-user.mak @@ -0,0 +1,8 @@ +TARGET_M68K=y +TARGET_BASE_ARCH=m68k +TARGET_ABI_DIR=m68k +TARGET_SYSTBL_ABI=common +TARGET_SYSTBL=syscall.tbl +TARGET_WORDS_BIGENDIAN=y +TARGET_XML_FILES= gdb-xml/cf-core.xml gdb-xml/cf-fp.xml gdb-xml/m68k-core.xml gdb-xml/m68k-fp.xml +TARGET_HAS_BFLT=y diff --git a/default-configs/targets/m68k-softmmu.mak b/default-configs/targets/m68k-softmmu.mak new file mode 100644 index 0000000000..f8bf4fc5ac --- /dev/null +++ b/default-configs/targets/m68k-softmmu.mak @@ -0,0 +1,7 @@ +TARGET_M68K=y +TARGET_BASE_ARCH=m68k +TARGET_ABI_DIR=m68k +TARGET_SYSTBL_ABI=common +TARGET_SYSTBL=syscall.tbl +TARGET_WORDS_BIGENDIAN=y +TARGET_XML_FILES= gdb-xml/cf-core.xml gdb-xml/cf-fp.xml gdb-xml/m68k-core.xml gdb-xml/m68k-fp.xml diff --git a/default-configs/targets/microblaze-linux-user.mak b/default-configs/targets/microblaze-linux-user.mak new file mode 100644 index 0000000000..809819424d --- /dev/null +++ b/default-configs/targets/microblaze-linux-user.mak @@ -0,0 +1,7 @@ +TARGET_MICROBLAZE=y +TARGET_BASE_ARCH=microblaze +TARGET_ABI_DIR=microblaze +TARGET_SYSTBL_ABI=common +TARGET_SYSTBL=syscall.tbl +TARGET_WORDS_BIGENDIAN=y +TARGET_HAS_BFLT=y diff --git a/default-configs/targets/microblaze-softmmu.mak b/default-configs/targets/microblaze-softmmu.mak new file mode 100644 index 0000000000..1b0a76a61f --- /dev/null +++ b/default-configs/targets/microblaze-softmmu.mak @@ -0,0 +1,7 @@ +TARGET_MICROBLAZE=y +TARGET_BASE_ARCH=microblaze +TARGET_ABI_DIR=microblaze +TARGET_SYSTBL_ABI=common +TARGET_SYSTBL=syscall.tbl +TARGET_WORDS_BIGENDIAN=y +TARGET_SUPPORTS_MTTCG=y diff --git a/default-configs/targets/microblazeel-linux-user.mak b/default-configs/targets/microblazeel-linux-user.mak new file mode 100644 index 0000000000..416b42eeb6 --- /dev/null +++ b/default-configs/targets/microblazeel-linux-user.mak @@ -0,0 +1,6 @@ +TARGET_MICROBLAZE=y +TARGET_BASE_ARCH=microblaze +TARGET_ABI_DIR=microblaze +TARGET_SYSTBL_ABI=common +TARGET_SYSTBL=syscall.tbl +TARGET_HAS_BFLT=y diff --git a/default-configs/targets/microblazeel-softmmu.mak b/default-configs/targets/microblazeel-softmmu.mak new file mode 100644 index 0000000000..3a2cf8be0f --- /dev/null +++ b/default-configs/targets/microblazeel-softmmu.mak @@ -0,0 +1,6 @@ +TARGET_MICROBLAZE=y +TARGET_BASE_ARCH=microblaze +TARGET_ABI_DIR=microblaze +TARGET_SYSTBL_ABI=common +TARGET_SYSTBL=syscall.tbl +TARGET_SUPPORTS_MTTCG=y diff --git a/default-configs/targets/mips-linux-user.mak b/default-configs/targets/mips-linux-user.mak new file mode 100644 index 0000000000..bcfff16a7b --- /dev/null +++ b/default-configs/targets/mips-linux-user.mak @@ -0,0 +1,8 @@ +TARGET_ABI_MIPSO32=y +TARGET_MIPS=y +TARGET_BASE_ARCH=mips +TARGET_ABI_DIR=mips +TARGET_SYSTBL_ABI=o32 +TARGET_SYSTBL=syscall_o32.tbl +TARGET_ALIGNED_ONLY=y +TARGET_WORDS_BIGENDIAN=y diff --git a/default-configs/targets/mips-softmmu.mak b/default-configs/targets/mips-softmmu.mak new file mode 100644 index 0000000000..8ab9ff2ac9 --- /dev/null +++ b/default-configs/targets/mips-softmmu.mak @@ -0,0 +1,9 @@ +TARGET_ABI_MIPSO32=y +TARGET_MIPS=y +TARGET_BASE_ARCH=mips +TARGET_ABI_DIR=mips +TARGET_SYSTBL_ABI=o32 +TARGET_SYSTBL=syscall_o32.tbl +TARGET_ALIGNED_ONLY=y +TARGET_WORDS_BIGENDIAN=y +TARGET_SUPPORTS_MTTCG=y diff --git a/default-configs/targets/mips64-linux-user.mak b/default-configs/targets/mips64-linux-user.mak new file mode 100644 index 0000000000..c02c5460a7 --- /dev/null +++ b/default-configs/targets/mips64-linux-user.mak @@ -0,0 +1,8 @@ +TARGET_ABI_MIPSN64=y +TARGET_MIPS64=y +TARGET_BASE_ARCH=mips +TARGET_ABI_DIR=mips64 +TARGET_SYSTBL_ABI=n64 +TARGET_SYSTBL=syscall_n64.tbl +TARGET_ALIGNED_ONLY=y +TARGET_WORDS_BIGENDIAN=y diff --git a/default-configs/targets/mips64-softmmu.mak b/default-configs/targets/mips64-softmmu.mak new file mode 100644 index 0000000000..c02c5460a7 --- /dev/null +++ b/default-configs/targets/mips64-softmmu.mak @@ -0,0 +1,8 @@ +TARGET_ABI_MIPSN64=y +TARGET_MIPS64=y +TARGET_BASE_ARCH=mips +TARGET_ABI_DIR=mips64 +TARGET_SYSTBL_ABI=n64 +TARGET_SYSTBL=syscall_n64.tbl +TARGET_ALIGNED_ONLY=y +TARGET_WORDS_BIGENDIAN=y diff --git a/default-configs/targets/mips64el-linux-user.mak b/default-configs/targets/mips64el-linux-user.mak new file mode 100644 index 0000000000..8cbbc38e78 --- /dev/null +++ b/default-configs/targets/mips64el-linux-user.mak @@ -0,0 +1,7 @@ +TARGET_ABI_MIPSN64=y +TARGET_MIPS64=y +TARGET_BASE_ARCH=mips +TARGET_ABI_DIR=mips64 +TARGET_SYSTBL_ABI=n64 +TARGET_SYSTBL=syscall_n64.tbl +TARGET_ALIGNED_ONLY=y diff --git a/default-configs/targets/mips64el-softmmu.mak b/default-configs/targets/mips64el-softmmu.mak new file mode 100644 index 0000000000..8cbbc38e78 --- /dev/null +++ b/default-configs/targets/mips64el-softmmu.mak @@ -0,0 +1,7 @@ +TARGET_ABI_MIPSN64=y +TARGET_MIPS64=y +TARGET_BASE_ARCH=mips +TARGET_ABI_DIR=mips64 +TARGET_SYSTBL_ABI=n64 +TARGET_SYSTBL=syscall_n64.tbl +TARGET_ALIGNED_ONLY=y diff --git a/default-configs/targets/mipsel-linux-user.mak b/default-configs/targets/mipsel-linux-user.mak new file mode 100644 index 0000000000..26aa9c8279 --- /dev/null +++ b/default-configs/targets/mipsel-linux-user.mak @@ -0,0 +1,7 @@ +TARGET_ABI_MIPSO32=y +TARGET_MIPS=y +TARGET_BASE_ARCH=mips +TARGET_ABI_DIR=mips +TARGET_SYSTBL_ABI=o32 +TARGET_SYSTBL=syscall_o32.tbl +TARGET_ALIGNED_ONLY=y diff --git a/default-configs/targets/mipsel-softmmu.mak b/default-configs/targets/mipsel-softmmu.mak new file mode 100644 index 0000000000..afa0851887 --- /dev/null +++ b/default-configs/targets/mipsel-softmmu.mak @@ -0,0 +1,8 @@ +TARGET_ABI_MIPSO32=y +TARGET_MIPS=y +TARGET_BASE_ARCH=mips +TARGET_ABI_DIR=mips +TARGET_SYSTBL_ABI=o32 +TARGET_SYSTBL=syscall_o32.tbl +TARGET_ALIGNED_ONLY=y +TARGET_SUPPORTS_MTTCG=y diff --git a/default-configs/targets/mipsn32-linux-user.mak b/default-configs/targets/mipsn32-linux-user.mak new file mode 100644 index 0000000000..81d548e699 --- /dev/null +++ b/default-configs/targets/mipsn32-linux-user.mak @@ -0,0 +1,9 @@ +TARGET_ABI_MIPSN32=y +TARGET_ABI32=y +TARGET_MIPS64=y +TARGET_BASE_ARCH=mips +TARGET_ABI_DIR=mips64 +TARGET_SYSTBL_ABI=n32 +TARGET_SYSTBL=syscall_n32.tbl +TARGET_ALIGNED_ONLY=y +TARGET_WORDS_BIGENDIAN=y diff --git a/default-configs/targets/mipsn32el-linux-user.mak b/default-configs/targets/mipsn32el-linux-user.mak new file mode 100644 index 0000000000..6de47f2a79 --- /dev/null +++ b/default-configs/targets/mipsn32el-linux-user.mak @@ -0,0 +1,8 @@ +TARGET_ABI_MIPSN32=y +TARGET_ABI32=y +TARGET_MIPS64=y +TARGET_BASE_ARCH=mips +TARGET_ABI_DIR=mips64 +TARGET_SYSTBL_ABI=n32 +TARGET_SYSTBL=syscall_n32.tbl +TARGET_ALIGNED_ONLY=y diff --git a/default-configs/targets/moxie-softmmu.mak b/default-configs/targets/moxie-softmmu.mak new file mode 100644 index 0000000000..da093f5b36 --- /dev/null +++ b/default-configs/targets/moxie-softmmu.mak @@ -0,0 +1,4 @@ +TARGET_MOXIE=y +TARGET_BASE_ARCH=moxie +TARGET_ABI_DIR=moxie +TARGET_WORDS_BIGENDIAN=y diff --git a/default-configs/targets/nios2-linux-user.mak b/default-configs/targets/nios2-linux-user.mak new file mode 100644 index 0000000000..a2308a16aa --- /dev/null +++ b/default-configs/targets/nios2-linux-user.mak @@ -0,0 +1,3 @@ +TARGET_NIOS2=y +TARGET_BASE_ARCH=nios2 +TARGET_ABI_DIR=nios2 diff --git a/default-configs/targets/nios2-softmmu.mak b/default-configs/targets/nios2-softmmu.mak new file mode 100644 index 0000000000..a2308a16aa --- /dev/null +++ b/default-configs/targets/nios2-softmmu.mak @@ -0,0 +1,3 @@ +TARGET_NIOS2=y +TARGET_BASE_ARCH=nios2 +TARGET_ABI_DIR=nios2 diff --git a/default-configs/targets/or1k-linux-user.mak b/default-configs/targets/or1k-linux-user.mak new file mode 100644 index 0000000000..2f5ff844df --- /dev/null +++ b/default-configs/targets/or1k-linux-user.mak @@ -0,0 +1,4 @@ +TARGET_OPENRISC=y +TARGET_BASE_ARCH=openrisc +TARGET_ABI_DIR=openrisc +TARGET_WORDS_BIGENDIAN=y diff --git a/default-configs/targets/or1k-softmmu.mak b/default-configs/targets/or1k-softmmu.mak new file mode 100644 index 0000000000..2f5ff844df --- /dev/null +++ b/default-configs/targets/or1k-softmmu.mak @@ -0,0 +1,4 @@ +TARGET_OPENRISC=y +TARGET_BASE_ARCH=openrisc +TARGET_ABI_DIR=openrisc +TARGET_WORDS_BIGENDIAN=y diff --git a/default-configs/targets/ppc-linux-user.mak b/default-configs/targets/ppc-linux-user.mak new file mode 100644 index 0000000000..c4d912bfb1 --- /dev/null +++ b/default-configs/targets/ppc-linux-user.mak @@ -0,0 +1,7 @@ +TARGET_PPC=y +TARGET_BASE_ARCH=ppc +TARGET_ABI_DIR=ppc +TARGET_SYSTBL_ABI=common,nospu,32 +TARGET_SYSTBL=syscall.tbl +TARGET_WORDS_BIGENDIAN=y +TARGET_XML_FILES= gdb-xml/power-core.xml gdb-xml/power-fpu.xml gdb-xml/power-altivec.xml gdb-xml/power-spe.xml diff --git a/default-configs/targets/ppc-softmmu.mak b/default-configs/targets/ppc-softmmu.mak new file mode 100644 index 0000000000..c4d912bfb1 --- /dev/null +++ b/default-configs/targets/ppc-softmmu.mak @@ -0,0 +1,7 @@ +TARGET_PPC=y +TARGET_BASE_ARCH=ppc +TARGET_ABI_DIR=ppc +TARGET_SYSTBL_ABI=common,nospu,32 +TARGET_SYSTBL=syscall.tbl +TARGET_WORDS_BIGENDIAN=y +TARGET_XML_FILES= gdb-xml/power-core.xml gdb-xml/power-fpu.xml gdb-xml/power-altivec.xml gdb-xml/power-spe.xml diff --git a/default-configs/targets/ppc64-linux-user.mak b/default-configs/targets/ppc64-linux-user.mak new file mode 100644 index 0000000000..7f96ab7e9d --- /dev/null +++ b/default-configs/targets/ppc64-linux-user.mak @@ -0,0 +1,7 @@ +TARGET_PPC64=y +TARGET_BASE_ARCH=ppc +TARGET_ABI_DIR=ppc +TARGET_SYSTBL_ABI=common,nospu,64 +TARGET_SYSTBL=syscall.tbl +TARGET_WORDS_BIGENDIAN=y +TARGET_XML_FILES= gdb-xml/power64-core.xml gdb-xml/power-fpu.xml gdb-xml/power-altivec.xml gdb-xml/power-spe.xml gdb-xml/power-vsx.xml diff --git a/default-configs/targets/ppc64-softmmu.mak b/default-configs/targets/ppc64-softmmu.mak new file mode 100644 index 0000000000..a73211918a --- /dev/null +++ b/default-configs/targets/ppc64-softmmu.mak @@ -0,0 +1,8 @@ +TARGET_PPC64=y +TARGET_BASE_ARCH=ppc +TARGET_ABI_DIR=ppc +TARGET_SYSTBL_ABI=common,nospu,64 +TARGET_SYSTBL=syscall.tbl +TARGET_WORDS_BIGENDIAN=y +TARGET_SUPPORTS_MTTCG=y +TARGET_XML_FILES= gdb-xml/power64-core.xml gdb-xml/power-fpu.xml gdb-xml/power-altivec.xml gdb-xml/power-spe.xml gdb-xml/power-vsx.xml diff --git a/default-configs/targets/ppc64abi32-linux-user.mak b/default-configs/targets/ppc64abi32-linux-user.mak new file mode 100644 index 0000000000..13a02700aa --- /dev/null +++ b/default-configs/targets/ppc64abi32-linux-user.mak @@ -0,0 +1,8 @@ +TARGET_ABI32=y +TARGET_PPC64=y +TARGET_BASE_ARCH=ppc +TARGET_ABI_DIR=ppc +TARGET_SYSTBL_ABI=common,nospu,32 +TARGET_SYSTBL=syscall.tbl +TARGET_WORDS_BIGENDIAN=y +TARGET_XML_FILES= gdb-xml/power64-core.xml gdb-xml/power-fpu.xml gdb-xml/power-altivec.xml gdb-xml/power-spe.xml gdb-xml/power-vsx.xml diff --git a/default-configs/targets/ppc64le-linux-user.mak b/default-configs/targets/ppc64le-linux-user.mak new file mode 100644 index 0000000000..3dd54b894c --- /dev/null +++ b/default-configs/targets/ppc64le-linux-user.mak @@ -0,0 +1,6 @@ +TARGET_PPC64=y +TARGET_BASE_ARCH=ppc +TARGET_ABI_DIR=ppc +TARGET_SYSTBL_ABI=common,nospu,64 +TARGET_SYSTBL=syscall.tbl +TARGET_XML_FILES= gdb-xml/power64-core.xml gdb-xml/power-fpu.xml gdb-xml/power-altivec.xml gdb-xml/power-spe.xml gdb-xml/power-vsx.xml diff --git a/default-configs/targets/riscv32-linux-user.mak b/default-configs/targets/riscv32-linux-user.mak new file mode 100644 index 0000000000..91d72a46b0 --- /dev/null +++ b/default-configs/targets/riscv32-linux-user.mak @@ -0,0 +1,4 @@ +TARGET_RISCV32=y +TARGET_BASE_ARCH=riscv +TARGET_ABI_DIR=riscv +TARGET_XML_FILES= gdb-xml/riscv-32bit-cpu.xml gdb-xml/riscv-32bit-fpu.xml gdb-xml/riscv-64bit-fpu.xml gdb-xml/riscv-32bit-csr.xml gdb-xml/riscv-32bit-virtual.xml diff --git a/default-configs/targets/riscv32-softmmu.mak b/default-configs/targets/riscv32-softmmu.mak new file mode 100644 index 0000000000..35e5b2fb85 --- /dev/null +++ b/default-configs/targets/riscv32-softmmu.mak @@ -0,0 +1,5 @@ +TARGET_RISCV32=y +TARGET_BASE_ARCH=riscv +TARGET_ABI_DIR=riscv +TARGET_SUPPORTS_MTTCG=y +TARGET_XML_FILES= gdb-xml/riscv-32bit-cpu.xml gdb-xml/riscv-32bit-fpu.xml gdb-xml/riscv-64bit-fpu.xml gdb-xml/riscv-32bit-csr.xml gdb-xml/riscv-32bit-virtual.xml diff --git a/default-configs/targets/riscv64-linux-user.mak b/default-configs/targets/riscv64-linux-user.mak new file mode 100644 index 0000000000..9e53193cdb --- /dev/null +++ b/default-configs/targets/riscv64-linux-user.mak @@ -0,0 +1,4 @@ +TARGET_RISCV64=y +TARGET_BASE_ARCH=riscv +TARGET_ABI_DIR=riscv +TARGET_XML_FILES= gdb-xml/riscv-64bit-cpu.xml gdb-xml/riscv-32bit-fpu.xml gdb-xml/riscv-64bit-fpu.xml gdb-xml/riscv-64bit-csr.xml gdb-xml/riscv-64bit-virtual.xml diff --git a/default-configs/targets/riscv64-softmmu.mak b/default-configs/targets/riscv64-softmmu.mak new file mode 100644 index 0000000000..4b9a61cd8f --- /dev/null +++ b/default-configs/targets/riscv64-softmmu.mak @@ -0,0 +1,5 @@ +TARGET_RISCV64=y +TARGET_BASE_ARCH=riscv +TARGET_ABI_DIR=riscv +TARGET_SUPPORTS_MTTCG=y +TARGET_XML_FILES= gdb-xml/riscv-64bit-cpu.xml gdb-xml/riscv-32bit-fpu.xml gdb-xml/riscv-64bit-fpu.xml gdb-xml/riscv-64bit-csr.xml gdb-xml/riscv-64bit-virtual.xml diff --git a/default-configs/targets/rx-softmmu.mak b/default-configs/targets/rx-softmmu.mak new file mode 100644 index 0000000000..52a8c0df10 --- /dev/null +++ b/default-configs/targets/rx-softmmu.mak @@ -0,0 +1,4 @@ +TARGET_RX=y +TARGET_BASE_ARCH=rx +TARGET_ABI_DIR=rx +TARGET_XML_FILES= gdb-xml/rx-core.xml diff --git a/default-configs/targets/s390x-linux-user.mak b/default-configs/targets/s390x-linux-user.mak new file mode 100644 index 0000000000..77ebec769f --- /dev/null +++ b/default-configs/targets/s390x-linux-user.mak @@ -0,0 +1,7 @@ +TARGET_S390X=y +TARGET_BASE_ARCH=s390x +TARGET_ABI_DIR=s390x +TARGET_SYSTBL_ABI=common,64 +TARGET_SYSTBL=syscall.tbl +TARGET_WORDS_BIGENDIAN=y +TARGET_XML_FILES= gdb-xml/s390x-core64.xml gdb-xml/s390-acr.xml gdb-xml/s390-fpr.xml gdb-xml/s390-vx.xml gdb-xml/s390-cr.xml gdb-xml/s390-virt.xml gdb-xml/s390-gs.xml diff --git a/default-configs/targets/s390x-softmmu.mak b/default-configs/targets/s390x-softmmu.mak new file mode 100644 index 0000000000..f2a80d3208 --- /dev/null +++ b/default-configs/targets/s390x-softmmu.mak @@ -0,0 +1,8 @@ +TARGET_S390X=y +TARGET_BASE_ARCH=s390x +TARGET_ABI_DIR=s390x +TARGET_SYSTBL_ABI=common,64 +TARGET_SYSTBL=syscall.tbl +TARGET_WORDS_BIGENDIAN=y +TARGET_SUPPORTS_MTTCG=y +TARGET_XML_FILES= gdb-xml/s390x-core64.xml gdb-xml/s390-acr.xml gdb-xml/s390-fpr.xml gdb-xml/s390-vx.xml gdb-xml/s390-cr.xml gdb-xml/s390-virt.xml gdb-xml/s390-gs.xml diff --git a/default-configs/targets/sh4-linux-user.mak b/default-configs/targets/sh4-linux-user.mak new file mode 100644 index 0000000000..4292dd6128 --- /dev/null +++ b/default-configs/targets/sh4-linux-user.mak @@ -0,0 +1,7 @@ +TARGET_SH4=y +TARGET_BASE_ARCH=sh4 +TARGET_ABI_DIR=sh4 +TARGET_SYSTBL_ABI=common +TARGET_SYSTBL=syscall.tbl +TARGET_ALIGNED_ONLY=y +TARGET_HAS_BFLT=y diff --git a/default-configs/targets/sh4-softmmu.mak b/default-configs/targets/sh4-softmmu.mak new file mode 100644 index 0000000000..e46bf0e278 --- /dev/null +++ b/default-configs/targets/sh4-softmmu.mak @@ -0,0 +1,6 @@ +TARGET_SH4=y +TARGET_BASE_ARCH=sh4 +TARGET_ABI_DIR=sh4 +TARGET_SYSTBL_ABI=common +TARGET_SYSTBL=syscall.tbl +TARGET_ALIGNED_ONLY=y diff --git a/default-configs/targets/sh4eb-linux-user.mak b/default-configs/targets/sh4eb-linux-user.mak new file mode 100644 index 0000000000..cf9178f4ea --- /dev/null +++ b/default-configs/targets/sh4eb-linux-user.mak @@ -0,0 +1,8 @@ +TARGET_SH4=y +TARGET_BASE_ARCH=sh4 +TARGET_ABI_DIR=sh4 +TARGET_SYSTBL_ABI=common +TARGET_SYSTBL=syscall.tbl +TARGET_ALIGNED_ONLY=y +TARGET_WORDS_BIGENDIAN=y +TARGET_HAS_BFLT=y diff --git a/default-configs/targets/sh4eb-softmmu.mak b/default-configs/targets/sh4eb-softmmu.mak new file mode 100644 index 0000000000..db4140ec32 --- /dev/null +++ b/default-configs/targets/sh4eb-softmmu.mak @@ -0,0 +1,7 @@ +TARGET_SH4=y +TARGET_BASE_ARCH=sh4 +TARGET_ABI_DIR=sh4 +TARGET_SYSTBL_ABI=common +TARGET_SYSTBL=syscall.tbl +TARGET_ALIGNED_ONLY=y +TARGET_WORDS_BIGENDIAN=y diff --git a/default-configs/targets/sparc-bsd-user.mak b/default-configs/targets/sparc-bsd-user.mak new file mode 100644 index 0000000000..7f2fcba978 --- /dev/null +++ b/default-configs/targets/sparc-bsd-user.mak @@ -0,0 +1,7 @@ +TARGET_SPARC=y +TARGET_BASE_ARCH=sparc +TARGET_ABI_DIR=sparc +TARGET_SYSTBL_ABI=common,32 +TARGET_SYSTBL=syscall.tbl +TARGET_ALIGNED_ONLY=y +TARGET_WORDS_BIGENDIAN=y diff --git a/default-configs/targets/sparc-linux-user.mak b/default-configs/targets/sparc-linux-user.mak new file mode 100644 index 0000000000..7f2fcba978 --- /dev/null +++ b/default-configs/targets/sparc-linux-user.mak @@ -0,0 +1,7 @@ +TARGET_SPARC=y +TARGET_BASE_ARCH=sparc +TARGET_ABI_DIR=sparc +TARGET_SYSTBL_ABI=common,32 +TARGET_SYSTBL=syscall.tbl +TARGET_ALIGNED_ONLY=y +TARGET_WORDS_BIGENDIAN=y diff --git a/default-configs/targets/sparc-softmmu.mak b/default-configs/targets/sparc-softmmu.mak new file mode 100644 index 0000000000..7f2fcba978 --- /dev/null +++ b/default-configs/targets/sparc-softmmu.mak @@ -0,0 +1,7 @@ +TARGET_SPARC=y +TARGET_BASE_ARCH=sparc +TARGET_ABI_DIR=sparc +TARGET_SYSTBL_ABI=common,32 +TARGET_SYSTBL=syscall.tbl +TARGET_ALIGNED_ONLY=y +TARGET_WORDS_BIGENDIAN=y diff --git a/default-configs/targets/sparc32plus-linux-user.mak b/default-configs/targets/sparc32plus-linux-user.mak new file mode 100644 index 0000000000..f5fcb7879e --- /dev/null +++ b/default-configs/targets/sparc32plus-linux-user.mak @@ -0,0 +1,8 @@ +TARGET_ABI32=y +TARGET_SPARC64=y +TARGET_BASE_ARCH=sparc +TARGET_ABI_DIR=sparc +TARGET_SYSTBL_ABI=common,32 +TARGET_SYSTBL=syscall.tbl +TARGET_ALIGNED_ONLY=y +TARGET_WORDS_BIGENDIAN=y diff --git a/default-configs/targets/sparc64-bsd-user.mak b/default-configs/targets/sparc64-bsd-user.mak new file mode 100644 index 0000000000..817529e587 --- /dev/null +++ b/default-configs/targets/sparc64-bsd-user.mak @@ -0,0 +1,7 @@ +TARGET_SPARC64=y +TARGET_BASE_ARCH=sparc +TARGET_ABI_DIR=sparc64 +TARGET_SYSTBL_ABI=common,64 +TARGET_SYSTBL=syscall.tbl +TARGET_ALIGNED_ONLY=y +TARGET_WORDS_BIGENDIAN=y diff --git a/default-configs/targets/sparc64-linux-user.mak b/default-configs/targets/sparc64-linux-user.mak new file mode 100644 index 0000000000..817529e587 --- /dev/null +++ b/default-configs/targets/sparc64-linux-user.mak @@ -0,0 +1,7 @@ +TARGET_SPARC64=y +TARGET_BASE_ARCH=sparc +TARGET_ABI_DIR=sparc64 +TARGET_SYSTBL_ABI=common,64 +TARGET_SYSTBL=syscall.tbl +TARGET_ALIGNED_ONLY=y +TARGET_WORDS_BIGENDIAN=y diff --git a/default-configs/targets/sparc64-softmmu.mak b/default-configs/targets/sparc64-softmmu.mak new file mode 100644 index 0000000000..817529e587 --- /dev/null +++ b/default-configs/targets/sparc64-softmmu.mak @@ -0,0 +1,7 @@ +TARGET_SPARC64=y +TARGET_BASE_ARCH=sparc +TARGET_ABI_DIR=sparc64 +TARGET_SYSTBL_ABI=common,64 +TARGET_SYSTBL=syscall.tbl +TARGET_ALIGNED_ONLY=y +TARGET_WORDS_BIGENDIAN=y diff --git a/default-configs/targets/tilegx-linux-user.mak b/default-configs/targets/tilegx-linux-user.mak new file mode 100644 index 0000000000..064d3320d7 --- /dev/null +++ b/default-configs/targets/tilegx-linux-user.mak @@ -0,0 +1,3 @@ +TARGET_TILEGX=y +TARGET_BASE_ARCH=tilegx +TARGET_ABI_DIR=tilegx diff --git a/default-configs/targets/tricore-softmmu.mak b/default-configs/targets/tricore-softmmu.mak new file mode 100644 index 0000000000..356e5d8669 --- /dev/null +++ b/default-configs/targets/tricore-softmmu.mak @@ -0,0 +1,3 @@ +TARGET_TRICORE=y +TARGET_BASE_ARCH=tricore +TARGET_ABI_DIR=tricore diff --git a/default-configs/targets/unicore32-softmmu.mak b/default-configs/targets/unicore32-softmmu.mak new file mode 100644 index 0000000000..d8c7860ac1 --- /dev/null +++ b/default-configs/targets/unicore32-softmmu.mak @@ -0,0 +1,3 @@ +TARGET_UNICORE32=y +TARGET_BASE_ARCH=unicore32 +TARGET_ABI_DIR=unicore32 diff --git a/default-configs/targets/x86_64-bsd-user.mak b/default-configs/targets/x86_64-bsd-user.mak new file mode 100644 index 0000000000..6a9418f9ff --- /dev/null +++ b/default-configs/targets/x86_64-bsd-user.mak @@ -0,0 +1,6 @@ +TARGET_X86_64=y +TARGET_BASE_ARCH=i386 +TARGET_ABI_DIR=x86_64 +TARGET_SYSTBL_ABI=common,64 +TARGET_SYSTBL=syscall_64.tbl +TARGET_XML_FILES= gdb-xml/i386-64bit.xml diff --git a/default-configs/targets/x86_64-linux-user.mak b/default-configs/targets/x86_64-linux-user.mak new file mode 100644 index 0000000000..6a9418f9ff --- /dev/null +++ b/default-configs/targets/x86_64-linux-user.mak @@ -0,0 +1,6 @@ +TARGET_X86_64=y +TARGET_BASE_ARCH=i386 +TARGET_ABI_DIR=x86_64 +TARGET_SYSTBL_ABI=common,64 +TARGET_SYSTBL=syscall_64.tbl +TARGET_XML_FILES= gdb-xml/i386-64bit.xml diff --git a/default-configs/targets/x86_64-softmmu.mak b/default-configs/targets/x86_64-softmmu.mak new file mode 100644 index 0000000000..8b56e6e6da --- /dev/null +++ b/default-configs/targets/x86_64-softmmu.mak @@ -0,0 +1,7 @@ +TARGET_X86_64=y +TARGET_BASE_ARCH=i386 +TARGET_ABI_DIR=x86_64 +TARGET_SYSTBL_ABI=common,64 +TARGET_SYSTBL=syscall_64.tbl +TARGET_SUPPORTS_MTTCG=y +TARGET_XML_FILES= gdb-xml/i386-64bit.xml diff --git a/default-configs/targets/xtensa-linux-user.mak b/default-configs/targets/xtensa-linux-user.mak new file mode 100644 index 0000000000..63d9cff69f --- /dev/null +++ b/default-configs/targets/xtensa-linux-user.mak @@ -0,0 +1,7 @@ +TARGET_XTENSA=y +TARGET_BASE_ARCH=xtensa +TARGET_ABI_DIR=xtensa +TARGET_SYSTBL_ABI=common +TARGET_SYSTBL=syscall.tbl +TARGET_ALIGNED_ONLY=y +TARGET_HAS_BFLT=y diff --git a/default-configs/targets/xtensa-softmmu.mak b/default-configs/targets/xtensa-softmmu.mak new file mode 100644 index 0000000000..2166f97738 --- /dev/null +++ b/default-configs/targets/xtensa-softmmu.mak @@ -0,0 +1,7 @@ +TARGET_XTENSA=y +TARGET_BASE_ARCH=xtensa +TARGET_ABI_DIR=xtensa +TARGET_SYSTBL_ABI=common +TARGET_SYSTBL=syscall.tbl +TARGET_ALIGNED_ONLY=y +TARGET_SUPPORTS_MTTCG=y diff --git a/default-configs/targets/xtensaeb-linux-user.mak b/default-configs/targets/xtensaeb-linux-user.mak new file mode 100644 index 0000000000..e66b7dd0e3 --- /dev/null +++ b/default-configs/targets/xtensaeb-linux-user.mak @@ -0,0 +1,8 @@ +TARGET_XTENSA=y +TARGET_BASE_ARCH=xtensa +TARGET_ABI_DIR=xtensa +TARGET_SYSTBL_ABI=common +TARGET_SYSTBL=syscall.tbl +TARGET_ALIGNED_ONLY=y +TARGET_WORDS_BIGENDIAN=y +TARGET_HAS_BFLT=y diff --git a/default-configs/targets/xtensaeb-softmmu.mak b/default-configs/targets/xtensaeb-softmmu.mak new file mode 100644 index 0000000000..2372d22492 --- /dev/null +++ b/default-configs/targets/xtensaeb-softmmu.mak @@ -0,0 +1,8 @@ +TARGET_XTENSA=y +TARGET_BASE_ARCH=xtensa +TARGET_ABI_DIR=xtensa +TARGET_SYSTBL_ABI=common +TARGET_SYSTBL=syscall.tbl +TARGET_ALIGNED_ONLY=y +TARGET_WORDS_BIGENDIAN=y +TARGET_SUPPORTS_MTTCG=y diff --git a/meson.build b/meson.build index 6863b9febf..5ddaf16b88 100644 --- a/meson.build +++ b/meson.build @@ -722,13 +722,25 @@ kconfig_external_symbols = [ ] ignored = ['TARGET_XML_FILES', 'TARGET_ABI_DIR', 'TARGET_DIRS'] +default_targets = 'CONFIG_DEFAULT_TARGETS' in config_host +actual_target_dirs = [] foreach target : target_dirs config_target = { 'TARGET_NAME': target.split('-')[0] } if target.endswith('linux-user') - assert(targetos == 'linux') + if targetos != 'linux' + if default_targets + continue + endif + error('Target @0@ is only available on a Linux host'.format(target)) + endif config_target += { 'CONFIG_LINUX_USER': 'y' } elif target.endswith('bsd-user') - assert('CONFIG_BSD' in config_host) + if not 'CONFIG_BSD' in config_host + if default_targets + continue + endif + error('Target @0@ is only available on a BSD host'.format(target)) + endif config_target += { 'CONFIG_BSD_USER': 'y' } elif target.endswith('softmmu') config_target += { 'CONFIG_SOFTMMU': 'y' } @@ -752,8 +764,14 @@ foreach target : target_dirs endif have_accel = true endforeach - assert(have_accel) + if not have_accel + if default_targets + continue + endif + error('No accelerator available for target @0@'.format(target)) + endif + actual_target_dirs += target config_target += keyval.load('default-configs/targets' / target + '.mak') foreach k, v: disassemblers @@ -815,6 +833,7 @@ foreach target : target_dirs endif config_target_mak += {target: config_target} endforeach +target_dirs = actual_target_dirs # This configuration is used to build files that are shared by # multiple binaries, and then extracted out of the "common" @@ -1600,7 +1619,7 @@ if config_host.has_key('CONFIG_MODULES') endif summary_info += {'host CPU': cpu} summary_info += {'host endianness': build_machine.endian()} -summary_info += {'target list': config_host['TARGET_DIRS']} +summary_info += {'target list': ' '.join(target_dirs)} summary_info += {'gprof enabled': config_host.has_key('CONFIG_GPROF')} summary_info += {'sparse enabled': meson.get_compiler('c').cmd_array().contains('cgcc')} summary_info += {'strip binaries': get_option('strip')}
The config-target.mak files are small constant, we can therefore just write them down explicitly. This removes about 10% of the configure script, including the whole logic to detect which accelerators are supported by each target. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> --- configure | 407 +----------------- .../targets/aarch64-linux-user.mak | 5 + default-configs/targets/aarch64-softmmu.mak | 5 + .../targets/aarch64_be-linux-user.mak | 6 + default-configs/targets/alpha-linux-user.mak | 6 + default-configs/targets/alpha-softmmu.mak | 7 + default-configs/targets/arm-linux-user.mak | 7 + default-configs/targets/arm-softmmu.mak | 7 + default-configs/targets/armeb-linux-user.mak | 8 + default-configs/targets/avr-softmmu.mak | 4 + default-configs/targets/cris-linux-user.mak | 3 + default-configs/targets/cris-softmmu.mak | 3 + default-configs/targets/hppa-linux-user.mak | 7 + default-configs/targets/hppa-softmmu.mak | 8 + default-configs/targets/i386-bsd-user.mak | 6 + default-configs/targets/i386-linux-user.mak | 6 + default-configs/targets/i386-softmmu.mak | 7 + default-configs/targets/lm32-softmmu.mak | 4 + default-configs/targets/m68k-linux-user.mak | 8 + default-configs/targets/m68k-softmmu.mak | 7 + .../targets/microblaze-linux-user.mak | 7 + .../targets/microblaze-softmmu.mak | 7 + .../targets/microblazeel-linux-user.mak | 6 + .../targets/microblazeel-softmmu.mak | 6 + default-configs/targets/mips-linux-user.mak | 8 + default-configs/targets/mips-softmmu.mak | 9 + default-configs/targets/mips64-linux-user.mak | 8 + default-configs/targets/mips64-softmmu.mak | 8 + .../targets/mips64el-linux-user.mak | 7 + default-configs/targets/mips64el-softmmu.mak | 7 + default-configs/targets/mipsel-linux-user.mak | 7 + default-configs/targets/mipsel-softmmu.mak | 8 + .../targets/mipsn32-linux-user.mak | 9 + .../targets/mipsn32el-linux-user.mak | 8 + default-configs/targets/moxie-softmmu.mak | 4 + default-configs/targets/nios2-linux-user.mak | 3 + default-configs/targets/nios2-softmmu.mak | 3 + default-configs/targets/or1k-linux-user.mak | 4 + default-configs/targets/or1k-softmmu.mak | 4 + default-configs/targets/ppc-linux-user.mak | 7 + default-configs/targets/ppc-softmmu.mak | 7 + default-configs/targets/ppc64-linux-user.mak | 7 + default-configs/targets/ppc64-softmmu.mak | 8 + .../targets/ppc64abi32-linux-user.mak | 8 + .../targets/ppc64le-linux-user.mak | 6 + .../targets/riscv32-linux-user.mak | 4 + default-configs/targets/riscv32-softmmu.mak | 5 + .../targets/riscv64-linux-user.mak | 4 + default-configs/targets/riscv64-softmmu.mak | 5 + default-configs/targets/rx-softmmu.mak | 4 + default-configs/targets/s390x-linux-user.mak | 7 + default-configs/targets/s390x-softmmu.mak | 8 + default-configs/targets/sh4-linux-user.mak | 7 + default-configs/targets/sh4-softmmu.mak | 6 + default-configs/targets/sh4eb-linux-user.mak | 8 + default-configs/targets/sh4eb-softmmu.mak | 7 + default-configs/targets/sparc-bsd-user.mak | 7 + default-configs/targets/sparc-linux-user.mak | 7 + default-configs/targets/sparc-softmmu.mak | 7 + .../targets/sparc32plus-linux-user.mak | 8 + default-configs/targets/sparc64-bsd-user.mak | 7 + .../targets/sparc64-linux-user.mak | 7 + default-configs/targets/sparc64-softmmu.mak | 7 + default-configs/targets/tilegx-linux-user.mak | 3 + default-configs/targets/tricore-softmmu.mak | 3 + default-configs/targets/unicore32-softmmu.mak | 3 + default-configs/targets/x86_64-bsd-user.mak | 6 + default-configs/targets/x86_64-linux-user.mak | 6 + default-configs/targets/x86_64-softmmu.mak | 7 + default-configs/targets/xtensa-linux-user.mak | 7 + default-configs/targets/xtensa-softmmu.mak | 7 + .../targets/xtensaeb-linux-user.mak | 8 + default-configs/targets/xtensaeb-softmmu.mak | 8 + meson.build | 27 +- 74 files changed, 482 insertions(+), 405 deletions(-) create mode 100644 default-configs/targets/aarch64-linux-user.mak create mode 100644 default-configs/targets/aarch64-softmmu.mak create mode 100644 default-configs/targets/aarch64_be-linux-user.mak create mode 100644 default-configs/targets/alpha-linux-user.mak create mode 100644 default-configs/targets/alpha-softmmu.mak create mode 100644 default-configs/targets/arm-linux-user.mak create mode 100644 default-configs/targets/arm-softmmu.mak create mode 100644 default-configs/targets/armeb-linux-user.mak create mode 100644 default-configs/targets/avr-softmmu.mak create mode 100644 default-configs/targets/cris-linux-user.mak create mode 100644 default-configs/targets/cris-softmmu.mak create mode 100644 default-configs/targets/hppa-linux-user.mak create mode 100644 default-configs/targets/hppa-softmmu.mak create mode 100644 default-configs/targets/i386-bsd-user.mak create mode 100644 default-configs/targets/i386-linux-user.mak create mode 100644 default-configs/targets/i386-softmmu.mak create mode 100644 default-configs/targets/lm32-softmmu.mak create mode 100644 default-configs/targets/m68k-linux-user.mak create mode 100644 default-configs/targets/m68k-softmmu.mak create mode 100644 default-configs/targets/microblaze-linux-user.mak create mode 100644 default-configs/targets/microblaze-softmmu.mak create mode 100644 default-configs/targets/microblazeel-linux-user.mak create mode 100644 default-configs/targets/microblazeel-softmmu.mak create mode 100644 default-configs/targets/mips-linux-user.mak create mode 100644 default-configs/targets/mips-softmmu.mak create mode 100644 default-configs/targets/mips64-linux-user.mak create mode 100644 default-configs/targets/mips64-softmmu.mak create mode 100644 default-configs/targets/mips64el-linux-user.mak create mode 100644 default-configs/targets/mips64el-softmmu.mak create mode 100644 default-configs/targets/mipsel-linux-user.mak create mode 100644 default-configs/targets/mipsel-softmmu.mak create mode 100644 default-configs/targets/mipsn32-linux-user.mak create mode 100644 default-configs/targets/mipsn32el-linux-user.mak create mode 100644 default-configs/targets/moxie-softmmu.mak create mode 100644 default-configs/targets/nios2-linux-user.mak create mode 100644 default-configs/targets/nios2-softmmu.mak create mode 100644 default-configs/targets/or1k-linux-user.mak create mode 100644 default-configs/targets/or1k-softmmu.mak create mode 100644 default-configs/targets/ppc-linux-user.mak create mode 100644 default-configs/targets/ppc-softmmu.mak create mode 100644 default-configs/targets/ppc64-linux-user.mak create mode 100644 default-configs/targets/ppc64-softmmu.mak create mode 100644 default-configs/targets/ppc64abi32-linux-user.mak create mode 100644 default-configs/targets/ppc64le-linux-user.mak create mode 100644 default-configs/targets/riscv32-linux-user.mak create mode 100644 default-configs/targets/riscv32-softmmu.mak create mode 100644 default-configs/targets/riscv64-linux-user.mak create mode 100644 default-configs/targets/riscv64-softmmu.mak create mode 100644 default-configs/targets/rx-softmmu.mak create mode 100644 default-configs/targets/s390x-linux-user.mak create mode 100644 default-configs/targets/s390x-softmmu.mak create mode 100644 default-configs/targets/sh4-linux-user.mak create mode 100644 default-configs/targets/sh4-softmmu.mak create mode 100644 default-configs/targets/sh4eb-linux-user.mak create mode 100644 default-configs/targets/sh4eb-softmmu.mak create mode 100644 default-configs/targets/sparc-bsd-user.mak create mode 100644 default-configs/targets/sparc-linux-user.mak create mode 100644 default-configs/targets/sparc-softmmu.mak create mode 100644 default-configs/targets/sparc32plus-linux-user.mak create mode 100644 default-configs/targets/sparc64-bsd-user.mak create mode 100644 default-configs/targets/sparc64-linux-user.mak create mode 100644 default-configs/targets/sparc64-softmmu.mak create mode 100644 default-configs/targets/tilegx-linux-user.mak create mode 100644 default-configs/targets/tricore-softmmu.mak create mode 100644 default-configs/targets/unicore32-softmmu.mak create mode 100644 default-configs/targets/x86_64-bsd-user.mak create mode 100644 default-configs/targets/x86_64-linux-user.mak create mode 100644 default-configs/targets/x86_64-softmmu.mak create mode 100644 default-configs/targets/xtensa-linux-user.mak create mode 100644 default-configs/targets/xtensa-softmmu.mak create mode 100644 default-configs/targets/xtensaeb-linux-user.mak create mode 100644 default-configs/targets/xtensaeb-softmmu.mak