source: trunk/third/libwnck/missing @ 18332

Revision 18332, 9.3 KB checked in by ghudson, 22 years ago (diff)
This commit was generated by cvs2svn to compensate for changes in r18331, which included commits to RCS files with non-trunk default branches.
  • Property svn:executable set to *
Line 
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
26if test $# -eq 0; then
27  echo 1>&2 "Try \`$0 --help' for more information"
28  exit 1
29fi
30
31run=:
32
33# In the cases where this matters, `missing' is being run in the
34# srcdir already.
35if test -f configure.ac; then
36  configure_ac=configure.ac
37else
38  configure_ac=configure.in
39fi
40
41case "$1" in
42--run)
43  # Try to run requested program, and just exit if it succeeds.
44  run=
45  shift
46  prog="$1"
47  shift
48  case "$prog" in
49    aclocal)
50      for suffix in "-1.5" ""; do
51        if "$prog$suffix" "--version" >/dev/null 2>&1; then
52          "$prog$suffix" "$@" && exit 0
53        fi
54      done;;
55    autoconf)
56      for suffix in "-2.53" ""; do
57        if "$prog$suffix" "--version" >/dev/null 2>&1; then
58          "$prog$suffix" "$@" && exit 0
59        fi
60      done;;
61    automake)
62      for suffix in "-1.5" ""; do
63        if "$prog$suffix" "--version" >/dev/null 2>&1; then
64          "$prog$suffix" "$@" && exit 0
65        fi
66      done;;
67    autoheader)
68      for suffix in "-2.53" ""; do
69        if "$prog$suffix" "--version" >/dev/null 2>&1; then
70          "$prog$suffix" "$@" && exit 0
71        fi
72      done;;
73    *) "$prog" "$@" && exit 0;;
74  esac
75  set -- "$prog" "$@"
76  ;;
77esac
78
79# If it does not exist, or fails to run (possibly an outdated version),
80# try to emulate it.
81case "$1" in
82
83  -h|--h|--he|--hel|--help)
84    echo "\
85$0 [OPTION]... PROGRAM [ARGUMENT]...
86
87Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an
88error status if there is no known handling for PROGRAM.
89
90Options:
91  -h, --help      display this help and exit
92  -v, --version   output version information and exit
93  --run           try to run the given command, and emulate it if it fails
94
95Supported PROGRAM values:
96  aclocal      touch file \`aclocal.m4'
97  autoconf     touch file \`configure'
98  autoheader   touch file \`config.h.in'
99  automake     touch all \`Makefile.in' files
100  bison        create \`y.tab.[ch]', if possible, from existing .[ch]
101  flex         create \`lex.yy.c', if possible, from existing .c
102  help2man     touch the output file
103  lex          create \`lex.yy.c', if possible, from existing .c
104  makeinfo     touch the output file
105  tar          try tar, gnutar, gtar, then tar without non-portable flags
106  yacc         create \`y.tab.[ch]', if possible, from existing .[ch]"
107    ;;
108
109  -v|--v|--ve|--ver|--vers|--versi|--versio|--version)
110    echo "missing 0.3 - GNU automake"
111    ;;
112
113  -*)
114    echo 1>&2 "$0: Unknown \`$1' option"
115    echo 1>&2 "Try \`$0 --help' for more information"
116    exit 1
117    ;;
118
119  aclocal*)
120    echo 1>&2 "\
121WARNING: \`$1' is missing on your system.  You should only need it if
122         you modified \`acinclude.m4' or \`${configure_ac}'.  You might want
123         to install the \`Automake' and \`Perl' packages.  Grab them from
124         any GNU archive site."
125    touch aclocal.m4
126    ;;
127
128  autoconf*)
129    echo 1>&2 "\
130WARNING: \`$1' is missing on your system.  You should only need it if
131         you modified \`${configure_ac}'.  You might want to install the
132         \`Autoconf' and \`GNU m4' packages.  Grab them from any GNU
133         archive site."
134    touch configure
135    ;;
136
137  autoheader*)
138    echo 1>&2 "\
139WARNING: \`$1' is missing on your system.  You should only need it if
140         you modified \`acconfig.h' or \`${configure_ac}'.  You might want
141         to install the \`Autoconf' and \`GNU m4' packages.  Grab them
142         from any GNU archive site."
143    files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}`
144    test -z "$files" && files="config.h"
145    touch_files=
146    for f in $files; do
147      case "$f" in
148      *:*) touch_files="$touch_files "`echo "$f" |
149                                       sed -e 's/^[^:]*://' -e 's/:.*//'`;;
150      *) touch_files="$touch_files $f.in";;
151      esac
152    done
153    touch $touch_files
154    ;;
155
156  automake*)
157    echo 1>&2 "\
158WARNING: \`$1' is missing on your system.  You should only need it if
159         you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'.
160         You might want to install the \`Automake' and \`Perl' packages.
161         Grab them from any GNU archive site."
162    find . -type f -name Makefile.am -print |
163           sed 's/\.am$/.in/' |
164           while read f; do touch "$f"; done
165    ;;
166
167  bison|yacc)
168    echo 1>&2 "\
169WARNING: \`$1' is missing on your system.  You should only need it if
170         you modified a \`.y' file.  You may need the \`Bison' package
171         in order for those modifications to take effect.  You can get
172         \`Bison' from any GNU archive site."
173    rm -f y.tab.c y.tab.h
174    if [ $# -ne 1 ]; then
175        eval LASTARG="\${$#}"
176        case "$LASTARG" in
177        *.y)
178            SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`
179            if [ -f "$SRCFILE" ]; then
180                 cp "$SRCFILE" y.tab.c
181            fi
182            SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'`
183            if [ -f "$SRCFILE" ]; then
184                 cp "$SRCFILE" y.tab.h
185            fi
186          ;;
187        esac
188    fi
189    if [ ! -f y.tab.h ]; then
190        echo >y.tab.h
191    fi
192    if [ ! -f y.tab.c ]; then
193        echo 'main() { return 0; }' >y.tab.c
194    fi
195    ;;
196
197  lex|flex)
198    echo 1>&2 "\
199WARNING: \`$1' is missing on your system.  You should only need it if
200         you modified a \`.l' file.  You may need the \`Flex' package
201         in order for those modifications to take effect.  You can get
202         \`Flex' from any GNU archive site."
203    rm -f lex.yy.c
204    if [ $# -ne 1 ]; then
205        eval LASTARG="\${$#}"
206        case "$LASTARG" in
207        *.l)
208            SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`
209            if [ -f "$SRCFILE" ]; then
210                 cp "$SRCFILE" lex.yy.c
211            fi
212          ;;
213        esac
214    fi
215    if [ ! -f lex.yy.c ]; then
216        echo 'main() { return 0; }' >lex.yy.c
217    fi
218    ;;
219
220  help2man)
221    echo 1>&2 "\
222WARNING: \`$1' is missing on your system.  You should only need it if
223         you modified a dependency of a manual page.  You may need the
224         \`Help2man' package in order for those modifications to take
225         effect.  You can get \`Help2man' from any GNU archive site."
226
227    file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'`
228    if test -z "$file"; then
229        file=`echo "$*" | sed -n 's/.*--output=\([^ ]*\).*/\1/p'`
230    fi
231    if [ -f "$file" ]; then
232        touch $file
233    else
234        test -z "$file" || exec >$file
235        echo ".ab help2man is required to generate this page"
236        exit 1
237    fi
238    ;;
239
240  makeinfo)
241    if test -z "$run" && (makeinfo --version) > /dev/null 2>&1; then
242       # We have makeinfo, but it failed.
243       exit 1
244    fi
245
246    echo 1>&2 "\
247WARNING: \`$1' is missing on your system.  You should only need it if
248         you modified a \`.texi' or \`.texinfo' file, or any other file
249         indirectly affecting the aspect of the manual.  The spurious
250         call might also be the consequence of using a buggy \`make' (AIX,
251         DU, IRIX).  You might want to install the \`Texinfo' package or
252         the \`GNU make' package.  Grab either from any GNU archive site."
253    file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'`
254    if test -z "$file"; then
255      file=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
256      file=`sed -n '/^@setfilename/ { s/.* \([^ ]*\) *$/\1/; p; q; }' $file`
257    fi
258    touch $file
259    ;;
260
261  tar)
262    shift
263    if test -n "$run"; then
264      echo 1>&2 "ERROR: \`tar' requires --run"
265      exit 1
266    fi
267
268    # We have already tried tar in the generic part.
269    # Look for gnutar/gtar before invocation to avoid ugly error
270    # messages.
271    if (gnutar --version > /dev/null 2>&1); then
272       gnutar ${1+"$@"} && exit 0
273    fi
274    if (gtar --version > /dev/null 2>&1); then
275       gtar ${1+"$@"} && exit 0
276    fi
277    firstarg="$1"
278    if shift; then
279        case "$firstarg" in
280        *o*)
281            firstarg=`echo "$firstarg" | sed s/o//`
282            tar "$firstarg" ${1+"$@"} && exit 0
283            ;;
284        esac
285        case "$firstarg" in
286        *h*)
287            firstarg=`echo "$firstarg" | sed s/h//`
288            tar "$firstarg" ${1+"$@"} && exit 0
289            ;;
290        esac
291    fi
292
293    echo 1>&2 "\
294WARNING: I can't seem to be able to run \`tar' with the given arguments.
295         You may want to install GNU tar or Free paxutils, or check the
296         command line arguments."
297    exit 1
298    ;;
299
300  *)
301    echo 1>&2 "\
302WARNING: \`$1' is needed, and you do not seem to have it handy on your
303         system.  You might have modified some files without having the
304         proper tools for further handling them.  Check the \`README' file,
305         it often tells you about the needed prerequirements for installing
306         this package.  You may also peek at any GNU archive site, in case
307         some other package would contain this missing \`$1' program."
308    exit 1
309    ;;
310esac
311
312exit 0
Note: See TracBrowser for help on using the repository browser.