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

Annotation of /ircd-hybrid-8/missing

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1375 - (hide annotations)
Fri Apr 27 08:01:46 2012 UTC (8 years, 2 months ago) by michael
File size: 10179 byte(s)
- Update autotools related files

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

Properties

Name Value
svn:executable *

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