Annotation of embedaddon/libnet/m4/shell.m4, revision 1.1

1.1     ! misho       1: # Check for a working shell.
        !             2: 
        !             3: # Copyright (C) 2000-2001, 2007, 2009-2017 Free Software Foundation, Inc.
        !             4: # This program is free software; you can redistribute it and/or modify
        !             5: # it under the terms of the GNU General Public License as published by
        !             6: # the Free Software Foundation; either version 3, or (at your option)
        !             7: # any later version.
        !             8: 
        !             9: # This program is distributed in the hope that it will be useful,
        !            10: # but WITHOUT ANY WARRANTY; without even the implied warranty of
        !            11: # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
        !            12: # GNU General Public License for more details.
        !            13: 
        !            14: # You should have received a copy of the GNU General Public License
        !            15: # along with this program; if not, write to the Free Software
        !            16: # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
        !            17: # 02111-1307, USA.
        !            18: 
        !            19: # AC_PROG_SHELL
        !            20: # -------------
        !            21: # Check for a working (i.e. POSIX-compatible) shell.
        !            22: # Written by Paul Eggert <eggert@twinsun.com>,
        !            23: # from an idea suggested by Albert Chin-A-Young <china@thewrittenword.com>.
        !            24: AC_DEFUN([AC_PROG_SHELL],
        !            25:   [AC_MSG_CHECKING([for a POSIX-compliant shell])
        !            26:    AC_CACHE_VAL(ac_cv_path_shell,
        !            27:      [ac_command='
        !            28:         # Test the noclobber option, using the portable POSIX.2 syntax.
        !            29:         set -C
        !            30:         rm -f conftest.c
        !            31:         >conftest.c || exit
        !            32:         >|conftest.c || exit
        !            33:         !>conftest.c || exit
        !            34:         # Test that $(...) works.
        !            35:         test "$(expr 3 + 4)" -eq 7 || exit
        !            36:       '
        !            37:       # Solaris 11 /bin/sh (AT&T Research) 93u 2011-02-08 has a file
        !            38:       # descriptor bug that breaks zgrep and is hard to test for
        !            39:       # directly.  At some point $(...) is reading a pipe from the
        !            40:       # subshell, but the pipe is also open in the parent shell, so
        !            41:       # the read deadlocks.  Prefer some other shell if available.
        !            42:       ac_maybe_solaris_sh_bug='test "${.sh.version}"'
        !            43: 
        !            44:       ac_cv_path_shell=no
        !            45: 
        !            46:       case $SHELL in
        !            47:       /*)
        !            48:         rm -f conftest.c
        !            49:         if ("$SHELL" -c "$ac_command") 2>/dev/null; then
        !            50:           "$SHELL" -c "$ac_maybe_solaris_sh_bug" 2>/dev/null ||
        !            51:             ac_cv_path_shell=$SHELL
        !            52:         fi
        !            53:       esac
        !            54: 
        !            55:       case $ac_cv_path_shell in
        !            56:       no)
        !            57:         # Prefer shells that are more likely to be installed in the
        !            58:         # same place on all hosts of this platform.  Therefore, prefer
        !            59:         # shells in /bin and /usr/bin to shells in the installer's
        !            60:         # PATH.  Also, loop through PATH first and then through
        !            61:         # shells, since less-"nice" shells in /bin and /usr/bin are
        !            62:         # more likely to be installed than "nicer" shells elsewhere.
        !            63:         ac_break_if_good_shell=:
        !            64:         as_save_IFS=$IFS; IFS=:
        !            65:         for as_dir in /bin /usr/bin $PATH
        !            66:         do
        !            67:           IFS=$as_save_IFS
        !            68:           case $as_dir in
        !            69:           /*)
        !            70:             for ac_base in sh bash ksh sh5; do
        !            71:               rm -f conftest.c
        !            72:               if ("$as_dir/$ac_base" -c "$ac_command") 2>/dev/null; then
        !            73:                 if "$as_dir/$ac_base" -c "$ac_maybe_solaris_sh_bug" 2>/dev/null
        !            74:                 then
        !            75:                   test "$ac_cv_path_shell" = no
        !            76:                 else
        !            77:                   ac_break_if_good_shell=break
        !            78:                   :
        !            79:                 fi && ac_cv_path_shell=$as_dir/$ac_base
        !            80:                 $ac_break_if_good_shell
        !            81:               fi
        !            82:             done
        !            83:             $ac_break_if_good_shell
        !            84:           esac
        !            85:         done
        !            86:         rm -f conftest.c
        !            87:       esac])
        !            88:    AC_MSG_RESULT($ac_cv_path_shell)
        !            89:    SHELL=$ac_cv_path_shell
        !            90:    if test "$SHELL" = no; then
        !            91:      SHELL=/bin/sh
        !            92:      AC_MSG_WARN([using $SHELL, even though it does not conform to POSIX])
        !            93:    fi
        !            94:    if "$SHELL" -c "$ac_maybe_solaris_sh_bug" 2>/dev/null; then
        !            95:      AC_MSG_WARN([using $SHELL, even though it may have file descriptor bugs])
        !            96:    fi
        !            97:    AC_SUBST(SHELL)])

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