Rearrangement of the HTML docs build rules
authorPeter Eisentraut <peter_e@gmx.net>
Tue, 14 Jul 2009 22:16:38 +0000 (22:16 +0000)
committerPeter Eisentraut <peter_e@gmx.net>
Tue, 14 Jul 2009 22:16:38 +0000 (22:16 +0000)
commit4ef8dc7a75a9a408b34338854dd0d412ea01c504
treedbd4fb1335cef12ad0f52855f88b2481e83de5d4
parent4baaaf7a812ab26d02c01fc97ca7f202399fbc17
Rearrangement of the HTML docs build rules

Set up proper makefile dependencies in the documentation build rules,
especially around the HTML/index build.  The problem we've had with all
previous solutions is that we have used the same file name, such as HTML.index
or bookindex.sgml, to mean different things at different stages of the build,
and make can't distinguish that.  The solution here is that the first jade run
produces HTML.index, but does not require bookindex.sgml at all, and produces
no other html output (the latter an idea from Alvaro).  The second jade run
includes bookindex.sgml, but does not recreate HTML.index.  That way, when you
change an sgml file, jade is run twice and at the end all dependencies are
satisfied.  Omitting the html output in the first stage also makes the full
build a lot faster.

When you run one of the print format targets, only the first jade run is run,
then the print target-specific commands.  If an HTML build has completed
previously, the first jade run is skipped because the dependencies have
already been satisfied.

The draft and check targets for quick builds and syntax verification are still
there.
doc/src/sgml/Makefile
doc/src/sgml/filelist.sgml
doc/src/sgml/postgres.sgml
doc/src/sgml/stylesheet.dsl