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