~ubuntu-branches/ubuntu/trusty/log4shib/trusty

« back to all changes in this revision

Viewing changes to config/missing

  • Committer: Package Import Robot
  • Author(s): Russ Allbery
  • Date: 2013-05-22 20:21:15 UTC
  • mfrom: (1.1.1)
  • Revision ID: package-import@ubuntu.com-20130522202115-2qzanli9fue82x24
Tags: 1.0.5-1
* New upstream release.
* Switch to xz compression for *.debian.tar and the *.deb packages.
* Use canonical URLs for Vcs-Browser and Vcs-Git.
* Update standards version to 3.9.4 (no changes required).

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
#! /bin/sh
2
2
# Common stub for a few missing GNU programs while installing.
3
3
 
4
 
scriptversion=2003-09-02.23
 
4
scriptversion=2012-01-06.18; # UTC
5
5
 
6
 
# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003 
7
 
#   Free Software Foundation, Inc.
 
6
# Copyright (C) 1996-2012 Free Software Foundation, Inc.
8
7
# Originally by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
9
8
 
10
9
# This program is free software; you can redistribute it and/or modify
18
17
# GNU General Public License for more details.
19
18
 
20
19
# 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.
 
20
# along with this program.  If not, see <http://www.gnu.org/licenses/>.
24
21
 
25
22
# As a special exception to the GNU General Public License, if you
26
23
# distribute this file as part of a program that contains a
28
25
# the same distribution terms that you use for the rest of that program.
29
26
 
30
27
if test $# -eq 0; then
31
 
  echo 1>&2 "Try \`$0 --help' for more information"
 
28
  echo 1>&2 "Try '$0 --help' for more information"
32
29
  exit 1
33
30
fi
34
31
 
35
32
run=:
 
33
sed_output='s/.* --output[ =]\([^ ]*\).*/\1/p'
 
34
sed_minuso='s/.* -o \([^ ]*\).*/\1/p'
36
35
 
37
 
# In the cases where this matters, `missing' is being run in the
 
36
# In the cases where this matters, 'missing' is being run in the
38
37
# srcdir already.
39
38
if test -f configure.ac; then
40
39
  configure_ac=configure.ac
44
43
 
45
44
msg="missing on your system"
46
45
 
47
 
case "$1" in
 
46
case $1 in
48
47
--run)
49
48
  # Try to run requested program, and just exit if it succeeds.
50
49
  run=
60
59
    msg="probably too old"
61
60
  fi
62
61
  ;;
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
62
 
69
63
  -h|--h|--he|--hel|--help)
70
64
    echo "\
71
65
$0 [OPTION]... PROGRAM [ARGUMENT]...
72
66
 
73
 
Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an
 
67
Handle 'PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an
74
68
error status if there is no known handling for PROGRAM.
75
69
 
76
70
Options:
79
73
  --run           try to run the given command, and emulate it if it fails
80
74
 
81
75
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
 
76
  aclocal      touch file 'aclocal.m4'
 
77
  autoconf     touch file 'configure'
 
78
  autoheader   touch file 'config.h.in'
 
79
  autom4te     touch the output file, or create a stub one
 
80
  automake     touch all 'Makefile.in' files
 
81
  bison        create 'y.tab.[ch]', if possible, from existing .[ch]
 
82
  flex         create 'lex.yy.c', if possible, from existing .c
88
83
  help2man     touch the output file
89
 
  lex          create \`lex.yy.c', if possible, from existing .c
 
84
  lex          create 'lex.yy.c', if possible, from existing .c
90
85
  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]
 
86
  yacc         create 'y.tab.[ch]', if possible, from existing .[ch]
 
87
 
 
88
Version suffixes to PROGRAM as well as the prefixes 'gnu-', 'gnu', and
 
89
'g' are ignored when checking the name.
93
90
 
94
91
Send bug reports to <bug-automake@gnu.org>."
 
92
    exit $?
95
93
    ;;
96
94
 
97
95
  -v|--v|--ve|--ver|--vers|--versi|--versio|--version)
98
96
    echo "missing $scriptversion (GNU Automake)"
 
97
    exit $?
99
98
    ;;
100
99
 
101
100
  -*)
102
 
    echo 1>&2 "$0: Unknown \`$1' option"
103
 
    echo 1>&2 "Try \`$0 --help' for more information"
 
101
    echo 1>&2 "$0: Unknown '$1' option"
 
102
    echo 1>&2 "Try '$0 --help' for more information"
104
103
    exit 1
105
104
    ;;
106
105
 
 
106
esac
 
107
 
 
108
# normalize program name to check for.
 
109
program=`echo "$1" | sed '
 
110
  s/^gnu-//; t
 
111
  s/^gnu//; t
 
112
  s/^g//; t'`
 
113
 
 
114
# Now exit if we have it, but it failed.  Also exit now if we
 
115
# don't have it and --version was passed (most likely to detect
 
116
# the program).  This is about non-GNU programs, so use $1 not
 
117
# $program.
 
118
case $1 in
 
119
  lex*|yacc*)
 
120
    # Not GNU programs, they don't have --version.
 
121
    ;;
 
122
 
 
123
  *)
 
124
    if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
 
125
       # We have it, but it failed.
 
126
       exit 1
 
127
    elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
 
128
       # Could not run --version or --help.  This is probably someone
 
129
       # running '$TOOL --version' or '$TOOL --help' to check whether
 
130
       # $TOOL exists and not knowing $TOOL uses missing.
 
131
       exit 1
 
132
    fi
 
133
    ;;
 
134
esac
 
135
 
 
136
# If it does not exist, or fails to run (possibly an outdated version),
 
137
# try to emulate it.
 
138
case $program in
107
139
  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
140
    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
 
141
WARNING: '$1' is $msg.  You should only need it if
 
142
         you modified 'acinclude.m4' or '${configure_ac}'.  You might want
 
143
         to install the Automake and Perl packages.  Grab them from
117
144
         any GNU archive site."
118
145
    touch aclocal.m4
119
146
    ;;
120
147
 
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
 
 
 
148
  autoconf*)
127
149
    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
 
150
WARNING: '$1' is $msg.  You should only need it if
 
151
         you modified '${configure_ac}'.  You might want to install the
 
152
         Autoconf and GNU m4 packages.  Grab them from any GNU
131
153
         archive site."
132
154
    touch configure
133
155
    ;;
134
156
 
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
 
 
 
157
  autoheader*)
141
158
    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
 
159
WARNING: '$1' is $msg.  You should only need it if
 
160
         you modified 'acconfig.h' or '${configure_ac}'.  You might want
 
161
         to install the Autoconf and GNU m4 packages.  Grab them
145
162
         from any GNU archive site."
146
163
    files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}`
147
164
    test -z "$files" && files="config.h"
148
165
    touch_files=
149
166
    for f in $files; do
150
 
      case "$f" in
 
167
      case $f in
151
168
      *:*) touch_files="$touch_files "`echo "$f" |
152
169
                                       sed -e 's/^[^:]*://' -e 's/:.*//'`;;
153
170
      *) touch_files="$touch_files $f.in";;
157
174
    ;;
158
175
 
159
176
  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
177
    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.
 
178
WARNING: '$1' is $msg.  You should only need it if
 
179
         you modified 'Makefile.am', 'acinclude.m4' or '${configure_ac}'.
 
180
         You might want to install the Automake and Perl packages.
169
181
         Grab them from any GNU archive site."
170
182
    find . -type f -name Makefile.am -print |
171
183
           sed 's/\.am$/.in/' |
172
184
           while read f; do touch "$f"; done
173
185
    ;;
174
186
 
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
 
 
 
187
  autom4te*)
181
188
    echo 1>&2 "\
182
 
WARNING: \`$1' is needed, but is $msg.
 
189
WARNING: '$1' is needed, but is $msg.
183
190
         You might have modified some files without having the
184
191
         proper tools for further handling them.
185
 
         You can get \`$1' as part of \`Autoconf' from any GNU
 
192
         You can get '$1' as part of Autoconf from any GNU
186
193
         archive site."
187
194
 
188
 
    file=`echo "$*" | sed -n 's/.*--output[ =]*\([^ ]*\).*/\1/p'`
189
 
    test -z "$file" && file=`echo "$*" | sed -n 's/.*-o[ ]*\([^ ]*\).*/\1/p'`
 
195
    file=`echo "$*" | sed -n "$sed_output"`
 
196
    test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
190
197
    if test -f "$file"; then
191
198
        touch $file
192
199
    else
200
207
    fi
201
208
    ;;
202
209
 
203
 
  bison|yacc)
 
210
  bison*|yacc*)
204
211
    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
 
212
WARNING: '$1' $msg.  You should only need it if
 
213
         you modified a '.y' file.  You may need the Bison package
207
214
         in order for those modifications to take effect.  You can get
208
 
         \`Bison' from any GNU archive site."
 
215
         Bison from any GNU archive site."
209
216
    rm -f y.tab.c y.tab.h
210
 
    if [ $# -ne 1 ]; then
211
 
        eval LASTARG="\${$#}"
212
 
        case "$LASTARG" in
 
217
    if test $# -ne 1; then
 
218
        eval LASTARG=\${$#}
 
219
        case $LASTARG in
213
220
        *.y)
214
221
            SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`
215
 
            if [ -f "$SRCFILE" ]; then
 
222
            if test -f "$SRCFILE"; then
216
223
                 cp "$SRCFILE" y.tab.c
217
224
            fi
218
225
            SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'`
219
 
            if [ -f "$SRCFILE" ]; then
 
226
            if test -f "$SRCFILE"; then
220
227
                 cp "$SRCFILE" y.tab.h
221
228
            fi
222
229
          ;;
223
230
        esac
224
231
    fi
225
 
    if [ ! -f y.tab.h ]; then
 
232
    if test ! -f y.tab.h; then
226
233
        echo >y.tab.h
227
234
    fi
228
 
    if [ ! -f y.tab.c ]; then
 
235
    if test ! -f y.tab.c; then
229
236
        echo 'main() { return 0; }' >y.tab.c
230
237
    fi
231
238
    ;;
232
239
 
233
 
  lex|flex)
 
240
  lex*|flex*)
234
241
    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
 
242
WARNING: '$1' is $msg.  You should only need it if
 
243
         you modified a '.l' file.  You may need the Flex package
237
244
         in order for those modifications to take effect.  You can get
238
 
         \`Flex' from any GNU archive site."
 
245
         Flex from any GNU archive site."
239
246
    rm -f lex.yy.c
240
 
    if [ $# -ne 1 ]; then
241
 
        eval LASTARG="\${$#}"
242
 
        case "$LASTARG" in
 
247
    if test $# -ne 1; then
 
248
        eval LASTARG=\${$#}
 
249
        case $LASTARG in
243
250
        *.l)
244
251
            SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`
245
 
            if [ -f "$SRCFILE" ]; then
 
252
            if test -f "$SRCFILE"; then
246
253
                 cp "$SRCFILE" lex.yy.c
247
254
            fi
248
255
          ;;
249
256
        esac
250
257
    fi
251
 
    if [ ! -f lex.yy.c ]; then
 
258
    if test ! -f lex.yy.c; then
252
259
        echo 'main() { return 0; }' >lex.yy.c
253
260
    fi
254
261
    ;;
255
262
 
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
 
 
 
263
  help2man*)
262
264
    echo 1>&2 "\
263
 
WARNING: \`$1' is $msg.  You should only need it if
 
265
WARNING: '$1' is $msg.  You should only need it if
264
266
         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
         Help2man package in order for those modifications to take
 
268
         effect.  You can get Help2man from any GNU archive site."
267
269
 
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
 
270
    file=`echo "$*" | sed -n "$sed_output"`
 
271
    test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
 
272
    if test -f "$file"; then
273
273
        touch $file
274
274
    else
275
275
        test -z "$file" || exec >$file
276
276
        echo ".ab help2man is required to generate this page"
277
 
        exit 1
 
277
        exit $?
278
278
    fi
279
279
    ;;
280
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
 
 
 
281
  makeinfo*)
287
282
    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
 
283
WARNING: '$1' is $msg.  You should only need it if
 
284
         you modified a '.texi' or '.texinfo' file, or any other file
290
285
         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'`
 
286
         call might also be the consequence of using a buggy 'make' (AIX,
 
287
         DU, IRIX).  You might want to install the Texinfo package or
 
288
         the GNU make package.  Grab either from any GNU archive site."
 
289
    # The file to touch is that specified with -o ...
 
290
    file=`echo "$*" | sed -n "$sed_output"`
 
291
    test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
295
292
    if test -z "$file"; then
296
 
      file=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
297
 
      file=`sed -n '/^@setfilename/ { s/.* \([^ ]*\) *$/\1/; p; q; }' $file`
 
293
      # ... or it is the one specified with @setfilename ...
 
294
      infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
 
295
      file=`sed -n '
 
296
        /^@setfilename/{
 
297
          s/.* \([^ ]*\) *$/\1/
 
298
          p
 
299
          q
 
300
        }' $infile`
 
301
      # ... or it is derived from the source name (dir/f.texi becomes f.info)
 
302
      test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info
298
303
    fi
 
304
    # If the file does not exist, the user really needs makeinfo;
 
305
    # let's fail without touching anything.
 
306
    test -f $file || exit 1
299
307
    touch $file
300
308
    ;;
301
309
 
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
310
  *)
342
311
    echo 1>&2 "\
343
 
WARNING: \`$1' is needed, and is $msg.
 
312
WARNING: '$1' is needed, and is $msg.
344
313
         You might have modified some files without having the
345
 
         proper tools for further handling them.  Check the \`README' file,
 
314
         proper tools for further handling them.  Check the 'README' file,
346
315
         it often tells you about the needed prerequisites for installing
347
316
         this package.  You may also peek at any GNU archive site, in case
348
 
         some other package would contain this missing \`$1' program."
 
317
         some other package would contain this missing '$1' program."
349
318
    exit 1
350
319
    ;;
351
320
esac
356
325
# eval: (add-hook 'write-file-hooks 'time-stamp)
357
326
# time-stamp-start: "scriptversion="
358
327
# time-stamp-format: "%:y-%02m-%02d.%02H"
359
 
# time-stamp-end: "$"
 
328
# time-stamp-time-zone: "UTC"
 
329
# time-stamp-end: "; # UTC"
360
330
# End: