diff options
Diffstat (limited to 'Makefile')
| -rw-r--r-- | Makefile | 33 |
1 files changed, 22 insertions, 11 deletions
| @@ -414,23 +414,29 @@ define BUILD_TEST | |||
| 414 | MAKE_VARS := TEST=$$(TEST_NAME) | 414 | MAKE_VARS := TEST=$$(TEST_NAME) |
| 415 | MAKE_MSG := $$(MSG_MAKE_TEST) | 415 | MAKE_MSG := $$(MSG_MAKE_TEST) |
| 416 | $$(eval $$(call BUILD)) | 416 | $$(eval $$(call BUILD)) |
| 417 | TEST_EXECUTABLE := $$(TEST_DIR)/$$(TEST_NAME).elf | 417 | ifneq ($$(MAKE_TARGET),clean) |
| 418 | TESTS += $$(TEST_NAME) | 418 | TEST_EXECUTABLE := $$(TEST_DIR)/$$(TEST_NAME).elf |
| 419 | TEST_MSG := $$(MSG_TEST) | 419 | TESTS += $$(TEST_NAME) |
| 420 | $$(TEST_NAME)_COMMAND := \ | 420 | TEST_MSG := $$(MSG_TEST) |
| 421 | printf "$$(TEST_MSG)\n"; \ | 421 | $$(TEST_NAME)_COMMAND := \ |
| 422 | $$(TEST_EXECUTABLE); \ | 422 | printf "$$(TEST_MSG)\n"; \ |
| 423 | if [ $$$$? -gt 0 ]; \ | 423 | $$(TEST_EXECUTABLE); \ |
| 424 | then error_occured=1; \ | 424 | if [ $$$$? -gt 0 ]; \ |
| 425 | fi; \ | 425 | then error_occured=1; \ |
| 426 | printf "\n"; | 426 | fi; \ |
| 427 | printf "\n"; | ||
| 428 | endif | ||
| 427 | endef | 429 | endef |
| 428 | 430 | ||
| 429 | define PARSE_TEST | 431 | define PARSE_TEST |
| 430 | TESTS := | 432 | TESTS := |
| 431 | TEST_NAME := $$(firstword $$(subst -, ,$$(RULE))) | 433 | TEST_NAME := $$(firstword $$(subst -, ,$$(RULE))) |
| 432 | TEST_TARGET := $$(subst $$(TEST_NAME),,$$(subst $$(TEST_NAME)-,,$$(RULE))) | 434 | TEST_TARGET := $$(subst $$(TEST_NAME),,$$(subst $$(TEST_NAME)-,,$$(RULE))) |
| 433 | MATCHED_TESTS := $$(foreach TEST,$$(TEST_LIST),$$(if $$(findstring $$(TEST_NAME),$$(TEST)),$$(TEST),)) | 435 | ifeq ($$(TEST_NAME),all) |
| 436 | MATCHED_TESTS := $$(TEST_LIST) | ||
| 437 | else | ||
| 438 | MATCHED_TESTS := $$(foreach TEST,$$(TEST_LIST),$$(if $$(findstring $$(TEST_NAME),$$(TEST)),$$(TEST),)) | ||
| 439 | endif | ||
| 434 | $$(foreach TEST,$$(MATCHED_TESTS),$$(eval $$(call BUILD_TEST,$$(TEST),$$(TEST_TARGET)))) | 440 | $$(foreach TEST,$$(MATCHED_TESTS),$$(eval $$(call BUILD_TEST,$$(TEST),$$(TEST_TARGET)))) |
| 435 | endef | 441 | endef |
| 436 | 442 | ||
| @@ -494,6 +500,11 @@ all-keyboards: allkb-allsp-allkm | |||
| 494 | .PHONY: all-keyboards-defaults | 500 | .PHONY: all-keyboards-defaults |
| 495 | all-keyboards-defaults: allkb-allsp-default | 501 | all-keyboards-defaults: allkb-allsp-default |
| 496 | 502 | ||
| 503 | .PHONY: test | ||
| 504 | test: test-all | ||
| 505 | |||
| 506 | .PHONY: test-clean | ||
| 507 | test-clean: test-all-clean | ||
| 497 | 508 | ||
| 498 | # Generate the version.h file | 509 | # Generate the version.h file |
| 499 | GIT_VERSION := $(shell git describe --abbrev=6 --dirty --always --tags 2>/dev/null || date +"%Y-%m-%d-%H:%M:%S") | 510 | GIT_VERSION := $(shell git describe --abbrev=6 --dirty --always --tags 2>/dev/null || date +"%Y-%m-%d-%H:%M:%S") |
