/[autoconf]/autoconf/doc/autoconf.texi
ViewVC logotype

Diff of /autoconf/doc/autoconf.texi

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.556 by eggert, Wed Oct 31 19:26:21 2001 UTC revision 1.557 by eggert, Thu Nov 1 20:12:27 2001 UTC
# Line 8153  characters. Line 8153  characters.
8153    
8154  @item LANG  @item LANG
8155  @itemx LC_ALL  @itemx LC_ALL
 @itemx LC_TIME  
 @itemx LC_CTYPE  
 @itemx LANGUAGE  
8156  @itemx LC_COLLATE  @itemx LC_COLLATE
8157  @itemx LC_NUMERIC  @itemx LC_CTYPE
8158  @itemx LC_MESSAGES  @itemx LC_MESSAGES
8159    @itemx LC_NUMERIC
8160    @itemx LC_TIME
8161  @evindex LANG  @evindex LANG
8162  @evindex LC_ALL  @evindex LC_ALL
 @evindex LC_TIME  
 @evindex LC_CTYPE  
 @evindex LANGUAGE  
8163  @evindex LC_COLLATE  @evindex LC_COLLATE
8164  @evindex LC_NUMERIC  @evindex LC_CTYPE
8165  @evindex LC_MESSAGES  @evindex LC_MESSAGES
8166    @evindex LC_NUMERIC
8167    @evindex LC_TIME
8168    
8169    Autoconf-generated scripts normally set all these variables to
8170    @samp{C} because so much configuration code assumes the C locale and
8171    @sc{posix} requires that @env{LC_ALL} be set to @samp{C} if the C
8172    locale is desired.  However, some older, nonstandard systems (notably
8173    @sc{sco}) break if @env{LC_ALL} is set to @samp{C}, so when running on
8174    these systems Autoconf-generated scripts first try to unset the
8175    variables instead.
8176    
8177    @item LANGUAGE
8178    @evindex LANGUAGE
8179    
8180  These must not be set unconditionally because not all systems understand  @env{LANGUAGE} is not specified by @sc{posix}, but it is a @sc{gnu}
8181  e.g. @samp{LANG=C} (notably SCO).  Fixing @env{LC_MESSAGES} prevents  extension that overrides @env{LC_ALL} in some cases, so
8182  Solaris @command{sh} from translating var values in @code{set}!  Non-C  Autoconf-generated scripts set it too.
 @env{LC_CTYPE} values break the ctype check.  Fixing @env{LC_COLLATE}  
 makes scripts more portable in some cases.  For example, it causes the  
 regular expression @samp{[a-z]} to match only lower-case letters on  
 @sc{ascii} platforms.  However, @samp{[a-z]} does not work in general  
 even when @env{LC_COLLATE} is fixed; for example, it does not work for  
 @sc{ebcdic} platforms.  For maximum portability, you should use regular  
 expressions like @samp{[abcdefghijklmnopqrstuvwxyz]} that list  
 characters explicitly instead of relying on ranges.  
   
 @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},  
 builtin @command{unset}, for more details.  
8183    
8184  @item LINENO  @item LINENO
8185  @evindex LINENO  @evindex LINENO
# Line 8748  for @command{true}. Line 8745  for @command{true}.
8745  @prindex @command{unset}  @prindex @command{unset}
8746  You cannot assume the support of @command{unset}, nevertheless, because  You cannot assume the support of @command{unset}, nevertheless, because
8747  it is extremely useful to disable embarrassing variables such as  it is extremely useful to disable embarrassing variables such as
8748  @code{CDPATH} or @code{LANG}, you can test for its existence and use  @code{CDPATH}, you can test for its existence and use
8749  it @emph{provided} you give a neutralizing value when @command{unset} is  it @emph{provided} you give a neutralizing value when @command{unset} is
8750  not supported:  not supported:
8751    

Legend:
Removed from v.1.556  
changed lines
  Added in v.1.557

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26