LC_COLLATE and LC_NUMERIC.
* autoconf.m4: Don't rely on character ranges with tr.
* doc/autoconf.texi (Special Shell Variables): Adjust.
+2000-08-01 Akim Demaille <akim@epita.fr>
+
+ * acgeneral.m4 (_AC_INIT_PREPARE_ENVIRONMENT): Neutralize also
+ LC_COLLATE and LC_NUMERIC.
+ * autoconf.m4: Don't rely on character ranges with tr.
+ * doc/autoconf.texi (Special Shell Variables): Adjust.
+
2000-08-01 Akim Demaille <akim@epita.fr>
* acfunctions.m4 (_AC_LIBOBJ_STRTOD, AC_FUNC_STRTOD,
# NLS nuisances.
AC_SHELL_UNSET([LANG], [C])
AC_SHELL_UNSET([LC_ALL], [C])
+AC_SHELL_UNSET([LC_TIME], [C])
AC_SHELL_UNSET([LC_CTYPE], [C])
AC_SHELL_UNSET([LANGUAGE], [C])
+AC_SHELL_UNSET([LC_COLLATE], [C])
+AC_SHELL_UNSET([LC_NUMERIC], [C])
AC_SHELL_UNSET([LC_MESSAGES], [C])
# IFS
exit 1"
# NLS nuisances.
-# Only set these to C if already set. These must not be set unconditionally
-# because not all systems understand e.g. LANG=C (notably SCO).
-# Fixing LC_MESSAGES prevents Solaris sh from translating var values in `set'!
-# Non-C LC_CTYPE values break the ctype check.
if test "${LANG+set}" = set; then LANG=C; export LANG; fi
if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi
-if test "${LC_MESSAGES+set}" = set; then LC_MESSAGES=C; export LC_MESSAGES; fi
if test "${LC_CTYPE+set}" = set; then LC_CTYPE=C; export LC_CTYPE; fi
+if test "${LC_MESSAGES+set}" = set; then LC_MESSAGES=C; export LC_MESSAGES; fi
# ac_LF_and_DOT
# We use echo to avoid assuming a particular line-breaking character.
# The warnings are the concatenation of 1. application's defaults,
# 2. $WARNINGS, $3 command line options, in that order.
# Set them in the order expected by the M4 macros: the converse.
+alphabet='abcdefghijklmnopqrstuvwxyz'
+ALPHABET='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
_ac_warnings=
-for warning in `IFS=,; echo syntax,$WARNINGS,$warnings | tr 'A-Z' 'a-z'`
+for warning in `IFS=,; echo syntax,$WARNINGS,$warnings |
+ tr $ALPHABET $alphabet`
do
test -n $warning || continue
_ac_warnings="$warning"`test -n "$_ac_warnings" && echo ",$_ac_warnings"`
exit 1"
# NLS nuisances.
-# Only set these to C if already set. These must not be set unconditionally
-# because not all systems understand e.g. LANG=C (notably SCO).
-# Fixing LC_MESSAGES prevents Solaris sh from translating var values in `set'!
-# Non-C LC_CTYPE values break the ctype check.
if test "${LANG+set}" = set; then LANG=C; export LANG; fi
if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi
-if test "${LC_MESSAGES+set}" = set; then LC_MESSAGES=C; export LC_MESSAGES; fi
if test "${LC_CTYPE+set}" = set; then LC_CTYPE=C; export LC_CTYPE; fi
+if test "${LC_MESSAGES+set}" = set; then LC_MESSAGES=C; export LC_MESSAGES; fi
# ac_LF_and_DOT
# We use echo to avoid assuming a particular line-breaking character.
# The warnings are the concatenation of 1. application's defaults,
# 2. $WARNINGS, $3 command line options, in that order.
# Set them in the order expected by the M4 macros: the converse.
+alphabet='abcdefghijklmnopqrstuvwxyz'
+ALPHABET='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
_ac_warnings=
-for warning in `IFS=,; echo syntax,$WARNINGS,$warnings | tr 'A-Z' 'a-z'`
+for warning in `IFS=,; echo syntax,$WARNINGS,$warnings |
+ tr $ALPHABET $alphabet`
do
test -n $warning || continue
_ac_warnings="$warning"`test -n "$_ac_warnings" && echo ",$_ac_warnings"`
exit 1"
# NLS nuisances.
-# Only set these to C if already set. These must not be set unconditionally
-# because not all systems understand e.g. LANG=C (notably SCO).
-# Fixing LC_MESSAGES prevents Solaris sh from translating var values in `set'!
-# Non-C LC_CTYPE values break the ctype check.
if test "${LANG+set}" = set; then LANG=C; export LANG; fi
if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi
-if test "${LC_MESSAGES+set}" = set; then LC_MESSAGES=C; export LC_MESSAGES; fi
if test "${LC_CTYPE+set}" = set; then LC_CTYPE=C; export LC_CTYPE; fi
+if test "${LC_MESSAGES+set}" = set; then LC_MESSAGES=C; export LC_MESSAGES; fi
# ac_LF_and_DOT
# We use echo to avoid assuming a particular line-breaking character.
# The warnings are the concatenation of 1. application's defaults,
# 2. $WARNINGS, $3 command line options, in that order.
# Set them in the order expected by the M4 macros: the converse.
+alphabet='abcdefghijklmnopqrstuvwxyz'
+ALPHABET='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
_ac_warnings=
-for warning in `IFS=,; echo syntax,$WARNINGS,$warnings | tr 'A-Z' 'a-z'`
+for warning in `IFS=,; echo syntax,$WARNINGS,$warnings |
+ tr $ALPHABET $alphabet`
do
test -n $warning || continue
_ac_warnings="$warning"`test -n "$_ac_warnings" && echo ",$_ac_warnings"`
@item LANG
@itemx LC_ALL
+@itemx LC_TIME
@itemx LC_CTYPE
@itemx LANGUAGE
+@itemx LC_COLLATE
+@itemx LC_NUMERIC
@itemx LC_MESSAGES
@evindex LANG
@evindex LC_ALL
+@evindex LC_TIME
@evindex LC_CTYPE
@evindex LANGUAGE
+@evindex LC_COLLATE
+@evindex LC_NUMERIC
@evindex LC_MESSAGES
These must not be set unconditionally because not all systems understand
e.g. @samp{LANG=C} (notably SCO). Fixing @code{LC_MESSAGES} prevents
Solaris @command{sh} from translating var values in @code{set}! Non-C
-@code{LC_CTYPE} values break the ctype check. @code{LANGUAGE} is a
-@sc{gnu} extension.
+@code{LC_CTYPE} values break the ctype check. Fixing @code{LC_COLLATE}
+prevents accented characters from being match by @samp{[a-z]} etc. You
+are nevertheless encouraged to list explicitly the characters instead of
+relying on ranges. @code{LANGUAGE} is a @sc{gnu} extension.
@emph{If} one of these variables is set, you should try to unset it,
using @samp{C} as a fall back value. see @ref{Limitations of Builtins},
# NLS nuisances.
AC_SHELL_UNSET([LANG], [C])
AC_SHELL_UNSET([LC_ALL], [C])
+AC_SHELL_UNSET([LC_TIME], [C])
AC_SHELL_UNSET([LC_CTYPE], [C])
AC_SHELL_UNSET([LANGUAGE], [C])
+AC_SHELL_UNSET([LC_COLLATE], [C])
+AC_SHELL_UNSET([LC_NUMERIC], [C])
AC_SHELL_UNSET([LC_MESSAGES], [C])
# IFS
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.022.
-.TH AUTOCONF "1" "July 2000" "GNU autoconf 2.14a" FSF
+.TH AUTOCONF "1" "August 2000" "GNU autoconf 2.14a" FSF
.SH NAME
autoconf \- Generate configuration scripts
.SH SYNOPSIS