github.com/jlmucb/cloudproxy@v0.0.0-20170830161738-b5aa0b619bc4/src/third_party/google-glog/missing (about)

     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: