|
From: <ai...@us...> - 2008-09-22 20:18:27
|
Revision: 8794
http://plplot.svn.sourceforge.net/plplot/?rev=8794&view=rev
Author: airwin
Date: 2008-09-22 20:18:14 +0000 (Mon, 22 Sep 2008)
Log Message:
-----------
Update (and considerably simplify) developer information for the PLplot
documentation.
Modified Paths:
--------------
trunk/doc/docbook/README.developers
Modified: trunk/doc/docbook/README.developers
===================================================================
--- trunk/doc/docbook/README.developers 2008-09-22 17:50:53 UTC (rev 8793)
+++ trunk/doc/docbook/README.developers 2008-09-22 20:18:14 UTC (rev 8794)
@@ -1,8 +1,5 @@
PLPLOT DOCUMENTATION IN THE DOCBOOK FORMAT
(Notes for contributors/developers)
-
- Authors: Rafael Laboissi\xE8re <ra...@ic...>
- Alan W. Irwin <ir...@be...>
$Id$
@@ -17,175 +14,49 @@
includes man pages of the API as well as complete versions of the
documentation in html, dvi, postscript, pdf, and info form.
-This documentation project started as a conversion (under the direction of
-Rafael Laboissi\xE8re) of the old (1995 or earlier) version of the PLplot
-documentation in latexinfo format to DocBook SGML. Since that conversion,
-there has been a lot of work by RL to upgrade to DocBook 4.1 XML, improve
-the configuration of the documentation builds, and to extend the output
-forms to many different formats. The build system has now been essentially
-stabilized.
-
-Another aspect of this project (under the direction of Alan W. Irwin) has
-been to improve the content of the documentation that was converted from the
-1995 version.
-
-The content improvement that has occurred includes a complete API
-description. This XML source for the API has been parsed both to generate
-man pages and perl wrappers. We have also revised some sections and added
-several others. Despite this extensive effort there is still quite a bit to
-do as evidenced by the many times the string "NEEDS DOCUMENTATION" appears
-in the results. Thus, AWI asks for your help to address some of these
-remaining documentation issues.
-
Configuring and Building
========================
-If you help with improving the content, you will want to build the
-documentation from the DocBook source so you can immediately see and
+If you would like to help with improving the content, you will want to build
+the documentation from the DocBook source so you can immediately see and
evaluate the results of your efforts.
-Here is how. It is assumed you have the appropriate automake, autoconf, and
-DocBook software packages loaded on your machine (see Package Lists, below).
-Although in the past we built the documentation successfully on RH 6.2, that
-distribution is now so outdated (and no longer available to us) that
-we have removed those instructions. Here we concentrate on the Debian
-woody instructions. Until we gain experience ourselves with other
-modern versions of distributions, you will have to infer what to do for them
-based on our Debian woody experience.
+Here is how. Simply add the cmake option -DBUILD_DOC=ON to your normal
+cmake command-line options for the PLplot build. The resulting cmake step
+looks for all the tools required for the documentation build and turns off
+the documentation build and gives WARNING messages if any of those required
+tools are missing. Those messages should be sufficient for you to figure
+out what DocBook/XML related tools you need to install in order to build the
+documentation. N.B. As far as we know, the complete set of required tools
+is only available on Linux so you will need a Linux system to do a
+documentation build.
-A. Package Lists.
+If you are in a hurry you can validate your changes to the files in
+doc/docbook/src by simply typing the
-Debian woody: I am not sure all of these are required, but this is what
-I have on my system. I am positive the -doc packages are not required, but
-it is nice to have them.
+make validate
-(1) docbook-xml docbook docbook-dsssl docbook-xsl-stylesheets (docbook-doc)
+command at the top of the build tree. This make target is only available if
+the PLplot CMake-based build system has found the onsgmls software
+application (which is distributed as part of openjade) on your system. This
+quick check works regardless of whether you decide to build the
+documentation with -DBUILD_DOC=ON or not. Using "make validate" is
+especially useful if you are just making a series of simple changes to the
+files in doc/docbook/src, and you don't really feel it is necessary to check
+every change by doing a complete documentation build.
-(2) tetex-extra (tetex-doc)
+Testing the documentation that has been built.
+==============================================
-(3) jadetex
+All tests are performed in the doc/dockbook/src subdirectory _of the build
+tree_. The given test commands are for the bash shell, and $version is
+currently 5.9.0. There are no known DocBook back-end issues revealed by the
+following tests.
-(4) sp
-
-(5) tidy
-
-(6) Additional packages (mostly perl modules) required by docbook2x:
-libxml2
-libxml-parser-perl (XML::Parser)
-libxml-writer-perl (XML::Writer)
-libxml-catalog-perl (XML::Catalog)
-libxml-dom-perl (XML::Dom)
-libxml-perl (XML::Parser::PerlSAX)
-libtext-wrapi18n-perl (Text::Wrap)
-sgmlspl (which brought in libsgmls-perl)
-libxslt1-dev (which brought in libxslt1)
-
-B. docbook2X.
-
-Use at least version 0.8.2 available at http://docbook2x.sourceforge.net.
-This upstream version has bugs that are fixed in the Debian package
-available at http://packages.debian.org/docbook2x.
-
-C. Configuration
-
-Within this current directory execute
-
-setenv YOUR_SHELL1_USERNAME airwin
-
-but you will want to adjust to the location of the docbook2X perl
-subdirectory on your own machine and your own shell1 username as well.
-YOUR_SHELL1_USERNAME is only used if you are updating the live website (see
-below).
-
-Now execute:
-
-./bootstrap.sh #if you are using a fresh copy
-rm -f config.cache #if you are rebuilding with new configuration from old copy
-
-Now execute:
-
-./configure --with-www-user=$YOUR_SHELL1_USERNAME
-
-The configure script checks for the following programs: jade, jadetex,
-pdfjadetex, perl, and dvips. You should have them installed (see package list
-above) and present in the path in order to build the varous versions of the
-output documentation. You may also specify the locations of these programs
-with the configure options --with-<prog>. Type `./configure --help' for
-details.
-
-The jade program needs to access several DTDs (Document Type Definition).
-The availability of the DTDs in the system is checked as well by the
-configure script. If they are not found, it is possible to specify them
-with the option `--with-sgml-catalogs=CATALOGS', where `CATALOGS' must be a
-colon (:) separated list of files. These files must exist in the systems
-and contain entries mapping DTD public identifiers into system identifiers.
-
-On Debian, the default catalog is /etc/sgml/catalog, and it is set up
-perfectly to find all the DTD's required. Our catalog experience with RH
-6.2 was terrible, but it now looks like RedHat 7.x has a similar catalog
-setup to Debian.
-
-On SuSE-8.1, the configure options must be:
---with-sgml-catalogs=/etc/sgml/catalog:/usr/share/sgml/CATALOG.db42xml \
---with-xml-declaration=/usr/share/sgml/openjade/xml.dcl
-
-The configure script also checks for certain essential perl modules (see
-package list above).
-
-If the ./configure completes normally without warning messages or error
-messages, then that is a sign you can at least try the next step. But if
-there are any problems in the ./configure step, then you probably have to
-add packages that you are missing and/or sort out catalog problems
-(see note on SGML Catalogs, below).
-
-D. Tex resources
-
-If you run out of tex resources (which happened to me with default resources
-with Debian woody) then you must add to them. Here is the way to do it with
-Debian woody.
-
-cd /etc/texmf
-edit texmf.cnf
-
-typically the resource that is exhausted is save_size, and in fact
-the default 5000 is a ridiculously small value. So change all variations
-(save_size, save_size.context, save_size.jadetex, and save_size.pdfjadetex)
-to 50000.
-
-To make these new values available:
-dpkg-reconfigure tetex-bin
-dpkg-reconfigure jadetex
-
-[Under SuSE-8.1 and some other distributions, that's enough to execute
-"texconfig init" after editing /etc/texmf/texmf.cnf]
-
-E. Build documentation
-
-If you don't run out of tex resources, then
-
-make
-
-builds all forms of the documentation.
-
-(To just build the html part use the command
-
-make plplotdoc-html-0.4.3.tar.gz
-
-)
-
-F. Test documentation
-
-cd src
-
1. man pages.
-These are the tcsh commands to check the man pages. Do the bash command
-equivalent if that is your shell of choice
+(for MANPAGE in *.3plplot; do nroff -man $MANPAGE ; done) |less
-foreach tmp (*.3plplot)
-nroff -man $tmp |less
-end
-
2. info pages.
info --file plplotdoc.info
@@ -193,91 +64,24 @@
3. web pages.
Browse with your favorite browser the index.html file within the current src
-directory. Looks good! Mozilla has all the greek letters in Table 3.3.
-Konqueror probably would as well if I loaded international support for it.
+directory. konqueror and mozilla/firefox/iceweasel give good looking
+results including the Greek letters in Table 3-4.
4. dvi file
-xdvi plplotdoc-0.4.3.dvi
+xdvi plplot-$version.dvi
-(Note, there is an xdvi facility to follow cross-references, and that works
-well [unlike current info results])
+5. PostScript file
-5. postscript file
+gv plplot-$version.ps.gz
-gv plplotdoc-0.4.3.ps.gz
-
-Looks good!
-
6. pdf file
-acroread plplotdoc-0.4.3.pdf
+xpdf plplot-$version.pdf
-Some problems (ff and fi get translated into weird character strings), but
-on the whole not too bad. For example, cross references seem to work well.
+Installing the generated documentation (and the rest of the
+generated website) at plplot.sf.net
+===========================================================
-G. Installing at the live site for plplot.sf.net
-
-After the output results are tested (see under previous heading), the
-results should be copied (assuming you have made a significant change to the
-documentation) to the plplot live web site if you have an account on
-shell1.sourceforge.net.
-
-The following command uses ssh a lot so you will be entering your password
-a lot at shell1 unless you remember to execute ssh-agent and ssh-add
-first. It is only this command which uses your login id at shell1
-which you entered (didn't you?) in the ./configure step above.
-
-To copy all results to the live website use:
-
-make www-install
-
-(You should use this command with discretion after you have carefully
-checked all the documentation forms you have created since it completely
-removes the old documentation from the live web site and replaces it with
-exactly what you have created.)
-
-Congratulations! You are done (at least until you add some more
-documentation to the src/*.xml files, the DocBook source files for all the
-PLplot documentation).
-
-Appendix: Note on SGML Catalogs
-
-The jade program, as well as the programs in the sp suite
-(http://www.jclark.com/sp), work by loading the definitions of DTDs, which
-are files present in the system. These files are referred to as "system
-identifiers" in the SGML jargon.
-
-The PLplot DocBook XML sources uses "public identifiers" for declaring the
-included DTDs. Here is the complete list that is currently needed by
-the PLplot documentation project:
-
-"-//James Clark//DTD DSSSL Style Sheet//EN"
-"-//Norman Walsh//DOCUMENT DocBook HTML Stylesheet//EN"
-"-//Norman Walsh//DOCUMENT DocBook Print Stylesheet//EN"
-"-//OASIS//DTD DocBook XML V4.1//EN"
-
-You will find where these public identifiers are used in the XML source by:
-
-find src -type f | xargs grep PUBLIC
-src/plplotdoc-html.dsl.in:<!DOCTYPE style-sheet PUBLIC "@DSSSL_DTD_PUBID@" [
-src/plplotdoc-html.dsl.in: PUBLIC "@DB_SS_HTML_PUBID@"
-src/plplotdoc-print.dsl.in:<!DOCTYPE style-sheet PUBLIC "@DSSSL_DTD_PUBID@" [
-src/plplotdoc-print.dsl.in: PUBLIC "@DB_SS_PRINT_PUBID@"
-src/plplotdoc.xml.in:<!DOCTYPE book PUBLIC "@DOCBOOK_DTD_PUBID@" [
-
-where the various symbols are defined in configure
-grep PUBID= configure
-DSSSL_DTD_PUBID="-//James Clark//DTD DSSSL Style Sheet//EN"
-DB_SS_HTML_PUBID="-//Norman Walsh//DOCUMENT DocBook HTML Stylesheet//EN"
-DB_SS_PRINT_PUBID="-//Norman Walsh//DOCUMENT DocBook Print Stylesheet//EN"
-DOCBOOK_DTD_PUBID="-//OASIS//DTD DocBook XML V4.1//EN"
-
-**the key on any Linux/Unix docbook system is to find the catalog file(s)
-with the correct mapping between the required pubid's and the system files.**
-
-On Debian GNU/Linux (version woody) systems, the actual files (system
-identifiers) that corresponds to the above 4 public identifiers are properly
-identified with the default catalog file: /usr/lib/sgml/catalog. This
-may be true on other distributions as well, but if not, the above
-information may help to sort out the problem.
+Follow the directions in README.Release_Manager_Cookbook. That file is
+located in the top-level source tree.
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|