Subject: bug#69418: test failure when no french locale is installed

From: Bruno Haible <[email-masked]>
Date: Tue, 27 Feb 2024 00:05:49 +0100

Testing the current coreutils git master:

On a Debian 12 system, in which I have not installed a French UTF-8 locale,
I see a test failure of tests/misc/join-utf8.

The essential lines from test-suite.log:

+ test set = set
+ LC_ALL=none
../tests/misc/join-utf8.sh: line 24: warning: setlocale: LC_ALL: cannot change locale (none): No such file or directory

The cause is that on such a system, LOCALE_FR_UTF8, as determined by
gnulib/m4/locale-fr.m4, is 'none', not empty or absent.

The attached patch fixes the failure.

>From 74be78b1efba477016c153e0eacc93a3c661e748 Mon Sep 17 00:00:00 2001
From: Bruno Haible <[email-masked]>
Date: Mon, 26 Feb 2024 22:33:18 +0100
Subject: [PATCH] join: Avoid test failure on systems which have no French
 UTF-8 locale

* tests/misc/join-utf8.sh: Test the value of LOCALE_FR_UTF8 against
'none', not against a missing value.
---
 tests/misc/join-utf8.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tests/misc/join-utf8.sh b/tests/misc/join-utf8.sh
index 2dbe2bb81..9af9e55ce 100755
--- a/tests/misc/join-utf8.sh
+++ b/tests/misc/join-utf8.sh
@@ -19,7 +19,7 @@
 . "${srcdir=.}/tests/init.sh"; path_prepend_ ./src
 print_ver_ join
 
-test "${LOCALE_FR_UTF8+set}" = set || skip_ "French UTF-8 locale not available"
+test "$LOCALE_FR_UTF8" != none || skip_ "French UTF-8 locale not available"
 
 LC_ALL=$LOCALE_FR_UTF8
 export LC_ALL
-- 
2.34.1