]> matita.cs.unibo.it Git - helm.git/blobdiff - matita/help/C/Makefile
branch for universe
[helm.git] / matita / help / C / Makefile
diff --git a/matita/help/C/Makefile b/matita/help/C/Makefile
new file mode 100644 (file)
index 0000000..491bae6
--- /dev/null
@@ -0,0 +1,105 @@
+
+include ../../../Makefile.defs
+
+XSLTPROC=xsltproc
+XHTML_XSL=xsl/matita-xhtml.xsl
+FO_XSL=xsl/matita-fo.xsl
+TEX_XSL=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)
+
+DESTDIR = /usr/local/share/doc/matita/
+
+all: quickref
+
+quickref: tactics_quickref.xml declarative_tactics_quickref.xml
+
+tactics_quickref.xml: xsl/tactic_quickref.xsl sec_tactics.xml
+       $(XSLTPROC) --param declarative "''" $< matita.xml > tactics_quickref.xml
+declarative_tactics_quickref.xml: xsl/tactic_quickref.xsl sec_declarative_tactics.xml
+       $(XSLTPROC) --param declarative "'declarative_'" $< matita.xml > declarative_tactics_quickref.xml
+
+# 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))
+       rm -f *-stamp
+       rm -f matita.out matita.log matita.glo matita.dvi matita.idx
+       rm -f matita.aux matita.tex
+
+# test (dumb implementation)
+test:
+       SP_ENCODING=UTF-8 docbook2txt matita.xml
+
+# XHTMLs generation
+
+.PHONY: html
+html: html-stamp
+html-stamp: $(MAIN) $(DEPS) $(XHTML_XSL)
+       $(XSLTPROC) $(XHTML_XSL) $<
+       touch $@
+
+# TXTs generation
+
+TXTS = $(patsubst %.html,%.txt,$(wildcard *.html))
+.PHONY: txt
+txt: txt-stamp
+txt-stamp: html-stamp
+       $(MAKE) txt-stamp-rec
+       touch $@
+txt-stamp-rec: $(TXTS)
+%.txt: %.html
+       w3m -dump -no-graph $< > $@
+
+# PDF generation
+
+pdf: pdf-stamp
+pdf-stamp: $(patsubst %.xml,%.pdf,$(MAIN))
+       touch $@
+
+%.fo: %.xml
+       $(XSLTPROC) $(FO_XSL) $< | xmllint --format - > $@
+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
+       $(TEX_ENV) pdflatex $<
+endif
+
+%.dvi: %.tex
+       $(TEX_ENV) latex $<
+%.ps: %.dvi
+       dvips $<
+
+# installation
+
+install: install-html
+install-html: html-stamp
+       cp *.html *.css $(DESTDIR)
+       test -d $(DESTDIR)/figures || mkdir $(DESTDIR)/figures
+       cp figures/* $(DESTDIR)/figures/
+
+# shotcuts
+
+tex: $(patsubst %.xml,%.tex,$(MAIN))
+dvi: $(patsubst %.xml,%.dvi,$(MAIN))
+ps: $(patsubst %.xml,%.ps,$(MAIN))
+
+.PRECIOUS: matita.tex matita.dvi
+