mirror of
https://github.com/firewalkwithm3/qmk_firmware.git
synced 2024-11-22 03:21:48 +08:00
Attempt to deal with GCC 13+ and rv32 arch extensions. (#23086)
This commit is contained in:
parent
fec2323089
commit
900e79febe
|
@ -402,6 +402,17 @@ ifeq ($(strip $(MCU)), risc-v)
|
|||
-mabi=$(MCU_ABI) \
|
||||
-mcmodel=$(MCU_CMODEL) \
|
||||
-mstrict-align
|
||||
|
||||
# Deal with different arch revisions and gcc renaming them
|
||||
ifneq ($(shell echo 'int main() { asm("csrc 0x300,8"); return 0; }' | $(TOOLCHAIN)gcc $(MCUFLAGS) $(TOOLCHAIN_CFLAGS) -x c -o /dev/null - 2>/dev/null >/dev/null; echo $$?),0)
|
||||
MCUFLAGS = -march=$(MCU_ARCH)_zicsr \
|
||||
-mabi=$(MCU_ABI) \
|
||||
-mcmodel=$(MCU_CMODEL) \
|
||||
-mstrict-align
|
||||
ifneq ($(shell echo 'int main() { asm("csrc 0x300,8"); return 0; }' | $(TOOLCHAIN)gcc $(MCUFLAGS) $(TOOLCHAIN_CFLAGS) -x c -o /dev/null - 2>/dev/null >/dev/null; echo $$?),0)
|
||||
$(call CATASTROPHIC_ERROR,Incompatible toolchain,No compatible RISC-V toolchain found. Can't work out correct architecture.)
|
||||
endif
|
||||
endif
|
||||
else
|
||||
# ARM toolchain specific configuration
|
||||
TOOLCHAIN ?= arm-none-eabi-
|
||||
|
|
Loading…
Reference in a new issue