missing revision a747113422afaa29ce72d2c5ba7f0b7ea9ec2054
0N/A#! /bin/sh
228N/A# Common stub for a few missing GNU programs while installing.
0N/A
0N/Ascriptversion=2012-01-06.18; # UTC
0N/A
0N/A# Copyright (C) 1996-2012 Free Software Foundation, Inc.
0N/A# Originally by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
0N/A
0N/A# This program is free software; you can redistribute it and/or modify
0N/A# it under the terms of the GNU General Public License as published by
0N/A# the Free Software Foundation; either version 2, or (at your option)
0N/A# any later version.
0N/A
0N/A# This program is distributed in the hope that it will be useful,
0N/A# but WITHOUT ANY WARRANTY; without even the implied warranty of
0N/A# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
0N/A# GNU General Public License for more details.
0N/A
0N/A# You should have received a copy of the GNU General Public License
0N/A# along with this program. If not, see <http://www.gnu.org/licenses/>.
0N/A
0N/A# As a special exception to the GNU General Public License, if you
0N/A# distribute this file as part of a program that contains a
0N/A# configuration script generated by Autoconf, you may include it under
0N/A# the same distribution terms that you use for the rest of that program.
0N/A
0N/Aif test $# -eq 0; then
0N/A echo 1>&2 "Try '$0 --help' for more information"
0N/A exit 1
0N/Afi
0N/A
0N/Arun=:
0N/Ased_output='s/.* --output[ =]\([^ ]*\).*/\1/p'
0N/Ased_minuso='s/.* -o \([^ ]*\).*/\1/p'
285N/A
285N/A# In the cases where this matters, 'missing' is being run in the
0N/A# srcdir already.
0N/Aif test -f configure.ac; then
0N/A configure_ac=configure.ac
0N/Aelse
0N/A configure_ac=configure.in
0N/Afi
0N/A
0N/Amsg="missing on your system"
0N/A
0N/Acase $1 in
0N/A--run)
0N/A # Try to run requested program, and just exit if it succeeds.
0N/A run=
0N/A shift
0N/A "$@" && exit 0
0N/A # Exit code 63 means version mismatch. This often happens
0N/A # when the user try to use an ancient version of a tool on
0N/A # a file that requires a minimum version. In this case we
0N/A # we should proceed has if the program had been absent, or
0N/A # if --run hadn't been passed.
0N/A if test $? = 63; then
0N/A run=:
0N/A msg="probably too old"
0N/A fi
0N/A ;;
0N/A
331N/A -h|--h|--he|--hel|--help)
331N/A echo "\
0N/A$0 [OPTION]... PROGRAM [ARGUMENT]...
0N/A
0N/AHandle 'PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an
0N/Aerror status if there is no known handling for PROGRAM.
0N/A
0N/AOptions:
330N/A -h, --help display this help and exit
0N/A -v, --version output version information and exit
0N/A --run try to run the given command, and emulate it if it fails
0N/A
0N/ASupported PROGRAM values:
0N/A aclocal touch file 'aclocal.m4'
0N/A autoconf touch file 'configure'
0N/A autoheader touch file 'config.h.in'
0N/A autom4te touch the output file, or create a stub one
0N/A automake touch all 'Makefile.in' files
0N/A bison create 'y.tab.[ch]', if possible, from existing .[ch]
0N/A flex create 'lex.yy.c', if possible, from existing .c
0N/A help2man touch the output file
0N/A lex create 'lex.yy.c', if possible, from existing .c
0N/A makeinfo touch the output file
0N/A yacc create 'y.tab.[ch]', if possible, from existing .[ch]
0N/A
0N/AVersion suffixes to PROGRAM as well as the prefixes 'gnu-', 'gnu', and
0N/A'g' are ignored when checking the name.
0N/A
0N/ASend bug reports to <bug-automake@gnu.org>."
0N/A exit $?
0N/A ;;
0N/A
0N/A -v|--v|--ve|--ver|--vers|--versi|--versio|--version)
0N/A echo "missing $scriptversion (GNU Automake)"
0N/A exit $?
0N/A ;;
0N/A
0N/A -*)
0N/A echo 1>&2 "$0: Unknown '$1' option"
0N/A echo 1>&2 "Try '$0 --help' for more information"
0N/A exit 1
0N/A ;;
0N/A
0N/Aesac
0N/A
0N/A# normalize program name to check for.
0N/Aprogram=`echo "$1" | sed '
0N/A s/^gnu-//; t
0N/A s/^gnu//; t
0N/A s/^g//; t'`
0N/A
0N/A# Now exit if we have it, but it failed. Also exit now if we
0N/A# don't have it and --version was passed (most likely to detect
0N/A# the program). This is about non-GNU programs, so use $1 not
0N/A# $program.
0N/Acase $1 in
0N/A lex*|yacc*)
0N/A # Not GNU programs, they don't have --version.
0N/A ;;
0N/A
0N/A *)
0N/A if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
45N/A # We have it, but it failed.
45N/A exit 1
0N/A elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
0N/A # Could not run --version or --help. This is probably someone
0N/A # running '$TOOL --version' or '$TOOL --help' to check whether
0N/A # $TOOL exists and not knowing $TOOL uses missing.
0N/A exit 1
0N/A fi
0N/A ;;
0N/Aesac
0N/A
0N/A# If it does not exist, or fails to run (possibly an outdated version),
0N/A# try to emulate it.
0N/Acase $program in
0N/A aclocal*)
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*)
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*)
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*)
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*)
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 "$sed_output"`
test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
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 test $# -ne 1; then
eval LASTARG=\${$#}
case $LASTARG in
*.y)
SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`
if test -f "$SRCFILE"; then
cp "$SRCFILE" y.tab.c
fi
SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'`
if test -f "$SRCFILE"; then
cp "$SRCFILE" y.tab.h
fi
;;
esac
fi
if test ! -f y.tab.h; then
echo >y.tab.h
fi
if test ! -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 test $# -ne 1; then
eval LASTARG=\${$#}
case $LASTARG in
*.l)
SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`
if test -f "$SRCFILE"; then
cp "$SRCFILE" lex.yy.c
fi
;;
esac
fi
if test ! -f lex.yy.c; then
echo 'main() { return 0; }' >lex.yy.c
fi
;;
help2man*)
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 "$sed_output"`
test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
if test -f "$file"; then
touch $file
else
test -z "$file" || exec >$file
echo ".ab help2man is required to generate this page"
exit $?
fi
;;
makeinfo*)
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."
# The file to touch is that specified with -o ...
file=`echo "$*" | sed -n "$sed_output"`
test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
if test -z "$file"; then
# ... or it is the one specified with @setfilename ...
infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
file=`sed -n '
/^@setfilename/{
s/.* \([^ ]*\) *$/\1/
p
q
}' $infile`
# ... or it is derived from the source name (dir/f.texi becomes f.info)
test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info
fi
# If the file does not exist, the user really needs makeinfo;
# let's fail without touching anything.
test -f $file || exit 1
touch $file
;;
*)
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-time-zone: "UTC"
# time-stamp-end: "; # UTC"
# End: