Makefile: Unclutter "make test" output

This adds a .txt Makefile target to create a text file which receives
the test program output. In case the test failed, it will cat the
contents and fail the target.

Execution of each test itself is forced, so it would run every time make
is invoked, thus no failing test would be missed.

Signed-off-by: Kai Krakow <kai@kaishome.de>
Dieser Commit ist enthalten in:
Kai Krakow verfasst und Zygo Blaxell committed 2018-01-29 21:37:40 -05:00
1 Ursprung d8241a7720
Commit e3c4a07216
1 Datei geändert
+6 -3
+6 -3
Datei anzeigen
@@ -9,7 +9,8 @@ PROGRAMS = \
all: test
test: $(PROGRAMS) Makefile
test: $(PROGRAMS:%=%.txt) Makefile
FORCE:
include ../makeflags
@@ -33,7 +34,9 @@ include depends.mk
$(PROGRAMS): %: %.o ../makeflags Makefile
@echo "Implicit rule %: %.o"
$(CXX) $(CXXFLAGS) $(LDFLAGS) -o $@ $< $(LIBS)
./$@
%.txt: % Makefile FORCE
./$< >$@ 2>&1 || (RC=$$?; cat $@; exit $$RC)
clean:
rm -fv $(PROGRAMS:%=%.o) $(PROGRAMS)
rm -fv $(PROGRAMS:%=%.o) $(PROGRAMS:%=%.txt) $(PROGRAMS)