diff --git a/testing/makefiles/testcase.mk b/testing/makefiles/testcase.mk index e1d05248..626ddb82 100644 --- a/testing/makefiles/testcase.mk +++ b/testing/makefiles/testcase.mk @@ -21,6 +21,8 @@ else bundle_path = ${BOARD_HARDWARE_PATH}/keyboardio/avr/libraries endif +build: ${BIN_DIR}/${BIN_FILE} + all: run run: ${BIN_DIR}/${BIN_FILE} @@ -76,4 +78,4 @@ ${OBJ_DIR}/%.o: ${SRC_DIR}/%.cpp clean: rm -rf "${build_dir}" -.PHONY: clean run all +.PHONY: clean run all build diff --git a/tests/Makefile b/tests/Makefile index d33fe6c6..705304d2 100644 --- a/tests/Makefile +++ b/tests/Makefile @@ -8,6 +8,9 @@ TESTS ?= $(shell find . -name 'sketch.ino' -exec dirname {} \;) .PHONY: clean cmake-clean all googletest all: ${TESTS} + @for test in ${TESTS}; do \ + ${MAKE} -s -f ${top_dir}/testing/makefiles/testcase.mk -C $${test} top_dir=${top_dir} testcase=$${test} run; \ + done cmake-clean: -${MAKE} clean @@ -28,5 +31,8 @@ ${libcommon_a}: Makefile: @: -%: ${libcommon_a} googletest +${TESTS}: ${libcommon_a} googletest ${MAKE} -f ${top_dir}/testing/makefiles/testcase.mk -C $@ top_dir=${top_dir} testcase=$@ + +%+run: + ${MAKE} -s -f ${top_dir}/testing/makefiles/testcase.mk -C $* top_dir=${top_dir} testcase=$* run