~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~ [ freetext search ] ~ [ file search ] ~

Linux Cross Reference
Tina6/tina-tools/missing

Version: ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 #! /bin/sh
  2 # Common stub for a few missing GNU programs while installing.
  3 
  4 scriptversion=2003-09-02.23
  5 
  6 # Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003 
  7 #   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, write to the Free Software
 22 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
 23 # 02111-1307, USA.
 24 
 25 # As a special exception to the GNU General Public License, if you
 26 # distribute this file as part of a program that contains a
 27 # configuration script generated by Autoconf, you may include it under
 28 # the same distribution terms that you use for the rest of that program.
 29 
 30 if test $# -eq 0; then
 31   echo 1>&2 "Try \`$0 --help' for more information"
 32   exit 1
 33 fi
 34 
 35 run=:
 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 esac
 64 
 65 # If it does not exist, or fails to run (possibly an outdated version),
 66 # try to emulate it.
 67 case "$1" in
 68 
 69   -h|--h|--he|--hel|--help)
 70     echo "\
 71 $0 [OPTION]... PROGRAM [ARGUMENT]...
 72 
 73 Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an
 74 error status if there is no known handling for PROGRAM.
 75 
 76 Options:
 77   -h, --help      display this help and exit
 78   -v, --version   output version information and exit
 79   --run           try to run the given command, and emulate it if it fails
 80 
 81 Supported PROGRAM values:
 82   aclocal      touch file \`aclocal.m4'
 83   autoconf     touch file \`configure'
 84   autoheader   touch file \`config.h.in'
 85   automake     touch all \`Makefile.in' files
 86   bison        create \`y.tab.[ch]', if possible, from existing .[ch]
 87   flex         create \`lex.yy.c', if possible, from existing .c
 88   help2man     touch the output file
 89   lex          create \`lex.yy.c', if possible, from existing .c
 90   makeinfo     touch the output file
 91   tar          try tar, gnutar, gtar, then tar without non-portable flags
 92   yacc         create \`y.tab.[ch]', if possible, from existing .[ch]
 93 
 94 Send bug reports to <bug-automake@gnu.org>."
 95     ;;
 96 
 97   -v|--v|--ve|--ver|--vers|--versi|--versio|--version)
 98     echo "missing $scriptversion (GNU Automake)"
 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   aclocal*)
108     if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
109        # We have it, but it failed.
110        exit 1
111     fi
112 
113     echo 1>&2 "\
114 WARNING: \`$1' is $msg.  You should only need it if
115          you modified \`acinclude.m4' or \`${configure_ac}'.  You might want
116          to install the \`Automake' and \`Perl' packages.  Grab them from
117          any GNU archive site."
118     touch aclocal.m4
119     ;;
120 
121   autoconf)
122     if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
123        # We have it, but it failed.
124        exit 1
125     fi
126 
127     echo 1>&2 "\
128 WARNING: \`$1' is $msg.  You should only need it if
129          you modified \`${configure_ac}'.  You might want to install the
130          \`Autoconf' and \`GNU m4' packages.  Grab them from any GNU
131          archive site."
132     touch configure
133     ;;
134 
135   autoheader)
136     if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
137        # We have it, but it failed.
138        exit 1
139     fi
140 
141     echo 1>&2 "\
142 WARNING: \`$1' is $msg.  You should only need it if
143          you modified \`acconfig.h' or \`${configure_ac}'.  You might want
144          to install the \`Autoconf' and \`GNU m4' packages.  Grab them
145          from any GNU archive site."
146     files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}`
147     test -z "$files" && files="config.h"
148     touch_files=
149     for f in $files; do
150       case "$f" in
151       *:*) touch_files="$touch_files "`echo "$f" |
152                                        sed -e 's/^[^:]*://' -e 's/:.*//'`;;
153       *) touch_files="$touch_files $f.in";;
154       esac
155     done
156     touch $touch_files
157     ;;
158 
159   automake*)
160     if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
161        # We have it, but it failed.
162        exit 1
163     fi
164 
165     echo 1>&2 "\
166 WARNING: \`$1' is $msg.  You should only need it if
167          you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'.
168          You might want to install the \`Automake' and \`Perl' packages.
169          Grab them from any GNU archive site."
170     find . -type f -name Makefile.am -print |
171            sed 's/\.am$/.in/' |
172            while read f; do touch "$f"; done
173     ;;
174 
175   autom4te)
176     if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
177        # We have it, but it failed.
178        exit 1
179     fi
180 
181     echo 1>&2 "\
182 WARNING: \`$1' is needed, but is $msg.
183          You might have modified some files without having the
184          proper tools for further handling them.
185          You can get \`$1' as part of \`Autoconf' from any GNU
186          archive site."
187 
188     file=`echo "$*" | sed -n 's/.*--output[ =]*\([^ ]*\).*/\1/p'`
189     test -z "$file" && file=`echo "$*" | sed -n 's/.*-o[ ]*\([^ ]*\).*/\1/p'`
190     if test -f "$file"; then
191         touch $file
192     else
193         test -z "$file" || exec >$file
194         echo "#! /bin/sh"
195         echo "# Created by GNU Automake missing as a replacement of"
196         echo "#  $ $@"
197         echo "exit 0"
198         chmod +x $file
199         exit 1
200     fi
201     ;;
202 
203   bison|yacc)
204     echo 1>&2 "\
205 WARNING: \`$1' $msg.  You should only need it if
206          you modified a \`.y' file.  You may need the \`Bison' package
207          in order for those modifications to take effect.  You can get
208          \`Bison' from any GNU archive site."
209     rm -f y.tab.c y.tab.h
210     if [ $# -ne 1 ]; then
211         eval LASTARG="\${$#}"
212         case "$LASTARG" in
213         *.y)
214             SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`
215             if [ -f "$SRCFILE" ]; then
216                  cp "$SRCFILE" y.tab.c
217             fi
218             SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'`
219             if [ -f "$SRCFILE" ]; then
220                  cp "$SRCFILE" y.tab.h
221             fi
222           ;;
223         esac
224     fi
225     if [ ! -f y.tab.h ]; then
226         echo >y.tab.h
227     fi
228     if [ ! -f y.tab.c ]; then
229         echo 'main() { return 0; }' >y.tab.c
230     fi
231     ;;
232 
233   lex|flex)
234     echo 1>&2 "\
235 WARNING: \`$1' is $msg.  You should only need it if
236          you modified a \`.l' file.  You may need the \`Flex' package
237          in order for those modifications to take effect.  You can get
238          \`Flex' from any GNU archive site."
239     rm -f lex.yy.c
240     if [ $# -ne 1 ]; then
241         eval LASTARG="\${$#}"
242         case "$LASTARG" in
243         *.l)
244             SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`
245             if [ -f "$SRCFILE" ]; then
246                  cp "$SRCFILE" lex.yy.c
247             fi
248           ;;
249         esac
250     fi
251     if [ ! -f lex.yy.c ]; then
252         echo 'main() { return 0; }' >lex.yy.c
253     fi
254     ;;
255 
256   help2man)
257     if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
258        # We have it, but it failed.
259        exit 1
260     fi
261 
262     echo 1>&2 "\
263 WARNING: \`$1' is $msg.  You should only need it if
264          you modified a dependency of a manual page.  You may need the
265          \`Help2man' package in order for those modifications to take
266          effect.  You can get \`Help2man' from any GNU archive site."
267 
268     file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'`
269     if test -z "$file"; then
270         file=`echo "$*" | sed -n 's/.*--output=\([^ ]*\).*/\1/p'`
271     fi
272     if [ -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         exit 1
278     fi
279     ;;
280 
281   makeinfo)
282     if test -z "$run" && (makeinfo --version) > /dev/null 2>&1; then
283        # We have makeinfo, but it failed.
284        exit 1
285     fi
286 
287     echo 1>&2 "\
288 WARNING: \`$1' is $msg.  You should only need it if
289          you modified a \`.texi' or \`.texinfo' file, or any other file
290          indirectly affecting the aspect of the manual.  The spurious
291          call might also be the consequence of using a buggy \`make' (AIX,
292          DU, IRIX).  You might want to install the \`Texinfo' package or
293          the \`GNU make' package.  Grab either from any GNU archive site."
294     file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'`
295     if test -z "$file"; then
296       file=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
297       file=`sed -n '/^@setfilename/ { s/.* \([^ ]*\) *$/\1/; p; q; }' $file`
298     fi
299     touch $file
300     ;;
301 
302   tar)
303     shift
304     if test -n "$run"; then
305       echo 1>&2 "ERROR: \`tar' requires --run"
306       exit 1
307     fi
308 
309     # We have already tried tar in the generic part.
310     # Look for gnutar/gtar before invocation to avoid ugly error
311     # messages.
312     if (gnutar --version > /dev/null 2>&1); then
313        gnutar "$@" && exit 0
314     fi
315     if (gtar --version > /dev/null 2>&1); then
316        gtar "$@" && exit 0
317     fi
318     firstarg="$1"
319     if shift; then
320         case "$firstarg" in
321         *o*)
322             firstarg=`echo "$firstarg" | sed s/o//`
323             tar "$firstarg" "$@" && exit 0
324             ;;
325         esac
326         case "$firstarg" in
327         *h*)
328             firstarg=`echo "$firstarg" | sed s/h//`
329             tar "$firstarg" "$@" && exit 0
330             ;;
331         esac
332     fi
333 
334     echo 1>&2 "\
335 WARNING: I can't seem to be able to run \`tar' with the given arguments.
336          You may want to install GNU tar or Free paxutils, or check the
337          command line arguments."
338     exit 1
339     ;;
340 
341   *)
342     echo 1>&2 "\
343 WARNING: \`$1' is needed, and is $msg.
344          You might have modified some files without having the
345          proper tools for further handling them.  Check the \`README' file,
346          it often tells you about the needed prerequisites for installing
347          this package.  You may also peek at any GNU archive site, in case
348          some other package would contain this missing \`$1' program."
349     exit 1
350     ;;
351 esac
352 
353 exit 0
354 
355 # Local variables:
356 # eval: (add-hook 'write-file-hooks 'time-stamp)
357 # time-stamp-start: "scriptversion="
358 # time-stamp-format: "%:y-%02m-%02d.%02H"
359 # time-stamp-end: "$"
360 # End:

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~ [ freetext search ] ~ [ file search ] ~

This page was automatically generated by the LXR engine.
Visit the LXR main site for more information.