|
|
@@ -337,24 +337,23 @@ define BUILD_TEST
|
|
|
endif
|
|
|
endef
|
|
|
|
|
|
+define LIST_TEST
|
|
|
+ include $(BUILDDEFS_PATH)/testlist.mk
|
|
|
+ FOUND_TESTS := $$(patsubst ./tests/%,%,$$(TEST_LIST))
|
|
|
+ $$(info $$(FOUND_TESTS))
|
|
|
+endef
|
|
|
+
|
|
|
define PARSE_TEST
|
|
|
TESTS :=
|
|
|
- # list of possible targets, colon-delimited, to reassign to MAKE_TARGET and remove
|
|
|
- TARGETS := :clean:
|
|
|
- ifneq (,$$(findstring :$$(lastword $$(subst :, ,$$(RULE))):, $$(TARGETS)))
|
|
|
- MAKE_TARGET := $$(lastword $$(subst :, ,$$(RULE)))
|
|
|
- TEST_SUBPATH := $$(subst $$(eval) ,/,$$(wordlist 2, $$(words $$(subst :, ,$$(RULE))), _ $$(subst :, ,$$(RULE))))
|
|
|
- else
|
|
|
- MAKE_TARGET :=
|
|
|
- TEST_SUBPATH := $$(subst :,/,$$(RULE))
|
|
|
- endif
|
|
|
+ TEST_NAME := $$(firstword $$(subst :, ,$$(RULE)))
|
|
|
+ TEST_TARGET := $$(subst $$(TEST_NAME),,$$(subst $$(TEST_NAME):,,$$(RULE)))
|
|
|
include $(BUILDDEFS_PATH)/testlist.mk
|
|
|
- ifeq ($$(RULE),all)
|
|
|
+ ifeq ($$(TEST_NAME),all)
|
|
|
MATCHED_TESTS := $$(TEST_LIST)
|
|
|
else
|
|
|
- MATCHED_TESTS := $$(foreach TEST, $$(TEST_LIST),$$(if $$(findstring /$$(TEST_SUBPATH)/, $$(patsubst %,%/,$$(TEST))), $$(TEST),))
|
|
|
+ MATCHED_TESTS := $$(foreach TEST, $$(TEST_LIST),$$(if $$(findstring x$$(TEST_NAME)x, x$$(patsubst ./tests/%,%,$$(TEST)x)), $$(TEST),))
|
|
|
endif
|
|
|
- $$(foreach TEST,$$(MATCHED_TESTS),$$(eval $$(call BUILD_TEST,$$(TEST),$$(MAKE_TARGET))))
|
|
|
+ $$(foreach TEST,$$(MATCHED_TESTS),$$(eval $$(call BUILD_TEST,$$(TEST),$$(TEST_TARGET))))
|
|
|
endef
|
|
|
|
|
|
|
|
|
@@ -437,6 +436,10 @@ git-submodules: git-submodule
|
|
|
list-keyboards:
|
|
|
$(QMK_BIN) list-keyboards --no-resolve-defaults | tr '\n' ' '
|
|
|
|
|
|
+.PHONY: list-tests
|
|
|
+list-tests:
|
|
|
+ $(eval $(call LIST_TEST))
|
|
|
+
|
|
|
.PHONY: generate-keyboards-file
|
|
|
generate-keyboards-file:
|
|
|
$(QMK_BIN) list-keyboards --no-resolve-defaults
|