/[svn]/ircd-hybrid-8/missing
ViewVC logotype

Annotation of /ircd-hybrid-8/missing

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1291 - (hide annotations)
Sun Feb 12 20:24:41 2012 UTC (10 years, 9 months ago) by michael
File size: 10346 byte(s)
- automake 1.11.3

1 michael 912 #! /bin/sh
2     # Common stub for a few missing GNU programs while installing.
3    
4 michael 1291 scriptversion=2012-01-06.13; # UTC
5 michael 912
6 michael 945 # Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006,
7 michael 1291 # 2008, 2009, 2010, 2011, 2012 Free Software Foundation, Inc.
8 michael 912 # Originally by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
9    
10     # This program is free software; you can redistribute it and/or modify
11     # it under the terms of the GNU General Public License as published by
12     # the Free Software Foundation; either version 2, or (at your option)
13     # any later version.
14    
15     # This program is distributed in the hope that it will be useful,
16     # but WITHOUT ANY WARRANTY; without even the implied warranty of
17     # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18     # GNU General Public License for more details.
19    
20     # You should have received a copy of the GNU General Public License
21 michael 945 # along with this program. If not, see <http://www.gnu.org/licenses/>.
22 michael 912
23     # As a special exception to the GNU General Public License, if you
24     # distribute this file as part of a program that contains a
25     # configuration script generated by Autoconf, you may include it under
26     # the same distribution terms that you use for the rest of that program.
27    
28     if test $# -eq 0; then
29     echo 1>&2 "Try \`$0 --help' for more information"
30     exit 1
31     fi
32    
33     run=:
34     sed_output='s/.* --output[ =]\([^ ]*\).*/\1/p'
35     sed_minuso='s/.* -o \([^ ]*\).*/\1/p'
36    
37     # In the cases where this matters, `missing' is being run in the
38     # srcdir already.
39     if test -f configure.ac; then
40     configure_ac=configure.ac
41     else
42     configure_ac=configure.in
43     fi
44    
45     msg="missing on your system"
46    
47     case $1 in
48     --run)
49     # Try to run requested program, and just exit if it succeeds.
50     run=
51     shift
52     "$@" && exit 0
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.
58     if test $? = 63; then
59     run=:
60     msg="probably too old"
61     fi
62     ;;
63    
64     -h|--h|--he|--hel|--help)
65     echo "\
66     $0 [OPTION]... PROGRAM [ARGUMENT]...
67    
68     Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an
69     error status if there is no known handling for PROGRAM.
70    
71     Options:
72     -h, --help display this help and exit
73     -v, --version output version information and exit
74     --run try to run the given command, and emulate it if it fails
75    
76     Supported PROGRAM values:
77     aclocal touch file \`aclocal.m4'
78     autoconf touch file \`configure'
79     autoheader touch file \`config.h.in'
80     autom4te touch the output file, or create a stub one
81     automake touch all \`Makefile.in' files
82     bison create \`y.tab.[ch]', if possible, from existing .[ch]
83     flex create \`lex.yy.c', if possible, from existing .c
84     help2man touch the output file
85     lex create \`lex.yy.c', if possible, from existing .c
86     makeinfo touch the output file
87     yacc create \`y.tab.[ch]', if possible, from existing .[ch]
88    
89 michael 945 Version suffixes to PROGRAM as well as the prefixes \`gnu-', \`gnu', and
90     \`g' are ignored when checking the name.
91    
92 michael 912 Send bug reports to <bug-automake@gnu.org>."
93     exit $?
94     ;;
95    
96     -v|--v|--ve|--ver|--vers|--versi|--versio|--version)
97     echo "missing $scriptversion (GNU Automake)"
98     exit $?
99     ;;
100    
101     -*)
102     echo 1>&2 "$0: Unknown \`$1' option"
103     echo 1>&2 "Try \`$0 --help' for more information"
104     exit 1
105     ;;
106    
107     esac
108    
109 michael 945 # normalize program name to check for.
110     program=`echo "$1" | sed '
111     s/^gnu-//; t
112     s/^gnu//; t
113     s/^g//; t'`
114    
115 michael 912 # Now exit if we have it, but it failed. Also exit now if we
116     # don't have it and --version was passed (most likely to detect
117 michael 945 # the program). This is about non-GNU programs, so use $1 not
118     # $program.
119 michael 912 case $1 in
120 michael 945 lex*|yacc*)
121 michael 912 # Not GNU programs, they don't have --version.
122     ;;
123    
124     *)
125     if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
126     # We have it, but it failed.
127     exit 1
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.
132     exit 1
133     fi
134     ;;
135     esac
136    
137     # If it does not exist, or fails to run (possibly an outdated version),
138     # try to emulate it.
139 michael 945 case $program in
140 michael 912 aclocal*)
141     echo 1>&2 "\
142     WARNING: \`$1' is $msg. You should only need it if
143     you modified \`acinclude.m4' or \`${configure_ac}'. You might want
144     to install the \`Automake' and \`Perl' packages. Grab them from
145     any GNU archive site."
146     touch aclocal.m4
147     ;;
148    
149 michael 945 autoconf*)
150 michael 912 echo 1>&2 "\
151     WARNING: \`$1' is $msg. You should only need it if
152     you modified \`${configure_ac}'. You might want to install the
153     \`Autoconf' and \`GNU m4' packages. Grab them from any GNU
154     archive site."
155     touch configure
156     ;;
157    
158 michael 945 autoheader*)
159 michael 912 echo 1>&2 "\
160     WARNING: \`$1' is $msg. You should only need it if
161     you modified \`acconfig.h' or \`${configure_ac}'. You might want
162     to install the \`Autoconf' and \`GNU m4' packages. Grab them
163     from any GNU archive site."
164     files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}`
165     test -z "$files" && files="config.h"
166     touch_files=
167     for f in $files; do
168     case $f in
169     *:*) touch_files="$touch_files "`echo "$f" |
170     sed -e 's/^[^:]*://' -e 's/:.*//'`;;
171     *) touch_files="$touch_files $f.in";;
172     esac
173     done
174     touch $touch_files
175     ;;
176    
177     automake*)
178     echo 1>&2 "\
179     WARNING: \`$1' is $msg. You should only need it if
180     you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'.
181     You might want to install the \`Automake' and \`Perl' packages.
182     Grab them from any GNU archive site."
183     find . -type f -name Makefile.am -print |
184     sed 's/\.am$/.in/' |
185     while read f; do touch "$f"; done
186     ;;
187    
188 michael 945 autom4te*)
189 michael 912 echo 1>&2 "\
190     WARNING: \`$1' is needed, but is $msg.
191     You might have modified some files without having the
192     proper tools for further handling them.
193     You can get \`$1' as part of \`Autoconf' from any GNU
194     archive site."
195    
196     file=`echo "$*" | sed -n "$sed_output"`
197     test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
198     if test -f "$file"; then
199     touch $file
200     else
201     test -z "$file" || exec >$file
202     echo "#! /bin/sh"
203     echo "# Created by GNU Automake missing as a replacement of"
204     echo "# $ $@"
205     echo "exit 0"
206     chmod +x $file
207     exit 1
208     fi
209     ;;
210    
211 michael 945 bison*|yacc*)
212 michael 912 echo 1>&2 "\
213     WARNING: \`$1' $msg. You should only need it if
214     you modified a \`.y' file. You may need the \`Bison' package
215     in order for those modifications to take effect. You can get
216     \`Bison' from any GNU archive site."
217     rm -f y.tab.c y.tab.h
218     if test $# -ne 1; then
219 michael 1291 eval LASTARG=\${$#}
220 michael 912 case $LASTARG in
221     *.y)
222     SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`
223     if test -f "$SRCFILE"; then
224     cp "$SRCFILE" y.tab.c
225     fi
226     SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'`
227     if test -f "$SRCFILE"; then
228     cp "$SRCFILE" y.tab.h
229     fi
230     ;;
231     esac
232     fi
233     if test ! -f y.tab.h; then
234     echo >y.tab.h
235     fi
236     if test ! -f y.tab.c; then
237     echo 'main() { return 0; }' >y.tab.c
238     fi
239     ;;
240    
241 michael 945 lex*|flex*)
242 michael 912 echo 1>&2 "\
243     WARNING: \`$1' is $msg. You should only need it if
244     you modified a \`.l' file. You may need the \`Flex' package
245     in order for those modifications to take effect. You can get
246     \`Flex' from any GNU archive site."
247     rm -f lex.yy.c
248     if test $# -ne 1; then
249 michael 1291 eval LASTARG=\${$#}
250 michael 912 case $LASTARG in
251     *.l)
252     SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`
253     if test -f "$SRCFILE"; then
254     cp "$SRCFILE" lex.yy.c
255     fi
256     ;;
257     esac
258     fi
259     if test ! -f lex.yy.c; then
260     echo 'main() { return 0; }' >lex.yy.c
261     fi
262     ;;
263    
264 michael 945 help2man*)
265 michael 912 echo 1>&2 "\
266     WARNING: \`$1' is $msg. You should only need it if
267     you modified a dependency of a manual page. You may need the
268     \`Help2man' package in order for those modifications to take
269     effect. You can get \`Help2man' from any GNU archive site."
270    
271     file=`echo "$*" | sed -n "$sed_output"`
272     test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
273     if test -f "$file"; then
274     touch $file
275     else
276     test -z "$file" || exec >$file
277     echo ".ab help2man is required to generate this page"
278 michael 945 exit $?
279 michael 912 fi
280     ;;
281    
282 michael 945 makeinfo*)
283 michael 912 echo 1>&2 "\
284     WARNING: \`$1' is $msg. You should only need it if
285     you modified a \`.texi' or \`.texinfo' file, or any other file
286     indirectly affecting the aspect of the manual. The spurious
287     call might also be the consequence of using a buggy \`make' (AIX,
288     DU, IRIX). You might want to install the \`Texinfo' package or
289     the \`GNU make' package. Grab either from any GNU archive site."
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"`
293     if test -z "$file"; then
294     # ... or it is the one specified with @setfilename ...
295     infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
296     file=`sed -n '
297     /^@setfilename/{
298     s/.* \([^ ]*\) *$/\1/
299     p
300     q
301     }' $infile`
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
304     fi
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
308     touch $file
309     ;;
310    
311     *)
312     echo 1>&2 "\
313     WARNING: \`$1' is needed, and is $msg.
314     You might have modified some files without having the
315     proper tools for further handling them. Check the \`README' file,
316     it often tells you about the needed prerequisites for installing
317     this package. You may also peek at any GNU archive site, in case
318     some other package would contain this missing \`$1' program."
319     exit 1
320     ;;
321     esac
322    
323     exit 0
324    
325     # Local variables:
326     # eval: (add-hook 'write-file-hooks 'time-stamp)
327     # time-stamp-start: "scriptversion="
328     # time-stamp-format: "%:y-%02m-%02d.%02H"
329 michael 945 # time-stamp-time-zone: "UTC"
330     # time-stamp-end: "; # UTC"
331 michael 912 # End:

Properties

Name Value
svn:executable *

svnadmin@ircd-hybrid.org
ViewVC Help
Powered by ViewVC 1.1.28