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@xxxxxxxxxxxxx> | 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@xxxxxxxxxxxxx> | Cc: Greentime Hu <greentime@xxxxxxxxxxxxx> | Cc: Vincent Chen <vincentc@xxxxxxxxxxxxx> | Cc: Zong Li <zong@xxxxxxxxxxxxx> | Cc: Nick Hu <nickhu@xxxxxxxxxxxxx> | Signed-off-by: Palmer Dabbelt <palmer@xxxxxxxxxx> [1] https://lore.kernel.org/linux-riscv/20221015111856.3869148-1-conor@xxxxxxxxxx/ Signed-off-by: Marco Felsch <m.felsch@xxxxxxxxxxxxxx> --- 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