2
2
# Common stub for a few missing GNU programs while installing.
3
# Copyright (C) 1996, 1997, 1999, 2000, 2002 Free Software Foundation, Inc.
4
scriptversion=2006-05-10.23
6
# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006
7
# Free Software Foundation, Inc.
4
8
# Originally by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
6
10
# This program is free software; you can redistribute it and/or modify
7
11
# 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)
12
# the Free Software Foundation; either version 3, or (at your option)
9
13
# any later version.
11
15
# This program is distributed in the hope that it will be useful,
14
18
# GNU General Public License for more details.
16
20
# 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
# along with this program; if not, see <http://www.gnu.org/licenses/>.
21
23
# As a special exception to the GNU General Public License, if you
22
24
# distribute this file as part of a program that contains a
38
42
configure_ac=configure.in
45
msg="missing on your system"
43
49
# Try to run requested program, and just exit if it succeeds.
53
# Exit code 63 means version mismatch. This often happens
54
# when the user try to use an ancient version of a tool on
55
# a file that requires a minimum version. In this case we
56
# we should proceed has if the program had been absent, or
57
# if --run hadn't been passed.
60
msg="probably too old"
50
# If it does not exist, or fails to run (possibly an outdated version),
54
64
-h|--h|--he|--hel|--help)
67
77
aclocal touch file \`aclocal.m4'
68
78
autoconf touch file \`configure'
69
79
autoheader touch file \`config.h.in'
80
autom4te touch the output file, or create a stub one
70
81
automake touch all \`Makefile.in' files
71
82
bison create \`y.tab.[ch]', if possible, from existing .[ch]
72
83
flex create \`lex.yy.c', if possible, from existing .c
74
85
lex create \`lex.yy.c', if possible, from existing .c
75
86
makeinfo touch the output file
76
87
tar try tar, gnutar, gtar, then tar without non-portable flags
77
yacc create \`y.tab.[ch]', if possible, from existing .[ch]"
88
yacc create \`y.tab.[ch]', if possible, from existing .[ch]
90
Send bug reports to <bug-automake@gnu.org>."
80
94
-v|--v|--ve|--ver|--vers|--versi|--versio|--version)
81
echo "missing 0.4 - GNU automake"
95
echo "missing $scriptversion (GNU Automake)"
107
# Now exit if we have it, but it failed. Also exit now if we
108
# don't have it and --version was passed (most likely to detect
112
# Not GNU programs, they don't have --version.
116
if test -n "$run"; then
117
echo 1>&2 "ERROR: \`tar' requires --run"
119
elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
125
if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
126
# We have it, but it failed.
128
elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
129
# Could not run --version or --help. This is probably someone
130
# running `$TOOL --version' or `$TOOL --help' to check whether
131
# $TOOL exists and not knowing $TOOL uses missing.
137
# If it does not exist, or fails to run (possibly an outdated version),
91
if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
92
# We have it, but it failed.
97
WARNING: \`$1' is missing on your system. You should only need it if
142
WARNING: \`$1' is $msg. You should only need it if
98
143
you modified \`acinclude.m4' or \`${configure_ac}'. You might want
99
144
to install the \`Automake' and \`Perl' packages. Grab them from
100
145
any GNU archive site."
105
if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
106
# We have it, but it failed.
111
WARNING: \`$1' is missing on your system. You should only need it if
151
WARNING: \`$1' is $msg. You should only need it if
112
152
you modified \`${configure_ac}'. You might want to install the
113
153
\`Autoconf' and \`GNU m4' packages. Grab them from any GNU
119
if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
120
# We have it, but it failed.
125
WARNING: \`$1' is missing on your system. You should only need it if
160
WARNING: \`$1' is $msg. You should only need it if
126
161
you modified \`acconfig.h' or \`${configure_ac}'. You might want
127
162
to install the \`Autoconf' and \`GNU m4' packages. Grab them
128
163
from any GNU archive site."
143
if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
144
# We have it, but it failed.
149
WARNING: \`$1' is missing on your system. You should only need it if
179
WARNING: \`$1' is $msg. You should only need it if
150
180
you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'.
151
181
You might want to install the \`Automake' and \`Perl' packages.
152
182
Grab them from any GNU archive site."
159
if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
160
# We have it, but it failed.
165
WARNING: \`$1' is needed, and you do not seem to have it handy on your
166
system. You might have modified some files without having the
190
WARNING: \`$1' is needed, but is $msg.
191
You might have modified some files without having the
167
192
proper tools for further handling them.
168
You can get \`$1Help2man' as part of \`Autoconf' from any GNU
193
You can get \`$1' as part of \`Autoconf' from any GNU
171
file=`echo "$*" | sed -n 's/.*--output[ =]*\([^ ]*\).*/\1/p'`
172
test -z "$file" && file=`echo "$*" | sed -n 's/.*-o[ ]*\([^ ]*\).*/\1/p'`
196
file=`echo "$*" | sed -n "$sed_output"`
197
test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
173
198
if test -f "$file"; then
188
WARNING: \`$1' is missing on your system. You should only need it if
213
WARNING: \`$1' $msg. You should only need it if
189
214
you modified a \`.y' file. You may need the \`Bison' package
190
215
in order for those modifications to take effect. You can get
191
216
\`Bison' from any GNU archive site."
192
217
rm -f y.tab.c y.tab.h
193
if [ $# -ne 1 ]; then
218
if test $# -ne 1; then
194
219
eval LASTARG="\${$#}"
197
222
SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`
198
if [ -f "$SRCFILE" ]; then
223
if test -f "$SRCFILE"; then
199
224
cp "$SRCFILE" y.tab.c
201
226
SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'`
202
if [ -f "$SRCFILE" ]; then
227
if test -f "$SRCFILE"; then
203
228
cp "$SRCFILE" y.tab.h
208
if [ ! -f y.tab.h ]; then
233
if test ! -f y.tab.h; then
211
if [ ! -f y.tab.c ]; then
236
if test ! -f y.tab.c; then
212
237
echo 'main() { return 0; }' >y.tab.c
218
WARNING: \`$1' is missing on your system. You should only need it if
243
WARNING: \`$1' is $msg. You should only need it if
219
244
you modified a \`.l' file. You may need the \`Flex' package
220
245
in order for those modifications to take effect. You can get
221
246
\`Flex' from any GNU archive site."
223
if [ $# -ne 1 ]; then
248
if test $# -ne 1; then
224
249
eval LASTARG="\${$#}"
227
252
SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`
228
if [ -f "$SRCFILE" ]; then
253
if test -f "$SRCFILE"; then
229
254
cp "$SRCFILE" lex.yy.c
234
if [ ! -f lex.yy.c ]; then
259
if test ! -f lex.yy.c; then
235
260
echo 'main() { return 0; }' >lex.yy.c
240
if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
241
# We have it, but it failed.
246
WARNING: \`$1' is missing on your system. You should only need it if
266
WARNING: \`$1' is $msg. You should only need it if
247
267
you modified a dependency of a manual page. You may need the
248
268
\`Help2man' package in order for those modifications to take
249
269
effect. You can get \`Help2man' from any GNU archive site."
251
file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'`
252
if test -z "$file"; then
253
file=`echo "$*" | sed -n 's/.*--output=\([^ ]*\).*/\1/p'`
255
if [ -f "$file" ]; then
271
file=`echo "$*" | sed -n "$sed_output"`
272
test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
273
if test -f "$file"; then
258
276
test -z "$file" || exec >$file
265
if test -z "$run" && (makeinfo --version) > /dev/null 2>&1; then
266
# We have makeinfo, but it failed.
271
WARNING: \`$1' is missing on your system. You should only need it if
284
WARNING: \`$1' is $msg. You should only need it if
272
285
you modified a \`.texi' or \`.texinfo' file, or any other file
273
286
indirectly affecting the aspect of the manual. The spurious
274
287
call might also be the consequence of using a buggy \`make' (AIX,
275
288
DU, IRIX). You might want to install the \`Texinfo' package or
276
289
the \`GNU make' package. Grab either from any GNU archive site."
277
file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'`
290
# The file to touch is that specified with -o ...
291
file=`echo "$*" | sed -n "$sed_output"`
292
test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
278
293
if test -z "$file"; then
279
file=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
280
file=`sed -n '/^@setfilename/ { s/.* \([^ ]*\) *$/\1/; p; q; }' $file`
294
# ... or it is the one specified with @setfilename ...
295
infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
298
s/.* \([^ ]*\) *$/\1/
302
# ... or it is derived from the source name (dir/f.texi becomes f.info)
303
test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info
305
# If the file does not exist, the user really needs makeinfo;
306
# let's fail without touching anything.
307
test -f $file || exit 1
287
if test -n "$run"; then
288
echo 1>&2 "ERROR: \`tar' requires --run"
292
314
# We have already tried tar in the generic part.
293
315
# Look for gnutar/gtar before invocation to avoid ugly error
326
WARNING: \`$1' is needed, and you do not seem to have it handy on your
327
system. You might have modified some files without having the
348
WARNING: \`$1' is needed, and is $msg.
349
You might have modified some files without having the
328
350
proper tools for further handling them. Check the \`README' file,
329
it often tells you about the needed prerequirements for installing
351
it often tells you about the needed prerequisites for installing
330
352
this package. You may also peek at any GNU archive site, in case
331
353
some other package would contain this missing \`$1' program."