Add a rule to return the base architecture for a QEMU target. The current list of TARGET_BASE_ARCH is:
$ git grep TARGET_BASE_ARCH configure configure:7785:TARGET_BASE_ARCH="" configure:7795: TARGET_BASE_ARCH=i386 configure:7813: TARGET_BASE_ARCH=arm configure:7846: TARGET_BASE_ARCH=mips configure:7854: TARGET_BASE_ARCH=mips configure:7864: TARGET_BASE_ARCH=openrisc configure:7871: TARGET_BASE_ARCH=ppc configure:7879: TARGET_BASE_ARCH=ppc configure:7887: TARGET_BASE_ARCH=ppc configure:7894: TARGET_BASE_ARCH=riscv configure:7900: TARGET_BASE_ARCH=riscv configure:7920: TARGET_BASE_ARCH=sparc configure:7925: TARGET_BASE_ARCH=sparc Signed-off-by: Philippe Mathieu-Daudé <phi...@redhat.com> --- rules.mak | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/rules.mak b/rules.mak index 694865b63e..55810d0cd6 100644 --- a/rules.mak +++ b/rules.mak @@ -438,3 +438,19 @@ atomic = $(eval $1: $(call sentinel,$1) ; @:) \ print-%: @echo '$*=$($*)' + +# base-arch +# Usage: $(call base-arch, target) +# +# @target: the target architecture. +# +# This macro will return the base architecture for a target. +# +# As example, $(call base-arch, aarch64) returns 'arm'. +base-arch = $(subst $(SPACE),,\ + $(if $(findstring mips,$1),mips,\ + $(if $(findstring ppc,$1),ppc,\ + $(if $(findstring risc,$1),risc,\ + $(if $(findstring sparc,$1),sparc,\ + $(if $(findstring x86,$1),i386,\ + $(if $(findstring aarch64,$1),arm,$1))))))) -- 2.21.3