stgit.el: Allow revert on index and work tree
[stgit] / Documentation / Makefile
index 7f5520c..dd029d5 100644 (file)
@@ -1,15 +1,21 @@
-MAN1_TXT=$(wildcard stg-*.txt)
-MAN7_TXT=stg.txt
+COMMANDS = $(shell ../stg-build --commands)
+COMMANDS_TXT = $(patsubst %,stg-%.txt,$(COMMANDS))
 
-DOC_HTML=$(patsubst %.txt,%.html,$(MAN1_TXT) $(MAN7_TXT))
+MAN1_TXT= stg.txt $(COMMANDS_TXT)
+
+DOC_HTML=$(patsubst %.txt,%.html,$(MAN1_TXT))
+
+ARTICLES = tutorial
+
+DOC_HTML += $(patsubst %,%.html,$(ARTICLES))
+DOC_PDF += $(patsubst %,%.pdf,$(ARTICLES))
 
 DOC_MAN1=$(patsubst %.txt,%.1,$(MAN1_TXT))
-DOC_MAN7=$(patsubst %.txt,%.7,$(MAN7_TXT))
 
 prefix?=$(HOME)
-mandir?=$(prefix)/man
+htmldir?=$(prefix)/share/doc/stgit
+mandir?=$(prefix)/share/man
 man1dir=$(mandir)/man1
-man7dir=$(mandir)/man7
 # DESTDIR=
 
 ASCIIDOC=asciidoc --unsafe
@@ -28,17 +34,19 @@ INSTALL?=install
 all: html man
 
 html: $(DOC_HTML)
+pdf: $(DOC_PDF)
 
-$(DOC_HTML) $(DOC_MAN1) $(DOC_MAN7): asciidoc.conf
+$(DOC_HTML) $(DOC_MAN1): asciidoc.conf
 
-man: man1 man7
+man: man1
 man1: $(DOC_MAN1)
-man7: $(DOC_MAN7)
-
 install: man
-       $(INSTALL) -d -m755 $(DESTDIR)$(man1dir) $(DESTDIR)$(man7dir)
+       $(INSTALL) -d -m755 $(DESTDIR)$(man1dir)
        $(INSTALL) -m644 $(DOC_MAN1) $(DESTDIR)$(man1dir)
-       $(INSTALL) -m644 $(DOC_MAN7) $(DESTDIR)$(man7dir)
+
+install-html: html
+       $(INSTALL) -d -m755 $(DESTDIR)$(htmldir)
+       $(INSTALL) -m644 $(DOC_HTML) $(DESTDIR)$(htmldir)
 #
 # Determine "include::" file references in asciidoc files.
 #
@@ -50,13 +58,31 @@ doc.dep : $(wildcard *.txt) build-docdep.perl
 -include doc.dep
 
 clean:
-       rm -f *.xml *.html *.1 *.7 doc.dep
+       rm -f *.xml *.html *.pdf *.1 doc.dep $(COMMANDS_TXT) command-list.txt
+
+ALL_PY = $(shell find ../stgit -name '*.py')
+
+$(COMMANDS_TXT): $(ALL_PY)
+       ../stg-build --asciidoc $(basename $(subst stg-,,$@)) > $@
+
+command-list.txt: $(ALL_PY)
+       ../stg-build --cmd-list > $@
 
 %.html : %.txt
        $(ASCIIDOC) -b xhtml11 -d manpage -f asciidoc.conf $(ASCIIDOC_EXTRA) $<
 
-%.1 %.7 : %.xml
+%.1 : %.xml
        xmlto -m callouts.xsl man $<
 
 %.xml : %.txt
        $(ASCIIDOC) -b docbook -d manpage -f asciidoc.conf $<
+
+%.pdf: %.xml
+       xmlto pdf $<
+
+# special formatting rules
+tutorial.html : %.html : %.txt
+       $(ASCIIDOC) -b xhtml11 -d article -a toc -f tutorial.conf \
+                $(ASCIIDOC_EXTRA) $<
+tutorial.xml : %.xml : %.txt
+       $(ASCIIDOC) -b docbook -d article -f tutorial.conf $<