aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGravatar Todd Zullinger <tmz@pobox.com>2010-09-06 22:31:22 (JST)
committerGravatar Lars Hjemli <hjemli@gmail.com>2010-09-20 02:11:45 (JST)
commit679f7ef4f3f31dca8c8ac5536c3e18a5188e051a (patch)
tree2f0085a1858cbf4f7f3534d6af0f0f7c6f604ce5
parenta9d6e6e695da6c6ed7f4bb32630ab2f3d9314806 (diff)
downloadcgit-679f7ef4f3f31dca8c8ac5536c3e18a5188e051a.zip
cgit-679f7ef4f3f31dca8c8ac5536c3e18a5188e051a.tar.gz
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--Makefile23
1 files changed, 16 insertions, 7 deletions
diff --git a/Makefile b/Makefile
index 6a47ed2..db97ae3 100644
--- a/Makefile
+++ b/Makefile
@@ -8,6 +8,11 @@ SHA1_HEADER = <openssl/sha.h>
8GIT_VER = 1.7.3 8GIT_VER = 1.7.3
9GIT_URL = http://www.kernel.org/pub/software/scm/git/git-$(GIT_VER).tar.bz2 9GIT_URL = http://www.kernel.org/pub/software/scm/git/git-$(GIT_VER).tar.bz2
10INSTALL = install 10INSTALL = install
11MAN5_TXT = $(wildcard *.5.txt)
12MAN_TXT = $(MAN5_TXT)
13DOC_MAN5 = $(patsubst %.txt,%,$(MAN5_TXT))
14DOC_HTML = $(patsubst %.txt,%.html,$(MAN_TXT))
15DOC_PDF = $(patsubst %.txt,%.pdf,$(MAN_TXT))
11 16
12# Define NO_STRCASESTR if you don't have strcasestr. 17# Define NO_STRCASESTR if you don't have strcasestr.
13# 18#
@@ -110,7 +115,7 @@ endif
110 115
111 116
112.PHONY: all libgit test install uninstall clean force-version get-git \ 117.PHONY: all libgit test install uninstall clean force-version get-git \
113 doc man-doc html-doc clean-doc 118 doc clean-doc
114 119
115all: cgit 120all: cgit
116 121
@@ -170,15 +175,19 @@ uninstall:
170 rm -f $(CGIT_DATA_PATH)/cgit.css 175 rm -f $(CGIT_DATA_PATH)/cgit.css
171 rm -f $(CGIT_DATA_PATH)/cgit.png 176 rm -f $(CGIT_DATA_PATH)/cgit.png
172 177
173doc: man-doc html-doc pdf-doc 178doc: doc-man doc-html doc-pdf
179doc-man: doc-man5
180doc-man5: $(DOC_MAN5)
181doc-html: $(DOC_HTML)
182doc-pdf: $(DOC_PDF)
174 183
175man-doc: cgitrc.5.txt 184%.5 : %.5.txt
176 a2x -f manpage cgitrc.5.txt 185 a2x -f manpage $<
177 186
178html-doc: cgitrc.5.txt 187$(DOC_HTML): %.html : %.txt
179 a2x -f xhtml --stylesheet=cgit-doc.css cgitrc.5.txt 188 a2x -f xhtml --stylesheet=cgit-doc.css $<
180 189
181pdf-doc: cgitrc.5.txt 190$(DOC_PDF): %.pdf : %.txt
182 a2x -f pdf cgitrc.5.txt 191 a2x -f pdf cgitrc.5.txt
183 192
184clean: clean-doc 193clean: clean-doc