2 # Common stub for a few missing GNU programs while installing.
3 # Copyright (C) 1996, 1997, 1999, 2000 Free Software Foundation, Inc.
4 # Originally by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
6 # This program is free software; you can redistribute it and/or modify
7 # it under the terms of the GNU General Public License as published by
8 # the Free Software Foundation; either version 2, or (at your option)
11 # This program is distributed in the hope that it will be useful,
12 # but WITHOUT ANY WARRANTY; without even the implied warranty of
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 # GNU General Public License for more details.
16 # You should have received a copy of the GNU General Public License
17 # along with this program; if not, write to the Free Software
18 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
21 if test $# -eq 0; then
22 echo 1>&2 "Try \`$0 --help' for more information"
30 # Try to run requested program, and just exit if it succeeds.
37 # If it does not exist, or fails to run (possibly an outdated version),
41 -h|
--h|
--he|
--hel|
--help)
43 $0 [OPTION]... PROGRAM [ARGUMENT]...
45 Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an
46 error status if there is no known handling for PROGRAM.
49 -h, --help display this help and exit
50 -v, --version output version information and exit
51 --run try to run the given command, and emulate it if it fails
53 Supported PROGRAM values:
54 aclocal touch file \`aclocal.m4'
55 autoconf touch file \`configure'
56 autoheader touch file \`config.h.in'
57 automake touch all \`Makefile.in' files
58 bison create \`y.tab.[ch]', if possible, from existing .[ch]
59 flex create \`lex.yy.c', if possible, from existing .c
60 help2man touch the output file
61 lex create \`lex.yy.c', if possible, from existing .c
62 makeinfo touch the output file
63 tar try tar, gnutar, gtar, then tar without non-portable flags
64 yacc create \`y.tab.[ch]', if possible, from existing .[ch]"
67 -v|
--v|
--ve|
--ver|
--vers|
--versi|
--versio|
--version)
68 echo "missing 0.3 - GNU automake"
72 echo 1>&2 "$0: Unknown \`$1' option"
73 echo 1>&2 "Try \`$0 --help' for more information"
79 WARNING: \`$1' is missing on your system. You should only need it if
80 you modified \`acinclude.m4' or \`configure.in'. You might want
81 to install the \`Automake' and \`Perl' packages. Grab them from
82 any GNU archive site."
88 WARNING: \`$1' is missing on your system. You should only need it if
89 you modified \`configure.in'. You might want to install the
90 \`Autoconf' and \`GNU m4' packages. Grab them from any GNU
97 WARNING: \`$1' is missing on your system. You should only need it if
98 you modified \`acconfig.h' or \`configure.in'. You might want
99 to install the \`Autoconf' and \`GNU m4' packages. Grab them
100 from any GNU archive site."
101 files
=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' configure.in`
102 test -z "$files" && files
="config.h"
106 *:*) touch_files
="$touch_files "`echo "$f" |
107 sed -e 's/^[^:]*://' -e 's/:.*//'`;;
108 *) touch_files
="$touch_files $f.in";;
116 WARNING: \`$1' is missing on your system. You should only need it if
117 you modified \`Makefile.am', \`acinclude.m4' or \`configure.in'.
118 You might want to install the \`Automake' and \`Perl' packages.
119 Grab them from any GNU archive site."
120 find .
-type f
-name Makefile.am
-print |
122 while read f
; do touch "$f"; done
127 WARNING: \`$1' is missing on your system. You should only need it if
128 you modified a \`.y' file. You may need the \`Bison' package
129 in order for those modifications to take effect. You can get
130 \`Bison' from any GNU archive site."
131 rm -f y.tab.c y.tab.h
132 if [ $# -ne 1 ]; then
133 eval LASTARG
="\${$#}"
136 SRCFILE
=`echo "$LASTARG" | sed 's/y$/c/'`
137 if [ -f "$SRCFILE" ]; then
138 cp "$SRCFILE" y.tab.c
140 SRCFILE
=`echo "$LASTARG" | sed 's/y$/h/'`
141 if [ -f "$SRCFILE" ]; then
142 cp "$SRCFILE" y.tab.h
147 if [ ! -f y.tab.h
]; then
150 if [ ! -f y.tab.c
]; then
151 echo 'main() { return 0; }' >y.tab.c
157 WARNING: \`$1' is missing on your system. You should only need it if
158 you modified a \`.l' file. You may need the \`Flex' package
159 in order for those modifications to take effect. You can get
160 \`Flex' from any GNU archive site."
162 if [ $# -ne 1 ]; then
163 eval LASTARG
="\${$#}"
166 SRCFILE
=`echo "$LASTARG" | sed 's/l$/c/'`
167 if [ -f "$SRCFILE" ]; then
168 cp "$SRCFILE" lex.yy.c
173 if [ ! -f lex.yy.c
]; then
174 echo 'main() { return 0; }' >lex.yy.c
180 WARNING: \`$1' is missing on your system. You should only need it if
181 you modified a dependency of a manual page. You may need the
182 \`Help2man' package in order for those modifications to take
183 effect. You can get \`Help2man' from any GNU archive site."
185 file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'`
186 if test -z "$file"; then
187 file=`echo "$*" | sed -n 's/.*--output=\([^ ]*\).*/\1/p'`
189 if [ -f "$file" ]; then
192 test -z "$file" ||
exec >$file
193 echo ".ab help2man is required to generate this page"
200 WARNING: \`$1' is missing on your system. You should only need it if
201 you modified a \`.texi' or \`.texinfo' file, or any other file
202 indirectly affecting the aspect of the manual. The spurious
203 call might also be the consequence of using a buggy \`make' (AIX,
204 DU, IRIX). You might want to install the \`Texinfo' package or
205 the \`GNU make' package. Grab either from any GNU archive site."
206 file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'`
207 if test -z "$file"; then
208 file=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
209 file=`sed -n '/^@setfilename/ { s/.* \([^ ]*\) *$/\1/; p; q; }' $file`
216 if test -n "$run"; then
217 echo 1>&2 "ERROR: \`tar' requires --run"
221 # We have already tried tar in the generic part.
222 # Look for gnutar/gtar before invocation to avoid ugly error
224 if (gnutar
--version > /dev
/null
2>&1); then
225 gnutar
${1+"$@"} && exit 0
227 if (gtar
--version > /dev
/null
2>&1); then
228 gtar
${1+"$@"} && exit 0
234 firstarg
=`echo "$firstarg" | sed s/o//`
235 tar "$firstarg" ${1+"$@"} && exit 0
240 firstarg
=`echo "$firstarg" | sed s/h//`
241 tar "$firstarg" ${1+"$@"} && exit 0
247 WARNING: I can't seem to be able to run \`tar' with the given arguments.
248 You may want to install GNU tar or Free paxutils, or check the
249 command line arguments."
255 WARNING: \`$1' is needed, and you do not seem to have it handy on your
256 system. You might have modified some files without having the
257 proper tools for further handling them. Check the \`README' file,
258 it often tells you about the needed prerequirements for installing
259 this package. You may also peek at any GNU archive site, in case
260 some other package would contain this missing \`$1' program."