From: Thomas De Schampheleire <patrickdepinguin@gmail.com>
To: buildroot@buildroot.org
Cc: ARC Maintainers <arc-buildroot@synopsys.com>,
Guo Ren <ren_guo@c-sky.com>, Mark Corbin <mark@dibsco.co.uk>,
Alexander Egorenkov <egorenar@linux.ibm.com>,
Nylon Chen <nylon7@andestech.com>,
Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>,
Thomas Petazzoni <thomas.petazzoni@bootlin.com>,
Spenser Gilliland <spenser@gillilanding.com>,
romain.naour@gmail.com, Cyril Bur <cyrilbur@gmail.com>,
Thomas De Schampheleire <thomas.de_schampheleire@nokia.com>
Subject: [Buildroot] [PATCHv2 1/7] arch: move definition of KERNEL_ARCH to Config.in.<arch> files
Date: Sat, 15 Jan 2022 21:02:59 +0100 [thread overview]
Message-ID: <20220115200306.14037-2-patrickdepinguin@gmail.com> (raw)
In-Reply-To: <20220115200306.14037-1-patrickdepinguin@gmail.com>
From: Thomas De Schampheleire <thomas.de_schampheleire@nokia.com>
Similar to other arch-specific strings, the 'KERNEL_ARCH' variable can be
determined from Config.in.<arch> files.
Besides aligning with similar strings, this also means simplification: the
big 'sed' covers several architectures not even supported by Buildroot.
Signed-off-by: Thomas De Schampheleire <thomas.de_schampheleire@nokia.com>
Reviewed-by: Romain Naour <romain.naour@gmail.com>
---
Makefile | 17 +----------------
arch/Config.in | 3 +++
arch/Config.in.arc | 3 +++
arch/Config.in.arm | 4 ++++
arch/Config.in.csky | 3 +++
arch/Config.in.m68k | 3 +++
arch/Config.in.microblaze | 3 +++
arch/Config.in.mips | 3 +++
arch/Config.in.nds32 | 3 +++
arch/Config.in.nios2 | 3 +++
arch/Config.in.or1k | 3 +++
arch/Config.in.powerpc | 3 +++
arch/Config.in.riscv | 3 +++
arch/Config.in.s390x | 3 +++
arch/Config.in.sh | 3 +++
arch/Config.in.sparc | 4 ++++
arch/Config.in.x86 | 4 ++++
arch/Config.in.xtensa | 3 +++
18 files changed, 55 insertions(+), 16 deletions(-)
diff --git a/Makefile b/Makefile
index 5fc7137e5a..e012d121b9 100644
--- a/Makefile
+++ b/Makefile
@@ -437,22 +437,7 @@ QUIET := $(if $(findstring s,$(filter-out --%,$(MAKEFLAGS))),-q)
# Strip off the annoying quoting
ARCH := $(call qstrip,$(BR2_ARCH))
-
-KERNEL_ARCH := $(shell echo "$(ARCH)" | sed -e "s/-.*//" \
- -e s/i.86/i386/ -e s/sun4u/sparc64/ \
- -e s/arcle/arc/ \
- -e s/arceb/arc/ \
- -e s/arm.*/arm/ -e s/sa110/arm/ \
- -e s/aarch64.*/arm64/ \
- -e s/nds32.*/nds32/ \
- -e s/or1k/openrisc/ \
- -e s/parisc64/parisc/ \
- -e s/powerpc64.*/powerpc/ \
- -e s/ppc.*/powerpc/ -e s/mips.*/mips/ \
- -e s/riscv.*/riscv/ \
- -e s/sh.*/sh/ \
- -e s/s390x/s390/ \
- -e s/microblazeel/microblaze/)
+KERNEL_ARCH := $(call qstrip,$(BR2_KERNEL_ARCH))
ZCAT := $(call qstrip,$(BR2_ZCAT))
BZCAT := $(call qstrip,$(BR2_BZCAT))
diff --git a/arch/Config.in b/arch/Config.in
index c99af89efa..edf337f13e 100644
--- a/arch/Config.in
+++ b/arch/Config.in
@@ -328,6 +328,9 @@ config BR2_ARCH_NEEDS_GCC_AT_LEAST_11
config BR2_ARCH
string
+config BR2_KERNEL_ARCH
+ string
+
config BR2_ENDIAN
string
diff --git a/arch/Config.in.arc b/arch/Config.in.arc
index f7a6d920b5..cc55c9e68f 100644
--- a/arch/Config.in.arc
+++ b/arch/Config.in.arc
@@ -62,6 +62,9 @@ config BR2_ARCH
default "arc" if BR2_arcle
default "arceb" if BR2_arceb
+config BR2_KERNEL_ARCH
+ default "arc"
+
config BR2_arc
bool
default y if BR2_arcle || BR2_arceb
diff --git a/arch/Config.in.arm b/arch/Config.in.arm
index 4c0910e4f8..0f50512fad 100644
--- a/arch/Config.in.arm
+++ b/arch/Config.in.arm
@@ -822,6 +822,10 @@ config BR2_ARCH
default "aarch64" if BR2_aarch64
default "aarch64_be" if BR2_aarch64_be
+config BR2_KERNEL_ARCH
+ default "arm" if BR2_arm || BR2_armeb
+ default "arm64" if BR2_aarch64 || BR2_aarch64_be
+
config BR2_ENDIAN
default "LITTLE" if (BR2_arm || BR2_aarch64)
default "BIG" if (BR2_armeb || BR2_aarch64_be)
diff --git a/arch/Config.in.csky b/arch/Config.in.csky
index 7e2029f759..df9e7ab75b 100644
--- a/arch/Config.in.csky
+++ b/arch/Config.in.csky
@@ -39,6 +39,9 @@ config BR2_GCC_TARGET_FLOAT_ABI
config BR2_ARCH
default "csky"
+config BR2_KERNEL_ARCH
+ default "csky"
+
config BR2_ENDIAN
default "LITTLE"
diff --git a/arch/Config.in.m68k b/arch/Config.in.m68k
index 275f47f1d3..7f3aec7232 100644
--- a/arch/Config.in.m68k
+++ b/arch/Config.in.m68k
@@ -1,6 +1,9 @@
config BR2_ARCH
default "m68k" if BR2_m68k
+config BR2_KERNEL_ARCH
+ default "m68k"
+
config BR2_ENDIAN
default "BIG"
diff --git a/arch/Config.in.microblaze b/arch/Config.in.microblaze
index 5fe2906d40..52aa252a2c 100644
--- a/arch/Config.in.microblaze
+++ b/arch/Config.in.microblaze
@@ -2,6 +2,9 @@ config BR2_ARCH
default "microblazeel" if BR2_microblazeel
default "microblaze" if BR2_microblazebe
+config BR2_KERNEL_ARCH
+ default "microblaze"
+
config BR2_ENDIAN
default "LITTLE" if BR2_microblazeel
default "BIG" if BR2_microblazebe
diff --git a/arch/Config.in.mips b/arch/Config.in.mips
index 619456c2d5..b4923f8484 100644
--- a/arch/Config.in.mips
+++ b/arch/Config.in.mips
@@ -235,6 +235,9 @@ config BR2_ARCH
default "mips64" if BR2_mips64
default "mips64el" if BR2_mips64el
+config BR2_KERNEL_ARCH
+ default "mips"
+
config BR2_ENDIAN
default "LITTLE" if BR2_mipsel || BR2_mips64el
default "BIG" if BR2_mips || BR2_mips64
diff --git a/arch/Config.in.nds32 b/arch/Config.in.nds32
index 322ff49f2e..61fc346260 100644
--- a/arch/Config.in.nds32
+++ b/arch/Config.in.nds32
@@ -1,6 +1,9 @@
config BR2_ARCH
default "nds32le"
+config BR2_KERNEL_ARCH
+ default "nds32"
+
config BR2_GCC_TARGET_ARCH
default "v3"
diff --git a/arch/Config.in.nios2 b/arch/Config.in.nios2
index aae435fa17..c77b1a1c59 100644
--- a/arch/Config.in.nios2
+++ b/arch/Config.in.nios2
@@ -1,6 +1,9 @@
config BR2_ARCH
default "nios2"
+config BR2_KERNEL_ARCH
+ default "nios2"
+
config BR2_ENDIAN
default "LITTLE"
diff --git a/arch/Config.in.or1k b/arch/Config.in.or1k
index abdf498fb8..ef1bded453 100644
--- a/arch/Config.in.or1k
+++ b/arch/Config.in.or1k
@@ -1,6 +1,9 @@
config BR2_ARCH
default "or1k"
+config BR2_KERNEL_ARCH
+ default "openrisc"
+
config BR2_ENDIAN
default "BIG"
diff --git a/arch/Config.in.powerpc b/arch/Config.in.powerpc
index ba56c9c721..33b2471cf9 100644
--- a/arch/Config.in.powerpc
+++ b/arch/Config.in.powerpc
@@ -157,6 +157,9 @@ config BR2_ARCH
default "powerpc64" if BR2_powerpc64
default "powerpc64le" if BR2_powerpc64le
+config BR2_KERNEL_ARCH
+ default "powerpc"
+
config BR2_ENDIAN
default "BIG" if BR2_powerpc || BR2_powerpc64
default "LITTLE" if BR2_powerpc64le
diff --git a/arch/Config.in.riscv b/arch/Config.in.riscv
index e6436d7c39..1a008a935d 100644
--- a/arch/Config.in.riscv
+++ b/arch/Config.in.riscv
@@ -118,6 +118,9 @@ config BR2_ARCH
default "riscv32" if !BR2_ARCH_IS_64
default "riscv64" if BR2_ARCH_IS_64
+config BR2_KERNEL_ARCH
+ default "riscv"
+
config BR2_ENDIAN
default "LITTLE"
diff --git a/arch/Config.in.s390x b/arch/Config.in.s390x
index ad866b421e..bf4b70f957 100644
--- a/arch/Config.in.s390x
+++ b/arch/Config.in.s390x
@@ -17,6 +17,9 @@ endchoice
config BR2_ARCH
default "s390x" if BR2_s390x
+config BR2_KERNEL_ARCH
+ default "s390"
+
config BR2_ENDIAN
default "BIG"
diff --git a/arch/Config.in.sh b/arch/Config.in.sh
index b5cce18e22..fde42dfce2 100644
--- a/arch/Config.in.sh
+++ b/arch/Config.in.sh
@@ -24,6 +24,9 @@ config BR2_ARCH
default "sh4a" if BR2_sh4a
default "sh4aeb" if BR2_sh4aeb
+config BR2_KERNEL_ARCH
+ default "sh"
+
config BR2_ENDIAN
default "LITTLE" if BR2_sh4 || BR2_sh4a
default "BIG" if BR2_sh2a || BR2_sh4eb || BR2_sh4aeb
diff --git a/arch/Config.in.sparc b/arch/Config.in.sparc
index 4c4dc61745..b91df6892b 100644
--- a/arch/Config.in.sparc
+++ b/arch/Config.in.sparc
@@ -21,6 +21,10 @@ config BR2_ARCH
default "sparc" if BR2_sparc
default "sparc64" if BR2_sparc64
+config BR2_KERNEL_ARCH
+ default "sparc" if BR2_sparc
+ default "sparc64" if BR2_sparc64
+
config BR2_ENDIAN
default "BIG"
diff --git a/arch/Config.in.x86 b/arch/Config.in.x86
index 0ba9ecbcea..b38d0f8106 100644
--- a/arch/Config.in.x86
+++ b/arch/Config.in.x86
@@ -337,6 +337,10 @@ config BR2_ARCH
default "i686" if BR2_x86_athlon_4
default "x86_64" if BR2_x86_64
+config BR2_KERNEL_ARCH
+ default "i386" if !BR2_x86_64
+ default "x86_64" if BR2_x86_64
+
config BR2_ENDIAN
default "LITTLE"
diff --git a/arch/Config.in.xtensa b/arch/Config.in.xtensa
index a79d906985..acc340eca6 100644
--- a/arch/Config.in.xtensa
+++ b/arch/Config.in.xtensa
@@ -48,6 +48,9 @@ config BR2_ENDIAN
config BR2_ARCH
default "xtensa" if BR2_xtensa
+config BR2_KERNEL_ARCH
+ default "xtensa"
+
config BR2_READELF_ARCH_NAME
default "Tensilica Xtensa Processor"
--
2.32.0
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
next prev parent reply other threads:[~2022-01-15 20:03 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-01-15 20:02 [Buildroot] [PATCHv2 0/7] Basic support for 64-bit kernel and 32-bit userland Thomas De Schampheleire
2022-01-15 20:02 ` Thomas De Schampheleire [this message]
2022-02-08 20:25 ` [Buildroot] [PATCHv2 1/7] arch: move definition of KERNEL_ARCH to Config.in.<arch> files Arnout Vandecappelle
2022-01-15 20:03 ` [Buildroot] [PATCHv2 2/7] core: introduce NORMALIZED_ARCH as non-kernel replacement for KERNEL_ARCH Thomas De Schampheleire
2022-02-08 20:26 ` Arnout Vandecappelle
2022-01-15 20:03 ` [Buildroot] [PATCHv2 3/7] core: introduce BR2_KERNEL_ARCH_OVERRIDE Thomas De Schampheleire
2022-01-15 20:03 ` [Buildroot] [PATCHv2 4/7] perf: fix compilation in case of i386 userspace with x86_64 kernel Thomas De Schampheleire
2022-01-15 20:03 ` [Buildroot] [PATCHv2 5/7] package/qemu: add support for overridden KERNEL_ARCH=x86_64 Thomas De Schampheleire
2022-01-15 20:03 ` [Buildroot] [PATCHv2 6/7] configs: add new qemu defconfig 'x86_multilib' Thomas De Schampheleire
2022-01-18 11:19 ` Thomas De Schampheleire
2022-01-18 11:51 ` Romain Naour
2022-01-18 12:02 ` Thomas De Schampheleire
2022-01-19 20:54 ` Romain Naour
2022-01-15 20:03 ` [Buildroot] [PATCHv2 7/7] linux/linux.mk: correct LINUX_ARCH_PATH for sparc64 Thomas De Schampheleire
2022-02-08 20:28 ` Arnout Vandecappelle
2022-02-08 20:49 ` [Buildroot] [PATCHv2 0/7] Basic support for 64-bit kernel and 32-bit userland Arnout Vandecappelle
2022-02-09 11:55 ` Thomas De Schampheleire
2022-07-30 19:43 ` Yann E. MORIN
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=20220115200306.14037-2-patrickdepinguin@gmail.com \
--to=patrickdepinguin@gmail.com \
--cc=arc-buildroot@synopsys.com \
--cc=buildroot@buildroot.org \
--cc=cyrilbur@gmail.com \
--cc=egorenar@linux.ibm.com \
--cc=ezequiel@vanguardiasur.com.ar \
--cc=mark@dibsco.co.uk \
--cc=nylon7@andestech.com \
--cc=ren_guo@c-sky.com \
--cc=romain.naour@gmail.com \
--cc=spenser@gillilanding.com \
--cc=thomas.de_schampheleire@nokia.com \
--cc=thomas.petazzoni@bootlin.com \
/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