From 679f7ef4f3f31dca8c8ac5536c3e18a5188e051a Mon Sep 17 00:00:00 2001 From: Todd Zullinger Date: Mon, 6 Sep 2010 09:31:22 -0400 Subject: 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 Signed-off-by: Lars Hjemli --- Makefile | 23 ++++++++++++++++------- 1 file 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 = 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 -- cgit From 0c3130de9677ddb0a3e257dba8de4e066ac0db6b Mon Sep 17 00:00:00 2001 From: Todd Zullinger Date: Mon, 6 Sep 2010 09:31:23 -0400 Subject: Add Makefile targets to install/uninstall docs Signed-off-by: Todd Zullinger Signed-off-by: Lars Hjemli --- Makefile | 39 ++++++++++++++++++++++++++++++++++++++- 1 file changed, 38 insertions(+), 1 deletion(-) diff --git a/Makefile b/Makefile index db97ae3..3004e88 100644 --- a/Makefile +++ b/Makefile @@ -4,6 +4,11 @@ CGIT_SCRIPT_PATH = /var/www/htdocs/cgit CGIT_DATA_PATH = $(CGIT_SCRIPT_PATH) CGIT_CONFIG = /etc/cgitrc CACHE_ROOT = /var/cache/cgit +prefix = /usr +docdir = $(prefix)/share/doc/cgit +htmldir = $(docdir) +pdfdir = $(docdir) +mandir = $(prefix)/share/man SHA1_HEADER = GIT_VER = 1.7.3 GIT_URL = http://www.kernel.org/pub/software/scm/git/git-$(GIT_VER).tar.bz2 @@ -115,7 +120,8 @@ endif .PHONY: all libgit test install uninstall clean force-version get-git \ - doc clean-doc + doc clean-doc install-doc install-man install-html install-pdf \ + uninstall-doc uninstall-man uninstall-html uninstall-pdf all: cgit @@ -170,11 +176,42 @@ install: all $(INSTALL) -m 0644 cgit.css $(DESTDIR)$(CGIT_DATA_PATH)/cgit.css $(INSTALL) -m 0644 cgit.png $(DESTDIR)$(CGIT_DATA_PATH)/cgit.png +install-doc: install-man install-html install-pdf + +install-man: doc-man + $(INSTALL) -m 0755 -d $(DESTDIR)$(mandir)/man5 + $(INSTALL) -m 0644 $(DOC_MAN5) $(DESTDIR)$(mandir)/man5 + +install-html: doc-html + $(INSTALL) -m 0755 -d $(DESTDIR)$(htmldir) + $(INSTALL) -m 0644 $(DOC_HTML) $(DESTDIR)$(htmldir) + +install-pdf: doc-pdf + $(INSTALL) -m 0755 -d $(DESTDIR)$(pdfdir) + $(INSTALL) -m 0644 $(DOC_PDF) $(DESTDIR)$(pdfdir) + uninstall: rm -f $(CGIT_SCRIPT_PATH)/$(CGIT_SCRIPT_NAME) rm -f $(CGIT_DATA_PATH)/cgit.css rm -f $(CGIT_DATA_PATH)/cgit.png +uninstall-doc: uninstall-man uninstall-html uninstall-pdf + +uninstall-man: + @for i in $(DOC_MAN5); do \ + rm -fv $(DESTDIR)$(mandir)/man5/$$i; \ + done + +uninstall-html: + @for i in $(DOC_HTML); do \ + rm -fv $(DESTDIR)$(htmldir)/$$i; \ + done + +uninstall-pdf: + @for i in $(DOC_PDF); do \ + rm -fv $(DESTDIR)$(pdfdir)/$$i; \ + done + doc: doc-man doc-html doc-pdf doc-man: doc-man5 doc-man5: $(DOC_MAN5) -- cgit From 6d10c130585eccae07eb17b3aff86eeb02cf4fb8 Mon Sep 17 00:00:00 2001 From: Todd Zullinger Date: Mon, 6 Sep 2010 09:31:24 -0400 Subject: Install filter scripts The syntax-highlighting.sh script is quite useful without any changes. Installing it by default makes it easier to use and package. Signed-off-by: Todd Zullinger Signed-off-by: Lars Hjemli --- Makefile | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/Makefile b/Makefile index 3004e88..ebf8f03 100644 --- a/Makefile +++ b/Makefile @@ -5,6 +5,8 @@ CGIT_DATA_PATH = $(CGIT_SCRIPT_PATH) CGIT_CONFIG = /etc/cgitrc CACHE_ROOT = /var/cache/cgit prefix = /usr +libdir = $(prefix)/lib +filterdir = $(libdir)/cgit/filters docdir = $(prefix)/share/doc/cgit htmldir = $(docdir) pdfdir = $(docdir) @@ -175,6 +177,8 @@ install: all $(INSTALL) -m 0755 -d $(DESTDIR)$(CGIT_DATA_PATH) $(INSTALL) -m 0644 cgit.css $(DESTDIR)$(CGIT_DATA_PATH)/cgit.css $(INSTALL) -m 0644 cgit.png $(DESTDIR)$(CGIT_DATA_PATH)/cgit.png + $(INSTALL) -m 0755 -d $(DESTDIR)$(filterdir) + $(INSTALL) -m 0755 filters/* $(DESTDIR)$(filterdir) install-doc: install-man install-html install-pdf -- cgit From d7765df117d25fc015856598c06f4796e8cdbb27 Mon Sep 17 00:00:00 2001 From: Todd Zullinger Date: Mon, 6 Sep 2010 09:31:25 -0400 Subject: cgit.css: Add syntax highlighting entries Signed-off-by: Todd Zullinger Signed-off-by: Lars Hjemli --- cgit.css | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/cgit.css b/cgit.css index 0c88b65..a2a685b 100644 --- a/cgit.css +++ b/cgit.css @@ -742,4 +742,18 @@ table.ssdiff td.space { table.ssdiff td.space div { min-height: 3em; -} \ No newline at end of file +} + +/* Syntax highlighting */ +table.blob .num { color:#2928ff; } +table.blob .esc { color:#ff00ff; } +table.blob .str { color:#ff0000; } +table.blob .dstr { color:#818100; } +table.blob .slc { color:#838183; font-style:italic; } +table.blob .com { color:#838183; font-style:italic; } +table.blob .dir { color:#008200; } +table.blob .sym { color:#000000; } +table.blob .kwa { color:#000000; font-weight:bold; } +table.blob .kwb { color:#830000; } +table.blob .kwc { color:#000000; font-weight:bold; } +table.blob .kwd { color:#010181; } -- cgit From 66df1134573dccd364394f8a177e3d94bfb1e8d1 Mon Sep 17 00:00:00 2001 From: Todd Zullinger Date: Mon, 6 Sep 2010 09:31:26 -0400 Subject: Use example.com in documentation, per RFC 2606 Signed-off-by: Todd Zullinger Signed-off-by: Lars Hjemli --- cgitrc.5.txt | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/cgitrc.5.txt b/cgitrc.5.txt index ce78d41..ea1b18a 100644 --- a/cgitrc.5.txt +++ b/cgitrc.5.txt @@ -424,7 +424,7 @@ cache-size=1000 # Specify some default clone prefixes -clone-prefix=git://foobar.com ssh://foobar.com/pub/git http://foobar.com/git +clone-prefix=git://example.com ssh://example.com/pub/git http://example.com/git # Specify the css url css=/css/cgit.css @@ -455,14 +455,14 @@ max-stats=quarter # Set the title and heading of the repository index page -root-title=foobar.com git repositories +root-title=example.com git repositories # Set a subheading for the repository index page root-desc=tracking the foobar development -# Include some more info about foobar.com on the index page +# Include some more info about example.com on the index page root-readme=/var/www/htdocs/about.html @@ -496,14 +496,14 @@ mimetype.svg=image/svg+xml repo.url=foo repo.path=/pub/git/foo.git repo.desc=the master foo repository -repo.owner=fooman@foobar.com +repo.owner=fooman@example.com repo.readme=info/web/about.html repo.url=bar repo.path=/pub/git/bar.git repo.desc=the bars for your foo -repo.owner=barman@foobar.com +repo.owner=barman@example.com repo.readme=info/web/about.html -- cgit