qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Richard Henderson <richard.henderson@linaro.org>
To: Paolo Bonzini <pbonzini@redhat.com>, qemu-devel@nongnu.org
Subject: Re: [PULL 07/16] configure, meson: move ARCH to meson.build
Date: Mon, 20 Dec 2021 18:46:16 -0800	[thread overview]
Message-ID: <29e8d139-58e8-6aa3-c9a8-0d13c9c88eaf@linaro.org> (raw)
In-Reply-To: <20211219141711.248066-8-pbonzini@redhat.com>

On 12/19/21 6:17 AM, Paolo Bonzini wrote:
> $ARCH and the HOST_* symbols are only used by the QEMU build; configure
> uses $cpu instead.  Remove it from config-host.mak.
> 
> Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
> ---
>   configure   | 21 ++++-----------------
>   meson.build | 26 +++++++++++++++++---------
>   2 files changed, 21 insertions(+), 26 deletions(-)

This broke the cross-compiler infrastructure for tests, because tests/tcg/configure.sh 
uses $ARCH, which is no longer defined.


r~


> 
> diff --git a/configure b/configure
> index 108b7621e2..6e06ac6161 100755
> --- a/configure
> +++ b/configure
> @@ -635,11 +635,9 @@ else
>     cpu=$(uname -m)
>   fi
>   
> -ARCH=
> -# Normalise host CPU name, set ARCH and multilib cflags
> +# Normalise host CPU name, set multilib cflags
>   # Note that this case should only have supported host CPUs, not guests.
>   case "$cpu" in
> -  aarch64|riscv) ;;
>     armv*b|armv*l|arm)
>       cpu="arm" ;;
>   
> @@ -668,8 +666,7 @@ case "$cpu" in
>       CPU_CFLAGS="-m64 -mlittle" ;;
>   
>     s390)
> -    CPU_CFLAGS="-m31"
> -    ARCH=unknown ;;
> +    CPU_CFLAGS="-m31" ;;
>     s390x)
>       CPU_CFLAGS="-m64" ;;
>   
> @@ -678,15 +675,7 @@ case "$cpu" in
>       CPU_CFLAGS="-m32 -mv8plus -mcpu=ultrasparc" ;;
>     sparc64)
>       CPU_CFLAGS="-m64 -mcpu=ultrasparc" ;;
> -
> -  *)
> -    # This will result in either an error or falling back to TCI later
> -    ARCH=unknown
> -  ;;
>   esac
> -if test -z "$ARCH"; then
> -  ARCH="$cpu"
> -fi
>   
>   : ${make=${MAKE-make}}
>   
> @@ -3406,8 +3395,6 @@ echo "GIT=$git" >> $config_host_mak
>   echo "GIT_SUBMODULES=$git_submodules" >> $config_host_mak
>   echo "GIT_SUBMODULES_ACTION=$git_submodules_action" >> $config_host_mak
>   
> -echo "ARCH=$ARCH" >> $config_host_mak
> -
>   if test "$debug_tcg" = "yes" ; then
>     echo "CONFIG_DEBUG_TCG=y" >> $config_host_mak
>   fi
> @@ -3898,12 +3885,12 @@ if test "$skip_meson" = no; then
>       cross_arg="--cross-file config-meson.cross"
>       echo "[host_machine]" >> $cross
>       echo "system = '$targetos'" >> $cross
> -    case "$ARCH" in
> +    case "$cpu" in
>           i386)
>               echo "cpu_family = 'x86'" >> $cross
>               ;;
>           *)
> -            echo "cpu_family = '$ARCH'" >> $cross
> +            echo "cpu_family = '$cpu'" >> $cross
>               ;;
>       esac
>       echo "cpu = '$cpu'" >> $cross
> diff --git a/meson.build b/meson.build
> index 4fdaa65b05..2495360fd0 100644
> --- a/meson.build
> +++ b/meson.build
> @@ -67,6 +67,14 @@ endif
>   
>   targetos = host_machine.system()
>   
> +if cpu not in supported_cpus
> +  host_arch = 'unknown'
> +elif cpu == 'x86'
> +  host_arch = 'i386'
> +else
> +  host_arch = cpu
> +endif
> +
>   if cpu in ['x86', 'x86_64']
>     kvm_targets = ['i386-softmmu', 'x86_64-softmmu']
>   elif cpu == 'aarch64'
> @@ -335,9 +343,9 @@ if targetos == 'netbsd'
>     endif
>   endif
>   
> -tcg_arch = config_host['ARCH']
> +tcg_arch = host_arch
>   if not get_option('tcg').disabled()
> -  if cpu not in supported_cpus
> +  if host_arch == 'unknown'
>       if get_option('tcg_interpreter')
>         warning('Unsupported CPU @0@, will use TCG with TCI (slow)'.format(cpu))
>       else
> @@ -353,11 +361,11 @@ if not get_option('tcg').disabled()
>     endif
>     if get_option('tcg_interpreter')
>       tcg_arch = 'tci'
> -  elif config_host['ARCH'] == 'sparc64'
> +  elif host_arch == 'sparc64'
>       tcg_arch = 'sparc'
> -  elif config_host['ARCH'] == 'x86_64'
> +  elif host_arch == 'x86_64'
>       tcg_arch = 'i386'
> -  elif config_host['ARCH'] == 'ppc64'
> +  elif host_arch == 'ppc64'
>       tcg_arch = 'ppc'
>     endif
>     add_project_arguments('-iquote', meson.current_source_dir() / 'tcg' / tcg_arch,
> @@ -1426,6 +1434,8 @@ config_host_data.set_quoted('CONFIG_QEMU_LOCALSTATEDIR', get_option('prefix') /
>   config_host_data.set_quoted('CONFIG_QEMU_MODDIR', get_option('prefix') / qemu_moddir)
>   config_host_data.set_quoted('CONFIG_SYSCONFDIR', get_option('prefix') / get_option('sysconfdir'))
>   
> +config_host_data.set('HOST_' + host_arch.to_upper(), 1)
> +
>   config_host_data.set('CONFIG_ATTR', libattr.found())
>   config_host_data.set('CONFIG_BRLAPI', brlapi.found())
>   config_host_data.set('CONFIG_COCOA', cocoa.found())
> @@ -1775,8 +1785,6 @@ foreach k, v: config_host
>         v = '"' + '", "'.join(v.split()) + '", '
>       endif
>       config_host_data.set(k, v)
> -  elif k == 'ARCH'
> -    config_host_data.set('HOST_' + v.to_upper(), 1)
>     elif strings.contains(k)
>       config_host_data.set_quoted(k, v)
>     elif k.startswith('CONFIG_')
> @@ -1919,7 +1927,7 @@ foreach target : target_dirs
>     endif
>   
>     foreach k, v: disassemblers
> -    if config_host['ARCH'].startswith(k) or config_target['TARGET_BASE_ARCH'].startswith(k)
> +    if host_arch.startswith(k) or config_target['TARGET_BASE_ARCH'].startswith(k)
>         foreach sym: v
>           config_target += { sym: 'y' }
>           config_all_disas += { sym: 'y' }
> @@ -2888,7 +2896,7 @@ foreach target : target_dirs
>       endif
>       if 'CONFIG_LINUX_USER' in config_target
>         base_dir = 'linux-user'
> -      target_inc += include_directories('linux-user/host/' / config_host['ARCH'])
> +      target_inc += include_directories('linux-user/host/' / host_arch)
>       endif
>       if 'CONFIG_BSD_USER' in config_target
>         base_dir = 'bsd-user'
> 



  reply	other threads:[~2021-12-21  2:47 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-12-19 14:16 [PULL 00/16] Misc patches for 2021-12-20 Paolo Bonzini
2021-12-19 14:16 ` [PULL 01/16] configure: make $targetos lowercase, use windows instead of MINGW32 Paolo Bonzini
2021-12-19 14:16 ` [PULL 02/16] configure: move target detection before CPU detection Paolo Bonzini
2021-12-19 14:16 ` [PULL 03/16] configure: unify two case statements on $cpu Paolo Bonzini
2021-12-19 14:16 ` [PULL 04/16] configure: unify ppc64 and ppc64le Paolo Bonzini
2021-12-19 14:17 ` [PULL 05/16] configure: unify x86_64 and x32 Paolo Bonzini
2021-12-19 14:17 ` [PULL 06/16] meson: rename "arch" variable Paolo Bonzini
2021-12-19 14:17 ` [PULL 07/16] configure, meson: move ARCH to meson.build Paolo Bonzini
2021-12-21  2:46   ` Richard Henderson [this message]
2022-07-19 13:00   ` Peter Maydell
2022-07-19 18:10     ` Paolo Bonzini
2022-07-20  0:51       ` Richard Henderson
2021-12-19 14:17 ` [PULL 08/16] configure: remove unnecessary symlinks Paolo Bonzini
2021-12-19 14:17 ` [PULL 09/16] configure: remove DIRS Paolo Bonzini
2022-01-07 11:02   ` Thomas Huth
2021-12-19 14:17 ` [PULL 10/16] meson: reenable test-fdmon-epoll Paolo Bonzini
2021-12-19 14:17 ` [PULL 11/16] cpu: remove unnecessary #ifdef CONFIG_TCG Paolo Bonzini
2021-12-19 14:20 ` [PULL 12/16] meson: add "check" argument to run_command Paolo Bonzini
2021-12-19 14:20 ` [PULL 13/16] hw/scsi: Fix scsi_bus_init_named() docstring Paolo Bonzini
2021-12-19 14:20 ` [PULL 14/16] hw/scsi/megasas: Fails command if SGL buffer overflows Paolo Bonzini
2021-12-19 14:20 ` [PULL 15/16] tests/qtest/fuzz-megasas-test: Add test for GitLab issue #521 Paolo Bonzini
2021-12-19 14:20 ` [PULL 16/16] hw/i386/vmmouse: Require 'i8042' property to be set Paolo Bonzini
2021-12-20  4:47 ` [PULL 00/16] Misc patches for 2021-12-20 Richard Henderson

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=29e8d139-58e8-6aa3-c9a8-0d13c9c88eaf@linaro.org \
    --to=richard.henderson@linaro.org \
    --cc=pbonzini@redhat.com \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).