.DELETE_ON_ERROR:
-# This line prevents GNU make from deleting any intermediate targets:
-
-.SECONDARY:
-
#-----------------------------------------------------------------------------
# Haskell Suffix Rules
$(HC) $(HC_OPTS) -c $< -o $@ -ohi $(basename $@).$(way_)hi
$(HC_POST_OPTS)
-$(odir_)%.$(way_)o-boot : %.hs-boot
- $(HC_PRE_OPTS)
- $(HC) $(HC_OPTS) -c $< -o $@ -ohi $(basename $@).$(way_)hi-boot
- $(HC_POST_OPTS)
-
$(odir_)%.$(way_)o : %.lhs
$(HC_PRE_OPTS)
$(HC) $(HC_OPTS) -c $< -o $@ -ohi $(basename $@).$(way_)hi
$(HC_POST_OPTS)
+# Now the rules for hs-boot files.
+# Note that they do *not* do teh HS_PRE_OPTS / HS_POST_OPTS stuff,
+# (which concerns splitting) because they don't generate .o files
+$(odir_)%.$(way_)o-boot : %.hs-boot
+ $(HC) $(HC_OPTS) -c $< -o $@ -ohi $(basename $@).$(way_)hi-boot
+
$(odir_)%.$(way_)o-boot : %.lhs-boot
- $(HC_PRE_OPTS)
$(HC) $(HC_OPTS) -c $< -o $@ -ohi $(basename $@).$(way_)hi-boot
- $(HC_POST_OPTS)
$(odir_)%.$(way_)hc : %.lhs
$(RM) $@
$(XSLTPROC_OPTS) \
$(DIR_DOCBOOK_XSL)/htmlhelp/htmlhelp.xsl $<
-# TODO: Detect hhc via autoconf
+%-htmlhelp2/collection.HxC : %.xml
+ $(RM) -rf $(dir $@)
+ $(XSLTPROC) --stringparam base.dir $(dir $@) \
+ --stringparam use.id.as.filename 1 \
+ --stringparam manifest.in.base.dir 1 \
+ $(XSLTPROC_OPTS) \
+ $(DIR_DOCBOOK_XSL)/htmlhelp2/htmlhelp2.xsl $<
+
+# TODO: Detect hhc & Hxcomp via autoconf
#
-# Two obstables here:
+# Two obstacles here:
#
# * The reason for the strange "if" below is that hhc returns 0 on error and 1
# on success, the opposite of what shells and make expect.
%.chm : %-htmlhelp/index.html
( cd $(dir $<) && if hhc htmlhelp.hhp ; then false ; else true ; fi ) || true
+%.HxS : %-htmlhelp2/collection.HxC
+ ( cd $(dir $<) && if Hxcomp -p collection.HxC -o ../$@ ; then false ; else true ; fi )
+
%.fo : %.xml
$(XSLTPROC) --output $@ \
+ --stringparam draft.mode no \
$(XSLTPROC_LABEL_OPTS) $(XSLTPROC_OPTS) \
$(DIR_DOCBOOK_XSL)/fo/docbook.xsl $<