32 lines
874 B
Makefile
32 lines
874 B
Makefile
COPROC_RESERVE_MEM ?= 8176
|
|
SOC := esp32s3
|
|
CC := riscv32-esp-elf-gcc
|
|
CFLAGS := -Os -march=rv32imc -mdiv -fdata-sections -ffunction-sections
|
|
CFLAGS += -isystem $(IDF_PATH)/components/ulp/ulp_riscv/include/
|
|
CFLAGS += -isystem $(IDF_PATH)/components/soc/$(SOC)/include
|
|
CFLAGS += -isystem $(IDF_PATH)/components/esp_common/include
|
|
CFLAGS += -DCOPROC_RESERVE_MEM=$(COPROC_RESERVE_MEM)
|
|
ifeq ($(SOC),esp32s3)
|
|
CFLAGS += -DCONFIG_IDF_TARGET_ESP32S3
|
|
endif
|
|
ifeq ($(SOC),esp32s2)
|
|
CFLAGS += -DCONFIG_IDF_TARGET_ESP32S2
|
|
endif
|
|
LDFLAGS := -march=rv32imc --specs=nano.specs --specs=nosys.specs
|
|
|
|
SRCS ?= ulp.c
|
|
SRCS += $(IDF_PATH)/components/ulp/ulp_riscv/ulp_riscv_utils.c
|
|
LDFLAGS += link.ld
|
|
|
|
|
|
.PHONY: default
|
|
default: a.out
|
|
a.out: $(SRCS) link.ld
|
|
$(CC) -flto $(CFLAGS) $^ -o $@ $(LDFLAGS)
|
|
|
|
.PHONY: clean
|
|
clean:
|
|
rm -f a.out link.ld
|
|
|
|
link.ld: ulp.riscv.ld
|
|
$(CC) -E -P -xc $(CFLAGS) -o $@ $<
|