Makefile: don't regenerate manpages unless they've really changed.

This is terribly ugly :(

Closes: #36
Reported-by: Glenn Willen
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
This commit is contained in:
Rusty Russell 2016-10-07 13:57:57 +10:30
parent 4fcdf6de5c
commit 766249ec2b
1 changed files with 2 additions and 1 deletions

View File

@ -188,8 +188,9 @@ $(PROGRAMS): CFLAGS+=-I.
default: $(PROGRAMS) $(MANPAGES) daemon-all default: $(PROGRAMS) $(MANPAGES) daemon-all
# Git doesn't maintain timestamps, so we only regen if git says we should.
$(MANPAGES): doc/%: doc/%.txt $(MANPAGES): doc/%: doc/%.txt
a2x --format=manpage $< if [ "`git log $@ | head -n1`" != "`git log $< | head -n1`" ] || [ "`git diff $<`" != "" ]; then a2x --format=manpage $<; else touch $@; fi
# Everything depends on the CCAN headers. # Everything depends on the CCAN headers.
$(CCAN_OBJS) $(CDUMP_OBJS) $(HELPER_OBJS) $(BITCOIN_OBJS) $(TEST_PROGRAMS:=.o) ccan/ccan/cdump/tools/cdump-enumstr.o: $(CCAN_HEADERS) $(CCAN_OBJS) $(CDUMP_OBJS) $(HELPER_OBJS) $(BITCOIN_OBJS) $(TEST_PROGRAMS:=.o) ccan/ccan/cdump/tools/cdump-enumstr.o: $(CCAN_HEADERS)