[PATCH 2/3] RISC-V: Makefile: align the isa string setting with the kernel
Marco Felsch
m.felsch at pengutronix.de
Thu Feb 2 05:26:11 PST 2023
Factor out the isa string setting. This is in preparation of adding
support for binutils-2.38 [1] furthermore it aligns the makefile with the
kernel. The commit is based on kernel commit:
| commit e8be5302330281bd9f77834600f63e8cc4560d3d
| Author: Alan Kao <alankao at andestech.com>
| Date: Tue Oct 9 10:18:32 2018 +0800
|
| Cleanup ISA string setting
|
| This patch cleanup the MARCH string passing to both compiler and
| assembler. Note that the CFLAGS should not contain "fd" before we
| have mechnisms like kernel_fpu_begin/end in other architectures.
|
| Signed-off-by: Alan Kao <alankao at andestech.com>
| Cc: Greentime Hu <greentime at andestech.com>
| Cc: Vincent Chen <vincentc at andestech.com>
| Cc: Zong Li <zong at andestech.com>
| Cc: Nick Hu <nickhu at andestech.com>
| Signed-off-by: Palmer Dabbelt <palmer at sifive.com>
[1] https://lore.kernel.org/linux-riscv/20221015111856.3869148-1-conor@kernel.org/
Signed-off-by: Marco Felsch <m.felsch at pengutronix.de>
---
arch/riscv/Makefile | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/arch/riscv/Makefile b/arch/riscv/Makefile
index b4cf5983a2..d1b689b493 100644
--- a/arch/riscv/Makefile
+++ b/arch/riscv/Makefile
@@ -5,15 +5,19 @@ KBUILD_DEFCONFIG := rv64i_defconfig
KBUILD_CPPFLAGS += -fno-strict-aliasing
ifeq ($(CONFIG_ARCH_RV32I),y)
- KBUILD_CPPFLAGS += -march=rv32im -mabi=ilp32
+ KBUILD_CPPFLAGS += -mabi=ilp32
riscv-ldflags-y += -melf32lriscv
else
- KBUILD_CPPFLAGS += -march=rv64im -mabi=lp64
+ KBUILD_CPPFLAGS += -mabi=lp64
riscv-ldflags-y += -melf64lriscv
endif
+# ISA string setting
+riscv-march-$(CONFIG_ARCH_RV32I) := rv32im
+riscv-march-$(CONFIG_ARCH_RV64I) := rv64im
+KBUILD_CPPFLAGS += -march=$(riscv-march-y)
KBUILD_CPPFLAGS += -Wstrict-prototypes -mcmodel=medany -fpic
riscv-ldflags-y += -pie -static
--
2.39.1
More information about the barebox
mailing list