source: trunk/third/sed/missing @ 17271

Revision 17271, 6.1 KB checked in by ghudson, 23 years ago (diff)
This commit was generated by cvs2svn to compensate for changes in r17270, 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 (C) 1996, 1997 Free Software Foundation, Inc.
4# Franc,ois 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
21if test $# -eq 0; then
22  echo 1>&2 "Try \`$0 --help' for more information"
23  exit 1
24fi
25
26case "$1" in
27
28  -h|--h|--he|--hel|--help)
29    echo "\
30$0 [OPTION]... PROGRAM [ARGUMENT]...
31
32Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an
33error status if there is no known handling for PROGRAM.
34
35Options:
36  -h, --help      display this help and exit
37  -v, --version   output version information and exit
38
39Supported PROGRAM values:
40  aclocal      touch file \`aclocal.m4'
41  autoconf     touch file \`configure'
42  autoheader   touch file \`config.h.in'
43  automake     touch all \`Makefile.in' files
44  bison        create \`y.tab.[ch]', if possible, from existing .[ch]
45  flex         create \`lex.yy.c', if possible, from existing .c
46  lex          create \`lex.yy.c', if possible, from existing .c
47  makeinfo     touch the output file
48  yacc         create \`y.tab.[ch]', if possible, from existing .[ch]"
49    ;;
50
51  -v|--v|--ve|--ver|--vers|--versi|--versio|--version)
52    echo "missing - GNU libit 0.0"
53    ;;
54
55  -*)
56    echo 1>&2 "$0: Unknown \`$1' option"
57    echo 1>&2 "Try \`$0 --help' for more information"
58    exit 1
59    ;;
60
61  aclocal)
62    echo 1>&2 "\
63WARNING: \`$1' is missing on your system.  You should only need it if
64         you modified \`acinclude.m4' or \`configure.in'.  You might want
65         to install the \`Automake' and \`Perl' packages.  Grab them from
66         any GNU archive site."
67    touch aclocal.m4
68    ;;
69
70  autoconf)
71    echo 1>&2 "\
72WARNING: \`$1' is missing on your system.  You should only need it if
73         you modified \`configure.in'.  You might want to install the
74         \`Autoconf' and \`GNU m4' packages.  Grab them from any GNU
75         archive site."
76    touch configure
77    ;;
78
79  autoheader)
80    echo 1>&2 "\
81WARNING: \`$1' is missing on your system.  You should only need it if
82         you modified \`acconfig.h' or \`configure.in'.  You might want
83         to install the \`Autoconf' and \`GNU m4' packages.  Grab them
84         from any GNU archive site."
85    files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER([^):]*:\([^)]*\)).*/\1/p' configure.in`
86    if test -z "$files"; then
87      files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^):]*\)).*/\1/p' configure.in`
88      test -z "$files" || files="$files.in"
89    else
90      files=`echo "$files" | sed -e 's/:/ /g'`
91    fi
92    test -z "$files" && files="config.h.in"
93    touch $files
94    ;;
95
96  automake)
97    echo 1>&2 "\
98WARNING: \`$1' is missing on your system.  You should only need it if
99         you modified \`Makefile.am', \`acinclude.m4' or \`configure.in'.
100         You might want to install the \`Automake' and \`Perl' packages.
101         Grab them from any GNU archive site."
102    find . -type f -name Makefile.am -print \
103      | sed 's/^\(.*\).am$/touch \1.in/' \
104      | sh
105    ;;
106
107  bison|yacc)
108    echo 1>&2 "\
109WARNING: \`$1' is missing on your system.  You should only need it if
110         you modified a \`.y' file.  You may need the \`Bison' package
111         in order for those modifications to take effect.  You can get
112         \`Bison' from any GNU archive site."
113    rm -f y.tab.c y.tab.h
114    if [ $# -ne 1 ]; then
115        eval LASTARG="\${$#}"
116        case "$LASTARG" in
117        *.y)
118            SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`
119            if [ -f "$SRCFILE" ]; then
120                 cp "$SRCFILE" y.tab.c
121            fi
122            SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'`
123            if [ -f "$SRCFILE" ]; then
124                 cp "$SRCFILE" y.tab.h
125            fi
126          ;;
127        esac
128    fi
129    if [ ! -f y.tab.h ]; then
130        echo >y.tab.h
131    fi
132    if [ ! -f y.tab.c ]; then
133        echo 'main() { return 0; }' >y.tab.c
134    fi
135    ;;
136
137  lex|flex)
138    echo 1>&2 "\
139WARNING: \`$1' is missing on your system.  You should only need it if
140         you modified a \`.l' file.  You may need the \`Flex' package
141         in order for those modifications to take effect.  You can get
142         \`Flex' from any GNU archive site."
143    rm -f lex.yy.c
144    if [ $# -ne 1 ]; then
145        eval LASTARG="\${$#}"
146        case "$LASTARG" in
147        *.l)
148            SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`
149            if [ -f "$SRCFILE" ]; then
150                 cp "$SRCFILE" lex.yy.c
151            fi
152          ;;
153        esac
154    fi
155    if [ ! -f lex.yy.c ]; then
156        echo 'main() { return 0; }' >lex.yy.c
157    fi
158    ;;
159
160  makeinfo)
161    echo 1>&2 "\
162WARNING: \`$1' is missing on your system.  You should only need it if
163         you modified a \`.texi' or \`.texinfo' file, or any other file
164         indirectly affecting the aspect of the manual.  The spurious
165         call might also be the consequence of using a buggy \`make' (AIX,
166         DU, IRIX).  You might want to install the \`Texinfo' package or
167         the \`GNU make' package.  Grab either from any GNU archive site."
168    file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'`
169    if test -z "$file"; then
170      file=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
171      file=`sed -n '/^@setfilename/ { s/.* \([^ ]*\) *$/\1/; p; q; }' $file`
172    fi
173    touch $file
174    ;;
175
176  *)
177    echo 1>&2 "\
178WARNING: \`$1' is needed, and you do not seem to have it handy on your
179         system.  You might have modified some files without having the
180         proper tools for further handling them.  Check the \`README' file,
181         it often tells you about the needed prerequirements for installing
182         this package.  You may also peek at any GNU archive site, in case
183         some other package would contain this missing \`$1' program."
184    exit 1
185    ;;
186esac
187
188exit 0
Note: See TracBrowser for help on using the repository browser.