contacts: add a Makefile to generate docs and install

Also add a gitignore file for generated files. Signed-off-by: Sebastian Schuberth <sschuberth@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>

Sebastian Schuberth committed Oct 15, 2014 at 20:50 UTC 2ea40f01c51b7a3e0e5ab32dbacfb1c38e852631
2 files changed +74
contrib/contacts/.gitignore new
+3
@@ -0,0 +1,3 @@
1 +git-contacts.1
2 +git-contacts.html
3 +git-contacts.xml
contrib/contacts/Makefile new
+71
@@ -0,0 +1,71 @@
1 +# The default target of this Makefile is...
2 +all::
3 +
4 +-include ../../config.mak.autogen
5 +-include ../../config.mak
6 +
7 +prefix ?= /usr/local
8 +gitexecdir ?= $(prefix)/libexec/git-core
9 +mandir ?= $(prefix)/share/man
10 +man1dir ?= $(mandir)/man1
11 +htmldir ?= $(prefix)/share/doc/git-doc
12 +
13 +../../GIT-VERSION-FILE: FORCE
14 + $(MAKE) -C ../../ GIT-VERSION-FILE
15 +
16 +-include ../../GIT-VERSION-FILE
17 +
18 +# this should be set to a 'standard' bsd-type install program
19 +INSTALL ?= install
20 +RM ?= rm -f
21 +
22 +ASCIIDOC = asciidoc
23 +XMLTO = xmlto
24 +
25 +ifndef SHELL_PATH
26 + SHELL_PATH = /bin/sh
27 +endif
28 +SHELL_PATH_SQ = $(subst ','\'',$(SHELL_PATH))
29 +
30 +ASCIIDOC_CONF = ../../Documentation/asciidoc.conf
31 +MANPAGE_XSL = ../../Documentation/manpage-normal.xsl
32 +
33 +GIT_CONTACTS := git-contacts
34 +
35 +GIT_CONTACTS_DOC := git-contacts.1
36 +GIT_CONTACTS_XML := git-contacts.xml
37 +GIT_CONTACTS_TXT := git-contacts.txt
38 +GIT_CONTACTS_HTML := git-contacts.html
39 +
40 +doc: $(GIT_CONTACTS_DOC) $(GIT_CONTACTS_HTML)
41 +
42 +install: $(GIT_CONTACTS)
43 + $(INSTALL) -d -m 755 $(DESTDIR)$(gitexecdir)
44 + $(INSTALL) -m 755 $(GIT_CONTACTS) $(DESTDIR)$(gitexecdir)
45 +
46 +install-doc: install-man install-html
47 +
48 +install-man: $(GIT_CONTACTS_DOC)
49 + $(INSTALL) -d -m 755 $(DESTDIR)$(man1dir)
50 + $(INSTALL) -m 644 $^ $(DESTDIR)$(man1dir)
51 +
52 +install-html: $(GIT_CONTACTS_HTML)
53 + $(INSTALL) -d -m 755 $(DESTDIR)$(htmldir)
54 + $(INSTALL) -m 644 $^ $(DESTDIR)$(htmldir)
55 +
56 +$(GIT_CONTACTS_DOC): $(GIT_CONTACTS_XML)
57 + $(XMLTO) -m $(MANPAGE_XSL) man $^
58 +
59 +$(GIT_CONTACTS_XML): $(GIT_CONTACTS_TXT)
60 + $(ASCIIDOC) -b docbook -d manpage -f $(ASCIIDOC_CONF) \
61 + -agit_version=$(GIT_VERSION) $^
62 +
63 +$(GIT_CONTACTS_HTML): $(GIT_CONTACTS_TXT)
64 + $(ASCIIDOC) -b xhtml11 -d manpage -f $(ASCIIDOC_CONF) \
65 + -agit_version=$(GIT_VERSION) $^
66 +
67 +clean:
68 + $(RM) $(GIT_CONTACTS)
69 + $(RM) *.xml *.html *.1
70 +
71 +.PHONY: FORCE