Build: Add a target test_external_flash to build tests on external flash

that run on the internal flash
This commit is contained in:
Émilie Feral
2019-04-15 18:07:23 +02:00
parent 5ee829bfe0
commit 2e9a3b2fcb
2 changed files with 16 additions and 10 deletions

View File

@@ -42,13 +42,9 @@ tests += $(addprefix ion/test/,\
utf8_decoder.cpp\
)
TEST_EXT_FLASH ?= 0
ifeq ($(TEST_EXT_FLASH),1)
SFLAGS += -DTEST_EXT_FLASH=1
tests += ion/test/external_flash.cpp
TEST_EXT_FLASH_REPROGRAM ?= 0
SFLAGS += -DTEST_EXT_FLASH_REPROGRAM=$(TEST_EXT_FLASH_REPROGRAM)
endif
external_flash_tests += ion/test/external_flash.cpp
ifdef ION_STORAGE_LOG
SFLAGS += -DION_STORAGE_LOG=1

View File

@@ -3,11 +3,14 @@ SFLAGS += -Iquiz/include
QUIZ_USE_CONSOLE ?= 0
$(call object_for,quiz/src/runner.cpp): SFLAGS += -DQUIZ_USE_CONSOLE=$(QUIZ_USE_CONSOLE)
symbols_file = $(BUILD_DIR)/quiz/src/symbols.c
define rule_for_quiz_symbols
$$(BUILD_DIR)/quiz/src/$(1)_symbols.c: $$($(1)) | $$$$(@D)/.
@ echo "AWK $$@"
$$(Q) awk -f quiz/src/symbols.awk $$($(1)) > $$@
endef
$(symbols_file): $(tests)
@echo "AWK $@"
$(Q) awk -f quiz/src/symbols.awk $(tests) > $@
$(eval $(call rule_for_quiz_symbols,tests))
$(eval $(call rule_for_quiz_symbols,external_flash_tests))
runner_src += $(addprefix quiz/src/, \
assertions.cpp \
@@ -19,5 +22,12 @@ runner_src += $(symbols_file)
runner_objs = $(call object_for,$(runner_src))
$(runner_objs): SFLAGS += -Iquiz/src
$(BUILD_DIR)/quiz/src/%_symbols.o: SFLAGS += -Iquiz/src
$(BUILD_DIR)/test.$(EXE): $(runner_objs) $(call object_for,$(tests))
$(BUILD_DIR)/test.$(EXE): $(BUILD_DIR)/quiz/src/tests_symbols.o $(runner_objs) $(call object_for,$(tests))
ifeq ($(MODEL),n0101)
$(BUILD_DIR)/test_external_flash.$(EXE): LDSCRIPT = ion/test/external_flash_tests.ld
$(BUILD_DIR)/test_external_flash.$(EXE): $(BUILD_DIR)/quiz/src/external_flash_tests_symbols.o $(runner_objs) $(call object_for,$(tests_external_flash))
endif