doc/automake.mk: New mutations to generated docbook xml to workaround makeinfo bugs
authorJohn Darrington <john@darrington.wattle.id.au>
Sat, 13 Oct 2012 10:44:05 +0000 (12:44 +0200)
committerJohn Darrington <john@darrington.wattle.id.au>
Sat, 13 Oct 2012 10:48:36 +0000 (12:48 +0200)
doc/automake.mk

index fe8abd764f9b370ccec9861e49d7ce9d3e31b666..35c9045d31d5b2b9c2944fb77b7677a58109bb30 100644 (file)
@@ -52,6 +52,8 @@ $(srcdir)/doc/tut.texi:
        echo "@set example-dir $(examplesdir)" > $@
 
 
+# The SED and AWK filters in this rule, are to work-around some nasty bugs in makeinfo version 4.13, which produces
+# broken docbook xml.  These workarounds are rather horrible and must be removed asap.
 $(srcdir)/doc/pspp.xml: doc/pspp.texinfo $(doc_pspp_TEXINFOS)
        @$(MKDIR_P)  doc
        $(MAKEINFO) $(AM_MAKEINFOFLAGS) --docbook -I $(top_srcdir) \
@@ -67,12 +69,39 @@ $(srcdir)/doc/pspp.xml: doc/pspp.texinfo $(doc_pspp_TEXINFOS)
                -e 's/&copy;/\&#0169;/g' \
                -e 's/&minus;/\&#8722;/g' \
                -e 's/&hellip;/\&#8230;/g' \
+               -e 's/&bull;/\&#2022;/g' \
                -e 's/&period;/./g' \
-               > $@
-       $(XMLLINT) --output /dev/null $@ 2>&1 2> /dev/null || ( $(RM) $@ && false )
+               -e 's%\(<figure [^>]*\)>%\1/>%g' \
+        | $(AWK) '/<para>.*<table.*>.*<\/para>/{x=sub("</para>",""); print; s=1;next}/<\/table>/{print; if (s==1) print "</para>"; s=0; next}1' \
+       > $@
+       $(XMLLINT) --output /dev/null $@ || ( $(RM) $@ ; false)
+
+
+doc/texi_deps: doc/texi-dep.sh $(info_TEXINFOS) $(doc_pspp_TEXINFOS)
+       @$(MKDIR_P) doc
+       $(SHELL) $(top_srcdir)/doc/texi-dep.sh doc/pspp.dvi  $(top_srcdir)/doc   > $@
+       $(SHELL) $(top_srcdir)/doc/texi-dep.sh doc/pspp.xml  $(top_srcdir)/doc  >> $@
+       $(SHELL) $(top_srcdir)/doc/texi-dep.sh doc/pspp.info $(top_srcdir)/doc  >> $@
+       $(SHELL) $(top_srcdir)/doc/texi-dep.sh doc/pspp.ps   $(top_srcdir)/doc  >> $@
+       $(SHELL) $(top_srcdir)/doc/texi-dep.sh doc/pspp.pdf  $(top_srcdir)/doc  >> $@
+
+-include $(top_builddir)/doc/texi_deps
+
 
 docbookdir = $(docdir)
 dist_docbook_DATA = doc/pspp.xml
 
+SUFFIXES += .png .jpg .eps .txt
+
+.png.jpg:
+       convert $< $@
+
+.png.eps:
+       convert $< $@
+
+.png.txt:
+       echo A pretty picture > $@
+
 EXTRA_DIST += doc/OChangeLog
 CLEANFILES += pspp-dev.dvi $(docbook_DATA)
+