gash-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: cannot configure coreutils-9.4


From: Timothy Sample
Subject: Re: cannot configure coreutils-9.4
Date: Thu, 07 Sep 2023 11:15:58 -0600
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/28.2 (gnu/linux)

An update:

Timothy Sample <samplet@ngyro.com> writes:

> Janneke Nieuwenhuizen <janneke@gnu.org> writes:
>
>> { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_locale_fr" >&5
>> printf "%s\n" "$gt_cv_locale_fr" >&6; }
>>   LOCALE_FR=$gt_cv_locale_fr
>>   case $LOCALE_FR in #(
>>       '' | *[[:space:]\"\$\'*[]*)
>>       #'' | *[\"\$\'*[]*)
>>             { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: invalid 
>> locale \"$LOCALE_FR\"; assuming \"none\"" >&5
>> printf "%s\n" "$as_me: WARNING: invalid locale \"$LOCALE_FR\"; assuming 
>> \"none\"" >&2;}
>>       LOCALE_FR=none;;
>>   esac
>
> Huh.  First of all, that pattern looks fishy to me.  (Technically it’s
> okay, and Gash should handle it, but it’s very odd to have the bare
> opening bracket at the end like that.)

Gash *can* handle that part.  It’s normal to do that to get “[” as part
of a bracket expression.  We even have a test for it!  :)

>Because of that, I wonder if the problem occurs earlier.  Looking at
>gnulib, the "[]" at the end is substituted in....  Either way, I will
>take a look and make it work.

This is also normal.  Due to M4 quoting, “@<:@” is how “[” is written.

It turns out Gash doesn’t like the character class (“[:space:]”).
(Judging by the commented line, you may have already figured that out!)
This is because Guile does not directly support locale dependent
character classes.  I guess using regular expressions would get us
there, since Guile uses the C library for that.  However, that’s a bit
of a kludge.  We could also ignore locales and use Unicode character
classes, but that runs a little roughshod over the semantics of the
shell.  Let me think about it.

In the meantime, how about replacing “[:space:]” in the configure script
with “"$IFS"”?  (Mind the quotes!)  From reading the Gnulib commit and
associated Emacs thread, it looks like that’s the intent anyway.


-- Tim



reply via email to

[Prev in Thread] Current Thread [Next in Thread]