qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PULL 07/16] configure, meson: move ARCH to meson.build


From: Richard Henderson
Subject: Re: [PULL 07/16] configure, meson: move ARCH to meson.build
Date: Mon, 20 Dec 2021 18:46:16 -0800
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.14.0

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 via email to

[Prev in Thread] Current Thread [Next in Thread]