Diff for /embedaddon/mtr/missing between versions 1.1.1.1 and 1.1.1.2

version 1.1.1.1, 2013/07/21 23:43:42 version 1.1.1.2, 2016/11/01 09:33:48
Line 1 Line 1
 #! /bin/sh  #! /bin/sh
# Common stub for a few missing GNU programs while installing.# Common wrapper for a few potentially missing GNU programs.
   
scriptversion=2009-04-28.21; # UTCscriptversion=2013-10-28.13; # UTC
   
# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006,# Copyright (C) 1996-2013 Free Software Foundation, Inc.
# 2008, 2009 Free Software Foundation, Inc.# Originally written by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
# Originally by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996. 
   
 # This program is free software; you can redistribute it and/or modify  # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by  # it under the terms of the GNU General Public License as published by
Line 26  scriptversion=2009-04-28.21; # UTC Line 25  scriptversion=2009-04-28.21; # UTC
 # the same distribution terms that you use for the rest of that program.  # the same distribution terms that you use for the rest of that program.
   
 if test $# -eq 0; then  if test $# -eq 0; then
  echo 1>&2 "Try \`$0 --help' for more information"  echo 1>&2 "Try '$0 --help' for more information"
   exit 1    exit 1
 fi  fi
   
run=:case $1 in
sed_output='s/.* --output[ =]\([^ ]*\).*/\1/p' 
sed_minuso='s/.* -o \([^ ]*\).*/\1/p' 
   
# In the cases where this matters, `missing' is being run in the  --is-lightweight)
# srcdir already.    # Used by our autoconf macros to check whether the available missing
if test -f configure.ac; then    # script is modern enough.
  configure_ac=configure.ac    exit 0
else    ;;
  configure_ac=configure.in 
fi 
   
msg="missing on your system"  --run)
     # Back-compat with the calling convention used by older automake.
     shift
     ;;
   
 case $1 in  
 --run)  
   # Try to run requested program, and just exit if it succeeds.  
   run=  
   shift  
   "$@" && exit 0  
   # Exit code 63 means version mismatch.  This often happens  
   # when the user try to use an ancient version of a tool on  
   # a file that requires a minimum version.  In this case we  
   # we should proceed has if the program had been absent, or  
   # if --run hadn't been passed.  
   if test $? = 63; then  
     run=:  
     msg="probably too old"  
   fi  
   ;;  
   
   -h|--h|--he|--hel|--help)    -h|--h|--he|--hel|--help)
     echo "\      echo "\
 $0 [OPTION]... PROGRAM [ARGUMENT]...  $0 [OPTION]... PROGRAM [ARGUMENT]...
   
Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return anRun 'PROGRAM [ARGUMENT]...', returning a proper advice when this fails due
error status if there is no known handling for PROGRAM.to PROGRAM being missing or too old.
   
 Options:  Options:
   -h, --help      display this help and exit    -h, --help      display this help and exit
   -v, --version   output version information and exit    -v, --version   output version information and exit
   --run           try to run the given command, and emulate it if it fails  
   
 Supported PROGRAM values:  Supported PROGRAM values:
  aclocal      touch file \`aclocal.m4'  aclocal   autoconf  autoheader   autom4te  automake  makeinfo
  autoconf     touch file \`configure'  bison     yacc      flex         lex       help2man
  autoheader   touch file \`config.h.in' 
  autom4te     touch the output file, or create a stub one 
  automake     touch all \`Makefile.in' files 
  bison        create \`y.tab.[ch]', if possible, from existing .[ch] 
  flex         create \`lex.yy.c', if possible, from existing .c 
  help2man     touch the output file 
  lex          create \`lex.yy.c', if possible, from existing .c 
  makeinfo     touch the output file 
  tar          try tar, gnutar, gtar, then tar without non-portable flags 
  yacc         create \`y.tab.[ch]', if possible, from existing .[ch] 
   
Version suffixes to PROGRAM as well as the prefixes \`gnu-', \`gnu', andVersion suffixes to PROGRAM as well as the prefixes 'gnu-', 'gnu', and
\`g' are ignored when checking the name.'g' are ignored when checking the name.
   
 Send bug reports to <bug-automake@gnu.org>."  Send bug reports to <bug-automake@gnu.org>."
     exit $?      exit $?
Line 100  Send bug reports to <bug-automake@gnu.org>." Line 70  Send bug reports to <bug-automake@gnu.org>."
     ;;      ;;
   
   -*)    -*)
    echo 1>&2 "$0: Unknown \`$1' option"    echo 1>&2 "$0: unknown '$1' option"
    echo 1>&2 "Try \`$0 --help' for more information"    echo 1>&2 "Try '$0 --help' for more information"
     exit 1      exit 1
     ;;      ;;
   
 esac  esac
   
# normalize program name to check for.# Run the given program, remember its exit status.
program=`echo "$1" | sed '"$@"; st=$?
  s/^gnu-//; t 
  s/^gnu//; t 
  s/^g//; t'` 
   
# Now exit if we have it, but it failed.  Also exit now if we# If it succeeded, we are done.
# don't have it and --version was passed (most likely to detecttest $st -eq 0 && exit 0
# the program).  This is about non-GNU programs, so use $1 not 
# $program. 
case $1 in 
  lex*|yacc*) 
    # Not GNU programs, they don't have --version. 
    ;; 
   
  tar*)# Also exit now if we it failed (or wasn't found), and '--version' was
    if test -n "$run"; then# passed; such an option is passed most likely to detect whether the
       echo 1>&2 "ERROR: \`tar' requires --run"# program is present and works.
       exit 1case $2 in --version|--help) exit $st;; esac
    elif test "x$2" = "x--version" || test "x$2" = "x--help"; then 
       exit 1 
    fi 
    ;; 
   
  *)# Exit code 63 means version mismatch.  This often happens when the user
    if test -z "$run" && ($1 --version) > /dev/null 2>&1; then# tries to use an ancient version of a tool on a file that requires a
       # We have it, but it failed.# minimum version.
       exit 1if test $st -eq 63; then
    elif test "x$2" = "x--version" || test "x$2" = "x--help"; then  msg="probably too old"
       # Could not run --version or --help.  This is probably someoneelif test $st -eq 127; then
       # running `$TOOL --version' or `$TOOL --help' to check whether  # Program was missing.
       # $TOOL exists and not knowing $TOOL uses missing.  msg="missing on your system"
       exit 1else
    fi  # Program was found and executed, but failed.  Give up.
    ;;  exit $st
esacfi
   
# If it does not exist, or fails to run (possibly an outdated version),perl_URL=http://www.perl.org/
# try to emulate it.flex_URL=http://flex.sourceforge.net/
case $program ingnu_software_URL=http://www.gnu.org/software
  aclocal*) 
    echo 1>&2 "\ 
WARNING: \`$1' is $msg.  You should only need it if 
         you modified \`acinclude.m4' or \`${configure_ac}'.  You might want 
         to install the \`Automake' and \`Perl' packages.  Grab them from 
         any GNU archive site." 
    touch aclocal.m4 
    ;; 
   
  autoconf*)program_details ()
    echo 1>&2 "\{
WARNING: \`$1' is $msg.  You should only need it if  case $1 in
         you modified \`${configure_ac}'.  You might want to install the    aclocal|automake)
         \`Autoconf' and \`GNU m4' packages.  Grab them from any GNU      echo "The '$1' program is part of the GNU Automake package:"
         archive site."      echo "<$gnu_software_URL/automake>"
    touch configure      echo "It also requires GNU Autoconf, GNU m4 and Perl in order to run:"
    ;;      echo "<$gnu_software_URL/autoconf>"
       echo "<$gnu_software_URL/m4/>"
       echo "<$perl_URL>"
       ;;
     autoconf|autom4te|autoheader)
       echo "The '$1' program is part of the GNU Autoconf package:"
       echo "<$gnu_software_URL/autoconf/>"
       echo "It also requires GNU m4 and Perl in order to run:"
       echo "<$gnu_software_URL/m4/>"
       echo "<$perl_URL>"
       ;;
   esac
 }
   
  autoheader*)give_advice ()
    echo 1>&2 "\{
WARNING: \`$1' is $msg.  You should only need it if  # Normalize program name to check for.
         you modified \`acconfig.h' or \`${configure_ac}'.  You might want  normalized_program=`echo "$1" | sed '
         to install the \`Autoconf' and \`GNU m4' packages.  Grab them    s/^gnu-//; t
         from any GNU archive site."    s/^gnu//; t
    files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}`    s/^g//; t'`
    test -z "$files" && files="config.h" 
    touch_files= 
    for f in $files; do 
      case $f in 
      *:*) touch_files="$touch_files "`echo "$f" | 
                                       sed -e 's/^[^:]*://' -e 's/:.*//'`;; 
      *) touch_files="$touch_files $f.in";; 
      esac 
    done 
    touch $touch_files 
    ;; 
   
  automake*)  printf '%s\n' "'$1' is $msg."
    echo 1>&2 "\ 
WARNING: \`$1' is $msg.  You should only need it if 
         you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'. 
         You might want to install the \`Automake' and \`Perl' packages. 
         Grab them from any GNU archive site." 
    find . -type f -name Makefile.am -print | 
           sed 's/\.am$/.in/' | 
           while read f; do touch "$f"; done 
    ;; 
   
  autom4te*)  configure_deps="'configure.ac' or m4 files included by 'configure.ac'"
    echo 1>&2 "\  case $normalized_program in
WARNING: \`$1' is needed, but is $msg.    autoconf*)
         You might have modified some files without having the      echo "You should only need it if you modified 'configure.ac',"
         proper tools for further handling them.      echo "or m4 files included by it."
         You can get \`$1' as part of \`Autoconf' from any GNU      program_details 'autoconf'
         archive site."      ;;
    autoheader*)
    file=`echo "$*" | sed -n "$sed_output"`      echo "You should only need it if you modified 'acconfig.h' or"
    test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`      echo "$configure_deps."
    if test -f "$file"; then      program_details 'autoheader'
        touch $file      ;;
    else    automake*)
        test -z "$file" || exec >$file      echo "You should only need it if you modified 'Makefile.am' or"
        echo "#! /bin/sh"      echo "$configure_deps."
        echo "# Created by GNU Automake missing as a replacement of"      program_details 'automake'
        echo "#  $ $@"      ;;
        echo "exit 0"    aclocal*)
        chmod +x $file      echo "You should only need it if you modified 'acinclude.m4' or"
        exit 1      echo "$configure_deps."
    fi      program_details 'aclocal'
       ;;
    autom4te*)
       echo "You might have modified some maintainer files that require"
       echo "the 'autom4te' program to be rebuilt."
       program_details 'autom4te'
       ;;
     bison*|yacc*)
       echo "You should only need it if you modified a '.y' file."
       echo "You may want to install the GNU Bison package:"
       echo "<$gnu_software_URL/bison/>"
       ;;
     lex*|flex*)
       echo "You should only need it if you modified a '.l' file."
       echo "You may want to install the Fast Lexical Analyzer package:"
       echo "<$flex_URL>"
       ;;
     help2man*)
       echo "You should only need it if you modified a dependency" \
            "of a man page."
       echo "You may want to install the GNU Help2man package:"
       echo "<$gnu_software_URL/help2man/>"
     ;;      ;;
       makeinfo*)
         echo "You should only need it if you modified a '.texi' file, or"
         echo "any other file indirectly affecting the aspect of the manual."
         echo "You might want to install the Texinfo package:"
         echo "<$gnu_software_URL/texinfo/>"
         echo "The spurious makeinfo call might also be the consequence of"
         echo "using a buggy 'make' (AIX, DU, IRIX), in which case you might"
         echo "want to install GNU make:"
         echo "<$gnu_software_URL/make/>"
         ;;
       *)
         echo "You might have modified some files without having the proper"
         echo "tools for further handling them.  Check the 'README' file, it"
         echo "often tells you about the needed prerequisites for installing"
         echo "this package.  You may also peek at any GNU archive site, in"
         echo "case some other package contains this missing '$1' program."
         ;;
     esac
   }
   
  bison*|yacc*)give_advice "$1" | sed -e '1s/^/WARNING: /' \
    echo 1>&2 "\                       -e '2,$s/^/         /' >&2
WARNING: \`$1' $msg.  You should only need it if 
         you modified a \`.y' file.  You may need the \`Bison' package 
         in order for those modifications to take effect.  You can get 
         \`Bison' from any GNU archive site." 
    rm -f y.tab.c y.tab.h 
    if test $# -ne 1; then 
        eval LASTARG="\${$#}" 
        case $LASTARG in 
        *.y) 
            SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'` 
            if test -f "$SRCFILE"; then 
                 cp "$SRCFILE" y.tab.c 
            fi 
            SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'` 
            if test -f "$SRCFILE"; then 
                 cp "$SRCFILE" y.tab.h 
            fi 
          ;; 
        esac 
    fi 
    if test ! -f y.tab.h; then 
        echo >y.tab.h 
    fi 
    if test ! -f y.tab.c; then 
        echo 'main() { return 0; }' >y.tab.c 
    fi 
    ;; 
   
  lex*|flex*)# Propagate the correct exit status (expected to be 127 for a program
    echo 1>&2 "\# not found, 63 for a program that failed due to version mismatch).
WARNING: \`$1' is $msg.  You should only need it ifexit $st
         you modified a \`.l' file.  You may need the \`Flex' package 
         in order for those modifications to take effect.  You can get 
         \`Flex' from any GNU archive site." 
    rm -f lex.yy.c 
    if test $# -ne 1; then 
        eval LASTARG="\${$#}" 
        case $LASTARG in 
        *.l) 
            SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'` 
            if test -f "$SRCFILE"; then 
                 cp "$SRCFILE" lex.yy.c 
            fi 
          ;; 
        esac 
    fi 
    if test ! -f lex.yy.c; then 
        echo 'main() { return 0; }' >lex.yy.c 
    fi 
    ;; 
 
  help2man*) 
    echo 1>&2 "\ 
WARNING: \`$1' is $msg.  You should only need it if 
         you modified a dependency of a manual page.  You may need the 
         \`Help2man' package in order for those modifications to take 
         effect.  You can get \`Help2man' from any GNU archive site." 
 
    file=`echo "$*" | sed -n "$sed_output"` 
    test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"` 
    if test -f "$file"; then 
        touch $file 
    else 
        test -z "$file" || exec >$file 
        echo ".ab help2man is required to generate this page" 
        exit $? 
    fi 
    ;; 
 
  makeinfo*) 
    echo 1>&2 "\ 
WARNING: \`$1' is $msg.  You should only need it if 
         you modified a \`.texi' or \`.texinfo' file, or any other file 
         indirectly affecting the aspect of the manual.  The spurious 
         call might also be the consequence of using a buggy \`make' (AIX, 
         DU, IRIX).  You might want to install the \`Texinfo' package or 
         the \`GNU make' package.  Grab either from any GNU archive site." 
    # The file to touch is that specified with -o ... 
    file=`echo "$*" | sed -n "$sed_output"` 
    test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"` 
    if test -z "$file"; then 
      # ... or it is the one specified with @setfilename ... 
      infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'` 
      file=`sed -n ' 
        /^@setfilename/{ 
          s/.* \([^ ]*\) *$/\1/ 
          p 
          q 
        }' $infile` 
      # ... or it is derived from the source name (dir/f.texi becomes f.info) 
      test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info 
    fi 
    # If the file does not exist, the user really needs makeinfo; 
    # let's fail without touching anything. 
    test -f $file || exit 1 
    touch $file 
    ;; 
 
  tar*) 
    shift 
 
    # We have already tried tar in the generic part. 
    # Look for gnutar/gtar before invocation to avoid ugly error 
    # messages. 
    if (gnutar --version > /dev/null 2>&1); then 
       gnutar "$@" && exit 0 
    fi 
    if (gtar --version > /dev/null 2>&1); then 
       gtar "$@" && exit 0 
    fi 
    firstarg="$1" 
    if shift; then 
        case $firstarg in 
        *o*) 
            firstarg=`echo "$firstarg" | sed s/o//` 
            tar "$firstarg" "$@" && exit 0 
            ;; 
        esac 
        case $firstarg in 
        *h*) 
            firstarg=`echo "$firstarg" | sed s/h//` 
            tar "$firstarg" "$@" && exit 0 
            ;; 
        esac 
    fi 
 
    echo 1>&2 "\ 
WARNING: I can't seem to be able to run \`tar' with the given arguments. 
         You may want to install GNU tar or Free paxutils, or check the 
         command line arguments." 
    exit 1 
    ;; 
 
  *) 
    echo 1>&2 "\ 
WARNING: \`$1' is needed, and is $msg. 
         You might have modified some files without having the 
         proper tools for further handling them.  Check the \`README' file, 
         it often tells you about the needed prerequisites for installing 
         this package.  You may also peek at any GNU archive site, in case 
         some other package would contain this missing \`$1' program." 
    exit 1 
    ;; 
esac 
 
exit 0 
   
 # Local variables:  # Local variables:
 # eval: (add-hook 'write-file-hooks 'time-stamp)  # eval: (add-hook 'write-file-hooks 'time-stamp)

Removed from v.1.1.1.1  
changed lines
  Added in v.1.1.1.2


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>