File: docguide-build.html

package info (click to toggle)
pgadmin3 1.4.3-2
  • links: PTS
  • area: main
  • in suites: etch, etch-m68k
  • size: 29,796 kB
  • ctags: 10,758
  • sloc: cpp: 55,356; sh: 6,164; ansic: 1,520; makefile: 576; sql: 482; xml: 100; perl: 18
file content (314 lines) | stat: -rw-r--r-- 13,606 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>G.3.Building The Documentation</title>
<link rel="stylesheet" href="stylesheet.css" type="text/css">
<link rev="made" href="pgsql-docs@postgresql.org">
<meta name="generator" content="DocBook XSL Stylesheets V1.70.0">
<link rel="start" href="index.html" title="PostgreSQL 8.1.4 Documentation">
<link rel="up" href="docguide.html" title="AppendixG.Documentation">
<link rel="prev" href="docguide-toolsets.html" title="G.2.Tool Sets">
<link rel="next" href="docguide-authoring.html" title="G.4.Documentation Authoring">
<link rel="copyright" href="ln-legalnotice.html" title="Legal Notice">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="sect1" lang="en">
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
<a name="docguide-build"></a>G.3.Building The Documentation</h2></div></div></div>
<p>   Once you have everything set up, change to the directory
   <code class="filename">doc/src/sgml</code> and run one of the commands
   described in the following subsections to build the
   documentation. (Remember to use GNU make.)
  </p>
<div class="sect2" lang="en">
<div class="titlepage"><div><div><h3 class="title">
<a name="id901379"></a>G.3.1.HTML</h3></div></div></div>
<p>    To build the <acronym class="acronym">HTML</acronym> version of the documentation:
</p>
<pre class="screen"><code class="prompt">doc/src/sgml$ </code><strong class="userinput"><code>gmake html</code></strong></pre>
<p>
    This is also the default target.
   </p>
<p>    When the HTML documentation is built, the process also generates
    the linking information for the index entries.  Thus, if you want
    your documentation to have a concept index at the end, you need to
    build the HTML documentation once, and then build the
    documentation again in whatever format you like.
   </p>
<p>    To allow for easier handling in the final distribution, the files
    comprising the HTML documentation are stored in a tar archive that
    is unpacked at installation time.  To create the
    <acronym class="acronym">HTML</acronym> documentation package, use the commands
</p>
<pre class="programlisting">cd doc/src
gmake postgres.tar.gz</pre>
<p>
    In the distribution, these archives live in the
    <code class="filename">doc</code> directory and are installed by default
    with <code class="command">gmake install</code>.
  </p>
</div>
<div class="sect2" lang="en">
<div class="titlepage"><div><div><h3 class="title">
<a name="id901442"></a>G.3.2.Manpages</h3></div></div></div>
<p>   We use the <span class="application">docbook2man</span> utility to
   convert <span class="productname">DocBook</span>
   <code class="sgmltag-element">refentry</code> pages to *roff output suitable for man
   pages.  The man pages are also distributed as a tar archive,
   similar to the <acronym class="acronym">HTML</acronym> version.  To create the man
   page package, use the commands
</p>
<pre class="programlisting">cd doc/src
gmake man.tar.gz</pre>
<p>
   which will result in a tar file being generated in the
   <code class="filename">doc/src</code> directory.
  </p>
<p>   To generate quality man pages, it might be necessary to use a
   hacked version of the conversion utility or do some manual
   postprocessing.  All man pages should be manually inspected before
   distribution.
  </p>
</div>
<div class="sect2" lang="en">
<div class="titlepage"><div><div><h3 class="title">
<a name="id901494"></a>G.3.3.Print Output via <span class="application">JadeTex</span></h3></div></div></div>
<p>    If you want to use <span class="application">JadeTex</span> to produce a
    printable rendition of the documentation, you can use one of the
    following commands:

    </p>
<div class="itemizedlist"><ul type="disc">
<li>
<p>       To make a <acronym class="acronym">DVI</acronym> version:
</p>
<pre class="screen"><code class="prompt">doc/src/sgml$ </code><strong class="userinput"><code>gmake postgres.dvi</code></strong></pre>
<p>
      </p>
</li>
<li>
<p>       To generate Postscript from the <acronym class="acronym">DVI</acronym>:
</p>
<pre class="screen"><code class="prompt">doc/src/sgml$ </code><strong class="userinput"><code>gmake postgres.ps</code></strong></pre>
<p>
      </p>
</li>
<li>
<p>       To make a <acronym class="acronym">PDF</acronym>:
</p>
<pre class="screen"><code class="prompt">doc/src/sgml$ </code><strong class="userinput"><code>gmake postgres.pdf</code></strong></pre>
<p>
       (Of course you can also make a <acronym class="acronym">PDF</acronym> version
       from the Postscript, but if you generate <acronym class="acronym">PDF</acronym>
       directly, it will have hyperlinks and other enhanced features.)
      </p>
</li>
</ul></div>
<p>
   </p>
</div>
<div class="sect2" lang="en">
<div class="titlepage"><div><div><h3 class="title">
<a name="id901598"></a>G.3.4.Print Output via <acronym class="acronym">RTF</acronym></h3></div></div></div>
<p>    You can also create a printable version of the <span class="productname">PostgreSQL</span>
    documentation by converting it to <acronym class="acronym">RTF</acronym> and
    applying minor formatting corrections using an office suite.
    Depending on the capabilities of the particular office suite, you
    can then convert the documentation to Postscript of
    <acronym class="acronym">PDF</acronym>.  The procedure below illustrates this
    process using <span class="productname">Applixware</span>.
   </p>
<div class="note" style="margin-left: 0.5in; margin-right: 0.5in;">
<h3 class="title">Note</h3>
<p>     It appears that current versions of the <span class="productname">PostgreSQL</span> documentation
     trigger some bug in or exceed the size limit of OpenJade.  If the
     build process of the <acronym class="acronym">RTF</acronym> version hangs for a
     long time and the output file still has size 0, then you may have
     hit that problem.  (But keep in mind that a normal build takes 5
     to 10 minutes, so don't abort too soon.)
    </p>
</div>
<div class="procedure">
<a name="id901654"></a><p class="title"><b><span class="productname">Applixware</span> <acronym class="acronym">RTF</acronym> Cleanup</b></p>
<p>     <span class="application">OpenJade</span> omits specifying a default
     style for body text. In the past, this undiagnosed problem led to
     a long process of table of contents generation. However, with
     great help from the <span class="productname">Applixware</span> folks
     the symptom was diagnosed and a workaround is available.
    </p>
<ol type="1">
<li>
<p>      Generate the <acronym class="acronym">RTF</acronym> version by typing:
</p>
<pre class="screen"><code class="prompt">doc/src/sgml$ </code><strong class="userinput"><code>gmake postgres.rtf</code></strong></pre>
<p>
     </p>
</li>
<li>
<p>      Repair the RTF file to correctly specify all styles, in
      particular the default style. If the document contains
      <code class="sgmltag-element">refentry</code> sections, one must also replace
      formatting hints which tie a preceding paragraph to the current
      paragraph, and instead tie the current paragraph to the
      following one. A utility, <code class="command">fixrtf</code>, is
      available in <code class="filename">doc/src/sgml</code> to accomplish
      these repairs:

</p>
<pre class="screen"><code class="prompt">doc/src/sgml$ </code><strong class="userinput"><code>./fixrtf --refentry postgres.rtf</code></strong></pre>
<p>
     </p>
<p>      The script adds <code class="literal">{\s0 Normal;}</code> as the zeroth
      style in the document. According to
      <span class="productname">Applixware</span>, the RTF standard would
      prohibit adding an implicit zeroth style, though Microsoft Word
      happens to handle this case. For repairing
      <code class="sgmltag-element">refentry</code> sections, the script replaces
      <code class="literal">\keepn</code> tags with <code class="literal">\keep</code>.
     </p>
</li>
<li><p>      Open a new document in <span class="productname">Applixware Words</span> and
      then import the <acronym class="acronym">RTF</acronym> file.
     </p></li>
<li>
<p>      Generate a new table of contents (ToC) using
      <span class="productname">Applixware</span>.
     </p>
<ol type="a">
<li><p>        Select the existing ToC lines, from the beginning of the first
        character on the first line to the last character of the last
        line.
       </p></li>
<li><p>        Build a new ToC using
        <span class="guimenu">Tools</span> &#8594; <span class="guisubmenu">Book
        Building</span> &#8594; <span class="guimenuitem">Create Table of
        Contents</span>. Select the first three
        levels of headers for inclusion in the ToC. This will replace
        the existing lines imported in the RTF with a native
        <span class="productname">Applixware</span> ToC.
       </p></li>
<li>
<p>        Adjust the ToC formatting by using
        <span class="guimenu">Format</span> &#8594; <span class="guimenuitem">Style</span>,
        selecting each of the three ToC styles, and adjusting the
        indents for <code class="literal">First</code> and
        <code class="literal">Left</code>. Use the following values:

        </p>
<div class="informaltable"><table border="1">
<colgroup>
<col>
<col>
<col>
</colgroup>
<thead><tr>
<th>Style</th>
<th>First Indent (inches)</th>
<th>Left Indent (inches)</th>
</tr></thead>
<tbody>
<tr>
<td><code class="literal">TOC-Heading 1</code></td>
<td><code class="literal">0.4</code></td>
<td><code class="literal">0.4</code></td>
</tr>
<tr>
<td><code class="literal">TOC-Heading 2</code></td>
<td><code class="literal">0.8</code></td>
<td><code class="literal">0.8</code></td>
</tr>
<tr>
<td><code class="literal">TOC-Heading 3</code></td>
<td><code class="literal">1.2</code></td>
<td><code class="literal">1.2</code></td>
</tr>
</tbody>
</table></div>
<p>
       </p>
</li>
</ol>
</li>
<li>
<p>      Work through the document to:

      </p>
<div class="itemizedlist"><ul type="disc">
<li><p>         Adjust page breaks.
        </p></li>
<li><p>         Adjust table column widths.
        </p></li>
</ul></div>
<p>
     </p>
</li>
<li><p>      Replace the right-justified page numbers in the Examples and
      Figures portions of the ToC with correct values. This only takes
      a few minutes.
     </p></li>
<li><p>       Delete the index section from the document if it is empty.
     </p></li>
<li>
<p>       Regenerate and adjust the table of contents.
     </p>
<ol type="a">
<li><p>         Select the ToC field.
        </p></li>
<li><p>         Select <span class="guimenu">Tools</span> &#8594; <span class="guisubmenu">Book
         Building</span> &#8594; <span class="guimenuitem">Create Table of
         Contents</span>.
        </p></li>
<li><p>         Unbind the ToC by selecting
         <span class="guimenu">Tools</span> &#8594; <span class="guisubmenu">Field
         Editing</span> &#8594; <span class="guimenuitem">Unprotect</span>.
        </p></li>
<li><p>         Delete the first line in the ToC, which is an entry for the
         ToC itself.
        </p></li>
</ol>
</li>
<li><p>      Save the document as native <span class="productname">Applixware
      Words</span> format to allow easier last minute editing
      later.
     </p></li>
<li><p>      &#8220;<span class="quote">Print</span>&#8221; the document
      to a file in Postscript format.
     </p></li>
</ol>
</div>
</div>
<div class="sect2" lang="en">
<div class="titlepage"><div><div><h3 class="title">
<a name="id902136"></a>G.3.5.Plain Text Files</h3></div></div></div>
<p>    Several files are distributed as plain text, for reading during
    the installation process. The <code class="filename">INSTALL</code> file
    corresponds to <a href="installation.html" title="Chapter14.  Installation Instructions">Chapter14, <i>  Installation Instructions</i></a>, with some minor
    changes to account for the different context.  To recreate the
    file, change to the directory <code class="filename">doc/src/sgml</code>
    and enter <strong class="userinput"><code>gmake INSTALL</code></strong>.  This will create
    a file <code class="filename">INSTALL.html</code> that can be saved as text
    with <span class="productname">Netscape Navigator</span> and put into
    the place of the existing file.
    <span class="productname">Netscape</span> seems to offer the best
    quality for <acronym class="acronym">HTML</acronym> to text conversions (over
    <span class="application">lynx</span> and
    <span class="application">w3m</span>).
   </p>
<p>    The file <code class="filename">HISTORY</code> can be created similarly,
    using the command <strong class="userinput"><code>gmake HISTORY</code></strong>.  For the
    file <code class="filename">src/test/regress/README</code> the command is
    <strong class="userinput"><code>gmake regress_README</code></strong>.
   </p>
</div>
<div class="sect2" lang="en">
<div class="titlepage"><div><div><h3 class="title">
<a name="id902244"></a>G.3.6.Syntax Check</h3></div></div></div>
<p>    Building the documentation can take very long.  But there is a
    method to just check the correct syntax of the documentation
    files, which only takes a few seconds:
</p>
<pre class="screen"><code class="prompt">doc/src/sgml$ </code><strong class="userinput"><code>gmake check</code></strong></pre>
<p>
   </p>
</div>
</div></body>
</html>