96e4b257e1
the latest versions found from gzip CVS repository. configure will try to find a POSIX shell to be used by the scripts. This should ease portability on systems which have pre-POSIX /bin/sh. xzgrep and xzdiff support .xz, .lzma, .gz, and .bz2 files. xzmore and xzless support only .xz and .lzma files. The name of the xz executable used in these scripts is now correct even if --program-transform-name has been used.
64 lines
1.7 KiB
Plaintext
64 lines
1.7 KiB
Plaintext
# Find a POSIX-conforming shell.
|
|
|
|
# Copyright (C) 2007-2008 Free Software Foundation, Inc.
|
|
|
|
# This file is free software; the Free Software Foundation
|
|
# gives unlimited permission to copy and/or distribute it,
|
|
# with or without modifications, as long as this notice is preserved.
|
|
|
|
# Written by Paul Eggert.
|
|
|
|
# If a POSIX-conforming shell can be found, set POSIX_SHELL and
|
|
# PREFERABLY_POSIX_SHELL to it. If not, set POSIX_SHELL to the
|
|
# empty string and PREFERABLY_POSIX_SHELL to '/bin/sh'.
|
|
|
|
AC_DEFUN([gl_POSIX_SHELL],
|
|
[
|
|
AC_CACHE_CHECK([for a shell that conforms to POSIX], [gl_cv_posix_shell],
|
|
[gl_test_posix_shell_script='
|
|
func_return () {
|
|
(exit [$]1)
|
|
}
|
|
func_success () {
|
|
func_return 0
|
|
}
|
|
func_failure () {
|
|
func_return 1
|
|
}
|
|
func_ret_success () {
|
|
return 0
|
|
}
|
|
func_ret_failure () {
|
|
return 1
|
|
}
|
|
subshell_umask_sanity () {
|
|
(umask 22; (umask 0); test $(umask) -eq 22)
|
|
}
|
|
test "[$](echo foo)" = foo &&
|
|
func_success &&
|
|
! func_failure &&
|
|
func_ret_success &&
|
|
! func_ret_failure &&
|
|
(set x && func_ret_success y && test x = "[$]1") &&
|
|
subshell_umask_sanity
|
|
'
|
|
for gl_cv_posix_shell in \
|
|
"$CONFIG_SHELL" "$SHELL" /bin/sh /bin/bash /bin/ksh /bin/sh5 no; do
|
|
case $gl_cv_posix_shell in
|
|
/*)
|
|
"$gl_cv_posix_shell" -c "$gl_test_posix_shell_script" 2>/dev/null \
|
|
&& break;;
|
|
esac
|
|
done])
|
|
|
|
if test "$gl_cv_posix_shell" != no; then
|
|
POSIX_SHELL=$gl_cv_posix_shell
|
|
PREFERABLY_POSIX_SHELL=$POSIX_SHELL
|
|
else
|
|
POSIX_SHELL=
|
|
PREFERABLY_POSIX_SHELL=/bin/sh
|
|
fi
|
|
AC_SUBST([POSIX_SHELL])
|
|
AC_SUBST([PREFERABLY_POSIX_SHELL])
|
|
])
|