~ubuntu-branches/ubuntu/karmic/mpg123/karmic

« back to all changes in this revision

Viewing changes to libltdl/config/missing

  • Committer: Bazaar Package Importer
  • Author(s): César Muñoz Albitres
  • Date: 2009-05-03 17:55:27 UTC
  • mfrom: (6.2.2 squeeze)
  • Revision ID: james.westby@ubuntu.com-20090503175527-z94edsnxmiccxpy8
Tags: 1.7.2-3ubuntu1
* Merge from debian unstable, remaining changes:
  - Remove arts from dependencies

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#! /bin/sh
 
2
# Common stub for a few missing GNU programs while installing.
 
3
 
 
4
scriptversion=2006-05-10.23
 
5
 
 
6
# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006
 
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., 51 Franklin Street, Fifth Floor, Boston, MA
 
23
# 02110-1301, 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
sed_output='s/.* --output[ =]\([^ ]*\).*/\1/p'
 
37
sed_minuso='s/.* -o \([^ ]*\).*/\1/p'
 
38
 
 
39
# In the cases where this matters, `missing' is being run in the
 
40
# srcdir already.
 
41
if test -f configure.ac; then
 
42
  configure_ac=configure.ac
 
43
else
 
44
  configure_ac=configure.in
 
45
fi
 
46
 
 
47
msg="missing on your system"
 
48
 
 
49
case $1 in
 
50
--run)
 
51
  # Try to run requested program, and just exit if it succeeds.
 
52
  run=
 
53
  shift
 
54
  "$@" && exit 0
 
55
  # Exit code 63 means version mismatch.  This often happens
 
56
  # when the user try to use an ancient version of a tool on
 
57
  # a file that requires a minimum version.  In this case we
 
58
  # we should proceed has if the program had been absent, or
 
59
  # if --run hadn't been passed.
 
60
  if test $? = 63; then
 
61
    run=:
 
62
    msg="probably too old"
 
63
  fi
 
64
  ;;
 
65
 
 
66
  -h|--h|--he|--hel|--help)
 
67
    echo "\
 
68
$0 [OPTION]... PROGRAM [ARGUMENT]...
 
69
 
 
70
Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an
 
71
error status if there is no known handling for PROGRAM.
 
72
 
 
73
Options:
 
74
  -h, --help      display this help and exit
 
75
  -v, --version   output version information and exit
 
76
  --run           try to run the given command, and emulate it if it fails
 
77
 
 
78
Supported PROGRAM values:
 
79
  aclocal      touch file \`aclocal.m4'
 
80
  autoconf     touch file \`configure'
 
81
  autoheader   touch file \`config.h.in'
 
82
  autom4te     touch the output file, or create a stub one
 
83
  automake     touch all \`Makefile.in' files
 
84
  bison        create \`y.tab.[ch]', if possible, from existing .[ch]
 
85
  flex         create \`lex.yy.c', if possible, from existing .c
 
86
  help2man     touch the output file
 
87
  lex          create \`lex.yy.c', if possible, from existing .c
 
88
  makeinfo     touch the output file
 
89
  tar          try tar, gnutar, gtar, then tar without non-portable flags
 
90
  yacc         create \`y.tab.[ch]', if possible, from existing .[ch]
 
91
 
 
92
Send bug reports to <bug-automake@gnu.org>."
 
93
    exit $?
 
94
    ;;
 
95
 
 
96
  -v|--v|--ve|--ver|--vers|--versi|--versio|--version)
 
97
    echo "missing $scriptversion (GNU Automake)"
 
98
    exit $?
 
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
esac
 
108
 
 
109
# Now exit if we have it, but it failed.  Also exit now if we
 
110
# don't have it and --version was passed (most likely to detect
 
111
# the program).
 
112
case $1 in
 
113
  lex|yacc)
 
114
    # Not GNU programs, they don't have --version.
 
115
    ;;
 
116
 
 
117
  tar)
 
118
    if test -n "$run"; then
 
119
       echo 1>&2 "ERROR: \`tar' requires --run"
 
120
       exit 1
 
121
    elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
 
122
       exit 1
 
123
    fi
 
124
    ;;
 
125
 
 
126
  *)
 
127
    if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
 
128
       # We have it, but it failed.
 
129
       exit 1
 
130
    elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
 
131
       # Could not run --version or --help.  This is probably someone
 
132
       # running `$TOOL --version' or `$TOOL --help' to check whether
 
133
       # $TOOL exists and not knowing $TOOL uses missing.
 
134
       exit 1
 
135
    fi
 
136
    ;;
 
137
esac
 
138
 
 
139
# If it does not exist, or fails to run (possibly an outdated version),
 
140
# try to emulate it.
 
141
case $1 in
 
142
  aclocal*)
 
143
    echo 1>&2 "\
 
144
WARNING: \`$1' is $msg.  You should only need it if
 
145
         you modified \`acinclude.m4' or \`${configure_ac}'.  You might want
 
146
         to install the \`Automake' and \`Perl' packages.  Grab them from
 
147
         any GNU archive site."
 
148
    touch aclocal.m4
 
149
    ;;
 
150
 
 
151
  autoconf)
 
152
    echo 1>&2 "\
 
153
WARNING: \`$1' is $msg.  You should only need it if
 
154
         you modified \`${configure_ac}'.  You might want to install the
 
155
         \`Autoconf' and \`GNU m4' packages.  Grab them from any GNU
 
156
         archive site."
 
157
    touch configure
 
158
    ;;
 
159
 
 
160
  autoheader)
 
161
    echo 1>&2 "\
 
162
WARNING: \`$1' is $msg.  You should only need it if
 
163
         you modified \`acconfig.h' or \`${configure_ac}'.  You might want
 
164
         to install the \`Autoconf' and \`GNU m4' packages.  Grab them
 
165
         from any GNU archive site."
 
166
    files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}`
 
167
    test -z "$files" && files="config.h"
 
168
    touch_files=
 
169
    for f in $files; do
 
170
      case $f in
 
171
      *:*) touch_files="$touch_files "`echo "$f" |
 
172
                                       sed -e 's/^[^:]*://' -e 's/:.*//'`;;
 
173
      *) touch_files="$touch_files $f.in";;
 
174
      esac
 
175
    done
 
176
    touch $touch_files
 
177
    ;;
 
178
 
 
179
  automake*)
 
180
    echo 1>&2 "\
 
181
WARNING: \`$1' is $msg.  You should only need it if
 
182
         you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'.
 
183
         You might want to install the \`Automake' and \`Perl' packages.
 
184
         Grab them from any GNU archive site."
 
185
    find . -type f -name Makefile.am -print |
 
186
           sed 's/\.am$/.in/' |
 
187
           while read f; do touch "$f"; done
 
188
    ;;
 
189
 
 
190
  autom4te)
 
191
    echo 1>&2 "\
 
192
WARNING: \`$1' is needed, but is $msg.
 
193
         You might have modified some files without having the
 
194
         proper tools for further handling them.
 
195
         You can get \`$1' as part of \`Autoconf' from any GNU
 
196
         archive site."
 
197
 
 
198
    file=`echo "$*" | sed -n "$sed_output"`
 
199
    test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
 
200
    if test -f "$file"; then
 
201
        touch $file
 
202
    else
 
203
        test -z "$file" || exec >$file
 
204
        echo "#! /bin/sh"
 
205
        echo "# Created by GNU Automake missing as a replacement of"
 
206
        echo "#  $ $@"
 
207
        echo "exit 0"
 
208
        chmod +x $file
 
209
        exit 1
 
210
    fi
 
211
    ;;
 
212
 
 
213
  bison|yacc)
 
214
    echo 1>&2 "\
 
215
WARNING: \`$1' $msg.  You should only need it if
 
216
         you modified a \`.y' file.  You may need the \`Bison' package
 
217
         in order for those modifications to take effect.  You can get
 
218
         \`Bison' from any GNU archive site."
 
219
    rm -f y.tab.c y.tab.h
 
220
    if test $# -ne 1; then
 
221
        eval LASTARG="\${$#}"
 
222
        case $LASTARG in
 
223
        *.y)
 
224
            SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`
 
225
            if test -f "$SRCFILE"; then
 
226
                 cp "$SRCFILE" y.tab.c
 
227
            fi
 
228
            SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'`
 
229
            if test -f "$SRCFILE"; then
 
230
                 cp "$SRCFILE" y.tab.h
 
231
            fi
 
232
          ;;
 
233
        esac
 
234
    fi
 
235
    if test ! -f y.tab.h; then
 
236
        echo >y.tab.h
 
237
    fi
 
238
    if test ! -f y.tab.c; then
 
239
        echo 'main() { return 0; }' >y.tab.c
 
240
    fi
 
241
    ;;
 
242
 
 
243
  lex|flex)
 
244
    echo 1>&2 "\
 
245
WARNING: \`$1' is $msg.  You should only need it if
 
246
         you modified a \`.l' file.  You may need the \`Flex' package
 
247
         in order for those modifications to take effect.  You can get
 
248
         \`Flex' from any GNU archive site."
 
249
    rm -f lex.yy.c
 
250
    if test $# -ne 1; then
 
251
        eval LASTARG="\${$#}"
 
252
        case $LASTARG in
 
253
        *.l)
 
254
            SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`
 
255
            if test -f "$SRCFILE"; then
 
256
                 cp "$SRCFILE" lex.yy.c
 
257
            fi
 
258
          ;;
 
259
        esac
 
260
    fi
 
261
    if test ! -f lex.yy.c; then
 
262
        echo 'main() { return 0; }' >lex.yy.c
 
263
    fi
 
264
    ;;
 
265
 
 
266
  help2man)
 
267
    echo 1>&2 "\
 
268
WARNING: \`$1' is $msg.  You should only need it if
 
269
         you modified a dependency of a manual page.  You may need the
 
270
         \`Help2man' package in order for those modifications to take
 
271
         effect.  You can get \`Help2man' from any GNU archive site."
 
272
 
 
273
    file=`echo "$*" | sed -n "$sed_output"`
 
274
    test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
 
275
    if test -f "$file"; then
 
276
        touch $file
 
277
    else
 
278
        test -z "$file" || exec >$file
 
279
        echo ".ab help2man is required to generate this page"
 
280
        exit 1
 
281
    fi
 
282
    ;;
 
283
 
 
284
  makeinfo)
 
285
    echo 1>&2 "\
 
286
WARNING: \`$1' is $msg.  You should only need it if
 
287
         you modified a \`.texi' or \`.texinfo' file, or any other file
 
288
         indirectly affecting the aspect of the manual.  The spurious
 
289
         call might also be the consequence of using a buggy \`make' (AIX,
 
290
         DU, IRIX).  You might want to install the \`Texinfo' package or
 
291
         the \`GNU make' package.  Grab either from any GNU archive site."
 
292
    # The file to touch is that specified with -o ...
 
293
    file=`echo "$*" | sed -n "$sed_output"`
 
294
    test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
 
295
    if test -z "$file"; then
 
296
      # ... or it is the one specified with @setfilename ...
 
297
      infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
 
298
      file=`sed -n '
 
299
        /^@setfilename/{
 
300
          s/.* \([^ ]*\) *$/\1/
 
301
          p
 
302
          q
 
303
        }' $infile`
 
304
      # ... or it is derived from the source name (dir/f.texi becomes f.info)
 
305
      test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info
 
306
    fi
 
307
    # If the file does not exist, the user really needs makeinfo;
 
308
    # let's fail without touching anything.
 
309
    test -f $file || exit 1
 
310
    touch $file
 
311
    ;;
 
312
 
 
313
  tar)
 
314
    shift
 
315
 
 
316
    # We have already tried tar in the generic part.
 
317
    # Look for gnutar/gtar before invocation to avoid ugly error
 
318
    # messages.
 
319
    if (gnutar --version > /dev/null 2>&1); then
 
320
       gnutar "$@" && exit 0
 
321
    fi
 
322
    if (gtar --version > /dev/null 2>&1); then
 
323
       gtar "$@" && exit 0
 
324
    fi
 
325
    firstarg="$1"
 
326
    if shift; then
 
327
        case $firstarg in
 
328
        *o*)
 
329
            firstarg=`echo "$firstarg" | sed s/o//`
 
330
            tar "$firstarg" "$@" && exit 0
 
331
            ;;
 
332
        esac
 
333
        case $firstarg in
 
334
        *h*)
 
335
            firstarg=`echo "$firstarg" | sed s/h//`
 
336
            tar "$firstarg" "$@" && exit 0
 
337
            ;;
 
338
        esac
 
339
    fi
 
340
 
 
341
    echo 1>&2 "\
 
342
WARNING: I can't seem to be able to run \`tar' with the given arguments.
 
343
         You may want to install GNU tar or Free paxutils, or check the
 
344
         command line arguments."
 
345
    exit 1
 
346
    ;;
 
347
 
 
348
  *)
 
349
    echo 1>&2 "\
 
350
WARNING: \`$1' is needed, and is $msg.
 
351
         You might have modified some files without having the
 
352
         proper tools for further handling them.  Check the \`README' file,
 
353
         it often tells you about the needed prerequisites for installing
 
354
         this package.  You may also peek at any GNU archive site, in case
 
355
         some other package would contain this missing \`$1' program."
 
356
    exit 1
 
357
    ;;
 
358
esac
 
359
 
 
360
exit 0
 
361
 
 
362
# Local variables:
 
363
# eval: (add-hook 'write-file-hooks 'time-stamp)
 
364
# time-stamp-start: "scriptversion="
 
365
# time-stamp-format: "%:y-%02m-%02d.%02H"
 
366
# time-stamp-end: "$"
 
367
# End: