From 2bd433da8785d3da8e8dd140248762c5d3220b0f Mon Sep 17 00:00:00 2001 From: Eric Luce Date: Fri, 2 Feb 2001 22:37:20 +0000 Subject: [PATCH] Add support for generating DVI and PDF files for the ARM. Also make a nominum specific style sheet for printing that includes section numbers in the subsections. --- configure | 98 +++++++++++++++++++++++++++- configure.in | 14 +++- doc/arm/Bv9ARM-book.xml | 64 +++++++++--------- doc/arm/README-SGML | 12 ++-- doc/arm/gendvi.sh.in | 30 +++++++++ doc/arm/genpdf.sh.in | 30 +++++++++ doc/arm/nominum-docbook-print.dsl | 42 ++++++++++++ doc/arm/nominum-docbook-print.dsl.in | 42 ++++++++++++ 8 files changed, 291 insertions(+), 41 deletions(-) create mode 100644 doc/arm/gendvi.sh.in create mode 100644 doc/arm/genpdf.sh.in create mode 100644 doc/arm/nominum-docbook-print.dsl create mode 100644 doc/arm/nominum-docbook-print.dsl.in diff --git a/configure b/configure index d363f7d4bf..cbab024c17 100755 --- a/configure +++ b/configure @@ -5088,6 +5088,94 @@ test -n "$JADE" || JADE="jade" +# +# Look for tex & pdftex. +# + +for ac_prog in tex +do +# Extract the first word of "$ac_prog", so it can be a program name with args. +set dummy $ac_prog; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:5101: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_path_TEX'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + case "$TEX" in + /*) + ac_cv_path_TEX="$TEX" # Let the user override the test with a path. + ;; + ?:/*) + ac_cv_path_TEX="$TEX" # Let the user override the test with a dos path. + ;; + *) + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" + ac_dummy="$PATH" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_path_TEX="$ac_dir/$ac_word" + break + fi + done + IFS="$ac_save_ifs" + ;; +esac +fi +TEX="$ac_cv_path_TEX" +if test -n "$TEX"; then + echo "$ac_t""$TEX" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + +test -n "$TEX" && break +done + + + +for ac_prog in pdftex +do +# Extract the first word of "$ac_prog", so it can be a program name with args. +set dummy $ac_prog; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:5143: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_path_PDFTEX'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + case "$PDFTEX" in + /*) + ac_cv_path_PDFTEX="$PDFTEX" # Let the user override the test with a path. + ;; + ?:/*) + ac_cv_path_PDFTEX="$PDFTEX" # Let the user override the test with a dos path. + ;; + *) + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" + ac_dummy="$PATH" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_path_PDFTEX="$ac_dir/$ac_word" + break + fi + done + IFS="$ac_save_ifs" + ;; +esac +fi +PDFTEX="$ac_cv_path_PDFTEX" +if test -n "$PDFTEX"; then + echo "$ac_t""$PDFTEX" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + +test -n "$PDFTEX" && break +done + + + # # Look for SGML files. NetBSD has them under /usr/pkg/share # (if installed), FreeBSD has them under /usr/local/share. @@ -5096,7 +5184,7 @@ test -n "$JADE" || JADE="jade" SGMLDIR="" echo $ac_n "checking for SGML files""... $ac_c" 1>&6 -echo "configure:5100: checking for SGML files" >&5 +echo "configure:5188: checking for SGML files" >&5 for d in /usr/pkg/share/sgml /usr/local/share/sgml do if test -f $d/docbook/dsssl/modular/html/docbook.dsl @@ -5121,7 +5209,7 @@ fi XGMLDIR="" echo $ac_n "checking for XML files""... $ac_c" 1>&6 -echo "configure:5125: checking for XML files" >&5 +echo "configure:5213: checking for XML files" >&5 for d in /usr/pkg/share/xml /usr/local/share/xml do if test -f $d/dtd/docbook/docbookx.dtd @@ -5353,6 +5441,8 @@ trap 'rm -fr `echo "make/rules doc/arm/nominum-docbook-html.dsl doc/arm/validate.sh doc/arm/genhtml.sh + doc/arm/gendvi.sh + doc/arm/genpdf.sh isc-config.sh config.h" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15 EOF @@ -5480,6 +5570,8 @@ s%@ISC_PLATFORM_LONGLONGEQUALLONG@%$ISC_PLATFORM_LONGLONGEQUALLONG%g s%@ISC_PLATFORM_RLIMITTYPE@%$ISC_PLATFORM_RLIMITTYPE%g s%@ISC_PLATFORM_BRACEPTHREADONCEINIT@%$ISC_PLATFORM_BRACEPTHREADONCEINIT%g s%@JADE@%$JADE%g +s%@TEX@%$TEX%g +s%@PDFTEX@%$PDFTEX%g s%@SGMLDIR@%$SGMLDIR%g s%@XMLDIR@%$XMLDIR%g s%@BIND9_TOP_BUILDDIR@%$BIND9_TOP_BUILDDIR%g @@ -5609,6 +5701,8 @@ CONFIG_FILES=\${CONFIG_FILES-"make/rules doc/arm/nominum-docbook-html.dsl doc/arm/validate.sh doc/arm/genhtml.sh + doc/arm/gendvi.sh + doc/arm/genpdf.sh isc-config.sh "} EOF diff --git a/configure.in b/configure.in index f6236723cc..83cf2f8e76 100644 --- a/configure.in +++ b/configure.in @@ -18,7 +18,7 @@ AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)dnl esyscmd([sed "s/^/# /" COPYRIGHT])dnl AC_DIVERT_POP()dnl -AC_REVISION($Revision: 1.225 $) +AC_REVISION($Revision: 1.226 $) AC_INIT(lib/dns/name.c) AC_PREREQ(2.13) @@ -1316,6 +1316,16 @@ esac AC_PATH_PROGS(JADE, openjade jade, jade) AC_SUBST(JADE) +# +# Look for tex & pdftex. +# + +AC_PATH_PROGS(TEX, tex) +AC_SUBST(TEX) + +AC_PATH_PROGS(PDFTEX, pdftex) +AC_SUBST(PDFTEX) + # # Look for SGML files. NetBSD has them under /usr/pkg/share # (if installed), FreeBSD has them under /usr/local/share. @@ -1479,6 +1489,8 @@ AC_OUTPUT( doc/arm/nominum-docbook-html.dsl doc/arm/validate.sh doc/arm/genhtml.sh + doc/arm/gendvi.sh + doc/arm/genpdf.sh isc-config.sh ) chmod a+x isc-config.sh diff --git a/doc/arm/Bv9ARM-book.xml b/doc/arm/Bv9ARM-book.xml index 270eb0846a..93eb3b26e1 100644 --- a/doc/arm/Bv9ARM-book.xml +++ b/doc/arm/Bv9ARM-book.xml @@ -2,7 +2,7 @@ - + @@ -56,34 +56,31 @@ In this document, we use the following general typographic conventions: - - - - + + + + - - + + To describe: - + We use the style: - - + + a pathname, filename, URL, hostname, mailing list name, or new term or concept - Fixed width + Fixed width - - literal user + + literal user input - Fixed Width Bold + Fixed Width Bold - - program output + + program output Fixed Width @@ -720,45 +717,45 @@ of a server. command is one of the following: - - - - + + + + - + reload Reload configuration file and zones. - + reload zone class view Reload the given zone. - + refresh zone class view Schedule zone maintenance for the given zone. - + stats Write server statistics to the statistics file. - + querylog Toggle query logging. - + stop Stop the server, making sure any recent changes made through dynamic update or IXFR are first saved to the master files of the updated zones. - + halt Stop the server immediately. Recent changes made through dynamic update or IXFR are not saved to the master files, @@ -854,8 +851,7 @@ controls { Certain UNIX signals cause the name server to take specific actions, as described in the following table. These signals can be sent using the kill command. - + @@ -2316,7 +2312,7 @@ level is set either by starting the named server with the flag followed by a positive integer, or by running rndc trace. the latter -method is not yet implemented The global debug level +method is not yet implemented. The global debug level can be set to zero, and debugging mode turned off, by running ndc notrace. All debugging messages in the server have a debug level, and higher debug levels give more detailed output. Channels @@ -2685,7 +2681,7 @@ If not specified, the default is named_dump.db. The pathname of the file the server writes memory usage statistics to on exit. If not specified, the default is named.memstats. -Not yet implemented in BIND 9. +Not yet implemented in BIND 9. pid-file diff --git a/doc/arm/README-SGML b/doc/arm/README-SGML index 0bd81cb21b..21cab681a3 100644 --- a/doc/arm/README-SGML +++ b/doc/arm/README-SGML @@ -3,7 +3,7 @@ See COPYRIGHT in the source root or http://isc.org/copyright.html for terms. The BIND v9 ARM master document is now kept in DocBook XML format. -Version: $Id: README-SGML,v 1.14 2001/02/01 20:06:14 scanner Exp $ +Version: $Id: README-SGML,v 1.15 2001/02/02 22:37:18 scanner Exp $ The entire ARM is in the single file: @@ -212,9 +212,8 @@ sheet it is based on via a relative path. o Generate TeX documentation: -openjade -d /usr/local/share/sgml/docbook/dsssl/modular/print/docbook.dsl \ - -t tex \ - -v /usr/local/share/sgml/docbook/dsssl/modular/dtds/decls/xml.dcl \ +openjade -d ./nominum-docbook-print.dsl -t tex -v \ + /usr/local/share/sgml/docbook/dsssl/modular/dtds/decls/xml.dcl \ Bv9ARM-book.xml If you have "jade" installed instead of "openjade" then use that as @@ -229,6 +228,11 @@ You can also directly generate the pdf file via: pdftex "&pdfjadetex" Bv9ARM-book.tex +The scripts "genpdf.sh" and "gendvi." have been added to simply +generating the PDF and DVI output. These substitute the correct paths +of NetBSD & FreeBSD. You still need to have TeX, jadeTeX, and pdfTeX +installed and configured properly for these to work. + You will need to up both the "pool_size" and "hash_extra" variables in your texmf.cnf file and regenerate them. See below. diff --git a/doc/arm/gendvi.sh.in b/doc/arm/gendvi.sh.in new file mode 100644 index 0000000000..2b75b56485 --- /dev/null +++ b/doc/arm/gendvi.sh.in @@ -0,0 +1,30 @@ +#!/bin/sh +# +# Copyright (C) 2000, 2001 Internet Software Consortium. +# +# Permission to use, copy, modify, and distribute this software for any +# purpose with or without fee is hereby granted, provided that the above +# copyright notice and this permission notice appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM +# DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL +# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL +# INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT, +# INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING +# FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, +# NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION +# WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +# $Id: gendvi.sh.in,v 1.1 2001/02/02 22:37:19 scanner Exp $ + +@JADE@ -v \ + -d ./nominum-docbook-print.dsl \ + -t tex \ + @SGMLDIR@/docbook/dsssl/modular/dtds/decls/xml.dcl \ + ./Bv9ARM-book.xml + +rm Bv9ARM-book.aux Bv9ARM-book.dvi Bv9ARM-book.log + +@TEX@ "&jadetex" ./Bv9ARM-book.tex +@TEX@ "&jadetex" ./Bv9ARM-book.tex +@TEX@ "&jadetex" ./Bv9ARM-book.tex diff --git a/doc/arm/genpdf.sh.in b/doc/arm/genpdf.sh.in new file mode 100644 index 0000000000..f10d884613 --- /dev/null +++ b/doc/arm/genpdf.sh.in @@ -0,0 +1,30 @@ +#!/bin/sh +# +# Copyright (C) 2000, 2001 Internet Software Consortium. +# +# Permission to use, copy, modify, and distribute this software for any +# purpose with or without fee is hereby granted, provided that the above +# copyright notice and this permission notice appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM +# DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL +# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL +# INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT, +# INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING +# FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, +# NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION +# WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +# $Id: genpdf.sh.in,v 1.1 2001/02/02 22:37:20 scanner Exp $ + +@JADE@ -v \ + -d ./nominum-docbook-print.dsl \ + -t tex \ + @SGMLDIR@/docbook/dsssl/modular/dtds/decls/xml.dcl \ + ./Bv9ARM-book.xml + +rm Bv9ARM-book.aux Bv9ARM-book.pdf Bv9ARM-book.log + +@PDFTEX@ "&pdfjadetex" ./Bv9ARM-book.tex +@PDFTEX@ "&pdfjadetex" ./Bv9ARM-book.tex +@PDFTEX@ "&pdfjadetex" ./Bv9ARM-book.tex diff --git a/doc/arm/nominum-docbook-print.dsl b/doc/arm/nominum-docbook-print.dsl new file mode 100644 index 0000000000..69767fed58 --- /dev/null +++ b/doc/arm/nominum-docbook-print.dsl @@ -0,0 +1,42 @@ + +]> + + + + + + + + +(define %generate-book-titlepage% #t) + +(define %section-autolabel% + ;; REFENTRY section-autolabel + ;; PURP Are sections enumerated? + ;; DESC + ;; If true, unlabeled sections will be enumerated. + ;; /DESC + ;; AUTHOR N/A + ;; /REFENTRY + #t) + +;; Margins around cell contents +;; (define %cals-cell-before-row-margin% 20pt) +;; (define %cals-cell-after-row-margin% 20pt) + +;; seems to be a bug in JadeTeX -- we get a wierd indent on table +;; cells for the first line only. This is a workaround. +;; Adam Di Carlo, adam@onshore.com +(define %cals-cell-before-column-margin% 5pt) +(define %cals-cell-after-column-margin% 5pt) + +;; Inheritable start and end indent for cell contents +(define %cals-cell-content-start-indent% 5pt) +(define %cals-cell-content-end-indent% 5pt) + + + + + + diff --git a/doc/arm/nominum-docbook-print.dsl.in b/doc/arm/nominum-docbook-print.dsl.in new file mode 100644 index 0000000000..69767fed58 --- /dev/null +++ b/doc/arm/nominum-docbook-print.dsl.in @@ -0,0 +1,42 @@ + +]> + + + + + + + + +(define %generate-book-titlepage% #t) + +(define %section-autolabel% + ;; REFENTRY section-autolabel + ;; PURP Are sections enumerated? + ;; DESC + ;; If true, unlabeled sections will be enumerated. + ;; /DESC + ;; AUTHOR N/A + ;; /REFENTRY + #t) + +;; Margins around cell contents +;; (define %cals-cell-before-row-margin% 20pt) +;; (define %cals-cell-after-row-margin% 20pt) + +;; seems to be a bug in JadeTeX -- we get a wierd indent on table +;; cells for the first line only. This is a workaround. +;; Adam Di Carlo, adam@onshore.com +(define %cals-cell-before-column-margin% 5pt) +(define %cals-cell-after-column-margin% 5pt) + +;; Inheritable start and end indent for cell contents +(define %cals-cell-content-start-indent% 5pt) +(define %cals-cell-content-end-indent% 5pt) + + + + + +