/[zanavi_public1]/navit/missing
ZANavi

Contents of /navit/missing

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2 - (hide annotations) (download)
Fri Oct 28 21:19:04 2011 UTC (12 years, 5 months ago) by zoff99
File size: 11419 byte(s)
import files
1 zoff99 2 #! /bin/sh
2     # Common stub for a few missing GNU programs while installing.
3    
4     scriptversion=2009-04-28.21; # UTC
5    
6     # Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006,
7     # 2008, 2009 Free Software Foundation, Inc.
8     # 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     # along with this program. If not, see <http://www.gnu.org/licenses/>.
22    
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     tar try tar, gnutar, gtar, then tar without non-portable flags
88     yacc create \`y.tab.[ch]', if possible, from existing .[ch]
89    
90     Version suffixes to PROGRAM as well as the prefixes \`gnu-', \`gnu', and
91     \`g' are ignored when checking the name.
92    
93     Send bug reports to <bug-automake@gnu.org>."
94     exit $?
95     ;;
96    
97     -v|--v|--ve|--ver|--vers|--versi|--versio|--version)
98     echo "missing $scriptversion (GNU Automake)"
99     exit $?
100     ;;
101    
102     -*)
103     echo 1>&2 "$0: Unknown \`$1' option"
104     echo 1>&2 "Try \`$0 --help' for more information"
105     exit 1
106     ;;
107    
108     esac
109    
110     # normalize program name to check for.
111     program=`echo "$1" | sed '
112     s/^gnu-//; t
113     s/^gnu//; t
114     s/^g//; t'`
115    
116     # Now exit if we have it, but it failed. Also exit now if we
117     # don't have it and --version was passed (most likely to detect
118     # the program). This is about non-GNU programs, so use $1 not
119     # $program.
120     case $1 in
121     lex*|yacc*)
122     # Not GNU programs, they don't have --version.
123     ;;
124    
125     tar*)
126     if test -n "$run"; then
127     echo 1>&2 "ERROR: \`tar' requires --run"
128     exit 1
129     elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
130     exit 1
131     fi
132     ;;
133    
134     *)
135     if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
136     # We have it, but it failed.
137     exit 1
138     elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
139     # Could not run --version or --help. This is probably someone
140     # running `$TOOL --version' or `$TOOL --help' to check whether
141     # $TOOL exists and not knowing $TOOL uses missing.
142     exit 1
143     fi
144     ;;
145     esac
146    
147     # If it does not exist, or fails to run (possibly an outdated version),
148     # try to emulate it.
149     case $program in
150     aclocal*)
151     echo 1>&2 "\
152     WARNING: \`$1' is $msg. You should only need it if
153     you modified \`acinclude.m4' or \`${configure_ac}'. You might want
154     to install the \`Automake' and \`Perl' packages. Grab them from
155     any GNU archive site."
156     touch aclocal.m4
157     ;;
158    
159     autoconf*)
160     echo 1>&2 "\
161     WARNING: \`$1' is $msg. You should only need it if
162     you modified \`${configure_ac}'. You might want to install the
163     \`Autoconf' and \`GNU m4' packages. Grab them from any GNU
164     archive site."
165     touch configure
166     ;;
167    
168     autoheader*)
169     echo 1>&2 "\
170     WARNING: \`$1' is $msg. You should only need it if
171     you modified \`acconfig.h' or \`${configure_ac}'. You might want
172     to install the \`Autoconf' and \`GNU m4' packages. Grab them
173     from any GNU archive site."
174     files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}`
175     test -z "$files" && files="config.h"
176     touch_files=
177     for f in $files; do
178     case $f in
179     *:*) touch_files="$touch_files "`echo "$f" |
180     sed -e 's/^[^:]*://' -e 's/:.*//'`;;
181     *) touch_files="$touch_files $f.in";;
182     esac
183     done
184     touch $touch_files
185     ;;
186    
187     automake*)
188     echo 1>&2 "\
189     WARNING: \`$1' is $msg. You should only need it if
190     you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'.
191     You might want to install the \`Automake' and \`Perl' packages.
192     Grab them from any GNU archive site."
193     find . -type f -name Makefile.am -print |
194     sed 's/\.am$/.in/' |
195     while read f; do touch "$f"; done
196     ;;
197    
198     autom4te*)
199     echo 1>&2 "\
200     WARNING: \`$1' is needed, but is $msg.
201     You might have modified some files without having the
202     proper tools for further handling them.
203     You can get \`$1' as part of \`Autoconf' from any GNU
204     archive site."
205    
206     file=`echo "$*" | sed -n "$sed_output"`
207     test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
208     if test -f "$file"; then
209     touch $file
210     else
211     test -z "$file" || exec >$file
212     echo "#! /bin/sh"
213     echo "# Created by GNU Automake missing as a replacement of"
214     echo "# $ $@"
215     echo "exit 0"
216     chmod +x $file
217     exit 1
218     fi
219     ;;
220    
221     bison*|yacc*)
222     echo 1>&2 "\
223     WARNING: \`$1' $msg. You should only need it if
224     you modified a \`.y' file. You may need the \`Bison' package
225     in order for those modifications to take effect. You can get
226     \`Bison' from any GNU archive site."
227     rm -f y.tab.c y.tab.h
228     if test $# -ne 1; then
229     eval LASTARG="\${$#}"
230     case $LASTARG in
231     *.y)
232     SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`
233     if test -f "$SRCFILE"; then
234     cp "$SRCFILE" y.tab.c
235     fi
236     SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'`
237     if test -f "$SRCFILE"; then
238     cp "$SRCFILE" y.tab.h
239     fi
240     ;;
241     esac
242     fi
243     if test ! -f y.tab.h; then
244     echo >y.tab.h
245     fi
246     if test ! -f y.tab.c; then
247     echo 'main() { return 0; }' >y.tab.c
248     fi
249     ;;
250    
251     lex*|flex*)
252     echo 1>&2 "\
253     WARNING: \`$1' is $msg. You should only need it if
254     you modified a \`.l' file. You may need the \`Flex' package
255     in order for those modifications to take effect. You can get
256     \`Flex' from any GNU archive site."
257     rm -f lex.yy.c
258     if test $# -ne 1; then
259     eval LASTARG="\${$#}"
260     case $LASTARG in
261     *.l)
262     SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`
263     if test -f "$SRCFILE"; then
264     cp "$SRCFILE" lex.yy.c
265     fi
266     ;;
267     esac
268     fi
269     if test ! -f lex.yy.c; then
270     echo 'main() { return 0; }' >lex.yy.c
271     fi
272     ;;
273    
274     help2man*)
275     echo 1>&2 "\
276     WARNING: \`$1' is $msg. You should only need it if
277     you modified a dependency of a manual page. You may need the
278     \`Help2man' package in order for those modifications to take
279     effect. You can get \`Help2man' from any GNU archive site."
280    
281     file=`echo "$*" | sed -n "$sed_output"`
282     test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
283     if test -f "$file"; then
284     touch $file
285     else
286     test -z "$file" || exec >$file
287     echo ".ab help2man is required to generate this page"
288     exit $?
289     fi
290     ;;
291    
292     makeinfo*)
293     echo 1>&2 "\
294     WARNING: \`$1' is $msg. You should only need it if
295     you modified a \`.texi' or \`.texinfo' file, or any other file
296     indirectly affecting the aspect of the manual. The spurious
297     call might also be the consequence of using a buggy \`make' (AIX,
298     DU, IRIX). You might want to install the \`Texinfo' package or
299     the \`GNU make' package. Grab either from any GNU archive site."
300     # The file to touch is that specified with -o ...
301     file=`echo "$*" | sed -n "$sed_output"`
302     test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
303     if test -z "$file"; then
304     # ... or it is the one specified with @setfilename ...
305     infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
306     file=`sed -n '
307     /^@setfilename/{
308     s/.* \([^ ]*\) *$/\1/
309     p
310     q
311     }' $infile`
312     # ... or it is derived from the source name (dir/f.texi becomes f.info)
313     test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info
314     fi
315     # If the file does not exist, the user really needs makeinfo;
316     # let's fail without touching anything.
317     test -f $file || exit 1
318     touch $file
319     ;;
320    
321     tar*)
322     shift
323    
324     # We have already tried tar in the generic part.
325     # Look for gnutar/gtar before invocation to avoid ugly error
326     # messages.
327     if (gnutar --version > /dev/null 2>&1); then
328     gnutar "$@" && exit 0
329     fi
330     if (gtar --version > /dev/null 2>&1); then
331     gtar "$@" && exit 0
332     fi
333     firstarg="$1"
334     if shift; then
335     case $firstarg in
336     *o*)
337     firstarg=`echo "$firstarg" | sed s/o//`
338     tar "$firstarg" "$@" && exit 0
339     ;;
340     esac
341     case $firstarg in
342     *h*)
343     firstarg=`echo "$firstarg" | sed s/h//`
344     tar "$firstarg" "$@" && exit 0
345     ;;
346     esac
347     fi
348    
349     echo 1>&2 "\
350     WARNING: I can't seem to be able to run \`tar' with the given arguments.
351     You may want to install GNU tar or Free paxutils, or check the
352     command line arguments."
353     exit 1
354     ;;
355    
356     *)
357     echo 1>&2 "\
358     WARNING: \`$1' is needed, and is $msg.
359     You might have modified some files without having the
360     proper tools for further handling them. Check the \`README' file,
361     it often tells you about the needed prerequisites for installing
362     this package. You may also peek at any GNU archive site, in case
363     some other package would contain this missing \`$1' program."
364     exit 1
365     ;;
366     esac
367    
368     exit 0
369    
370     # Local variables:
371     # eval: (add-hook 'write-file-hooks 'time-stamp)
372     # time-stamp-start: "scriptversion="
373     # time-stamp-format: "%:y-%02m-%02d.%02H"
374     # time-stamp-time-zone: "UTC"
375     # time-stamp-end: "; # UTC"
376     # End:

Properties

Name Value
svn:executable *

   
Visit the ZANavi Wiki