flipperzero-firmware/core-rs/core-rs.mk
あく 3c2711102c
Target refactoring and cube update (#161)
* Lib: move cube to libs. Firmware: prepare for code base refactoring, detach from cube, port to cmsis_os2.

* Firmware, target f2: regenerate project with latest cube package, tim17 for os ticks.

* Firmware: unified codebase.

* Core: do not include semaphore on old targets. Firmware: dfu uplaod target.

* CI: submodules, add firmware build.

* CI: proper submodule config.

* refactor build system

* CI: update chain to use new targets. Documentation: update to match current structure.

* CI: clean before rebuild.

* Add local test

docker-compose exec dev make -C firmware TARGET=local TEST=1 run

* Makefile: target specific build directory. CI: updated artifacts path.

* Makefile: init git submodules if they don't exists.

* Makefile: debug rule now doesn't reset MCU, prevent SIGINT propagation to st-util.

* Makefile: proper rebuild sequence in zz and zzz

* Makefile: timestamp tracking for flash and upload commands.

* Apps: modular build. Input: fix flipper hal inline.

* Wiki: proper bootloader link.

* Applications: fix broken build for local targets.

* add st-flash to docker

* fix build

* force rebuild app

* move app force to firmware part

* fix build deps

* qrcode build ok

* fix example display

* add testing routine

* update build instruction

Co-authored-by: Aleksandr Kutuzov <aku@plooks.com>
Co-authored-by: aanper <mail@s3f.ru>
2020-10-07 12:37:43 +03:00

43 lines
934 B
Makefile

#######################################
# Rust library
#######################################
#######################################
# Rust library
#######################################
RUST_LIB_SRC = $(realpath $(PROJECT_DIR)/../core-rs)
RUST_LIB_NAME = flipper_core
ifeq ($(ARCH), 'x86_64')
RUST_LIB_TARGET = x86_64-unknown-linux-gnu
else
RUST_LIB_TARGET = thumbv7em-none-eabihf
endif
RUST_LIB_FLAGS = --target=$(RUST_LIB_TARGET)
ifeq ($(DEBUG), 1)
RUST_LIB_PATH = $(RUST_LIB_SRC)/target/$(RUST_LIB_TARGET)/debug
else
RUST_LIB_FLAGS += --release
RUST_LIB_PATH = $(RUST_LIB_SRC)/target/$(RUST_LIB_TARGET)/release
endif
RUST_LIB_CMD = cd $(RUST_LIB_SRC) && cargo build -p flipper-core $(RUST_LIB_FLAGS)
LD_FLAGS += -l$(RUST_LIB_NAME)
LD_FLAGS += -L$(RUST_LIB_PATH)
$(RUST_LIB_PATH)/lib$(RUST_LIB_NAME).a: rust_lib
rust_lib:
$(RUST_LIB_CMD)
clean:
-rm -fR $(BUILD_DIR)
cd $(RUST_LIB_SRC) && cargo clean