gettext: Force UTF-8 runtime and skip requiring ISO-8859-1

On musl, there is no real legacy (non-UTF-8) fr_FR locale.
These tests are designed for libcs that ship both fr_FR (ISO-8859-1)
and fr_FR.UTF-8. So the right thing will be to SKIP these tests

Unsetting LOCALE_FR will ensure that it does not enable ISO-8859-1
path, so reset it in run-ptest but thats not enough because it is
being set in the test's own init-env file as well so clear it in that
file as well.

Fixes
Failed ptests:
{'gettext': ['intl-2', 'intl-4', 'intl-thread-3', 'lang-sh', 'lang-bash']}

(From OE-Core rev: 0fe96efea084f4594df43f57e121cb2353bfafa7)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Khem Raj
2025-08-21 22:17:25 -07:00
committed by Richard Purdie
parent 1854cd6d37
commit 920334997f

View File

@@ -179,6 +179,16 @@ do_install_ptest() {
sed -i -e 's|${DEBUG_PREFIX_MAP}||g' ${D}${PTEST_PATH}/tests/init-env
}
do_install_ptest:append:libc-musl() {
# Force UTF-8 runtime and skip legacy fr_FR subcases
sed -i '3i export LANG=fr_FR.UTF-8; export LC_ALL=fr_FR.UTF-8' \
${D}${PTEST_PATH}/run-ptest
sed -i '3i export LOCALE_FR="none"; export LOCALE_FR_UTF8=fr_FR.UTF-8' \
${D}${PTEST_PATH}/run-ptest
sed -i -e 's|^LOCALE_FR="fr_FR.ISO-8859-1"|LOCALE_FR="none"|g' \
${D}${PTEST_PATH}/tests/init-env
}
RDEPENDS:${PN}-ptest += "coreutils make xz bash gawk autoconf locale-base-de-de locale-base-fr-fr"
RDEPENDS:${PN}-ptest:append:libc-glibc = "\
glibc-gconv-big5 \