]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/software/matita/help/C/Makefile
distribute more stuff
[helm.git] / helm / software / matita / help / C / Makefile
index 5fea4a91d0b34d5d01e7fbe7118b1ffeb7b394d3..dab6f2b4cf1d6b7e75da774a1b0a3b9e274afdb0 100644 (file)
@@ -1,14 +1,25 @@
+
+include ../../../Makefile.defs
+
 XSLTPROC=xsltproc
 XHTML_XSL=matita-xhtml.xsl
 FO_XSL=matita-fo.xsl
 TEX_XSL=matita-tex.xsl
+TEX_UNICODE_PATH=$(SRCROOT)/share/texmf/unicode
+TEX_ENV=TEXINPUTS=.:$(TEX_UNICODE_PATH):$(TEX_UNICODE_PATH)/data:
 MAIN=matita.xml
+DEPS := $(wildcard *.xml)
 
-# one of "fop", "pdflatex"
-PDF_METHOD=pdflatex
+DESTDIR = /usr/local/share/doc/matita/
 
 all: html txt
 
+# one of: "fop", "pdflatex"
+PDF_METHOD=pdflatex
+
+# one of: "docbook2tex", "xsl"
+TEX_METHOD=xsl
+
 clean:
        rm -f *.html *.fo *.pdf
        rm -rf $(filter-out version.txt,$(wildcard *.txt))
@@ -24,7 +35,7 @@ test:
 
 .PHONY: html
 html: html-stamp
-html-stamp: $(MAIN)
+html-stamp: $(MAIN) $(DEPS) $(XHTML_XSL)
        xsltproc $(XHTML_XSL) $<
        touch $@
 
@@ -37,7 +48,7 @@ txt-stamp: html-stamp
        $(MAKE) $(TXTS)
        touch $@
 %.txt: %.html
-       w3m -dump $< > $@
+       w3m -dump -no-graph $< > $@
 
 # PDF generation
 
@@ -47,14 +58,38 @@ pdf-stamp: $(patsubst %.xml,%.pdf,$(MAIN))
 
 %.fo: %.xml
        xsltproc $(FO_XSL) $< | xmllint --format - > $@
-%.tex: %.xml
+ifeq ($(TEX_METHOD),docbook2tex)
+%.tex: %.xml $(DEPS)
+       docbook2tex $<
+else ifeq ($(TEX_METHOD),xsl)
+%.tex: %.xml $(TEX_XSL) $(DEPS)
        xsltproc $(TEX_XSL) $< > $@
+endif
 
 ifeq ($(PDF_METHOD),fop)
 %.pdf: %.fo
        fop $< $@
 else ifeq ($(PDF_METHOD),pdflatex)
 %.pdf: %.tex
-       pdflatex $<
+       $(TEX_ENV) pdflatex $<
 endif
 
+%.dvi: %.tex
+       $(TEX_ENV) latex $<
+%.ps: %.dvi
+       dvips $<
+
+# installation
+
+install: install-html
+install-html: html-stamp
+       cp *.html *.css $(DESTDIR)
+
+# shotcuts
+
+tex: $(patsubst %.xml,%.tex,$(MAIN))
+dvi: $(patsubst %.xml,%.dvi,$(MAIN))
+ps: $(patsubst %.xml,%.ps,$(MAIN))
+
+.PRECIOUS: matita.tex matita.dvi
+