You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
18 lines
559 B
18 lines
559 B
4 years ago
|
TARGET := riscv64gc-unknown-none-elf
|
||
|
MODE := release
|
||
|
APP_DIR := src/bin
|
||
|
TARGET_DIR := target/$(TARGET)/$(MODE)
|
||
|
ELFS := $(patsubst $(APP_DIR)/*.rs, $(TARGET_DIR)/*, $(wildcard $(APP_DIR)/*.rs))
|
||
|
BINS := $(patsubst $(APP_DIR)/*.rs, $(TARGET_DIR)/*.bin, $(wildcard $(APP_DIR)/*.rs))
|
||
|
|
||
|
OBJDUMP := rust-objdump --arch-name=riscv64
|
||
|
OBJCOPY := rust-objcopy --binary-architecture=riscv64
|
||
|
|
||
|
elf:
|
||
|
@cargo build --release
|
||
|
|
||
|
binary: elf
|
||
|
$(foreach elf, $(ELFS), $(OBJCOPY) $(elf) --strip-all -O binary $(patsubst $(TARGET_DIR)/*, $(TARGET_DIR)/*.bin, $(elf)))
|
||
|
|
||
|
build: binary
|