The SILC Project

source navigation ]
identifier search ]
freetext search ]
file search ]

silc/silcer/missing

  1 #! /bin/sh
  2 # Common stub for a few missing GNU programs while installing.
  3 # Copyright 1996, 1997, 1999, 2000 Free Software Foundation, Inc.
  4 # Originally by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
  5 
  6 # This program is free software; you can redistribute it and/or modify
  7 # it under the terms of the GNU General Public License as published by
  8 # the Free Software Foundation; either version 2, or (at your option)
  9 # any later version.
 10 
 11 # This program is distributed in the hope that it will be useful,
 12 # but WITHOUT ANY WARRANTY; without even the implied warranty of
 13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 14 # GNU General Public License for more details.
 15 
 16 # You should have received a copy of the GNU General Public License
 17 # along with this program; if not, write to the Free Software
 18 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
 19 # 02111-1307, USA.
 20 
 21 # As a special exception to the GNU General Public License, if you
 22 # distribute this file as part of a program that contains a
 23 # configuration script generated by Autoconf, you may include it under
 24 # the same distribution terms that you use for the rest of that program.
 25 
 26 if test $# -eq 0; then
 27   echo 1>&2 "Try \`$0 --help' for more information"
 28   exit 1
 29 fi
 30 
 31 run=:
 32 
 33 # In the cases where this matters, `missing' is being run in the
 34 # srcdir already.
 35 if test -f configure.ac; then
 36   configure_ac=configure.ac
 37 else
 38   configure_ac=configure.in
 39 fi
 40 
 41 case "$1" in
 42 --run)
 43   # Try to run requested program, and just exit if it succeeds.
 44   run=
 45   shift
 46   "$@" && exit 0
 47   ;;
 48 esac
 49 
 50 # If it does not exist, or fails to run (possibly an outdated version),
 51 # try to emulate it.
 52 case "$1" in
 53 
 54   -h|--h|--he|--hel|--help)
 55     echo "\
 56 $0 [OPTION]... PROGRAM [ARGUMENT]...
 57 
 58 Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an
 59 error status if there is no known handling for PROGRAM.
 60 
 61 Options:
 62   -h, --help      display this help and exit
 63   -v, --version   output version information and exit
 64   --run           try to run the given command, and emulate it if it fails
 65 
 66 Supported PROGRAM values:
 67   aclocal      touch file \`aclocal.m4'
 68   autoconf     touch file \`configure'
 69   autoheader   touch file \`config.h.in'
 70   automake     touch all \`Makefile.in' files
 71   bison        create \`y.tab.[ch]', if possible, from existing .[ch]
 72   flex         create \`lex.yy.c', if possible, from existing .c
 73   help2man     touch the output file
 74   lex          create \`lex.yy.c', if possible, from existing .c
 75   makeinfo     touch the output file
 76   tar          try tar, gnutar, gtar, then tar without non-portable flags
 77   yacc         create \`y.tab.[ch]', if possible, from existing .[ch]"
 78     ;;
 79 
 80   -v|--v|--ve|--ver|--vers|--versi|--versio|--version)
 81     echo "missing 0.3 - GNU automake"
 82     ;;
 83 
 84   -*)
 85     echo 1>&2 "$0: Unknown \`$1' option"
 86     echo 1>&2 "Try \`$0 --help' for more information"
 87     exit 1
 88     ;;
 89 
 90   aclocal)
 91     echo 1>&2 "\
 92 WARNING: \`$1' is missing on your system.  You should only need it if
 93          you modified \`acinclude.m4' or \`${configure_ac}'.  You might want
 94          to install the \`Automake' and \`Perl' packages.  Grab them from
 95          any GNU archive site."
 96     touch aclocal.m4
 97     ;;
 98 
 99   autoconf)
100     echo 1>&2 "\
101 WARNING: \`$1' is missing on your system.  You should only need it if
102          you modified \`${configure_ac}'.  You might want to install the
103          \`Autoconf' and \`GNU m4' packages.  Grab them from any GNU
104          archive site."
105     touch configure
106     ;;
107 
108   autoheader)
109     echo 1>&2 "\
110 WARNING: \`$1' is missing on your system.  You should only need it if
111          you modified \`acconfig.h' or \`${configure_ac}'.  You might want
112          to install the \`Autoconf' and \`GNU m4' packages.  Grab them
113          from any GNU archive site."
114     files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}`
115     test -z "$files" && files="config.h"
116     touch_files=
117     for f in $files; do
118       case "$f" in
119       *:*) touch_files="$touch_files "`echo "$f" |
120                                        sed -e 's/^[^:]*://' -e 's/:.*//'`;;
121       *) touch_files="$touch_files $f.in";;
122       esac
123     done
124     touch $touch_files
125     ;;
126 
127   automake)
128     echo 1>&2 "\
129 WARNING: \`$1' is missing on your system.  You should only need it if
130          you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'.
131          You might want to install the \`Automake' and \`Perl' packages.
132          Grab them from any GNU archive site."
133     find . -type f -name Makefile.am -print |
134            sed 's/\.am$/.in/' |
135            while read f; do touch "$f"; done
136     ;;
137 
138   bison|yacc)
139     echo 1>&2 "\
140 WARNING: \`$1' is missing on your system.  You should only need it if
141          you modified a \`.y' file.  You may need the \`Bison' package
142          in order for those modifications to take effect.  You can get
143          \`Bison' from any GNU archive site."
144     rm -f y.tab.c y.tab.h
145     if [ $# -ne 1 ]; then
146         eval LASTARG="\${$#}"
147         case "$LASTARG" in
148         *.y)
149             SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`
150             if [ -f "$SRCFILE" ]; then
151                  cp "$SRCFILE" y.tab.c
152             fi
153             SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'`
154             if [ -f "$SRCFILE" ]; then
155                  cp "$SRCFILE" y.tab.h
156             fi
157           ;;
158         esac
159     fi
160     if [ ! -f y.tab.h ]; then
161         echo >y.tab.h
162     fi
163     if [ ! -f y.tab.c ]; then
164         echo 'main() { return 0; }' >y.tab.c
165     fi
166     ;;
167 
168   lex|flex)
169     echo 1>&2 "\
170 WARNING: \`$1' is missing on your system.  You should only need it if
171          you modified a \`.l' file.  You may need the \`Flex' package
172          in order for those modifications to take effect.  You can get
173          \`Flex' from any GNU archive site."
174     rm -f lex.yy.c
175     if [ $# -ne 1 ]; then
176         eval LASTARG="\${$#}"
177         case "$LASTARG" in
178         *.l)
179             SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`
180             if [ -f "$SRCFILE" ]; then
181                  cp "$SRCFILE" lex.yy.c
182             fi
183           ;;
184         esac
185     fi
186     if [ ! -f lex.yy.c ]; then
187         echo 'main() { return 0; }' >lex.yy.c
188     fi
189     ;;
190 
191   help2man)
192     echo 1>&2 "\
193 WARNING: \`$1' is missing on your system.  You should only need it if
194          you modified a dependency of a manual page.  You may need the
195          \`Help2man' package in order for those modifications to take
196          effect.  You can get \`Help2man' from any GNU archive site."
197 
198     file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'`
199     if test -z "$file"; then
200         file=`echo "$*" | sed -n 's/.*--output=\([^ ]*\).*/\1/p'`
201     fi
202     if [ -f "$file" ]; then
203         touch $file
204     else
205         test -z "$file" || exec >$file
206         echo ".ab help2man is required to generate this page"
207         exit 1
208     fi
209     ;;
210 
211   makeinfo)
212     if test -z "$run" && (makeinfo --version) > /dev/null 2>&1; then
213        # We have makeinfo, but it failed.
214        exit 1
215     fi
216 
217     echo 1>&2 "\
218 WARNING: \`$1' is missing on your system.  You should only need it if
219          you modified a \`.texi' or \`.texinfo' file, or any other file
220          indirectly affecting the aspect of the manual.  The spurious
221          call might also be the consequence of using a buggy \`make' (AIX,
222          DU, IRIX).  You might want to install the \`Texinfo' package or
223          the \`GNU make' package.  Grab either from any GNU archive site."
224     file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'`
225     if test -z "$file"; then
226       file=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
227       file=`sed -n '/^@setfilename/ { s/.* \([^ ]*\) *$/\1/; p; q; }' $file`
228     fi
229     touch $file
230     ;;
231 
232   tar)
233     shift
234     if test -n "$run"; then
235       echo 1>&2 "ERROR: \`tar' requires --run"
236       exit 1
237     fi
238 
239     # We have already tried tar in the generic part.
240     # Look for gnutar/gtar before invocation to avoid ugly error
241     # messages.
242     if (gnutar --version > /dev/null 2>&1); then
243        gnutar ${1+"$@"} && exit 0
244     fi
245     if (gtar --version > /dev/null 2>&1); then
246        gtar ${1+"$@"} && exit 0
247     fi
248     firstarg="$1"
249     if shift; then
250         case "$firstarg" in
251         *o*)
252             firstarg=`echo "$firstarg" | sed s/o//`
253             tar "$firstarg" ${1+"$@"} && exit 0
254             ;;
255         esac
256         case "$firstarg" in
257         *h*)
258             firstarg=`echo "$firstarg" | sed s/h//`
259             tar "$firstarg" ${1+"$@"} && exit 0
260             ;;
261         esac
262     fi
263 
264     echo 1>&2 "\
265 WARNING: I can't seem to be able to run \`tar' with the given arguments.
266          You may want to install GNU tar or Free paxutils, or check the
267          command line arguments."
268     exit 1
269     ;;
270 
271   *)
272     echo 1>&2 "\
273 WARNING: \`$1' is needed, and you do not seem to have it handy on your
274          system.  You might have modified some files without having the
275          proper tools for further handling them.  Check the \`README' file,
276          it often tells you about the needed prerequirements for installing
277          this package.  You may also peek at any GNU archive site, in case
278          some other package would contain this missing \`$1' program."
279     exit 1
280     ;;
281 esac
282 
283 exit 0

This page was automatically generated by the LXR engine.
Free-text search provided by Glimpse