From 22e5db14025aeedbbe147b9d831fd53547b4b3eb Mon Sep 17 00:00:00 2001 From: Daniel Stevens Date: Tue, 4 Feb 2020 03:50:07 -0700 Subject: [PATCH] Remove `clean` before `test` or `check` The `clean` doesn't appear to serve a purpose. Make already does dependency tracking, so if files are out of date they will be rebuilt. The `clean` rule does however cause problems when the test executable already exists. In that case it will delete outputs, including the test executable, and then fail. By the time the test executable was deleted, it was already determined that it was up to date, and so does not get rebuilt. You end up having to run the command twice, each time seesawing between deleting outputs or generating outputs and running the tests. --- Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index 5989b95..e76d8ec 100644 --- a/Makefile +++ b/Makefile @@ -41,11 +41,11 @@ clean: distclean: -$(RM) *.o xmltest libtinyxml2.a -test: clean xmltest +test: xmltest ./xmltest # Standard GNU target -check: clean xmltest +check: xmltest ./xmltest staticlib: libtinyxml2.a