summaryrefslogtreecommitdiffabout
path: root/Makefile
authorLars Hjemli <hjemli@gmail.com>2010-11-09 23:28:56 (UTC)
committer Lars Hjemli <hjemli@gmail.com>2010-11-09 23:28:56 (UTC)
commit7618cac1ee3bf83424d9237c3c362a43c5b246e9 (patch) (side-by-side diff)
tree93fe8563b0466784394b9f7c0bf820a5cc9ba6d5 /Makefile
parent52558a6d39d52e2b2968b622534b0ffa4da285cb (diff)
parent66df1134573dccd364394f8a177e3d94bfb1e8d1 (diff)
downloadcgit-7618cac1ee3bf83424d9237c3c362a43c5b246e9.zip
cgit-7618cac1ee3bf83424d9237c3c362a43c5b246e9.tar.gz
cgit-7618cac1ee3bf83424d9237c3c362a43c5b246e9.tar.bz2
Merge branch 'tz/make-improvements'
Diffstat (limited to 'Makefile') (more/less context) (show whitespace changes)
-rw-r--r--Makefile64
1 files changed, 57 insertions, 7 deletions
diff --git a/Makefile b/Makefile
index be1d796..fe4b10e 100644
--- a/Makefile
+++ b/Makefile
@@ -4,10 +4,22 @@ CGIT_SCRIPT_PATH = /var/www/htdocs/cgit
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)
+mandir = $(prefix)/share/man
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 +122,8 @@ endif
.PHONY: all libgit test install uninstall clean force-version get-git \
- doc man-doc html-doc clean-doc
+ doc clean-doc install-doc install-man install-html install-pdf \
+ uninstall-doc uninstall-man uninstall-html uninstall-pdf
all: cgit
@@ -166,21 +179,58 @@ 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
+
+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
-doc: man-doc html-doc pdf-doc
+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)
+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