diff options
Diffstat (limited to 'py')
-rw-r--r-- | py/dynruntime.mk | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/py/dynruntime.mk b/py/dynruntime.mk index 62db43ad14..71679954ea 100644 --- a/py/dynruntime.mk +++ b/py/dynruntime.mk @@ -99,6 +99,22 @@ CROSS = xtensa-esp32-elf- CFLAGS += MICROPY_FLOAT_IMPL ?= float +else ifeq ($(ARCH),rv32imc) + +# rv32imc +CROSS = riscv64-unknown-elf- +CFLAGS += -march=rv32imac -mabi=ilp32 -mno-relax +# If Picolibc is available then select it explicitly. Ubuntu 22.04 ships its +# bare metal RISC-V toolchain with Picolibc rather than Newlib, and the default +# is "nosys" so a value must be provided. To avoid having per-distro +# workarounds, always select Picolibc if available. +PICOLIBC_SPECS = $(shell $(CROSS)gcc --print-file-name=picolibc.specs) +ifneq ($(PICOLIBC_SPECS),picolibc.specs) +CFLAGS += --specs=$(PICOLIBC_SPECS) +endif + +MICROPY_FLOAT_IMPL ?= none + else $(error architecture '$(ARCH)' not supported) endif |