1define RUN_TESTS 2 @for TEST in $(TEST_PROGS); do \ 3 (./$$TEST && echo "selftests: $$TEST [PASS]") || echo "selftests: $$TEST [FAIL]"; \ 4 done; 5endef 6 7run_tests: all 8 $(RUN_TESTS) 9 10define INSTALL_RULE 11 mkdir -p $(INSTALL_PATH) 12 install -t $(INSTALL_PATH) $(TEST_PROGS) $(TEST_PROGS_EXTENDED) $(TEST_FILES) 13endef 14 15install: all 16ifdef INSTALL_PATH 17 $(INSTALL_RULE) 18else 19 $(error Error: set INSTALL_PATH to use install) 20endif 21 22define EMIT_TESTS 23 @for TEST in $(TEST_PROGS); do \ 24 echo "(./$$TEST && echo \"selftests: $$TEST [PASS]\") || echo \"selftests: $$TEST [FAIL]\""; \ 25 done; 26endef 27 28emit_tests: 29 $(EMIT_TESTS) 30 31.PHONY: run_tests all clean install emit_tests 32