2 J.3. Building the Documentation with Make #
9 Once you have everything set up, change to the directory doc/src/sgml
10 and run one of the commands described in the following subsections to
11 build the documentation. (Remember to use GNU make.)
15 To build the HTML version of the documentation:
16 doc/src/sgml$ make html
18 This is also the default target. The output appears in the subdirectory
21 To produce HTML documentation with the stylesheet used on
22 postgresql.org instead of the default simple style use:
23 doc/src/sgml$ make STYLE=website html
25 If the STYLE=website option is used, the generated HTML files include
26 references to stylesheets hosted on postgresql.org and require network
31 We use the DocBook XSL stylesheets to convert DocBook refentry pages to
32 *roff output suitable for man pages. To create the man pages, use the
34 doc/src/sgml$ make man
38 To produce a PDF rendition of the documentation using FOP, you can use
39 one of the following commands, depending on the preferred paper format:
41 doc/src/sgml$ make postgres-A4.pdf
43 * For U.S. letter format:
44 doc/src/sgml$ make postgres-US.pdf
46 Because the PostgreSQL documentation is fairly big, FOP will require a
47 significant amount of memory. Because of that, on some systems, the
48 build will fail with a memory-related error message. This can usually
49 be fixed by configuring Java heap settings in the configuration file
50 ~/.foprc, for example:
51 # FOP binary distribution
56 ADDITIONAL_FLAGS='-Xmx1500m'
58 There is a minimum amount of memory that is required, and to some
59 extent more memory appears to make things a bit faster. On systems with
60 very little memory (less than 1 GB), the build will either be very slow
61 due to swapping or will not work at all.
63 In its default configuration FOP will emit an INFO message for each
64 page. The log level can be changed via ~/.foprc:
65 LOGCHOICE=-Dorg.apache.commons.logging.Log=org.apache.commons.logging.impl.Simp
67 LOGLEVEL=-Dorg.apache.commons.logging.simplelog.defaultlog=WARN
69 Other XSL-FO processors can also be used manually, but the automated
70 build process only supports FOP.
74 Building the documentation can take very long. But there is a method to
75 just check the correct syntax of the documentation files, which only
77 doc/src/sgml$ make check