diff options
author | Todd Zullinger <tmz@pobox.com> | 2010-09-06 17:31:22 +0400 |
---|---|---|
committer | Lars Hjemli <hjemli@gmail.com> | 2010-09-19 21:11:45 +0400 |
commit | 679f7ef4f3f31dca8c8ac5536c3e18a5188e051a (patch) | |
tree | 2f0085a1858cbf4f7f3534d6af0f0f7c6f604ce5 | |
parent | a9d6e6e695da6c6ed7f4bb32630ab2f3d9314806 (diff) |
Generalize doc generation
This borrows from the git Documentation/Makefile. The goal is to make
it easier to add new man pages and other documentation as well as to
prevent make from re-generating the documentation needlessly.
Signed-off-by: Todd Zullinger <tmz@pobox.com>
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
-rw-r--r-- | Makefile | 23 |
1 files changed, 16 insertions, 7 deletions
@@ -8,6 +8,11 @@ SHA1_HEADER = <openssl/sha.h> GIT_VER = 1.7.3 GIT_URL = http://www.kernel.org/pub/software/scm/git/git-$(GIT_VER).tar.bz2 INSTALL = install +MAN5_TXT = $(wildcard *.5.txt) +MAN_TXT = $(MAN5_TXT) +DOC_MAN5 = $(patsubst %.txt,%,$(MAN5_TXT)) +DOC_HTML = $(patsubst %.txt,%.html,$(MAN_TXT)) +DOC_PDF = $(patsubst %.txt,%.pdf,$(MAN_TXT)) # Define NO_STRCASESTR if you don't have strcasestr. # @@ -110,7 +115,7 @@ endif .PHONY: all libgit test install uninstall clean force-version get-git \ - doc man-doc html-doc clean-doc + doc clean-doc all: cgit @@ -170,15 +175,19 @@ uninstall: rm -f $(CGIT_DATA_PATH)/cgit.css rm -f $(CGIT_DATA_PATH)/cgit.png -doc: man-doc html-doc pdf-doc +doc: doc-man doc-html doc-pdf +doc-man: doc-man5 +doc-man5: $(DOC_MAN5) +doc-html: $(DOC_HTML) +doc-pdf: $(DOC_PDF) -man-doc: cgitrc.5.txt - a2x -f manpage cgitrc.5.txt +%.5 : %.5.txt + a2x -f manpage $< -html-doc: cgitrc.5.txt - a2x -f xhtml --stylesheet=cgit-doc.css cgitrc.5.txt +$(DOC_HTML): %.html : %.txt + a2x -f xhtml --stylesheet=cgit-doc.css $< -pdf-doc: cgitrc.5.txt +$(DOC_PDF): %.pdf : %.txt a2x -f pdf cgitrc.5.txt clean: clean-doc |