missing
author Sam Lantinga <slouken@libsdl.org>
Fri, 31 May 2002 04:45:46 +0000
changeset 385 daa944f00154
parent 0 74212992fb08
permissions -rwxr-xr-x
*** empty log message ***
     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 
    21 if test $# -eq 0; then
    22   echo 1>&2 "Try \`$0 --help' for more information"
    23   exit 1
    24 fi
    25 
    26 case "$1" in
    27 
    28   -h|--h|--he|--hel|--help)
    29     echo "\
    30 $0 [OPTION]... PROGRAM [ARGUMENT]...
    31 
    32 Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an
    33 error status if there is no known handling for PROGRAM.
    34 
    35 Options:
    36   -h, --help      display this help and exit
    37   -v, --version   output version information and exit
    38 
    39 Supported 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 "\
    63 WARNING: \`$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 "\
    72 WARNING: \`$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 "\
    81 WARNING: \`$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     test -z "$files" && files="config.h"
    87     touch_files=
    88     for f in $files; do
    89       case "$f" in
    90       *:*) touch_files="$touch_files "`echo "$f" |
    91 				       sed -e 's/^[^:]*://' -e 's/:.*//'`;;
    92       *) touch_files="$touch_files $f.in";;
    93       esac
    94     done
    95     touch $touch_files
    96     ;;
    97 
    98   automake)
    99     echo 1>&2 "\
   100 WARNING: \`$1' is missing on your system.  You should only need it if
   101          you modified \`Makefile.am', \`acinclude.m4' or \`configure.in'.
   102          You might want to install the \`Automake' and \`Perl' packages.
   103          Grab them from any GNU archive site."
   104     find . -type f -name Makefile.am -print |
   105 	   sed 's/\.am$/.in/' |
   106 	   while read f; do touch "$f"; done
   107     ;;
   108 
   109   bison|yacc)
   110     echo 1>&2 "\
   111 WARNING: \`$1' is missing on your system.  You should only need it if
   112          you modified a \`.y' file.  You may need the \`Bison' package
   113          in order for those modifications to take effect.  You can get
   114          \`Bison' from any GNU archive site."
   115     rm -f y.tab.c y.tab.h
   116     if [ $# -ne 1 ]; then
   117         eval LASTARG="\${$#}"
   118 	case "$LASTARG" in
   119 	*.y)
   120 	    SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`
   121 	    if [ -f "$SRCFILE" ]; then
   122 	         cp "$SRCFILE" y.tab.c
   123 	    fi
   124 	    SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'`
   125 	    if [ -f "$SRCFILE" ]; then
   126 	         cp "$SRCFILE" y.tab.h
   127 	    fi
   128 	  ;;
   129 	esac
   130     fi
   131     if [ ! -f y.tab.h ]; then
   132 	echo >y.tab.h
   133     fi
   134     if [ ! -f y.tab.c ]; then
   135 	echo 'main() { return 0; }' >y.tab.c
   136     fi
   137     ;;
   138 
   139   lex|flex)
   140     echo 1>&2 "\
   141 WARNING: \`$1' is missing on your system.  You should only need it if
   142          you modified a \`.l' file.  You may need the \`Flex' package
   143          in order for those modifications to take effect.  You can get
   144          \`Flex' from any GNU archive site."
   145     rm -f lex.yy.c
   146     if [ $# -ne 1 ]; then
   147         eval LASTARG="\${$#}"
   148 	case "$LASTARG" in
   149 	*.l)
   150 	    SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`
   151 	    if [ -f "$SRCFILE" ]; then
   152 	         cp "$SRCFILE" lex.yy.c
   153 	    fi
   154 	  ;;
   155 	esac
   156     fi
   157     if [ ! -f lex.yy.c ]; then
   158 	echo 'main() { return 0; }' >lex.yy.c
   159     fi
   160     ;;
   161 
   162   makeinfo)
   163     echo 1>&2 "\
   164 WARNING: \`$1' is missing on your system.  You should only need it if
   165          you modified a \`.texi' or \`.texinfo' file, or any other file
   166          indirectly affecting the aspect of the manual.  The spurious
   167          call might also be the consequence of using a buggy \`make' (AIX,
   168          DU, IRIX).  You might want to install the \`Texinfo' package or
   169          the \`GNU make' package.  Grab either from any GNU archive site."
   170     file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'`
   171     if test -z "$file"; then
   172       file=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
   173       file=`sed -n '/^@setfilename/ { s/.* \([^ ]*\) *$/\1/; p; q; }' $file`
   174     fi
   175     touch $file
   176     ;;
   177 
   178   *)
   179     echo 1>&2 "\
   180 WARNING: \`$1' is needed, and you do not seem to have it handy on your
   181          system.  You might have modified some files without having the
   182          proper tools for further handling them.  Check the \`README' file,
   183          it often tells you about the needed prerequirements for installing
   184          this package.  You may also peek at any GNU archive site, in case
   185          some other package would contain this missing \`$1' program."
   186     exit 1
   187     ;;
   188 esac
   189 
   190 exit 0