ccaa2ac97b
Changes since 4.6: 4.7 (9 April 2004) * Language: . new commands @float, @caption, @shortcaption, @listoffloats for initial implementation of floating material (figures, tables, etc). Ironically, they do not yet actually float anywhere. . new commands @docbook, @ifdocbook, @ifnotdocbook for conditional Docbook. . new commands @ordf{} and @ordm{} for Spanish feminine/masculine ordinals. . new commands @deftypecv[x] for class variables in typed OO languages. . new command @registeredsymbol for the r-in-a-circle symbol. . new command @headitem to make a heading row in @multitable. . new command @LaTeX{} for the LaTeX logo. . new command @comma{} to avoid comma-parsing problems. . @url is now a synonym for @uref; new command @indicateurl has the old meaning of just displaying a url as text. . @quotation now accepts an optional argument for labelling the text as a `Note', `Tip', etc. . @defun (et al.) heading lines can now be continued with a lone @. . @acronym accepts an optional argument for the meaning of the acronym. * makeinfo: . New environment variable TEXINFO_OUTPUT_FORMAT determines the output format at runtime, if no options are specified. . New option --plaintext, equivalent to --no-headers with Info output. . All outputs: - sections are numbered by default. . Info output: - punctuation is inserted after @pxref and @ref, if needed to make cross-references valid. - line numbers included in index menus, so Info readers can go to the exact line of an entry, not just a node. Also in plaintext output. - ^@^H[index^@^H] cookie included in index menus, so Info readers can handle the ] etc. commands better. . HTML output: - new algorithm for cross-references to other manuals, for maximum portability and stability. - include node name in <title> with split output. - @multicolumn fractions become percentages. - entities used for bullets, quotes, dashes, and others. - index entries are links to the exact locations. - <h4> and <h5> used for @sub and @subsubsections again. - accented dotless i supported. . XML output: many new tags and structure to preserve more source features. . Docbook output: - upgraded DTD to Docbook XML 4.2, no longer using Docbook SGML. - improved translation in general, for instance: - line annotations and marked quotations. * texi2dvi: . if available, use etex (pdfetex if --pdf) by default. . if the input file includes thumbpdf.sty (for LaTeX), then run thumbpdf. . more output if --debug. * texinfo.tex: . @defun names are now printed in typewriter (instead of bold), and within the arguments, @var text is printed in slanted typewriter. . @tex code is executed inside a TeX group, so that any changes must be prefixed with \global (or the equivalent) to be effective. (This change was actually made years ago, but never made it into the NEWS.) * info: . new option --where (aka --location, -w) to report where an Info file would be found, instead of reading it. . by default, output ANSI terminal escape sequences as-is; new option --no-raw-escapes overrides this. . use the newly-generated index line numbers. * Distribution: . new script gendocs.sh (not installed), for use by GNU maintainers in getting their manuals on the GNU web site. Documented in maintain.texi (http://www.gnu.org/prep/maintain_toc.html). . Most code uses ANSI C prototypes, to some extent. . New translation: nb. . automake 1.8.3, autoconf 2.59, gettext 0.14.1.
361 lines
10 KiB
Bash
Executable File
361 lines
10 KiB
Bash
Executable File
#! /bin/sh
|
|
# Common stub for a few missing GNU programs while installing.
|
|
|
|
scriptversion=2003-09-02.23
|
|
|
|
# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003
|
|
# Free Software Foundation, Inc.
|
|
# Originally by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
|
|
|
|
# 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 2, 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, write to the Free Software
|
|
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
|
# 02111-1307, USA.
|
|
|
|
# As a special exception to the GNU General Public License, if you
|
|
# distribute this file as part of a program that contains a
|
|
# configuration script generated by Autoconf, you may include it under
|
|
# the same distribution terms that you use for the rest of that program.
|
|
|
|
if test $# -eq 0; then
|
|
echo 1>&2 "Try \`$0 --help' for more information"
|
|
exit 1
|
|
fi
|
|
|
|
run=:
|
|
|
|
# In the cases where this matters, `missing' is being run in the
|
|
# srcdir already.
|
|
if test -f configure.ac; then
|
|
configure_ac=configure.ac
|
|
else
|
|
configure_ac=configure.in
|
|
fi
|
|
|
|
msg="missing on your system"
|
|
|
|
case "$1" in
|
|
--run)
|
|
# Try to run requested program, and just exit if it succeeds.
|
|
run=
|
|
shift
|
|
"$@" && exit 0
|
|
# Exit code 63 means version mismatch. This often happens
|
|
# when the user try to use an ancient version of a tool on
|
|
# a file that requires a minimum version. In this case we
|
|
# we should proceed has if the program had been absent, or
|
|
# if --run hadn't been passed.
|
|
if test $? = 63; then
|
|
run=:
|
|
msg="probably too old"
|
|
fi
|
|
;;
|
|
esac
|
|
|
|
# If it does not exist, or fails to run (possibly an outdated version),
|
|
# try to emulate it.
|
|
case "$1" in
|
|
|
|
-h|--h|--he|--hel|--help)
|
|
echo "\
|
|
$0 [OPTION]... PROGRAM [ARGUMENT]...
|
|
|
|
Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an
|
|
error status if there is no known handling for PROGRAM.
|
|
|
|
Options:
|
|
-h, --help display this help and exit
|
|
-v, --version output version information and exit
|
|
--run try to run the given command, and emulate it if it fails
|
|
|
|
Supported PROGRAM values:
|
|
aclocal touch file \`aclocal.m4'
|
|
autoconf touch file \`configure'
|
|
autoheader touch file \`config.h.in'
|
|
automake touch all \`Makefile.in' files
|
|
bison create \`y.tab.[ch]', if possible, from existing .[ch]
|
|
flex create \`lex.yy.c', if possible, from existing .c
|
|
help2man touch the output file
|
|
lex create \`lex.yy.c', if possible, from existing .c
|
|
makeinfo touch the output file
|
|
tar try tar, gnutar, gtar, then tar without non-portable flags
|
|
yacc create \`y.tab.[ch]', if possible, from existing .[ch]
|
|
|
|
Send bug reports to <bug-automake@gnu.org>."
|
|
;;
|
|
|
|
-v|--v|--ve|--ver|--vers|--versi|--versio|--version)
|
|
echo "missing $scriptversion (GNU Automake)"
|
|
;;
|
|
|
|
-*)
|
|
echo 1>&2 "$0: Unknown \`$1' option"
|
|
echo 1>&2 "Try \`$0 --help' for more information"
|
|
exit 1
|
|
;;
|
|
|
|
aclocal*)
|
|
if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
|
|
# We have it, but it failed.
|
|
exit 1
|
|
fi
|
|
|
|
echo 1>&2 "\
|
|
WARNING: \`$1' is $msg. You should only need it if
|
|
you modified \`acinclude.m4' or \`${configure_ac}'. You might want
|
|
to install the \`Automake' and \`Perl' packages. Grab them from
|
|
any GNU archive site."
|
|
touch aclocal.m4
|
|
;;
|
|
|
|
autoconf)
|
|
if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
|
|
# We have it, but it failed.
|
|
exit 1
|
|
fi
|
|
|
|
echo 1>&2 "\
|
|
WARNING: \`$1' is $msg. You should only need it if
|
|
you modified \`${configure_ac}'. You might want to install the
|
|
\`Autoconf' and \`GNU m4' packages. Grab them from any GNU
|
|
archive site."
|
|
touch configure
|
|
;;
|
|
|
|
autoheader)
|
|
if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
|
|
# We have it, but it failed.
|
|
exit 1
|
|
fi
|
|
|
|
echo 1>&2 "\
|
|
WARNING: \`$1' is $msg. You should only need it if
|
|
you modified \`acconfig.h' or \`${configure_ac}'. You might want
|
|
to install the \`Autoconf' and \`GNU m4' packages. Grab them
|
|
from any GNU archive site."
|
|
files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}`
|
|
test -z "$files" && files="config.h"
|
|
touch_files=
|
|
for f in $files; do
|
|
case "$f" in
|
|
*:*) touch_files="$touch_files "`echo "$f" |
|
|
sed -e 's/^[^:]*://' -e 's/:.*//'`;;
|
|
*) touch_files="$touch_files $f.in";;
|
|
esac
|
|
done
|
|
touch $touch_files
|
|
;;
|
|
|
|
automake*)
|
|
if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
|
|
# We have it, but it failed.
|
|
exit 1
|
|
fi
|
|
|
|
echo 1>&2 "\
|
|
WARNING: \`$1' is $msg. You should only need it if
|
|
you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'.
|
|
You might want to install the \`Automake' and \`Perl' packages.
|
|
Grab them from any GNU archive site."
|
|
find . -type f -name Makefile.am -print |
|
|
sed 's/\.am$/.in/' |
|
|
while read f; do touch "$f"; done
|
|
;;
|
|
|
|
autom4te)
|
|
if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
|
|
# We have it, but it failed.
|
|
exit 1
|
|
fi
|
|
|
|
echo 1>&2 "\
|
|
WARNING: \`$1' is needed, but is $msg.
|
|
You might have modified some files without having the
|
|
proper tools for further handling them.
|
|
You can get \`$1' as part of \`Autoconf' from any GNU
|
|
archive site."
|
|
|
|
file=`echo "$*" | sed -n 's/.*--output[ =]*\([^ ]*\).*/\1/p'`
|
|
test -z "$file" && file=`echo "$*" | sed -n 's/.*-o[ ]*\([^ ]*\).*/\1/p'`
|
|
if test -f "$file"; then
|
|
touch $file
|
|
else
|
|
test -z "$file" || exec >$file
|
|
echo "#! /bin/sh"
|
|
echo "# Created by GNU Automake missing as a replacement of"
|
|
echo "# $ $@"
|
|
echo "exit 0"
|
|
chmod +x $file
|
|
exit 1
|
|
fi
|
|
;;
|
|
|
|
bison|yacc)
|
|
echo 1>&2 "\
|
|
WARNING: \`$1' $msg. You should only need it if
|
|
you modified a \`.y' file. You may need the \`Bison' package
|
|
in order for those modifications to take effect. You can get
|
|
\`Bison' from any GNU archive site."
|
|
rm -f y.tab.c y.tab.h
|
|
if [ $# -ne 1 ]; then
|
|
eval LASTARG="\${$#}"
|
|
case "$LASTARG" in
|
|
*.y)
|
|
SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`
|
|
if [ -f "$SRCFILE" ]; then
|
|
cp "$SRCFILE" y.tab.c
|
|
fi
|
|
SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'`
|
|
if [ -f "$SRCFILE" ]; then
|
|
cp "$SRCFILE" y.tab.h
|
|
fi
|
|
;;
|
|
esac
|
|
fi
|
|
if [ ! -f y.tab.h ]; then
|
|
echo >y.tab.h
|
|
fi
|
|
if [ ! -f y.tab.c ]; then
|
|
echo 'main() { return 0; }' >y.tab.c
|
|
fi
|
|
;;
|
|
|
|
lex|flex)
|
|
echo 1>&2 "\
|
|
WARNING: \`$1' is $msg. You should only need it if
|
|
you modified a \`.l' file. You may need the \`Flex' package
|
|
in order for those modifications to take effect. You can get
|
|
\`Flex' from any GNU archive site."
|
|
rm -f lex.yy.c
|
|
if [ $# -ne 1 ]; then
|
|
eval LASTARG="\${$#}"
|
|
case "$LASTARG" in
|
|
*.l)
|
|
SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`
|
|
if [ -f "$SRCFILE" ]; then
|
|
cp "$SRCFILE" lex.yy.c
|
|
fi
|
|
;;
|
|
esac
|
|
fi
|
|
if [ ! -f lex.yy.c ]; then
|
|
echo 'main() { return 0; }' >lex.yy.c
|
|
fi
|
|
;;
|
|
|
|
help2man)
|
|
if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
|
|
# We have it, but it failed.
|
|
exit 1
|
|
fi
|
|
|
|
echo 1>&2 "\
|
|
WARNING: \`$1' is $msg. You should only need it if
|
|
you modified a dependency of a manual page. You may need the
|
|
\`Help2man' package in order for those modifications to take
|
|
effect. You can get \`Help2man' from any GNU archive site."
|
|
|
|
file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'`
|
|
if test -z "$file"; then
|
|
file=`echo "$*" | sed -n 's/.*--output=\([^ ]*\).*/\1/p'`
|
|
fi
|
|
if [ -f "$file" ]; then
|
|
touch $file
|
|
else
|
|
test -z "$file" || exec >$file
|
|
echo ".ab help2man is required to generate this page"
|
|
exit 1
|
|
fi
|
|
;;
|
|
|
|
makeinfo)
|
|
if test -z "$run" && (makeinfo --version) > /dev/null 2>&1; then
|
|
# We have makeinfo, but it failed.
|
|
exit 1
|
|
fi
|
|
|
|
echo 1>&2 "\
|
|
WARNING: \`$1' is $msg. You should only need it if
|
|
you modified a \`.texi' or \`.texinfo' file, or any other file
|
|
indirectly affecting the aspect of the manual. The spurious
|
|
call might also be the consequence of using a buggy \`make' (AIX,
|
|
DU, IRIX). You might want to install the \`Texinfo' package or
|
|
the \`GNU make' package. Grab either from any GNU archive site."
|
|
file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'`
|
|
if test -z "$file"; then
|
|
file=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
|
|
file=`sed -n '/^@setfilename/ { s/.* \([^ ]*\) *$/\1/; p; q; }' $file`
|
|
fi
|
|
touch $file
|
|
;;
|
|
|
|
tar)
|
|
shift
|
|
if test -n "$run"; then
|
|
echo 1>&2 "ERROR: \`tar' requires --run"
|
|
exit 1
|
|
fi
|
|
|
|
# We have already tried tar in the generic part.
|
|
# Look for gnutar/gtar before invocation to avoid ugly error
|
|
# messages.
|
|
if (gnutar --version > /dev/null 2>&1); then
|
|
gnutar "$@" && exit 0
|
|
fi
|
|
if (gtar --version > /dev/null 2>&1); then
|
|
gtar "$@" && exit 0
|
|
fi
|
|
firstarg="$1"
|
|
if shift; then
|
|
case "$firstarg" in
|
|
*o*)
|
|
firstarg=`echo "$firstarg" | sed s/o//`
|
|
tar "$firstarg" "$@" && exit 0
|
|
;;
|
|
esac
|
|
case "$firstarg" in
|
|
*h*)
|
|
firstarg=`echo "$firstarg" | sed s/h//`
|
|
tar "$firstarg" "$@" && exit 0
|
|
;;
|
|
esac
|
|
fi
|
|
|
|
echo 1>&2 "\
|
|
WARNING: I can't seem to be able to run \`tar' with the given arguments.
|
|
You may want to install GNU tar or Free paxutils, or check the
|
|
command line arguments."
|
|
exit 1
|
|
;;
|
|
|
|
*)
|
|
echo 1>&2 "\
|
|
WARNING: \`$1' is needed, and is $msg.
|
|
You might have modified some files without having the
|
|
proper tools for further handling them. Check the \`README' file,
|
|
it often tells you about the needed prerequisites for installing
|
|
this package. You may also peek at any GNU archive site, in case
|
|
some other package would contain this missing \`$1' program."
|
|
exit 1
|
|
;;
|
|
esac
|
|
|
|
exit 0
|
|
|
|
# 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:
|