[project @ 2004-08-18 16:16:54 by panne]
[ghc-hetmet.git] / mk / suffix.mk
index 4da8fa9..6d2c180 100644 (file)
@@ -240,13 +240,67 @@ endif
        $(TIME) $(RUNTEST) $(HC) $(RUNTEST_OPTS) $<
 
 #-----------------------------------------------------------------------------
+# DocBook XML suffix rules
+#
+
+%.html : %.xml
+       $(XSLTPROC) --output $@ \
+                   --stringparam html.stylesheet fptools.css \
+                   $(XSLTPROC_OPTS) $(DIR_DOCBOOK_XSL)/html/docbook.xsl $<
+       cp $(FPTOOLS_CSS) .
+
+%-html/index.html : %.xml
+       $(RM) -rf $(dir $@)
+       $(XSLTPROC) --stringparam base.dir $(dir $@) \
+                   --stringparam use.id.as.filename 1 \
+                   --stringparam html.stylesheet fptools.css \
+                   $(XSLTPROC_OPTS) $(DIR_DOCBOOK_XSL)/html/chunk.xsl $<
+       cp $(FPTOOLS_CSS) $(dir $@)
+
+%-htmlhelp/index.html : %.xml
+       $(RM) -rf $(dir $@)
+       $(XSLTPROC) --stringparam base.dir $(dir $@) \
+                   --stringparam manifest.in.base.dir 1 \
+                   $(XSLTPROC_OPTS) $(DIR_DOCBOOK_XSL)/htmlhelp/htmlhelp.xsl $<
+
+%.fo : %.xml
+       $(XSLTPROC) --output $@ \
+                   $(XSLTPROC_OPTS) $(DIR_DOCBOOK_XSL)/fo/docbook.xsl $<
+
+ifeq "$(FOP)" ""
+ifneq "$(PDFXMLTEX)" ""
+%.pdf : %.fo
+       $(PDFXMLTEX) $<
+       if grep "LaTeX Warning: Label(s) may have changed.Rerun to get cross-references right." $(basename $@).log > /dev/null ; then \
+         $(PDFXMLTEX) $< ; \
+         $(PDFXMLTEX) $< ; \
+       fi
+endif
+else
+%.ps : %.fo
+       $(FOP) $(FOP_OPTS) -fo $< -ps $@
+
+%.pdf : %.fo
+       $(FOP) $(FOP_OPTS) -fo $< -pdf $@
+endif
+
+ifneq "$(XMLTEX)" ""
+%.dvi : %.fo
+       $(XMLTEX) $<
+       if grep "LaTeX Warning: Label(s) may have changed.Rerun to get cross-references right." $(basename $@).log > /dev/null ; then \
+         $(XMLTEX) $< ; \
+         $(XMLTEX) $< ; \
+       fi
+endif
+
+#-----------------------------------------------------------------------------
 # Doc processing suffix rules
 #
 # ToDo: make these more robust
 #
 %.ps : %.dvi
        @$(RM) $@
-       dvips $< -o $@
+       $(DVIPS) $< -o $@
 
 %.tex : %.tib
        @$(RM) $*.tex $*.verb-t.tex
@@ -328,10 +382,8 @@ endif
 #-----------------------------------------------------------------------------
 # Preprocessor suffix rule
 
-# We're careful to remove cpp-droppings from the generated file; things like
-# '#line' pragmas.  But we also leave in #include directives, because these
-# are likely to be intentional (perhaps the file is going to be CPP'd again -
-# this is used by ghc/compiler/parser/Parser.y.pp).
+# Note use of -P option to prevent #line pragmas being left in the CPP
+# output.
 
 % : %.pp
        @$(RM) $@