2
2
# Common stub for a few missing GNU programs while installing.
3
# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003 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
16
20
# You should have received a copy of the GNU General Public License
17
21
# along with this program; if not, write to the Free Software
18
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
22
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
21
25
# As a special exception to the GNU General Public License, if you
22
26
# distribute this file as part of a program that contains a
38
44
configure_ac=configure.in
47
msg="missing on your system"
43
51
# Try to run requested program, and just exit if it succeeds.
55
# Exit code 63 means version mismatch. This often happens
56
# when the user try to use an ancient version of a tool on
57
# a file that requires a minimum version. In this case we
58
# we should proceed has if the program had been absent, or
59
# if --run hadn't been passed.
62
msg="probably too old"
50
# If it does not exist, or fails to run (possibly an outdated version),
54
66
-h|--h|--he|--hel|--help)
67
79
aclocal touch file \`aclocal.m4'
68
80
autoconf touch file \`configure'
69
81
autoheader touch file \`config.h.in'
82
autom4te touch the output file, or create a stub one
70
83
automake touch all \`Makefile.in' files
71
84
bison create \`y.tab.[ch]', if possible, from existing .[ch]
72
85
flex create \`lex.yy.c', if possible, from existing .c
74
87
lex create \`lex.yy.c', if possible, from existing .c
75
88
makeinfo touch the output file
76
89
tar try tar, gnutar, gtar, then tar without non-portable flags
77
yacc create \`y.tab.[ch]', if possible, from existing .[ch]"
90
yacc create \`y.tab.[ch]', if possible, from existing .[ch]
92
Send bug reports to <bug-automake@gnu.org>."
80
96
-v|--v|--ve|--ver|--vers|--versi|--versio|--version)
81
echo "missing 0.4 - GNU automake"
97
echo "missing $scriptversion (GNU Automake)"
109
# Now exit if we have it, but it failed. Also exit now if we
110
# don't have it and --version was passed (most likely to detect
114
# Not GNU programs, they don't have --version.
118
if test -n "$run"; then
119
echo 1>&2 "ERROR: \`tar' requires --run"
121
elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
127
if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
128
# We have it, but it failed.
130
elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
131
# Could not run --version or --help. This is probably someone
132
# running `$TOOL --version' or `$TOOL --help' to check whether
133
# $TOOL exists and not knowing $TOOL uses missing.
139
# 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
144
WARNING: \`$1' is $msg. You should only need it if
98
145
you modified \`acinclude.m4' or \`${configure_ac}'. You might want
99
146
to install the \`Automake' and \`Perl' packages. Grab them from
100
147
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
153
WARNING: \`$1' is $msg. You should only need it if
112
154
you modified \`${configure_ac}'. You might want to install the
113
155
\`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
162
WARNING: \`$1' is $msg. You should only need it if
126
163
you modified \`acconfig.h' or \`${configure_ac}'. You might want
127
164
to install the \`Autoconf' and \`GNU m4' packages. Grab them
128
165
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
181
WARNING: \`$1' is $msg. You should only need it if
150
182
you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'.
151
183
You might want to install the \`Automake' and \`Perl' packages.
152
184
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
192
WARNING: \`$1' is needed, but is $msg.
193
You might have modified some files without having the
167
194
proper tools for further handling them.
168
195
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'`
198
file=`echo "$*" | sed -n "$sed_output"`
199
test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
173
200
if test -f "$file"; then
188
WARNING: \`$1' is missing on your system. You should only need it if
215
WARNING: \`$1' $msg. You should only need it if
189
216
you modified a \`.y' file. You may need the \`Bison' package
190
217
in order for those modifications to take effect. You can get
191
218
\`Bison' from any GNU archive site."
192
219
rm -f y.tab.c y.tab.h
193
if [ $# -ne 1 ]; then
220
if test $# -ne 1; then
194
221
eval LASTARG="\${$#}"
197
224
SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`
198
if [ -f "$SRCFILE" ]; then
225
if test -f "$SRCFILE"; then
199
226
cp "$SRCFILE" y.tab.c
201
228
SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'`
202
if [ -f "$SRCFILE" ]; then
229
if test -f "$SRCFILE"; then
203
230
cp "$SRCFILE" y.tab.h
208
if [ ! -f y.tab.h ]; then
235
if test ! -f y.tab.h; then
211
if [ ! -f y.tab.c ]; then
238
if test ! -f y.tab.c; then
212
239
echo 'main() { return 0; }' >y.tab.c
218
WARNING: \`$1' is missing on your system. You should only need it if
245
WARNING: \`$1' is $msg. You should only need it if
219
246
you modified a \`.l' file. You may need the \`Flex' package
220
247
in order for those modifications to take effect. You can get
221
248
\`Flex' from any GNU archive site."
223
if [ $# -ne 1 ]; then
250
if test $# -ne 1; then
224
251
eval LASTARG="\${$#}"
227
254
SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`
228
if [ -f "$SRCFILE" ]; then
255
if test -f "$SRCFILE"; then
229
256
cp "$SRCFILE" lex.yy.c
234
if [ ! -f lex.yy.c ]; then
261
if test ! -f lex.yy.c; then
235
262
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
268
WARNING: \`$1' is $msg. You should only need it if
247
269
you modified a dependency of a manual page. You may need the
248
270
\`Help2man' package in order for those modifications to take
249
271
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
273
file=`echo "$*" | sed -n "$sed_output"`
274
test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
275
if test -f "$file"; then
258
278
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
286
WARNING: \`$1' is $msg. You should only need it if
272
287
you modified a \`.texi' or \`.texinfo' file, or any other file
273
288
indirectly affecting the aspect of the manual. The spurious
274
289
call might also be the consequence of using a buggy \`make' (AIX,
275
290
DU, IRIX). You might want to install the \`Texinfo' package or
276
291
the \`GNU make' package. Grab either from any GNU archive site."
277
file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'`
292
# The file to touch is that specified with -o ...
293
file=`echo "$*" | sed -n "$sed_output"`
294
test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
278
295
if test -z "$file"; then
279
file=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
280
file=`sed -n '/^@setfilename/ { s/.* \([^ ]*\) *$/\1/; p; q; }' $file`
296
# ... or it is the one specified with @setfilename ...
297
infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
300
s/.* \([^ ]*\) *$/\1/
304
# ... or it is derived from the source name (dir/f.texi becomes f.info)
305
test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info
307
# If the file does not exist, the user really needs makeinfo;
308
# let's fail without touching anything.
309
test -f $file || exit 1
287
if test -n "$run"; then
288
echo 1>&2 "ERROR: \`tar' requires --run"
292
316
# We have already tried tar in the generic part.
293
317
# 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
350
WARNING: \`$1' is needed, and is $msg.
351
You might have modified some files without having the
328
352
proper tools for further handling them. Check the \`README' file,
329
353
it often tells you about the needed prerequisites for installing
330
354
this package. You may also peek at any GNU archive site, in case