start working on HTML results
authorBen Pfaff <blp@cs.stanford.edu>
Sun, 6 Jun 2010 22:19:19 +0000 (15:19 -0700)
committerBen Pfaff <blp@cs.stanford.edu>
Sun, 6 Jun 2010 22:19:19 +0000 (15:19 -0700)
13 files changed:
.gitignore
Makefile.am
build-aux/gendocs.sh [new file with mode: 0755]
build-aux/gendocs_template [new file with mode: 0644]
build-aux/gendocs_template_min [new file with mode: 0644]
build-pspp.m4
gendocs.sh [deleted file]
gendocs_template [deleted file]
gendocs_template_min [deleted file]
make-bin-dist.as
make-builder.as
make-src-dist.as
results2html

index 685509605d6f7102683cd3a93d1181de20acc60d..423d59e79e85813f8d398c84cca819a9df74be5f 100644 (file)
@@ -5,7 +5,6 @@
 /autom4te.cache/
 /build[0-9]*/
 /buildnr
-/buildnr/
 /buildtmp/
 /config.log
 /config.status
index 4102ff5166e1c2e4442e64a5885b1d3c14a11e52..858849ec686b9e0430b67a787fa13a3b1692b7d7 100644 (file)
@@ -9,10 +9,10 @@ AUTOM4TE = autom4te
 
 make-builder.in: make-builder.as
        $(AUTOM4TE) --language M4sh make-builder.as -o $@
-make-src-dist.in: make-src-dist.as make-pspp.m4
-       $(AUTOM4TE) --language make-pspp make-src-dist.as -o $@
-make-bin-dist.in: make-bin-dist.as make-pspp.m4
-       $(AUTOM4TE) --language make-pspp make-bin-dist.as -o $@
+make-src-dist.in: make-src-dist.as build-pspp.m4
+       $(AUTOM4TE) --language build-pspp make-src-dist.as -o $@
+make-bin-dist.in: make-bin-dist.as build-pspp.m4
+       $(AUTOM4TE) --language build-pspp make-bin-dist.as -o $@
 
 edit = sed \
         -e 's|@VERSION[@]|$(VERSION)|g' \
diff --git a/build-aux/gendocs.sh b/build-aux/gendocs.sh
new file mode 100755 (executable)
index 0000000..67d5b52
--- /dev/null
@@ -0,0 +1,367 @@
+#!/bin/sh -e
+# gendocs.sh -- generate a GNU manual in many formats.  This script is
+#   mentioned in maintain.texi.  See the help message below for usage details.
+
+scriptversion=2010-02-13.20
+
+# Copyright 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
+# Free Software Foundation, Inc.
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+#
+# Original author: Mohit Agarwal.
+# Send bug reports and any other correspondence to bug-texinfo@gnu.org.
+
+prog=`basename "$0"`
+srcdir=`pwd`
+
+scripturl="http://savannah.gnu.org/cgi-bin/viewcvs/~checkout~/texinfo/texinfo/util/gendocs.sh"
+templateurl="http://savannah.gnu.org/cgi-bin/viewcvs/~checkout~/texinfo/texinfo/util/gendocs_template"
+
+: ${SETLANG="env LANG= LC_MESSAGES= LC_ALL= LANGUAGE="}
+: ${MAKEINFO="makeinfo"}
+: ${TEXI2DVI="texi2dvi -t @finalout"}
+: ${DVIPS="dvips"}
+: ${DOCBOOK2HTML="docbook2html"}
+: ${DOCBOOK2PDF="docbook2pdf"}
+: ${DOCBOOK2PS="docbook2ps"}
+: ${DOCBOOK2TXT="docbook2txt"}
+: ${GENDOCS_TEMPLATE_DIR="."}
+: ${TEXI2HTML="texi2html"}
+unset CDPATH
+unset use_texi2html
+
+version="gendocs.sh $scriptversion
+
+Copyright 2009 Free Software Foundation, Inc.
+There is NO warranty.  You may redistribute this software
+under the terms of the GNU General Public License.
+For more information about these matters, see the files named COPYING."
+
+usage="Usage: $prog [OPTION]... PACKAGE MANUAL-TITLE
+
+Generate various output formats from PACKAGE.texinfo (or .texi or .txi) source.
+See the GNU Maintainers document for a more extensive discussion:
+  http://www.gnu.org/prep/maintain_toc.html
+
+Options:
+  -s SRCFILE  read Texinfo from SRCFILE, instead of PACKAGE.{texinfo|texi|txi}
+  -o OUTDIR   write files into OUTDIR, instead of manual/.
+  --email ADR use ADR as contact in generated web pages.
+  --docbook   convert to DocBook too (xml, txt, html, pdf and ps).
+  --html ARG  pass indicated ARG to makeinfo or texi2html for HTML targets.
+  --texi2html use texi2html to generate HTML targets.
+  --help      display this help and exit successfully.
+  --version   display version information and exit successfully.
+
+Simple example: $prog --email bug-gnu-emacs@gnu.org emacs \"GNU Emacs Manual\"
+
+Typical sequence:
+  cd PACKAGESOURCE/doc
+  wget \"$scripturl\"
+  wget \"$templateurl\"
+  $prog --email BUGLIST MANUAL \"GNU MANUAL - One-line description\"
+
+Output will be in a new subdirectory \"manual\" (by default, use -o OUTDIR
+to override).  Move all the new files into your web CVS tree, as
+explained in the Web Pages node of maintain.texi.
+
+Please use the --email ADDRESS option to specify your bug-reporting
+address in the generated HTML pages.
+
+MANUAL-TITLE is included as part of the HTML <title> of the overall
+manual/index.html file.  It should include the name of the package being
+documented.  manual/index.html is created by substitution from the file
+$GENDOCS_TEMPLATE_DIR/gendocs_template.  (Feel free to modify the
+generic template for your own purposes.)
+
+If you have several manuals, you'll need to run this script several
+times with different MANUAL values, specifying a different output
+directory with -o each time.  Then write (by hand) an overall index.html
+with links to them all.
+
+If a manual's Texinfo sources are spread across several directories,
+first copy or symlink all Texinfo sources into a single directory.
+(Part of the script's work is to make a tar.gz of the sources.)
+
+You can set the environment variables MAKEINFO, TEXI2DVI, and DVIPS to
+control the programs that get executed, and GENDOCS_TEMPLATE_DIR to
+control where the gendocs_template file is looked for.  (With --docbook,
+the environment variables DOCBOOK2HTML, DOCBOOK2PDF, DOCBOOK2PS, and
+DOCBOOK2TXT are also respected.)
+
+By default, makeinfo is run in the default (English) locale, since
+that's the language of most Texinfo manuals.  If you happen to have a
+non-English manual and non-English web site, see the SETLANG setting
+in the source.
+
+Email bug reports or enhancement requests to bug-texinfo@gnu.org.
+"
+
+calcsize()
+{
+  size=`ls -ksl $1 | awk '{print $1}'`
+  echo $size
+}
+
+MANUAL_TITLE=
+PACKAGE=
+EMAIL=webmasters@gnu.org  # please override with --email
+htmlarg=
+outdir=manual
+srcfile=
+
+while test $# -gt 0; do
+  case $1 in
+    --email) shift; EMAIL=$1;;
+    --help) echo "$usage"; exit 0;;
+    --version) echo "$version"; exit 0;;
+    -s) shift; srcfile=$1;;
+    -o) shift; outdir=$1;;
+    --docbook) docbook=yes;;
+    --html) shift; htmlarg=$1;;
+    --texi2html) use_texi2html=1;;
+    -*)
+      echo "$0: Unknown option \`$1'." >&2
+      echo "$0: Try \`--help' for more information." >&2
+      exit 1;;
+    *)
+      if test -z "$PACKAGE"; then
+        PACKAGE=$1
+      elif test -z "$MANUAL_TITLE"; then
+        MANUAL_TITLE=$1
+      else
+        echo "$0: extra non-option argument \`$1'." >&2
+        exit 1
+      fi;;
+  esac
+  shift
+done
+
+if test -n "$srcfile"; then
+  :
+elif test -s "$srcdir/$PACKAGE.texinfo"; then
+  srcfile=$srcdir/$PACKAGE.texinfo
+elif test -s "$srcdir/$PACKAGE.texi"; then
+  srcfile=$srcdir/$PACKAGE.texi
+elif test -s "$srcdir/$PACKAGE.txi"; then
+  srcfile=$srcdir/$PACKAGE.txi
+else
+  echo "$0: cannot find .texinfo or .texi or .txi for $PACKAGE in $srcdir." >&2
+  exit 1
+fi
+
+if test ! -r $GENDOCS_TEMPLATE_DIR/gendocs_template; then
+  echo "$0: cannot read $GENDOCS_TEMPLATE_DIR/gendocs_template." >&2
+  echo "$0: it is available from $templateurl." >&2
+  exit 1
+fi
+
+case $outdir in
+  /*) dotdot_outdir="$outdir";;
+  *) dotdot_outdir="../$outdir";;
+esac
+
+echo Generating output formats for $srcfile
+
+cmd="$SETLANG $MAKEINFO -o $PACKAGE.info \"$srcfile\""
+echo "Generating info files... ($cmd)"
+eval "$cmd"
+mkdir -p $outdir/
+tar czf $outdir/$PACKAGE.info.tar.gz $PACKAGE.info*
+info_tgz_size=`calcsize $outdir/$PACKAGE.info.tar.gz`
+# do not mv the info files, there's no point in having them available
+# separately on the web.
+
+cmd="${TEXI2DVI} \"$srcfile\""
+echo "Generating dvi ... ($cmd)"
+eval "$cmd"
+
+# now, before we compress dvi:
+echo Generating postscript...
+${DVIPS} $PACKAGE -o
+gzip -f -9 $PACKAGE.ps
+ps_gz_size=`calcsize $PACKAGE.ps.gz`
+mv $PACKAGE.ps.gz $outdir/
+
+# compress/finish dvi:
+gzip -f -9 $PACKAGE.dvi
+dvi_gz_size=`calcsize $PACKAGE.dvi.gz`
+mv $PACKAGE.dvi.gz $outdir/
+
+cmd="${TEXI2DVI} --pdf \"$srcfile\""
+echo "Generating pdf ... ($cmd)"
+eval "$cmd"
+pdf_size=`calcsize $PACKAGE.pdf`
+mv $PACKAGE.pdf $outdir/
+
+cmd="$SETLANG $MAKEINFO -o $PACKAGE.txt --no-split --no-headers \"$srcfile\""
+echo "Generating ASCII... ($cmd)"
+eval "$cmd"
+ascii_size=`calcsize $PACKAGE.txt`
+gzip -f -9 -c $PACKAGE.txt >$outdir/$PACKAGE.txt.gz
+ascii_gz_size=`calcsize $outdir/$PACKAGE.txt.gz`
+mv $PACKAGE.txt $outdir/
+
+html_split()
+{
+  opt="--split=$1 $htmlarg --node-files"
+  cmd="$SETLANG $TEXI2HTML --output $PACKAGE.html $opt \"$srcfile\""
+  echo "Generating html by $1... ($cmd)"
+  eval "$cmd"
+  split_html_dir=$PACKAGE.html
+  (
+    cd ${split_html_dir} || exit 1
+    ln -sf ${PACKAGE}.html index.html
+    tar -czf $dotdot_outdir/${PACKAGE}.html_$1.tar.gz -- *.html
+  )
+  eval html_$1_tgz_size=`calcsize $outdir/${PACKAGE}.html_$1.tar.gz`
+  rm -f $outdir/html_$1/*.html
+  mkdir -p $outdir/html_$1/
+  mv ${split_html_dir}/*.html $outdir/html_$1/
+  rmdir ${split_html_dir}
+}
+
+if test -z "$use_texi2html"; then
+  opt="--no-split --html -o $PACKAGE.html $htmlarg"
+  cmd="$SETLANG $MAKEINFO $opt \"$srcfile\""
+  echo "Generating monolithic html... ($cmd)"
+  rm -rf $PACKAGE.html  # in case a directory is left over
+  eval "$cmd"
+  html_mono_size=`calcsize $PACKAGE.html`
+  gzip -f -9 -c $PACKAGE.html >$outdir/$PACKAGE.html.gz
+  html_mono_gz_size=`calcsize $outdir/$PACKAGE.html.gz`
+  mv $PACKAGE.html $outdir/
+
+  cmd="$SETLANG $MAKEINFO --html -o $PACKAGE.html $htmlarg \"$srcfile\""
+  echo "Generating html by node... ($cmd)"
+  eval "$cmd"
+  split_html_dir=$PACKAGE.html
+  (
+   cd ${split_html_dir} || exit 1
+   tar -czf $dotdot_outdir/${PACKAGE}.html_node.tar.gz -- *.html
+  )
+  html_node_tgz_size=`calcsize $outdir/${PACKAGE}.html_node.tar.gz`
+  rm -f $outdir/html_node/*.html
+  mkdir -p $outdir/html_node/
+  mv ${split_html_dir}/*.html $outdir/html_node/
+  rmdir ${split_html_dir}
+else
+  cmd="$SETLANG $TEXI2HTML --output $PACKAGE.html $htmlarg \"$srcfile\""
+  echo "Generating monolithic html... ($cmd)"
+  rm -rf $PACKAGE.html  # in case a directory is left over
+  eval "$cmd"
+  html_mono_size=`calcsize $PACKAGE.html`
+  gzip -f -9 -c $PACKAGE.html >$outdir/$PACKAGE.html.gz
+  html_mono_gz_size=`calcsize $outdir/$PACKAGE.html.gz`
+  mv $PACKAGE.html $outdir/
+
+  html_split node
+  html_split chapter
+  html_split section
+fi
+
+echo Making .tar.gz for sources...
+d=`dirname $srcfile`
+srcfiles=`ls $d/*.texinfo $d/*.texi $d/*.txi $d/*.eps 2>/dev/null` || true
+tar cvzfh $outdir/$PACKAGE.texi.tar.gz $srcfiles
+texi_tgz_size=`calcsize $outdir/$PACKAGE.texi.tar.gz`
+
+if test -n "$docbook"; then
+  cmd="$SETLANG $MAKEINFO -o - --docbook \"$srcfile\" > ${srcdir}/$PACKAGE-db.xml"
+  echo "Generating docbook XML... ($cmd)"
+  eval "$cmd"
+  docbook_xml_size=`calcsize $PACKAGE-db.xml`
+  gzip -f -9 -c $PACKAGE-db.xml >$outdir/$PACKAGE-db.xml.gz
+  docbook_xml_gz_size=`calcsize $outdir/$PACKAGE-db.xml.gz`
+  mv $PACKAGE-db.xml $outdir/
+
+  cmd="${DOCBOOK2HTML} -o $split_html_db_dir ${outdir}/$PACKAGE-db.xml"
+  echo "Generating docbook HTML... ($cmd)"
+  eval "$cmd"
+  split_html_db_dir=html_node_db
+  (
+    cd ${split_html_db_dir} || exit 1
+    tar -czf $dotdot_outdir/${PACKAGE}.html_node_db.tar.gz -- *.html
+  )
+  html_node_db_tgz_size=`calcsize $outdir/${PACKAGE}.html_node_db.tar.gz`
+  rm -f $outdir/html_node_db/*.html
+  mkdir -p $outdir/html_node_db
+  mv ${split_html_db_dir}/*.html $outdir/html_node_db/
+  rmdir ${split_html_db_dir}
+
+  cmd="${DOCBOOK2TXT} ${outdir}/$PACKAGE-db.xml"
+  echo "Generating docbook ASCII... ($cmd)"
+  eval "$cmd"
+  docbook_ascii_size=`calcsize $PACKAGE-db.txt`
+  mv $PACKAGE-db.txt $outdir/
+
+  cmd="${DOCBOOK2PS} ${outdir}/$PACKAGE-db.xml"
+  echo "Generating docbook PS... ($cmd)"
+  eval "$cmd"
+  gzip -f -9 -c $PACKAGE-db.ps >$outdir/$PACKAGE-db.ps.gz
+  docbook_ps_gz_size=`calcsize $outdir/$PACKAGE-db.ps.gz`
+  mv $PACKAGE-db.ps $outdir/
+
+  cmd="${DOCBOOK2PDF} ${outdir}/$PACKAGE-db.xml"
+  echo "Generating docbook PDF... ($cmd)"
+  eval "$cmd"
+  docbook_pdf_size=`calcsize $PACKAGE-db.pdf`
+  mv $PACKAGE-db.pdf $outdir/
+fi
+
+echo "Writing index file..."
+if test -z "$use_texi2html"; then
+   CONDS="/%%IF  *HTML_SECTION%%/,/%%ENDIF  *HTML_SECTION%%/d;\
+          /%%IF  *HTML_CHAPTER%%/,/%%ENDIF  *HTML_CHAPTER%%/d"
+else
+   CONDS="/%%ENDIF.*%%/d;/%%IF  *HTML_SECTION%%/d;/%%IF  *HTML_CHAPTER%%/d"
+fi
+curdate=`$SETLANG date '+%B %d, %Y'`
+sed \
+   -e "s!%%TITLE%%!$MANUAL_TITLE!g" \
+   -e "s!%%EMAIL%%!$EMAIL!g" \
+   -e "s!%%PACKAGE%%!$PACKAGE!g" \
+   -e "s!%%DATE%%!$curdate!g" \
+   -e "s!%%HTML_MONO_SIZE%%!$html_mono_size!g" \
+   -e "s!%%HTML_MONO_GZ_SIZE%%!$html_mono_gz_size!g" \
+   -e "s!%%HTML_NODE_TGZ_SIZE%%!$html_node_tgz_size!g" \
+   -e "s!%%HTML_SECTION_TGZ_SIZE%%!$html_section_tgz_size!g" \
+   -e "s!%%HTML_CHAPTER_TGZ_SIZE%%!$html_chapter_tgz_size!g" \
+   -e "s!%%INFO_TGZ_SIZE%%!$info_tgz_size!g" \
+   -e "s!%%DVI_GZ_SIZE%%!$dvi_gz_size!g" \
+   -e "s!%%PDF_SIZE%%!$pdf_size!g" \
+   -e "s!%%PS_GZ_SIZE%%!$ps_gz_size!g" \
+   -e "s!%%ASCII_SIZE%%!$ascii_size!g" \
+   -e "s!%%ASCII_GZ_SIZE%%!$ascii_gz_size!g" \
+   -e "s!%%TEXI_TGZ_SIZE%%!$texi_tgz_size!g" \
+   -e "s!%%DOCBOOK_HTML_NODE_TGZ_SIZE%%!$html_node_db_tgz_size!g" \
+   -e "s!%%DOCBOOK_ASCII_SIZE%%!$docbook_ascii_size!g" \
+   -e "s!%%DOCBOOK_PS_GZ_SIZE%%!$docbook_ps_gz_size!g" \
+   -e "s!%%DOCBOOK_PDF_SIZE%%!$docbook_pdf_size!g" \
+   -e "s!%%DOCBOOK_XML_SIZE%%!$docbook_xml_size!g" \
+   -e "s!%%DOCBOOK_XML_GZ_SIZE%%!$docbook_xml_gz_size!g" \
+   -e "s,%%SCRIPTURL%%,$scripturl,g" \
+   -e "s!%%SCRIPTNAME%%!$prog!g" \
+   -e "$CONDS" \
+$GENDOCS_TEMPLATE_DIR/gendocs_template >$outdir/index.html
+
+echo "Done, see $outdir/ subdirectory for new files."
+
+# Local variables:
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "scriptversion="
+# time-stamp-format: "%:y-%02m-%02d.%02H"
+# time-stamp-end: "$"
+# End:
diff --git a/build-aux/gendocs_template b/build-aux/gendocs_template
new file mode 100644 (file)
index 0000000..ee6a5c5
--- /dev/null
@@ -0,0 +1,96 @@
+<!--#include virtual="/server/header.html" -->
+<title>%%TITLE%% - GNU Project - Free Software Foundation (FSF)</title>
+<!--#include virtual="/server/banner.html" -->
+<h2>%%TITLE%%</h2>
+
+<!-- This document is in XML, and xhtml 1.0 -->
+<!-- Please make sure to properly nest your tags -->
+<!-- and ensure that your final document validates -->
+<!-- consistent with W3C xhtml 1.0 and CSS standards -->
+<!-- See validator.w3.org -->
+
+<address>Free Software Foundation</address>
+<address>last updated %%DATE%%</address>
+
+<p>This manual (%%PACKAGE%%) is available in the following formats:</p>
+
+<ul>
+<li><a href="%%PACKAGE%%.html">HTML
+    (%%HTML_MONO_SIZE%%K bytes)</a> - entirely on one web page.</li>
+<li><a href="html_node/index.html">HTML</a> - with one web page per
+    node.</li>
+%%IF HTML_SECTION%%
+<li><a href="html_section/index.html">HTML</a> - with one web page per
+    section.</li>
+%%ENDIF HTML_SECTION%%
+%%IF HTML_CHAPTER%%
+<li><a href="html_chapter/index.html">HTML</a> - with one web page per
+    chapter.</li>
+%%ENDIF HTML_CHAPTER%%
+<li><a href="%%PACKAGE%%.html.gz">HTML compressed
+    (%%HTML_MONO_GZ_SIZE%%K gzipped characters)</a> - entirely on
+    one web page.</li>
+<li><a href="%%PACKAGE%%.html_node.tar.gz">HTML compressed
+    (%%HTML_NODE_TGZ_SIZE%%K gzipped tar file)</a> -
+    with one web page per node.</li>
+%%IF HTML_SECTION%%
+<li><a href="%%PACKAGE%%.html_section.tar.gz">HTML compressed
+    (%%HTML_SECTION_TGZ_SIZE%%K gzipped tar file)</a> -
+    with one web page per section.</li>
+%%ENDIF HTML_SECTION%%
+%%IF HTML_CHAPTER%%
+<li><a href="%%PACKAGE%%.html_chapter.tar.gz">HTML compressed
+    (%%HTML_CHAPTER_TGZ_SIZE%%K gzipped tar file)</a> -
+    with one web page per chapter.</li>
+%%ENDIF HTML_CHAPTER%%
+<li><a href="%%PACKAGE%%.info.tar.gz">Info document
+    (%%INFO_TGZ_SIZE%%K bytes gzipped tar file)</a>.</li>
+<li><a href="%%PACKAGE%%.txt">ASCII text
+    (%%ASCII_SIZE%%K bytes)</a>.</li>
+<li><a href="%%PACKAGE%%.txt.gz">ASCII text compressed
+    (%%ASCII_GZ_SIZE%%K bytes gzipped)</a>.</li>
+<li><a href="%%PACKAGE%%.dvi.gz">TeX dvi file
+    (%%DVI_GZ_SIZE%%K bytes gzipped)</a>.</li>
+<li><a href="%%PACKAGE%%.ps.gz">PostScript file
+    (%%PS_GZ_SIZE%%K bytes gzipped)</a>.</li>
+<li><a href="%%PACKAGE%%.pdf">PDF file
+    (%%PDF_SIZE%%K bytes)</a>.</li>
+<li><a href="%%PACKAGE%%.texi.tar.gz">Texinfo source
+    (%%TEXI_TGZ_SIZE%%K bytes gzipped tar file).</a></li>
+</ul>
+
+<p>You can <a href="http://shop.fsf.org/">buy printed copies of
+some manuals</a> (among other items) from the Free Software Foundation;
+this helps support FSF activities.</p>
+
+<p>(This page generated by the <a href="%%SCRIPTURL%%">%%SCRIPTNAME%%
+script</a>.)</p>
+
+<!-- If needed, change the copyright block at the bottom. In general, -->
+<!-- all pages on the GNU web server should have the section about    -->
+<!-- verbatim copying.  Please do NOT remove this without talking     -->
+<!-- with the webmasters first. -->
+<!-- Please make sure the copyright date is consistent with the document -->
+<!-- and that it is like this "2001, 2002" not this "2001-2002." -->
+</div><!-- for id="content", starts in the include above -->
+<!--#include virtual="/server/footer.html" -->
+<div id="footer">
+
+<p>
+Please send FSF &amp; GNU inquiries to
+<a href="mailto:gnu@gnu.org">&lt;gnu@gnu.org&gt;</a>.
+There are also <a href="/contact/">other ways to contact</a>
+the FSF.<br />
+Please send broken links and other corrections or suggestions to
+<a href="mailto:%%EMAIL%%">&lt;%%EMAIL%%&gt;</a>.
+</p>
+
+<p>Copyright &copy; 2009 Free Software Foundation, Inc.</p>
+
+<p>Verbatim copying and distribution of this entire article is
+permitted in any medium, provided this notice is preserved.</p>
+
+</div>
+</div>
+</body>
+</html>
diff --git a/build-aux/gendocs_template_min b/build-aux/gendocs_template_min
new file mode 100644 (file)
index 0000000..58b8944
--- /dev/null
@@ -0,0 +1,101 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
+
+<head>
+<title>%%TITLE%% - GNU Project - Free Software Foundation (FSF)</title>
+<meta http-equiv="content-type" content='text/html; charset=utf-8' />
+<link rel="stylesheet" type="text/css" href="/gnu.css" />
+<link rev="made" href="webmasters@gnu.org" />
+</head>
+
+<!-- This document is in XML, and xhtml 1.0 -->
+<!-- Please make sure to properly nest your tags -->
+<!-- and ensure that your final document validates -->
+<!-- consistent with W3C xhtml 1.0 and CSS standards -->
+<!-- See validator.w3.org -->
+
+<body>
+
+<h3>%%TITLE%%</h3>
+
+<address>Free Software Foundation</address>
+<address>last updated %%DATE%%</address>
+<p>
+<a href="/graphics/gnu-head.jpg">
+       <img src="/graphics/gnu-head-sm.jpg"
+             alt=" [image of the head of a GNU] " width="129" height="122"/>
+</a>
+</p>
+<hr />
+
+<p>This manual (%%PACKAGE%%) is available in the following formats:</p>
+
+<ul>
+<li><a href="%%PACKAGE%%.html">HTML
+    (%%HTML_MONO_SIZE%%K bytes)</a> - entirely on one web page.</li>
+<li><a href="html_node/index.html">HTML</a> - with one web page per
+    node.</li>
+%%IF HTML_SECTION%%
+<li><a href="html_section/index.html">HTML</a> - with one web page per
+    section.</li>
+%%ENDIF HTML_SECTION%%
+%%IF HTML_CHAPTER%%
+<li><a href="html_chapter/index.html">HTML</a> - with one web page per
+    chapter.</li>
+%%ENDIF HTML_CHAPTER%%
+<li><a href="%%PACKAGE%%.html.gz">HTML compressed
+    (%%HTML_MONO_GZ_SIZE%%K gzipped characters)</a> - entirely on
+    one web page.</li>
+<li><a href="%%PACKAGE%%.html_node.tar.gz">HTML compressed
+    (%%HTML_NODE_TGZ_SIZE%%K gzipped tar file)</a> -
+    with one web page per node.</li>
+%%IF HTML_SECTION%%
+<li><a href="%%PACKAGE%%.html_section.tar.gz">HTML compressed
+    (%%HTML_SECTION_TGZ_SIZE%%K gzipped tar file)</a> -
+    with one web page per section.</li>
+%%ENDIF HTML_SECTION%%
+%%IF HTML_CHAPTER%%
+<li><a href="%%PACKAGE%%.html_chapter.tar.gz">HTML compressed
+    (%%HTML_CHAPTER_TGZ_SIZE%%K gzipped tar file)</a> -
+    with one web page per chapter.</li>
+%%ENDIF HTML_CHAPTER%%
+<li><a href="%%PACKAGE%%.info.tar.gz">Info document
+    (%%INFO_TGZ_SIZE%%K bytes gzipped tar file)</a>.</li>
+<li><a href="%%PACKAGE%%.txt">ASCII text
+    (%%ASCII_SIZE%%K bytes)</a>.</li>
+<li><a href="%%PACKAGE%%.txt.gz">ASCII text compressed
+    (%%ASCII_GZ_SIZE%%K bytes gzipped)</a>.</li>
+<li><a href="%%PACKAGE%%.dvi.gz">TeX dvi file
+    (%%DVI_GZ_SIZE%%K bytes gzipped)</a>.</li>
+<li><a href="%%PACKAGE%%.ps.gz">PostScript file
+    (%%PS_GZ_SIZE%%K bytes gzipped)</a>.</li>
+<li><a href="%%PACKAGE%%.pdf">PDF file
+    (%%PDF_SIZE%%K bytes)</a>.</li>
+<li><a href="%%PACKAGE%%.texi.tar.gz">Texinfo source
+    (%%TEXI_TGZ_SIZE%%K bytes gzipped tar file).</a></li>
+</ul>
+
+<p>(This page generated by the <a href="%%SCRIPTURL%%">%%SCRIPTNAME%%
+script</a>.)</p>
+
+<div class="copyright">
+<p>
+Please send FSF &amp; GNU inquiries to
+<a href="mailto:gnu@gnu.org">&lt;gnu@gnu.org&gt;</a>.
+There are also <a href="/contact/">other ways to contact</a>
+the FSF.<br />
+Please send broken links and other corrections (or suggestions) to
+<a href="mailto:%%EMAIL%%">&lt;%%EMAIL%%&gt;</a>.
+</p>
+
+<p>Copyright &copy; 2009 Free Software Foundation, Inc.</p>
+
+<p>Verbatim copying and distribution of this entire article is
+permitted in any medium, provided this notice is preserved.</p>
+
+</div>
+
+</body>
+</html>
index 2068f7a172c13c96e17e416ca1163d4e2ec3805e..c346d4d557a04c988c6dde1649a48584ccb45cb0 100644 (file)
@@ -5,22 +5,18 @@ m4_define([_m4_divert(INIT_PREPARE)],   300)
 m4_pattern_forbid([^_?BP_])
 m4_pattern_allow([_BP_EOF])
 
-# BP_INIT([LOGFILE])
-# ------------------
-# Initializes and starts logging to LOGFILE.
+# BP_INIT
+# -------
 m4_define([BP_INIT],
 [AS_INIT
-_BP_INIT_LOG([$1])
-_BP_INIT_RESULTS
 AS_PREPARE
 ])
 
-# _BP_INIT_LOG([LOGFILE])
+# BP_INIT_LOG([LOGFILE])
 # -----------------------
 # Initialize the log file descriptor and write header to it.
-m4_define([_BP_INIT_LOG],
-[m4_divert_text([INIT_PREPARE],
-[m4_define([BP_LOG_FILE], [$1])
+m4_define([BP_INIT_LOG],
+[m4_define([BP_LOG_FILE], [$1])dnl
 m4_define([AS_MESSAGE_LOG_FD], 5)dnl
 cat >$1 <<_BPEOF
 This file is a build log.
@@ -36,18 +32,19 @@ AS_UNAME >&AS_MESSAGE_LOG_FD
 cat >&AS_MESSAGE_LOG_FD <<_BPEOF
 
 _BPEOF
-])])# _BP_INIT_LOG
+])
 
-# _BP_INIT_RESULTS
-m4_define([_BP_INIT_RESULTS],
-[AS_MKDIR_P([results])
+# BP_INIT_RESULTS([RESULTSDIR])
+m4_define([BP_INIT_RESULTS],
+[m4_define([BP_RESULTS_DIR], [$1])dnl
+AS_MKDIR_P([BP_RESULTS_DIR])
 m4_define([BP_VARS_FD], 6)dnl
-exec BP_VARS_FD>results/VARS
+exec BP_VARS_FD>BP_RESULTS_DIR/VARS
 ])
 
-# _BP_INIT_DEFAULTS
+# BP_INIT_DEFAULTS
 # -----------------
-m4_define([_BP_INIT_DEFAULTS],
+m4_define([BP_INIT_DEFAULTS],
 [m4_divert_push([DEFAULTS])dnl
 
 test -n "$DJDIR" || exec AS_ORIGINAL_STDIN_FD<&0 </dev/null
@@ -82,12 +79,12 @@ BP_START_STEP([Saving $_bp_basename: $1])])
 # BP_MOVE_OUTPUT(DESCRIPTION, FILE)
 m4_define([BP_MOVE_OUTPUT],
 [BP_OUTPUT([$1], [$2])
-BP_RUN([mv $2 results/ >&AS_MESSAGE_LOG_FD 2>&1])])
+BP_RUN([mv $2 BP_RESULTS_DIR/ >&AS_MESSAGE_LOG_FD 2>&1])])
 
 # BP_COPY_OUTPUT(DESCRIPTION, FILE)
 m4_define([BP_COPY_OUTPUT],
 [BP_OUTPUT([$1], [$2])
-BP_RUN([cp -R $2 results/ >&AS_MESSAGE_LOG_FD 2>&1])])
+BP_RUN([cp -R $2 BP_RESULTS_DIR/ >&AS_MESSAGE_LOG_FD 2>&1])])
 
 # BP_TRY_RUN(COMMAND)
 m4_define([BP_TRY_RUN],
@@ -112,7 +109,7 @@ m4_define([BP_FAIL],
 
 # BP_FINISH
 m4_define([BP_FINISH],
-[BP_START_STEP([success])])
+[BP_START_STEP([Success])])
 
 # BP_ERROR(MESSAGE)
 m4_define([BP_ERROR], 
diff --git a/gendocs.sh b/gendocs.sh
deleted file mode 100755 (executable)
index 67d5b52..0000000
+++ /dev/null
@@ -1,367 +0,0 @@
-#!/bin/sh -e
-# gendocs.sh -- generate a GNU manual in many formats.  This script is
-#   mentioned in maintain.texi.  See the help message below for usage details.
-
-scriptversion=2010-02-13.20
-
-# Copyright 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
-# Free Software Foundation, Inc.
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 3 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-#
-# Original author: Mohit Agarwal.
-# Send bug reports and any other correspondence to bug-texinfo@gnu.org.
-
-prog=`basename "$0"`
-srcdir=`pwd`
-
-scripturl="http://savannah.gnu.org/cgi-bin/viewcvs/~checkout~/texinfo/texinfo/util/gendocs.sh"
-templateurl="http://savannah.gnu.org/cgi-bin/viewcvs/~checkout~/texinfo/texinfo/util/gendocs_template"
-
-: ${SETLANG="env LANG= LC_MESSAGES= LC_ALL= LANGUAGE="}
-: ${MAKEINFO="makeinfo"}
-: ${TEXI2DVI="texi2dvi -t @finalout"}
-: ${DVIPS="dvips"}
-: ${DOCBOOK2HTML="docbook2html"}
-: ${DOCBOOK2PDF="docbook2pdf"}
-: ${DOCBOOK2PS="docbook2ps"}
-: ${DOCBOOK2TXT="docbook2txt"}
-: ${GENDOCS_TEMPLATE_DIR="."}
-: ${TEXI2HTML="texi2html"}
-unset CDPATH
-unset use_texi2html
-
-version="gendocs.sh $scriptversion
-
-Copyright 2009 Free Software Foundation, Inc.
-There is NO warranty.  You may redistribute this software
-under the terms of the GNU General Public License.
-For more information about these matters, see the files named COPYING."
-
-usage="Usage: $prog [OPTION]... PACKAGE MANUAL-TITLE
-
-Generate various output formats from PACKAGE.texinfo (or .texi or .txi) source.
-See the GNU Maintainers document for a more extensive discussion:
-  http://www.gnu.org/prep/maintain_toc.html
-
-Options:
-  -s SRCFILE  read Texinfo from SRCFILE, instead of PACKAGE.{texinfo|texi|txi}
-  -o OUTDIR   write files into OUTDIR, instead of manual/.
-  --email ADR use ADR as contact in generated web pages.
-  --docbook   convert to DocBook too (xml, txt, html, pdf and ps).
-  --html ARG  pass indicated ARG to makeinfo or texi2html for HTML targets.
-  --texi2html use texi2html to generate HTML targets.
-  --help      display this help and exit successfully.
-  --version   display version information and exit successfully.
-
-Simple example: $prog --email bug-gnu-emacs@gnu.org emacs \"GNU Emacs Manual\"
-
-Typical sequence:
-  cd PACKAGESOURCE/doc
-  wget \"$scripturl\"
-  wget \"$templateurl\"
-  $prog --email BUGLIST MANUAL \"GNU MANUAL - One-line description\"
-
-Output will be in a new subdirectory \"manual\" (by default, use -o OUTDIR
-to override).  Move all the new files into your web CVS tree, as
-explained in the Web Pages node of maintain.texi.
-
-Please use the --email ADDRESS option to specify your bug-reporting
-address in the generated HTML pages.
-
-MANUAL-TITLE is included as part of the HTML <title> of the overall
-manual/index.html file.  It should include the name of the package being
-documented.  manual/index.html is created by substitution from the file
-$GENDOCS_TEMPLATE_DIR/gendocs_template.  (Feel free to modify the
-generic template for your own purposes.)
-
-If you have several manuals, you'll need to run this script several
-times with different MANUAL values, specifying a different output
-directory with -o each time.  Then write (by hand) an overall index.html
-with links to them all.
-
-If a manual's Texinfo sources are spread across several directories,
-first copy or symlink all Texinfo sources into a single directory.
-(Part of the script's work is to make a tar.gz of the sources.)
-
-You can set the environment variables MAKEINFO, TEXI2DVI, and DVIPS to
-control the programs that get executed, and GENDOCS_TEMPLATE_DIR to
-control where the gendocs_template file is looked for.  (With --docbook,
-the environment variables DOCBOOK2HTML, DOCBOOK2PDF, DOCBOOK2PS, and
-DOCBOOK2TXT are also respected.)
-
-By default, makeinfo is run in the default (English) locale, since
-that's the language of most Texinfo manuals.  If you happen to have a
-non-English manual and non-English web site, see the SETLANG setting
-in the source.
-
-Email bug reports or enhancement requests to bug-texinfo@gnu.org.
-"
-
-calcsize()
-{
-  size=`ls -ksl $1 | awk '{print $1}'`
-  echo $size
-}
-
-MANUAL_TITLE=
-PACKAGE=
-EMAIL=webmasters@gnu.org  # please override with --email
-htmlarg=
-outdir=manual
-srcfile=
-
-while test $# -gt 0; do
-  case $1 in
-    --email) shift; EMAIL=$1;;
-    --help) echo "$usage"; exit 0;;
-    --version) echo "$version"; exit 0;;
-    -s) shift; srcfile=$1;;
-    -o) shift; outdir=$1;;
-    --docbook) docbook=yes;;
-    --html) shift; htmlarg=$1;;
-    --texi2html) use_texi2html=1;;
-    -*)
-      echo "$0: Unknown option \`$1'." >&2
-      echo "$0: Try \`--help' for more information." >&2
-      exit 1;;
-    *)
-      if test -z "$PACKAGE"; then
-        PACKAGE=$1
-      elif test -z "$MANUAL_TITLE"; then
-        MANUAL_TITLE=$1
-      else
-        echo "$0: extra non-option argument \`$1'." >&2
-        exit 1
-      fi;;
-  esac
-  shift
-done
-
-if test -n "$srcfile"; then
-  :
-elif test -s "$srcdir/$PACKAGE.texinfo"; then
-  srcfile=$srcdir/$PACKAGE.texinfo
-elif test -s "$srcdir/$PACKAGE.texi"; then
-  srcfile=$srcdir/$PACKAGE.texi
-elif test -s "$srcdir/$PACKAGE.txi"; then
-  srcfile=$srcdir/$PACKAGE.txi
-else
-  echo "$0: cannot find .texinfo or .texi or .txi for $PACKAGE in $srcdir." >&2
-  exit 1
-fi
-
-if test ! -r $GENDOCS_TEMPLATE_DIR/gendocs_template; then
-  echo "$0: cannot read $GENDOCS_TEMPLATE_DIR/gendocs_template." >&2
-  echo "$0: it is available from $templateurl." >&2
-  exit 1
-fi
-
-case $outdir in
-  /*) dotdot_outdir="$outdir";;
-  *) dotdot_outdir="../$outdir";;
-esac
-
-echo Generating output formats for $srcfile
-
-cmd="$SETLANG $MAKEINFO -o $PACKAGE.info \"$srcfile\""
-echo "Generating info files... ($cmd)"
-eval "$cmd"
-mkdir -p $outdir/
-tar czf $outdir/$PACKAGE.info.tar.gz $PACKAGE.info*
-info_tgz_size=`calcsize $outdir/$PACKAGE.info.tar.gz`
-# do not mv the info files, there's no point in having them available
-# separately on the web.
-
-cmd="${TEXI2DVI} \"$srcfile\""
-echo "Generating dvi ... ($cmd)"
-eval "$cmd"
-
-# now, before we compress dvi:
-echo Generating postscript...
-${DVIPS} $PACKAGE -o
-gzip -f -9 $PACKAGE.ps
-ps_gz_size=`calcsize $PACKAGE.ps.gz`
-mv $PACKAGE.ps.gz $outdir/
-
-# compress/finish dvi:
-gzip -f -9 $PACKAGE.dvi
-dvi_gz_size=`calcsize $PACKAGE.dvi.gz`
-mv $PACKAGE.dvi.gz $outdir/
-
-cmd="${TEXI2DVI} --pdf \"$srcfile\""
-echo "Generating pdf ... ($cmd)"
-eval "$cmd"
-pdf_size=`calcsize $PACKAGE.pdf`
-mv $PACKAGE.pdf $outdir/
-
-cmd="$SETLANG $MAKEINFO -o $PACKAGE.txt --no-split --no-headers \"$srcfile\""
-echo "Generating ASCII... ($cmd)"
-eval "$cmd"
-ascii_size=`calcsize $PACKAGE.txt`
-gzip -f -9 -c $PACKAGE.txt >$outdir/$PACKAGE.txt.gz
-ascii_gz_size=`calcsize $outdir/$PACKAGE.txt.gz`
-mv $PACKAGE.txt $outdir/
-
-html_split()
-{
-  opt="--split=$1 $htmlarg --node-files"
-  cmd="$SETLANG $TEXI2HTML --output $PACKAGE.html $opt \"$srcfile\""
-  echo "Generating html by $1... ($cmd)"
-  eval "$cmd"
-  split_html_dir=$PACKAGE.html
-  (
-    cd ${split_html_dir} || exit 1
-    ln -sf ${PACKAGE}.html index.html
-    tar -czf $dotdot_outdir/${PACKAGE}.html_$1.tar.gz -- *.html
-  )
-  eval html_$1_tgz_size=`calcsize $outdir/${PACKAGE}.html_$1.tar.gz`
-  rm -f $outdir/html_$1/*.html
-  mkdir -p $outdir/html_$1/
-  mv ${split_html_dir}/*.html $outdir/html_$1/
-  rmdir ${split_html_dir}
-}
-
-if test -z "$use_texi2html"; then
-  opt="--no-split --html -o $PACKAGE.html $htmlarg"
-  cmd="$SETLANG $MAKEINFO $opt \"$srcfile\""
-  echo "Generating monolithic html... ($cmd)"
-  rm -rf $PACKAGE.html  # in case a directory is left over
-  eval "$cmd"
-  html_mono_size=`calcsize $PACKAGE.html`
-  gzip -f -9 -c $PACKAGE.html >$outdir/$PACKAGE.html.gz
-  html_mono_gz_size=`calcsize $outdir/$PACKAGE.html.gz`
-  mv $PACKAGE.html $outdir/
-
-  cmd="$SETLANG $MAKEINFO --html -o $PACKAGE.html $htmlarg \"$srcfile\""
-  echo "Generating html by node... ($cmd)"
-  eval "$cmd"
-  split_html_dir=$PACKAGE.html
-  (
-   cd ${split_html_dir} || exit 1
-   tar -czf $dotdot_outdir/${PACKAGE}.html_node.tar.gz -- *.html
-  )
-  html_node_tgz_size=`calcsize $outdir/${PACKAGE}.html_node.tar.gz`
-  rm -f $outdir/html_node/*.html
-  mkdir -p $outdir/html_node/
-  mv ${split_html_dir}/*.html $outdir/html_node/
-  rmdir ${split_html_dir}
-else
-  cmd="$SETLANG $TEXI2HTML --output $PACKAGE.html $htmlarg \"$srcfile\""
-  echo "Generating monolithic html... ($cmd)"
-  rm -rf $PACKAGE.html  # in case a directory is left over
-  eval "$cmd"
-  html_mono_size=`calcsize $PACKAGE.html`
-  gzip -f -9 -c $PACKAGE.html >$outdir/$PACKAGE.html.gz
-  html_mono_gz_size=`calcsize $outdir/$PACKAGE.html.gz`
-  mv $PACKAGE.html $outdir/
-
-  html_split node
-  html_split chapter
-  html_split section
-fi
-
-echo Making .tar.gz for sources...
-d=`dirname $srcfile`
-srcfiles=`ls $d/*.texinfo $d/*.texi $d/*.txi $d/*.eps 2>/dev/null` || true
-tar cvzfh $outdir/$PACKAGE.texi.tar.gz $srcfiles
-texi_tgz_size=`calcsize $outdir/$PACKAGE.texi.tar.gz`
-
-if test -n "$docbook"; then
-  cmd="$SETLANG $MAKEINFO -o - --docbook \"$srcfile\" > ${srcdir}/$PACKAGE-db.xml"
-  echo "Generating docbook XML... ($cmd)"
-  eval "$cmd"
-  docbook_xml_size=`calcsize $PACKAGE-db.xml`
-  gzip -f -9 -c $PACKAGE-db.xml >$outdir/$PACKAGE-db.xml.gz
-  docbook_xml_gz_size=`calcsize $outdir/$PACKAGE-db.xml.gz`
-  mv $PACKAGE-db.xml $outdir/
-
-  cmd="${DOCBOOK2HTML} -o $split_html_db_dir ${outdir}/$PACKAGE-db.xml"
-  echo "Generating docbook HTML... ($cmd)"
-  eval "$cmd"
-  split_html_db_dir=html_node_db
-  (
-    cd ${split_html_db_dir} || exit 1
-    tar -czf $dotdot_outdir/${PACKAGE}.html_node_db.tar.gz -- *.html
-  )
-  html_node_db_tgz_size=`calcsize $outdir/${PACKAGE}.html_node_db.tar.gz`
-  rm -f $outdir/html_node_db/*.html
-  mkdir -p $outdir/html_node_db
-  mv ${split_html_db_dir}/*.html $outdir/html_node_db/
-  rmdir ${split_html_db_dir}
-
-  cmd="${DOCBOOK2TXT} ${outdir}/$PACKAGE-db.xml"
-  echo "Generating docbook ASCII... ($cmd)"
-  eval "$cmd"
-  docbook_ascii_size=`calcsize $PACKAGE-db.txt`
-  mv $PACKAGE-db.txt $outdir/
-
-  cmd="${DOCBOOK2PS} ${outdir}/$PACKAGE-db.xml"
-  echo "Generating docbook PS... ($cmd)"
-  eval "$cmd"
-  gzip -f -9 -c $PACKAGE-db.ps >$outdir/$PACKAGE-db.ps.gz
-  docbook_ps_gz_size=`calcsize $outdir/$PACKAGE-db.ps.gz`
-  mv $PACKAGE-db.ps $outdir/
-
-  cmd="${DOCBOOK2PDF} ${outdir}/$PACKAGE-db.xml"
-  echo "Generating docbook PDF... ($cmd)"
-  eval "$cmd"
-  docbook_pdf_size=`calcsize $PACKAGE-db.pdf`
-  mv $PACKAGE-db.pdf $outdir/
-fi
-
-echo "Writing index file..."
-if test -z "$use_texi2html"; then
-   CONDS="/%%IF  *HTML_SECTION%%/,/%%ENDIF  *HTML_SECTION%%/d;\
-          /%%IF  *HTML_CHAPTER%%/,/%%ENDIF  *HTML_CHAPTER%%/d"
-else
-   CONDS="/%%ENDIF.*%%/d;/%%IF  *HTML_SECTION%%/d;/%%IF  *HTML_CHAPTER%%/d"
-fi
-curdate=`$SETLANG date '+%B %d, %Y'`
-sed \
-   -e "s!%%TITLE%%!$MANUAL_TITLE!g" \
-   -e "s!%%EMAIL%%!$EMAIL!g" \
-   -e "s!%%PACKAGE%%!$PACKAGE!g" \
-   -e "s!%%DATE%%!$curdate!g" \
-   -e "s!%%HTML_MONO_SIZE%%!$html_mono_size!g" \
-   -e "s!%%HTML_MONO_GZ_SIZE%%!$html_mono_gz_size!g" \
-   -e "s!%%HTML_NODE_TGZ_SIZE%%!$html_node_tgz_size!g" \
-   -e "s!%%HTML_SECTION_TGZ_SIZE%%!$html_section_tgz_size!g" \
-   -e "s!%%HTML_CHAPTER_TGZ_SIZE%%!$html_chapter_tgz_size!g" \
-   -e "s!%%INFO_TGZ_SIZE%%!$info_tgz_size!g" \
-   -e "s!%%DVI_GZ_SIZE%%!$dvi_gz_size!g" \
-   -e "s!%%PDF_SIZE%%!$pdf_size!g" \
-   -e "s!%%PS_GZ_SIZE%%!$ps_gz_size!g" \
-   -e "s!%%ASCII_SIZE%%!$ascii_size!g" \
-   -e "s!%%ASCII_GZ_SIZE%%!$ascii_gz_size!g" \
-   -e "s!%%TEXI_TGZ_SIZE%%!$texi_tgz_size!g" \
-   -e "s!%%DOCBOOK_HTML_NODE_TGZ_SIZE%%!$html_node_db_tgz_size!g" \
-   -e "s!%%DOCBOOK_ASCII_SIZE%%!$docbook_ascii_size!g" \
-   -e "s!%%DOCBOOK_PS_GZ_SIZE%%!$docbook_ps_gz_size!g" \
-   -e "s!%%DOCBOOK_PDF_SIZE%%!$docbook_pdf_size!g" \
-   -e "s!%%DOCBOOK_XML_SIZE%%!$docbook_xml_size!g" \
-   -e "s!%%DOCBOOK_XML_GZ_SIZE%%!$docbook_xml_gz_size!g" \
-   -e "s,%%SCRIPTURL%%,$scripturl,g" \
-   -e "s!%%SCRIPTNAME%%!$prog!g" \
-   -e "$CONDS" \
-$GENDOCS_TEMPLATE_DIR/gendocs_template >$outdir/index.html
-
-echo "Done, see $outdir/ subdirectory for new files."
-
-# Local variables:
-# eval: (add-hook 'write-file-hooks 'time-stamp)
-# time-stamp-start: "scriptversion="
-# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-end: "$"
-# End:
diff --git a/gendocs_template b/gendocs_template
deleted file mode 100644 (file)
index ee6a5c5..0000000
+++ /dev/null
@@ -1,96 +0,0 @@
-<!--#include virtual="/server/header.html" -->
-<title>%%TITLE%% - GNU Project - Free Software Foundation (FSF)</title>
-<!--#include virtual="/server/banner.html" -->
-<h2>%%TITLE%%</h2>
-
-<!-- This document is in XML, and xhtml 1.0 -->
-<!-- Please make sure to properly nest your tags -->
-<!-- and ensure that your final document validates -->
-<!-- consistent with W3C xhtml 1.0 and CSS standards -->
-<!-- See validator.w3.org -->
-
-<address>Free Software Foundation</address>
-<address>last updated %%DATE%%</address>
-
-<p>This manual (%%PACKAGE%%) is available in the following formats:</p>
-
-<ul>
-<li><a href="%%PACKAGE%%.html">HTML
-    (%%HTML_MONO_SIZE%%K bytes)</a> - entirely on one web page.</li>
-<li><a href="html_node/index.html">HTML</a> - with one web page per
-    node.</li>
-%%IF HTML_SECTION%%
-<li><a href="html_section/index.html">HTML</a> - with one web page per
-    section.</li>
-%%ENDIF HTML_SECTION%%
-%%IF HTML_CHAPTER%%
-<li><a href="html_chapter/index.html">HTML</a> - with one web page per
-    chapter.</li>
-%%ENDIF HTML_CHAPTER%%
-<li><a href="%%PACKAGE%%.html.gz">HTML compressed
-    (%%HTML_MONO_GZ_SIZE%%K gzipped characters)</a> - entirely on
-    one web page.</li>
-<li><a href="%%PACKAGE%%.html_node.tar.gz">HTML compressed
-    (%%HTML_NODE_TGZ_SIZE%%K gzipped tar file)</a> -
-    with one web page per node.</li>
-%%IF HTML_SECTION%%
-<li><a href="%%PACKAGE%%.html_section.tar.gz">HTML compressed
-    (%%HTML_SECTION_TGZ_SIZE%%K gzipped tar file)</a> -
-    with one web page per section.</li>
-%%ENDIF HTML_SECTION%%
-%%IF HTML_CHAPTER%%
-<li><a href="%%PACKAGE%%.html_chapter.tar.gz">HTML compressed
-    (%%HTML_CHAPTER_TGZ_SIZE%%K gzipped tar file)</a> -
-    with one web page per chapter.</li>
-%%ENDIF HTML_CHAPTER%%
-<li><a href="%%PACKAGE%%.info.tar.gz">Info document
-    (%%INFO_TGZ_SIZE%%K bytes gzipped tar file)</a>.</li>
-<li><a href="%%PACKAGE%%.txt">ASCII text
-    (%%ASCII_SIZE%%K bytes)</a>.</li>
-<li><a href="%%PACKAGE%%.txt.gz">ASCII text compressed
-    (%%ASCII_GZ_SIZE%%K bytes gzipped)</a>.</li>
-<li><a href="%%PACKAGE%%.dvi.gz">TeX dvi file
-    (%%DVI_GZ_SIZE%%K bytes gzipped)</a>.</li>
-<li><a href="%%PACKAGE%%.ps.gz">PostScript file
-    (%%PS_GZ_SIZE%%K bytes gzipped)</a>.</li>
-<li><a href="%%PACKAGE%%.pdf">PDF file
-    (%%PDF_SIZE%%K bytes)</a>.</li>
-<li><a href="%%PACKAGE%%.texi.tar.gz">Texinfo source
-    (%%TEXI_TGZ_SIZE%%K bytes gzipped tar file).</a></li>
-</ul>
-
-<p>You can <a href="http://shop.fsf.org/">buy printed copies of
-some manuals</a> (among other items) from the Free Software Foundation;
-this helps support FSF activities.</p>
-
-<p>(This page generated by the <a href="%%SCRIPTURL%%">%%SCRIPTNAME%%
-script</a>.)</p>
-
-<!-- If needed, change the copyright block at the bottom. In general, -->
-<!-- all pages on the GNU web server should have the section about    -->
-<!-- verbatim copying.  Please do NOT remove this without talking     -->
-<!-- with the webmasters first. -->
-<!-- Please make sure the copyright date is consistent with the document -->
-<!-- and that it is like this "2001, 2002" not this "2001-2002." -->
-</div><!-- for id="content", starts in the include above -->
-<!--#include virtual="/server/footer.html" -->
-<div id="footer">
-
-<p>
-Please send FSF &amp; GNU inquiries to
-<a href="mailto:gnu@gnu.org">&lt;gnu@gnu.org&gt;</a>.
-There are also <a href="/contact/">other ways to contact</a>
-the FSF.<br />
-Please send broken links and other corrections or suggestions to
-<a href="mailto:%%EMAIL%%">&lt;%%EMAIL%%&gt;</a>.
-</p>
-
-<p>Copyright &copy; 2009 Free Software Foundation, Inc.</p>
-
-<p>Verbatim copying and distribution of this entire article is
-permitted in any medium, provided this notice is preserved.</p>
-
-</div>
-</div>
-</body>
-</html>
diff --git a/gendocs_template_min b/gendocs_template_min
deleted file mode 100644 (file)
index 58b8944..0000000
+++ /dev/null
@@ -1,101 +0,0 @@
-<?xml version="1.0" encoding="utf-8" ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
-    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
-
-<head>
-<title>%%TITLE%% - GNU Project - Free Software Foundation (FSF)</title>
-<meta http-equiv="content-type" content='text/html; charset=utf-8' />
-<link rel="stylesheet" type="text/css" href="/gnu.css" />
-<link rev="made" href="webmasters@gnu.org" />
-</head>
-
-<!-- This document is in XML, and xhtml 1.0 -->
-<!-- Please make sure to properly nest your tags -->
-<!-- and ensure that your final document validates -->
-<!-- consistent with W3C xhtml 1.0 and CSS standards -->
-<!-- See validator.w3.org -->
-
-<body>
-
-<h3>%%TITLE%%</h3>
-
-<address>Free Software Foundation</address>
-<address>last updated %%DATE%%</address>
-<p>
-<a href="/graphics/gnu-head.jpg">
-       <img src="/graphics/gnu-head-sm.jpg"
-             alt=" [image of the head of a GNU] " width="129" height="122"/>
-</a>
-</p>
-<hr />
-
-<p>This manual (%%PACKAGE%%) is available in the following formats:</p>
-
-<ul>
-<li><a href="%%PACKAGE%%.html">HTML
-    (%%HTML_MONO_SIZE%%K bytes)</a> - entirely on one web page.</li>
-<li><a href="html_node/index.html">HTML</a> - with one web page per
-    node.</li>
-%%IF HTML_SECTION%%
-<li><a href="html_section/index.html">HTML</a> - with one web page per
-    section.</li>
-%%ENDIF HTML_SECTION%%
-%%IF HTML_CHAPTER%%
-<li><a href="html_chapter/index.html">HTML</a> - with one web page per
-    chapter.</li>
-%%ENDIF HTML_CHAPTER%%
-<li><a href="%%PACKAGE%%.html.gz">HTML compressed
-    (%%HTML_MONO_GZ_SIZE%%K gzipped characters)</a> - entirely on
-    one web page.</li>
-<li><a href="%%PACKAGE%%.html_node.tar.gz">HTML compressed
-    (%%HTML_NODE_TGZ_SIZE%%K gzipped tar file)</a> -
-    with one web page per node.</li>
-%%IF HTML_SECTION%%
-<li><a href="%%PACKAGE%%.html_section.tar.gz">HTML compressed
-    (%%HTML_SECTION_TGZ_SIZE%%K gzipped tar file)</a> -
-    with one web page per section.</li>
-%%ENDIF HTML_SECTION%%
-%%IF HTML_CHAPTER%%
-<li><a href="%%PACKAGE%%.html_chapter.tar.gz">HTML compressed
-    (%%HTML_CHAPTER_TGZ_SIZE%%K gzipped tar file)</a> -
-    with one web page per chapter.</li>
-%%ENDIF HTML_CHAPTER%%
-<li><a href="%%PACKAGE%%.info.tar.gz">Info document
-    (%%INFO_TGZ_SIZE%%K bytes gzipped tar file)</a>.</li>
-<li><a href="%%PACKAGE%%.txt">ASCII text
-    (%%ASCII_SIZE%%K bytes)</a>.</li>
-<li><a href="%%PACKAGE%%.txt.gz">ASCII text compressed
-    (%%ASCII_GZ_SIZE%%K bytes gzipped)</a>.</li>
-<li><a href="%%PACKAGE%%.dvi.gz">TeX dvi file
-    (%%DVI_GZ_SIZE%%K bytes gzipped)</a>.</li>
-<li><a href="%%PACKAGE%%.ps.gz">PostScript file
-    (%%PS_GZ_SIZE%%K bytes gzipped)</a>.</li>
-<li><a href="%%PACKAGE%%.pdf">PDF file
-    (%%PDF_SIZE%%K bytes)</a>.</li>
-<li><a href="%%PACKAGE%%.texi.tar.gz">Texinfo source
-    (%%TEXI_TGZ_SIZE%%K bytes gzipped tar file).</a></li>
-</ul>
-
-<p>(This page generated by the <a href="%%SCRIPTURL%%">%%SCRIPTNAME%%
-script</a>.)</p>
-
-<div class="copyright">
-<p>
-Please send FSF &amp; GNU inquiries to
-<a href="mailto:gnu@gnu.org">&lt;gnu@gnu.org&gt;</a>.
-There are also <a href="/contact/">other ways to contact</a>
-the FSF.<br />
-Please send broken links and other corrections (or suggestions) to
-<a href="mailto:%%EMAIL%%">&lt;%%EMAIL%%&gt;</a>.
-</p>
-
-<p>Copyright &copy; 2009 Free Software Foundation, Inc.</p>
-
-<p>Verbatim copying and distribution of this entire article is
-permitted in any medium, provided this notice is preserved.</p>
-
-</div>
-
-</body>
-</html>
index 742f2bf8d7ade8d8ca168eaa3865c07ba139c90d..295b498a1661c1fbb906c14ef4f789eac27c8960 100644 (file)
@@ -1,13 +1,13 @@
 # -* autoconf -*-
 
-BP_INIT([make-binary.log])
+BP_INIT
 
 usage=["\
-Usage: $0 [OPTION]... PSPP_DIST.TAR.GZ
-where PSPP_DIST.TAR.GZ is a PSPP tarball prepared by \"make dist\".
+Usage: $0 [OPTION]... PSPP_DIST.TAR.GZ BINID
+where PSPP_DIST.TAR.GZ is a PSPP tarball prepared by \"make dist\"
+  and BINID briefly identifies the target, e.g. \"debian-squeeze-i386\".
 
 Options:
-  -b, --binid=BINID         Use BINID to identify binary.
   -h, --help                Print this usage message and exit
   -f, --force               Delete existing directory instead of aborting
 
@@ -35,7 +35,6 @@ exit_missing_arg='
 
 # Variables.
 overwrite=false
-BINID=
 
 # Parse command line.
 while test $# -gt 0 ; do
@@ -52,14 +51,6 @@ while test $# -gt 0 ; do
     --force | -f )
        overwrite=true ;;
 
-    --binid=* | -b?* )
-       BINID=$optarg
-       shift ;;
-    --binid | -b )
-       test $# = 1 && eval "$exit_missing_arg"
-       BINID=$2
-       shift; shift ;;
-
     -- )     # Stop option processing
        shift; break ;;
     - )        # Use stdin as input.
@@ -74,8 +65,9 @@ done
 
 # Find the input file.
 case $# in
-  1)
+  2)
     tarball=$1
+    BINID=$2
     ;;
   *) exec >&2
      AS_ERROR([invalid number of arguments$as_nl$help]) ;;
@@ -86,35 +78,50 @@ if test ! -e "$tarball"; then
    AS_ERROR([$tarball does not exist])
 fi
 
+if test -e "$BINID"; then
+  if test $overwrite = true; then
+    chmod -R u+w "$BINID"
+    rm -rf "$BINID"
+  else
+    exec >&2
+    AS_ERROR([$BINID exists and --force not specified])
+  fi
+fi
+
+BP_INIT_RESULTS([$BINID])
+BP_INIT_LOG([$BINID/LOG])
+
+BP_SET_VAR([BUILD_NUMBER], [@BUILD_NUMBER@])
+BP_SET_VAR([PSPP_COMMIT], [@PSPP_COMMIT@])
+BP_SET_VAR([PSPP_REPO], [@PSPP_REPO@])
+BP_SET_VAR([GNULIB_COMMIT], [@GNULIB_COMMIT@])
+BP_SET_VAR([GNULIB_REPO], [@GNULIB_REPO@])
+BP_SET_VAR([BRANCH], [@BRANCH@])
+
+BP_SET_VAR([BINID])
+
 BP_START_STEP([Determining $tarball target directory])
 DIST_DIR=`zcat $tarball | tar tf - 2>/dev/null | sed 1q | sed s,/.*,,`
 BP_SET_VAR([DIST_DIR])
 if test X$DIST_DIR = X; then
   BP_ERROR([failed to determine $tarball target directory])
-elif test -e "$DIST_DIR"; then
-  if test $overwrite = true; then
-    chmod -R u+w "$DIST_DIR"
-    rm -rf "$DIST_DIR"
-  else
-    BP_ERROR([$DIST_DIR exists and --force not specified])
-  fi
 fi
 
 BP_START_STEP([Extracting source tarball])
-BP_RUN([zcat $tarball | tar xf - >&AS_MESSAGE_LOG_FD 2>&1])
+BP_RUN([zcat $tarball | tar xkf - >&AS_MESSAGE_LOG_FD 2>&1])
 
 BP_START_STEP([Extracting tar version])
 DIST_VERSION=`$DIST_DIR/configure --version 2>/dev/null | sed 1q | sed 's/.* //'`
 BP_SET_VAR([DIST_VERSION])
 
 BP_START_STEP([Configuring])
-BP_RUN([mkdir $DIST_DIR/_build >&AS_MESSAGE_LOG_FD 2>&1])
+BP_RUN([mkdir $DIST_DIR/_$BINID >&AS_MESSAGE_LOG_FD 2>&1])
 BP_RUN([chmod -R a-w $DIST_DIR >&AS_MESSAGE_LOG_FD 2>&1])
-BP_RUN([chmod u+w $DIST_DIR/_build >&AS_MESSAGE_LOG_FD 2>&1])
-BP_TRY_RUN([(cd $DIST_DIR/_build && ../configure --enable-relocatable --prefix='') >&AS_MESSAGE_LOG_FD 2>&1])
+BP_RUN([chmod u+w $DIST_DIR/_$BINID >&AS_MESSAGE_LOG_FD 2>&1])
+BP_TRY_RUN([(cd $DIST_DIR/_$BINID && ../configure --enable-relocatable --prefix='') >&AS_MESSAGE_LOG_FD 2>&1])
 _bp_status=$?
 for base in config.h config.log; do
-  fn=$DIST_DIR/_build/$base
+  fn=$DIST_DIR/_$BINID/$base
   if test -e "$fn"; then
     BP_COPY_OUTPUT([build configuration], [$fn])
   fi
@@ -123,30 +130,21 @@ if test $_bp_status != 0; then
   AS_ECHO(["$as_me:$LINENO: command exited with status $_bp_status"]) >&AS_MESSAGE_LOG_FD
 fi
 
-BP_START_STEP([Determine target name])
-if test "X$BINID" = X; then
-  BINID=`sed -n 's/^Target: \(.*\)$/\1/p' < $DIST_DIR/_build/config.log 2>/dev/null | sed 1q`
-  if test "X$BINID" = X; then
-    BINID=`./config.guess`
-  fi
-fi  
-BP_SET_VAR([BINID])
-
 BP_START_STEP([Build])
-BP_RUN([(cd $DIST_DIR/_build && make) >&AS_MESSAGE_LOG_FD 2>&1])
+BP_RUN([(cd $DIST_DIR/_$BINID && make) >&AS_MESSAGE_LOG_FD 2>&1])
 
 BP_START_STEP([Install])
-BP_RUN([(cd $DIST_DIR/_build && make install DESTDIR=$PWD/pspp-$DIST_VERSION-$BINID) >&AS_MESSAGE_LOG_FD 2>&1])
+BP_RUN([(cd $DIST_DIR/_$BINID && make install DESTDIR=$PWD/pspp-$DIST_VERSION-$BINID) >&AS_MESSAGE_LOG_FD 2>&1])
 
 BP_START_STEP([Make binary distribution])
-BP_RUN([(cd $DIST_DIR/_build && tar cfz pspp-$DIST_VERSION-$BINID.tar.gz pspp-$DIST_VERSION-$BINID) >&AS_MESSAGE_LOG_FD 2>&1])
-BP_MOVE_OUTPUT([binary distribution], [$DIST_DIR/_build/pspp-$DIST_VERSION-$BINID.tar.gz])
+BP_RUN([(cd $DIST_DIR/_$BINID && tar cfz pspp-$DIST_VERSION-$BINID.tar.gz pspp-$DIST_VERSION-$BINID) >&AS_MESSAGE_LOG_FD 2>&1])
+BP_MOVE_OUTPUT([binary distribution], [$DIST_DIR/_$BINID/pspp-$DIST_VERSION-$BINID.tar.gz])
 
 BP_START_STEP([Check])
-BP_TRY_RUN([(cd $DIST_DIR/_build && make check) >&AS_MESSAGE_LOG_FD 2>&1])
+BP_TRY_RUN([(cd $DIST_DIR/_$BINID && make check) >&AS_MESSAGE_LOG_FD 2>&1])
 _bp_status=$?
 for base in tests/testsuite.log tests/testsuite.dir; do
-  fn=$DIST_DIR/_build/$base
+  fn=$DIST_DIR/_$BINID/$base
   if test -e "$fn"; then
     BP_MOVE_OUTPUT([test logs], [$fn])
   fi
@@ -156,10 +154,10 @@ if test $_bp_status != 0; then
 fi
 
 BP_START_STEP([Uninstall])
-BP_RUN([(cd $DIST_DIR/_build && make uninstall DESTDIR=$PWD/pspp-$DIST_VERSION-$BINID) >&AS_MESSAGE_LOG_FD 2>&1])
+BP_RUN([(cd $DIST_DIR/_$BINID && make uninstall DESTDIR=$PWD/pspp-$DIST_VERSION-$BINID) >&AS_MESSAGE_LOG_FD 2>&1])
 
 BP_START_STEP([Check uninstall])
-BP_RUN([(cd $DIST_DIR/_build && make distuninstallcheck distuninstallcheck_dir=$PWD/pspp-$DIST_VERSION-$BINID) >&AS_MESSAGE_LOG_FD 2>&1])
+BP_RUN([(cd $DIST_DIR/_$BINID && make distuninstallcheck distuninstallcheck_dir=$PWD/pspp-$DIST_VERSION-$BINID) >&AS_MESSAGE_LOG_FD 2>&1])
 
 # distcleancheck
 
index a30e4374cea9248ae4ead42f137db10177d47721..8a90693f351b35c9b8b807da3f08815ffd12bdb2 100644 (file)
@@ -30,7 +30,7 @@ where REPO and BRANCH are a Git repository and branch to clone.
 Options:
   -h, --help                Print this usage message and exit
   -b, --build=NUMBER        Set build number (default: next available)
-  -o, --output=DIRECTORY    Set build directory (default: build\$BUILDNR)
+  -o, --output=DIRECTORY    Set build directory (default: build\$BUILD_NUMBER)
   -f, --force               Overwrite files in existing directory
 
 Report bugs to <bug-gnu-pspp@gnu.org>.
@@ -58,7 +58,8 @@ exit_missing_arg='
 # Variables.
 outdir=
 overwrite=false
-buildnr=
+BUILD_NUMBER=
+GNULIB_REPO=git://git.sv.gnu.org/gnulib.git
 
 # Parse command line.
 while test $# -gt 0 ; do
@@ -85,11 +86,11 @@ while test $# -gt 0 ; do
        shift; shift ;;
 
     --build=* | -b?* )
-       buildnr=$optarg
+       BUILD_NUMBER=$optarg
        shift ;;
     --build | -b )
        test $# = 1 && eval "$exit_missing_arg"
-       buildnr=$2
+       BUILD_NUMBER=$2
        shift; shift ;;
 
     --force | -f )
@@ -110,15 +111,15 @@ done
 # Find the input file.
 case $# in
   2)
-    repository=$1
-    branch=$2
+    PSPP_REPO=$1
+    PSPP_BRANCH=$2
     ;;
   *) exec >&2
      AS_ERROR([invalid number of arguments$as_nl$help]) ;;
 esac
 
 # Choose build number.
-if test "x$buildnr" = x; then
+if test "x$BUILD_NUMBER" = x; then
     lock_file () {
        echo $$ > $[1].$$
        if ln $[1].$$ $[1].lock; then
@@ -138,22 +139,22 @@ if test "x$buildnr" = x; then
     done
 
     if test -e buildnr; then
-       buildnr=`cat buildnr`
+       BUILD_NUMBER=`cat buildnr`
     else
-       buildnr=1
+       BUILD_NUMBER=1
     fi
-    echo `expr $buildnr + 1` > buildnr
+    echo `expr $BUILD_NUMBER + 1` > buildnr
 
     rm build_number.lock
 fi
 
 # Check that build number is a number.
-if expr "X$buildnr" : '[X[0-9][0-9]*$]' >/dev/null; then
-    :
-else
-    exec >&2
-    AS_ERROR([invalid build number `$buildnr'$as_nl$help]) #`
-fi
+case $BUILD_NUMBER in # (
+    "" | *[!0-9]*)
+       exec >&2
+       AS_ERROR([invalid build number `$BUILD_NUMBER'$as_nl$help]) #`
+       ;;
+esac
 
 # Ensure that git repository exists.
 GIT_DIR=$PWD/repo.git
@@ -161,28 +162,28 @@ export GIT_DIR
 git init
 
 # Fetch PSPP source.
-git fetch $repository +$branch:refs/builds/$buildnr/pspp
+git fetch $PSPP_REPO +$PSPP_BRANCH:refs/builds/$BUILD_NUMBER/pspp
 
 # Get PSPP commit number.
-pspp_commit=`git rev-parse refs/builds/$buildnr/pspp`
+PSPP_COMMIT=`git rev-parse refs/builds/$BUILD_NUMBER/pspp`
 
 # Get gnulib commit number.
-gnulib_commit=`\
-    git show refs/builds/$buildnr/pspp:README.Git | \
+GNULIB_COMMIT=`\
+    git show refs/builds/$BUILD_NUMBER/pspp:README.Git | \
     sed -n 's/^[[      ]]*commit \([[0-9a-fA-F]]\{8,\}\)$/\1/p' | \
     head -1`
 
 # Fetch Gnulib source.
-if git rev-parse --verify --quiet $gnulib_commit^0 > /dev/null; then
+if git rev-parse --verify --quiet $GNULIB_COMMIT^0 > /dev/null; then
     :
 else
     # We don't have the right commit yet, update Gnulib.
-    git fetch git://git.sv.gnu.org/gnulib.git +refs/heads/*:refs/remotes/gnulib/*
+    git fetch $GNULIB_REPO +refs/heads/*:refs/remotes/gnulib/*
 fi
-git update-ref refs/builds/$buildnr/gnulib $gnulib_commit
+git update-ref refs/builds/$BUILD_NUMBER/gnulib $GNULIB_COMMIT
 
 # Choose and create output directory.
-test -z "$outdir" && outdir=build$buildnr
+test -z "$outdir" && outdir=build$BUILD_NUMBER
 if test -e "$outdir" && test $overwrite = false; then
     exec >&2
     AS_ERROR([$outdir exists and --force not specified$as_nl$help])
@@ -190,19 +191,28 @@ fi
 AS_MKDIR_P([$outdir])
 
 # Make source tarballs.
-git archive --format=tar --prefix=pspp-$pspp_commit/ $pspp_commit \
-    | gzip > $outdir/pspp-$pspp_commit.tar.gz
-git archive --format=tar --prefix=gnulib-$gnulib_commit/ $gnulib_commit \
-    | gzip > $outdir/gnulib-$gnulib_commit.tar.gz
+mkdir "$outdir/repo"
+git archive --format=tar --prefix=pspp-$PSPP_COMMIT/ $PSPP_COMMIT \
+    | gzip > $outdir/repo/pspp-$PSPP_COMMIT.tar.gz
+git archive --format=tar --prefix=gnulib-$GNULIB_COMMIT/ $GNULIB_COMMIT \
+    | gzip > $outdir/repo/gnulib-$GNULIB_COMMIT.tar.gz
 
 # Make build scripts.
-sed < dist-pspp.in > "$outdir/dist-pspp" "
-s,[@]PSPP_COMMIT[@],$pspp_commit,g
-s,[@]GNULIB_COMMIT[@],$gnulib_commit,g
-s,[@]BRANCH[@],$branch,g
+for base in make-src-dist make-bin-dist; do
+    sed < $base.in > "$outdir/$base" "
+s,[@]BUILD_NUMBER[@],$BUILD_NUMBER,g
+s,[@]PSPP_REPO[@],$PSPP_REPO,g
+s,[@]PSPP_BRANCH[@],$PSPP_BRANCH,g
+s,[@]PSPP_COMMIT[@],$PSPP_COMMIT,g
+s,[@]GNULIB_COMMIT[@],$GNULIB_COMMIT,g
+s,[@]GNULIB_REPO[@],$GNULIB_REPO,g
 s,[@]CONFIGUREFLAGS[@],,g
 "
-chmod +x "$outdir/dist-pspp"
+    chmod +x "$outdir/$base"
+done
 
-# Copy in scripts.
-cp gendocs.sh gendocs_template gendocs_template_min "$outdir/"
+# Copy in auxiliary files.
+mkdir "$outdir/build-aux"
+for base in gendocs.sh gendocs_template gendocs_template_min; do
+    cp "build-aux/$base" "$outdir/build-aux/"
+done
index 3d3f225a04d4f04f70e2f3cebc39e3c38c415c4a..81d42eabe88bdb1cae48e0d94c71043fee7c85cc 100644 (file)
@@ -1,29 +1,34 @@
 # -* autoconf -*-
 
-BP_INIT([dist-pspp.log])
+BP_INIT
 
-BP_SET_VAR([COMMIT], [@PSPP_COMMIT@])
+BP_INIT_RESULTS([source])
+BP_INIT_LOG([source/LOG])
+
+BP_SET_VAR([BUILD_NUMBER], [@BUILD_NUMBER@])
+BP_SET_VAR([PSPP_REPO], [@PSPP_REPO@])
+BP_SET_VAR([PSPP_BRANCH], [@PSPP_BRANCH@])
+BP_SET_VAR([PSPP_COMMIT], [@PSPP_COMMIT@])
 BP_SET_VAR([GNULIB_COMMIT], [@GNULIB_COMMIT@])
-BP_SET_VAR([BRANCH], [@BRANCH@])
+BP_SET_VAR([GNULIB_REPO], [@GNULIB_REPO@])
 
 ABBREV_COMMIT=`expr "$COMMIT" : '\(......\)'`
-BP_SET_VAR([ABBREV_COMMIT])
 
 BP_START_STEP([Extracting Git sources])
-tar xzf pspp-$COMMIT.tar.gz
+BP_RUN([(cd repo && zcat pspp-$PSPP_COMMIT.tar.gz | tar xf -) >&AS_MESSAGE_LOG_FD 2>&1])
 
 BP_START_STEP([Extract repository version number])
-(cd pspp-$COMMIT && autoconf -t AC_INIT) > tmp$$
-IFS=: read FILE LINE macro PACKAGE REPO_VERSION BUG_REPORT TARNAME URL < tmp$$
+BP_RUN([(cd repo/pspp-$PSPP_COMMIT && autoconf -t AC_INIT) >tmp$$ 2>&AS_MESSAGE_LOG_FD])
+BP_RUN([IFS=: read FILE LINE macro PACKAGE REPO_VERSION BUG_REPORT TARNAME URL <tmp$$ >&AS_MESSAGE_LOG_FD 2>&1])
+BP_RUN([rm tmp$$ >&AS_MESSAGE_LOG_FD 2>&1])
 BP_SET_VAR([REPO_VERSION])
 
 BP_START_STEP([Checking Automake mode])
-if grep gnits pspp-$COMMIT/Makefile.am >/dev/null 2>&1; then
+if grep gnits repo/pspp-$PSPP_COMMIT/Makefile.am >/dev/null 2>&1; then
   AM_MODE=gnits
 else
   AM_MODE=gnu
 fi
-BP_SET_VAR([AM_MODE])
 
 BP_START_STEP([Generate build version number])
 case $AM_MODE-$REPO_VERSION in # (
@@ -40,54 +45,55 @@ esac
 BP_SET_VAR([VERSION])
 
 BP_START_STEP([Update version number in configure.ac])
-echo "AC_INIT([[$PACKAGE], [$VERSION], [$BUG_REPORT], [$TARNAME], [$URL]])" > tmp$$
+AS_ECHO(["AC_INIT([$PACKAGE], [$VERSION], [$BUG_REPORT], [$TARNAME], [$URL])]") > tmp$$
 sed -n "${LINE}r tmp$$
-$LINE!p" < pspp-$COMMIT/$FILE > pspp-$COMMIT/$FILE.new
-mv pspp-$COMMIT/$FILE.new pspp-$COMMIT/$FILE
+$LINE!p" < repo/pspp-$PSPP_COMMIT/$FILE > repo/pspp-$PSPP_COMMIT/$FILE.new
+mv repo/pspp-$PSPP_COMMIT/$FILE.new repo/pspp-$PSPP_COMMIT/$FILE
 
 BP_START_STEP([Updating NEWS])
 {
-  sed -n '/^Changes/q;p' pspp-$COMMIT/NEWS
+  sed -n '/^Changes/q;p' repo/pspp-$PSPP_COMMIT/NEWS
 cat <<_BP_EOF
 Changes from $REPO_VERSION to $VERSION:
 
- * Built from PSPP commit $COMMIT
-   in branch $BRANCH on host `hostname`.
+ * Built from PSPP commit $PSPP_COMMIT
+   in branch $PSPP_BRANCH from repository $PSPP_REPO.
 
- * Built from Gnulib commit $GNULIB_COMMIT.
+ * Built from Gnulib commit $GNULIB_COMMIT
+   from repository $GNULIB_REPO.
 
 _BP_EOF
-  sed -n '/^Changes/,$p' pspp-$COMMIT/NEWS
+  sed -n '/^Changes/,$p' repo/pspp-$PSPP_COMMIT/NEWS
 } > NEWS.new
-mv NEWS.new pspp-$COMMIT/NEWS
+mv NEWS.new repo/pspp-$PSPP_COMMIT/NEWS
 
 BP_START_STEP([Extract Gnulib source])
-BP_RUN([tar xzf gnulib-$GNULIB_COMMIT.tar.gz >&AS_MESSAGE_LOG_FD 2>&1])
+BP_RUN([(cd repo && zcat gnulib-$GNULIB_COMMIT.tar.gz | tar xf -) >&AS_MESSAGE_LOG_FD 2>&1])
 
 BP_START_STEP([Bootstrap (make -f Smake)])
-BP_RUN([(cd pspp-$COMMIT && make -f Smake GNULIB=../gnulib-$GNULIB_COMMIT) >&AS_MESSAGE_LOG_FD 2>&1])
+BP_RUN([(cd repo/pspp-$PSPP_COMMIT && make -f Smake GNULIB=../gnulib-$GNULIB_COMMIT) >&AS_MESSAGE_LOG_FD 2>&1])
 
 BP_START_STEP([Configure])
-AS_MKDIR_P([pspp-$COMMIT/_build])
-BP_RUN([(cd pspp-$COMMIT/_build && ../configure @CONFIGUREFLAGS@) >&AS_MESSAGE_LOG_FD 2>&1])
+mkdir repo/pspp-$PSPP_COMMIT/_dist
+BP_RUN([(cd repo/pspp-$PSPP_COMMIT/_dist && ../configure @CONFIGUREFLAGS@) >&AS_MESSAGE_LOG_FD 2>&1])
 
 BP_START_STEP([Make source tarball])
-BP_RUN([(cd pspp-$COMMIT/_build && make dist) >&AS_MESSAGE_LOG_FD 2>&1])
-BP_MOVE_OUTPUT([source distribution], [pspp-$COMMIT/_build/pspp-$VERSION.tar.gz])
+BP_RUN([(cd repo/pspp-$PSPP_COMMIT/_dist && make dist) >&AS_MESSAGE_LOG_FD 2>&1])
+BP_MOVE_OUTPUT([source distribution], [repo/pspp-$PSPP_COMMIT/_dist/pspp-$VERSION.tar.gz])
 
-potfile=pspp-$COMMIT/_build/po/pspp.pot
+potfile=repo/pspp-$PSPP_COMMIT/_dist/po/pspp.pot
 if test ! -e $potfile; then
-  potfile=pspp-$COMMIT/po/pspp.pot
+  potfile=repo/pspp-$PSPP_COMMIT/po/pspp.pot
 fi
 BP_COPY_OUTPUT([translation templates], [$potfile])
 
 BP_START_STEP([Build user manual])
-BP_RUN([(cd pspp-$COMMIT && cp _build/doc/*.texi doc/) >&AS_MESSAGE_LOG_FD 2>&1])
-BP_RUN([(cd pspp-$COMMIT && GENDOCS_TEMPLATE_DIR=.. ../gendocs.sh -s doc/pspp.texinfo -o results/user-manual --email bug-gnu-pspp@gnu.org pspp "GNU PSPP User Manual") >&AS_MESSAGE_LOG_FD 2>&1])
-BP_OUTPUT([User Manual], [user-manual])
+BP_RUN([(cd repo/pspp-$PSPP_COMMIT && cp _dist/doc/*.texi doc/) >&AS_MESSAGE_LOG_FD 2>&1])
+BP_RUN([(cd repo/pspp-$PSPP_COMMIT && GENDOCS_TEMPLATE_DIR=../../build-aux ../../build-aux/gendocs.sh -s doc/pspp.texinfo -o BP_RESULTS_DIR/user-manual --email bug-gnu-pspp@gnu.org pspp "GNU PSPP User Manual") >&AS_MESSAGE_LOG_FD 2>&1])
+BP_OUTPUT([User Manual], [repo/user-manual])
 
 BP_START_STEP([Build developers guide])
-BP_RUN([(cd pspp-$COMMIT && GENDOCS_TEMPLATE_DIR=.. ../gendocs.sh -s doc/pspp-dev.texinfo -o results/dev-guide --email bug-gnu-pspp@gnu.org pspp-dev "GNU PSPP Developers Guide") >&AS_MESSAGE_LOG_FD 2>&1])
-BP_OUTPUT([Developers Guide], [dev-guide])
+BP_RUN([(cd repo/pspp-$PSPP_COMMIT && GENDOCS_TEMPLATE_DIR=../../build-aux ../../build-aux/gendocs.sh -s doc/pspp-dev.texinfo -o BP_RESULTS_DIR/dev-guide --email bug-gnu-pspp@gnu.org pspp-dev "GNU PSPP Developers Guide") >&AS_MESSAGE_LOG_FD 2>&1])
+BP_OUTPUT([Developers Guide], [repo/dev-guide])
 
 BP_FINISH
index 448d1e5e415eeb08d0c933fa15cc0311b5fa03f6..c6aaab634d1724057a80e7c0676dc76c237c2283 100755 (executable)
@@ -38,7 +38,6 @@ my (%vars) = read_vars ('VARS');
 
 my (@products);
 my (@steps);
-my ($new_page) = 0;
 my ($result) = "failure";
 my (%dist_files);
 my ($dist_dir);
@@ -47,13 +46,6 @@ while (<LOG>) {
     my $ln = $.;
     chomp;
 
-    if (/^\f$/) {
-       $new_page = 1;
-       @dirstack = ();
-       print LOG_HTML "</pre><hr><pre>\n";
-       next;
-    }
-
     if (/Entering directory `(.*)'$/) {
         push (@dirstack, $1);
     } elsif (/Leaving directory `(.*)'$/) {
@@ -61,10 +53,9 @@ while (<LOG>) {
     }
 
     my $log_class;
-    if ($new_page) {
-       $new_page = 0;
+    if (my ($title) = /^## (.*) ##$/) {
        $log_class = "step";
-       if (my ($name, $product) = /^Saving(?:\s+([^:]*):)?\s+(.*)$/) {
+       if (my ($name, $product) = $title =~ /^Saving(?:\s+([^:]*):)?\s+(.*)$/) {
            my $href = "$product/index.html";
            $href = $product if ! -e $href;
 
@@ -88,13 +79,14 @@ while (<LOG>) {
                }
                close (DIST);
            }
-       } else {
+       } elsif ($title eq 'Success') {
+           $result = 'success';
+       } elsif ($title !~ /^-+$/) {
            my (%s);
-           $s{TITLE} = $_;
+           $s{TITLE} = $title;
            $s{LN} = $ln;
            push (@steps, \%s);
        }
-       $result = 'success' if $_ eq 'Success';
     } else {
        if (my ($diagnostic) = /(error|warning):/i) {
            my (%d);