aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--doc/src/sgml/Makefile84
-rw-r--r--doc/src/sgml/arch-dev.sgml27
-rw-r--r--doc/src/sgml/docguide.sgml136
-rw-r--r--doc/src/sgml/libpq++.sgml4
-rw-r--r--doc/src/sgml/mvcc.sgml2
5 files changed, 185 insertions, 68 deletions
diff --git a/doc/src/sgml/Makefile b/doc/src/sgml/Makefile
index 47b2c19f99a..1605f840d42 100644
--- a/doc/src/sgml/Makefile
+++ b/doc/src/sgml/Makefile
@@ -8,23 +8,24 @@
#
#
# IDENTIFICATION
-# $Header: /cvsroot/pgsql/doc/src/sgml/Makefile,v 1.7 1998/10/30 19:36:51 thomas Exp $
+# $Header: /cvsroot/pgsql/doc/src/sgml/Makefile,v 1.8 1999/07/06 17:19:41 thomas Exp $
#
#----------------------------------------------------------------------------
PGDOCS= ../..
SRCDIR= ../../../src
+D2MDIR= ../docbook2man
# This is where the default stylesheets appear on my system.
# Probably no need to change this; rather, put definitions
# for HSTYLE and PSTYLE and/or for HDSL and PDSL
# in Makefile.custom in your code src directory.
-HSTYLE=/usr/lib/sgml/stylesheets/jade/docbook/html
-PSTYLE=/usr/lib/sgml/stylesheets/jade/docbook/print
+#HSTYLE=/usr/lib/sgml/stylesheets/nwalsh-modular/html
+#PSTYLE=/usr/lib/sgml/stylesheets/nwalsh-modular/print
-#HSTYLE=/home/tgl/SGML/db107.d/docbook/html
-#PSTYLE=/home/tgl/SGML/db107.d/docbook/print
+HSTYLE=/opt/sgml/current/docbook/html
+PSTYLE=/opt/sgml/current/docbook/print
HDSL=$(HSTYLE)/docbook.dsl
PDSL=$(PSTYLE)/docbook.dsl
@@ -57,6 +58,46 @@ ifneq ($(PDSL), )
PRINTOPTS= -d $(PDSL)
endif
+MANSOURCES= $(wildcard ref/*.sgml)
+
+APPLICATIONS= createdb.sgml createuser.sgml \
+ destroydb.sgml destroyuser.sgml \
+ initdb.sgml initlocation.sgml \
+ pg_dump.sgml \
+ pg_dumpall.sgml \
+ pg_upgrade.sgml \
+ pgaccess-ref.sgml \
+ pgadmin-ref.sgml \
+ postgres-ref.sgml \
+ postmaster.sgml \
+ psql-ref.sgml \
+ vacuumdb.sgml
+
+COMMANDS= abort.sgml alter_table.sgml alter_user.sgml \
+ begin.sgml \
+ close.sgml cluster.sgml commit.sgml copy.sgml \
+ create_aggregate.sgml create_database.sgml create_function.sgml create_index.sgml \
+ create_language.sgml create_operator.sgml create_rule.sgml create_sequence.sgml \
+ create_table.sgml create_table_as.sgml create_trigger.sgml create_type.sgml \
+ create_user.sgml create_view.sgml \
+ declare.sgml delete.sgml \
+ drop_aggregate.sgml drop_database.sgml drop_function.sgml drop_index.sgml \
+ drop_language.sgml drop_operator.sgml drop_rule.sgml drop_sequence.sgml \
+ drop_table.sgml drop_trigger.sgml drop_type.sgml drop_user.sgml drop_view.sgml \
+ explain.sgml fetch.sgml grant.sgml \
+ insert.sgml listen.sgml load.sgml lock.sgml move.sgml \
+ notify.sgml \
+ reset.sgml revoke.sgml rollback.sgml \
+ select.sgml select_into.sgml set.sgml show.sgml \
+ unlisten.sgml update.sgml vacuum.sgml
+
+FUNCTIONS= current_date.sgml current_time.sgml current_timestamp.sgml current_user.sgml
+
+APPSOURCES= $(addprefix ref/, $(APPLICATIONS))
+SQLSOURCES= $(addprefix ref/, $(COMMANDS))
+APPTARGETS= $(APPLICATIONS:.sgml=.1)
+SQLTARGETS= $(COMMANDS:.sgml=.l)
+
.PRECIOUS: postgres.tex postgres.dvi
.PHONY: install all clean distclean
@@ -66,8 +107,26 @@ install::
all::
+#man:: .manlist
+# for f in `cat .manlist` ; do \
+# nsgmls $f | sgmlspl ../docbook2man/docbook2man-spec.pl --lowercase; \
+# done
+#
+#.manlist: $(MANSOURCES)
+# (grep -iE '<refentry([ ]|>)' $(MANSOURCES) | cut -f 1 -d : | sort | uniq) > .manlist
+
+man1: $(APPTARGETS)
+ $(RM) -rf man1
+ if [ ! -d man1 ]; then mkdir man1; fi
+ mv *.1 man1/
+
+manl: $(SQLTARGETS)
+ $(RM) -rf manl/*
+ if [ ! -d manl ]; then mkdir manl; fi
+ mv *.l manl/
+
clean::
- (rm -rf HTML.manifest *.html *.htm)
+ (rm -rf HTML.manifest *.html *.htm man1 manl manpage*)
distclean::
$(MAKE) clean
@@ -76,16 +135,11 @@ distclean::
# Generic production rules
#
-# Compressed file
-
-%.gz: %
- (gzip -f $<)
-
-# TAR file for HTML package
+%.1: ref/%.sgml
+ nsgmls $< | sgmlspl $(D2MDIR)/docbook2man-spec.pl --defsection 1
-%.tar: %.html # %.ps
- ($(TAR) cf $@ $*.html index.html *.htm *.gif) # $*.ps
- (rm -rf index.html *.htm)
+%.l: ref/%.sgml
+ nsgmls $< | sgmlspl $(D2MDIR)/docbook2man-spec.pl --defsection l
# HTML
# Include some softlinks to the generic default file names
diff --git a/doc/src/sgml/arch-dev.sgml b/doc/src/sgml/arch-dev.sgml
index b8d03725bea..7d867c45cae 100644
--- a/doc/src/sgml/arch-dev.sgml
+++ b/doc/src/sgml/arch-dev.sgml
@@ -4,7 +4,8 @@
<note>
<title>Author</title>
<para>
- This chapter originally appeared as a part of <xref linkend="SIM98" endterm="SIM98">, Stefan Simkovics'
+ This chapter originally appeared as a part of
+ <xref linkend="SIM98" endterm="SIM98">, Stefan Simkovics'
Master's Thesis prepared at Vienna University of Technology under the direction
of O.Univ.Prof.Dr. Georg Gottlob and Univ.Ass. Mag. Katrin Seyr.
</para>
@@ -239,17 +240,18 @@
<para>
A detailed description of <application>yacc</application> or
- the grammar rules given
- in <filename>gram.y</filename> would be beyond the scope of this paper. There are
- many books and documents dealing with <application>lex</application>
- and <application>yacc</application>. You
- should be familiar with <application>yacc</application> before you start to study the
- grammar given in <filename>gram.y</filename> otherwise you won't understand what
- happens there.
+ the grammar rules given in <filename>gram.y</filename> would be
+ beyond the scope of this paper. There are many books and
+ documents dealing with <application>lex</application> and
+ <application>yacc</application>. You should be familiar with
+ <application>yacc</application> before you start to study the
+ grammar given in <filename>gram.y</filename> otherwise you won't
+ understand what happens there.
</para>
<para>
- For a better understanding of the data structures used in <productname>Postgres</productname>
+ For a better understanding of the data structures used in
+ <productname>Postgres</productname>
for the processing of a query we use an example to illustrate the
changes made to these data structures in every stage.
</para>
@@ -271,10 +273,9 @@
have already been defined.
<programlisting>
- select s.sname, se.pno
- from supplier s, sells se
- where s.sno > 2 and
- s.sno = se.sno;
+select s.sname, se.pno
+ from supplier s, sells se
+ where s.sno > 2 and s.sno = se.sno;
</programlisting>
</para>
</example>
diff --git a/doc/src/sgml/docguide.sgml b/doc/src/sgml/docguide.sgml
index ccdf85e6830..8297c2c1baf 100644
--- a/doc/src/sgml/docguide.sgml
+++ b/doc/src/sgml/docguide.sgml
@@ -1,5 +1,5 @@
<!--
-$Header: /cvsroot/pgsql/doc/src/sgml/docguide.sgml,v 1.17 1999/06/23 06:19:36 thomas Exp $
+$Header: /cvsroot/pgsql/doc/src/sgml/docguide.sgml,v 1.18 1999/07/06 17:19:41 thomas Exp $
Documentation Guide
Thomas Lockhart
@@ -817,15 +817,15 @@ be included below.
</thead>
<tbody>
<row>
- <entry><sgmltag>Book</sgmltag></entry>
+ <entry><sgmltag>book</sgmltag></entry>
<entry>Delimits a Book element</entry>
</row>
<row>
- <entry><sgmltag>Chapter</sgmltag></entry>
+ <entry><sgmltag>chapter</sgmltag></entry>
<entry>Delimits a Chapter element</entry>
</row>
<row>
- <entry><sgmltag>Appendix</sgmltag></entry>
+ <entry><sgmltag>appendix</sgmltag></entry>
<entry><sgmltag>Delimits a Appendix element</sgmltag></entry>
</row>
</tbody>
@@ -932,19 +932,20 @@ right, and I can verify the document with "nsgmls -s docguide.sgml".
</sect2>
</sect1>
-<sect1>
-<title>Building Documentation</title>
+ <sect1>
+ <title>Building Documentation</title>
-<para>
-GNU <application>make</application> is used to build documentation from the DocBook sources.
-There are a few environment definitions which may need to be set or modified for your installation.
-The <filename>Makefile</filename> looks for
-<filename>doc/../src/Makefile</filename>
-and (implicitly) for
-<filename>doc/../src/Makefile.custom</filename>
-to obtain environment information. On my system, the <filename>src/Makefile.custom</filename> looks like
+ <para>
+ GNU <application>make</application> is used to build documentation
+ from the DocBook sources. There are a few environment definitions
+ which may need to be set or modified for your installation.
+ The <filename>Makefile</filename> looks for
+ <filename>doc/../src/Makefile</filename> and (implicitly) for
+ <filename>doc/../src/Makefile.custom</filename> to obtain
+ environment information. On my system, the
+ <filename>src/Makefile.custom</filename> looks like
-<programlisting>
+ <programlisting>
# Makefile.custom
# Thomas Lockhart 1998-03-01
@@ -956,23 +957,26 @@ YFLAGS+= -v
HSTYLE= /home/tgl/SGML/db107.d/docbook/html
PSTYLE= /home/tgl/SGML/db107.d/docbook/print
-</programlisting>
+ </programlisting>
-where HSTYLE and PSTYLE determine the path to <filename>docbook.dsl</filename> for <acronym>HTML</acronym>
-and hardcopy (print) stylesheets, respectively. These stylesheet file names are for Norm Walsh's
-Modular Style Sheets; if other stylesheets are used then one can define HDSL and PDSL as the full path
-and file name for the stylesheet, as is done above for HSTYLE and PSTYLE.
-On many systems, these stylesheets will be found in packages installed in
-<filename>/usr/lib/sgml/</filename>,
-<filename>/usr/share/lib/sgml/</filename>,
-or
-<filename>/usr/local/lib/sgml/</filename>.
-</para>
+ where HSTYLE and PSTYLE determine the path to
+ <filename>docbook.dsl</filename> for <acronym>HTML</acronym>
+ and hardcopy (print) stylesheets, respectively. These stylesheet
+ file names are for Norm Walsh's
+ <productname>Modular Style Sheets</productname>; if other
+ stylesheets are used then one can define HDSL and PDSL as the full path
+ and file name for the stylesheet, as is done above for HSTYLE and PSTYLE.
+ On many systems, these stylesheets will be found in packages installed in
+ <filename>/usr/lib/sgml/</filename>,
+ <filename>/usr/share/lib/sgml/</filename>,
+ or
+ <filename>/usr/local/lib/sgml/</filename>.
+ </para>
-<para>
-<acronym>HTML</acronym> documentation packages can be generated from the <acronym>SGML</acronym> source by
-typing
-<programlisting>
+ <para>
+ <acronym>HTML</acronym> documentation packages can be generated
+ from the <acronym>SGML</acronym> source by typing
+ <programlisting>
% cd doc/src
% make tutorial.tar.gz
% make user.tar.gz
@@ -980,17 +984,73 @@ typing
% make programmer.tar.gz
% make postgres.tar.gz
% make install
-</programlisting>
-</para>
+ </programlisting>
+ </para>
-<para>
-These packages can be installed from the main documentation directory
-by typing
-<programlisting>
+ <para>
+ These packages can be installed from the main documentation directory
+ by typing
+ <programlisting>
% cd doc
% make install
-</programlisting>
-</para></sect1>
+ </programlisting>
+ </para>
+ </sect1>
+
+ <sect1>
+ <title>Manpages</title>
+
+ <para>
+ We use the <application>docbook2man</application> utility to
+ convert <productname>DocBook</productname>
+ <sgmltag>REFENTRY</sgmltag> pages to *roff output suitable for man
+ pages. At the time of writing, the utility required patching to
+ successfully run on the <productname>Postgres</productname> markup,
+ and we added a small amount of new functionality to allow setting
+ the man page section in the output file name.
+ </para>
+
+ <para>
+ <application>docbook2man</application> is written in perl, and
+ requires the CPAN package <literal>SGMLSpm</literal> to run. Also,
+ it requires <application>nsgmls</application> to be available,
+ which is included in the <application>jade</application>
+ distribution. After installing these packages, then simply run
+
+ <programlisting>
+$ cd doc/src
+$ make man
+ </programlisting>
+
+ which will result in a tar file being generated in the
+ <filename>doc/src</filename> directory.
+ </para>
+
+ <procedure>
+ <title>docbook2man Installation Procedure</title>
+
+ <step performance="required">
+ <para>
+ Install the <application>docbook2man</application> package,
+ available at
+ <ulink url="http://shell.ipoline.com/~elmert/comp/docbook2X/">http://shell.ipoline.com/~elmert/comp/docbook2X/</ulink>
+ </para>
+ </step>
+
+ <step performance="required">
+ <para>
+ Install the SGMLSpm perl module, available from CPAN mirrors.
+ </para>
+ </step>
+
+ <step performance="required">
+ <para>
+ Install <application>nsgmls</application> if not already
+ available from your <application>jade</application> installation.
+ </para>
+ </step>
+ </procedure>
+ </sect1>
<sect1>
<title>Hardcopy Generation for v6.5</title>
diff --git a/doc/src/sgml/libpq++.sgml b/doc/src/sgml/libpq++.sgml
index b9a0d84216f..ceaac2c7089 100644
--- a/doc/src/sgml/libpq++.sgml
+++ b/doc/src/sgml/libpq++.sgml
@@ -738,8 +738,8 @@
<programlisting>
PgDatabase data;
- data.exec("create table foo (a int4, b char16, d float8)");
- data.exec("copy foo from stdin");
+ data.Exec("create table foo (a int4, b char16, d float8)");
+ data.Exec("copy foo from stdin");
data.putline("3\etHello World\et4.5\en");
data.putline("4\etGoodbye World\et7.11\en");
&amp;...
diff --git a/doc/src/sgml/mvcc.sgml b/doc/src/sgml/mvcc.sgml
index 40430b4fcc0..a6a7399c9ba 100644
--- a/doc/src/sgml/mvcc.sgml
+++ b/doc/src/sgml/mvcc.sgml
@@ -96,6 +96,8 @@
<thead>
<row>
<entry>
+ </entry>
+ <entry>
Dirty Read
</entry>
<entry>