-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 =
+# with their own formatting rules.
+SP_ARTICLES = tutorial
+
+DOC_HTML += $(patsubst %,%.html,$(ARTICLES) $(SP_ARTICLES))
+DOC_PDF += $(patsubst %,%.pdf,$(ARTICLES) $(SP_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
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.
#
-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 -f tutorial.conf $(ASCIIDOC_EXTRA) $<
+tutorial.xml : %.xml : %.txt
+ $(ASCIIDOC) -b docbook -d article -f tutorial.conf $<