diff mbox series

[2/3] gettext: Skip test known to fail on musl

Message ID 20250822051726.2429206-2-raj.khem@gmail.com
State New
Headers show
Series [1/3] elfutils: Remove run-backtrace-dwarf from musl ptest XFAILs list | expand

Commit Message

Khem Raj Aug. 22, 2025, 5:17 a.m. UTC
* Use posix thread on musl and cache
* Force using system posix complaint printf
* Add coreutils to ptest dependencies

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 ...-tests-needing-BIG5-encoding-on-musl.patch | 84 +++++++++++++++++++
 meta/recipes-core/gettext/gettext_0.23.1.bb   |  7 +-
 2 files changed, 90 insertions(+), 1 deletion(-)
 create mode 100644 meta/recipes-core/gettext/gettext/0001-Ignore-failing-tests-needing-BIG5-encoding-on-musl.patch

Comments

Mathieu Dubois-Briand Aug. 22, 2025, 10:40 a.m. UTC | #1
On Fri Aug 22, 2025 at 7:17 AM CEST, Khem Raj via lists.openembedded.org wrote:
> * Use posix thread on musl and cache
> * Force using system posix complaint printf
> * Add coreutils to ptest dependencies
>
> Signed-off-by: Khem Raj <raj.khem@gmail.com>
> ---
>  ...-tests-needing-BIG5-encoding-on-musl.patch | 84 +++++++++++++++++++
>  meta/recipes-core/gettext/gettext_0.23.1.bb   |  7 +-
>  2 files changed, 90 insertions(+), 1 deletion(-)
>  create mode 100644 meta/recipes-core/gettext/gettext/0001-Ignore-failing-tests-needing-BIG5-encoding-on-musl.patch
>
> diff --git a/meta/recipes-core/gettext/gettext/0001-Ignore-failing-tests-needing-BIG5-encoding-on-musl.patch b/meta/recipes-core/gettext/gettext/0001-Ignore-failing-tests-needing-BIG5-encoding-on-musl.patch
> new file mode 100644
> index 00000000000..481bcc0cb27
> --- /dev/null
> +++ b/meta/recipes-core/gettext/gettext/0001-Ignore-failing-tests-needing-BIG5-encoding-on-musl.patch

Hi Khem,

I had some patch fuzz with this patch, probably because of the unicode
chars on the last line.

I did fix it manually on my branch, and it looks like the issue is gone.
So as long as you are fine with this, no action required.

https://git.openembedded.org/openembedded-core-contrib/commit/?h=mathieu/master-next&id=1da6cc16bfe20e49007716511ea2d1cff0660006

Best regards,
Mathieu
Khem Raj Aug. 22, 2025, 2:53 p.m. UTC | #2
On Fri, Aug 22, 2025 at 3:40 AM Mathieu Dubois-Briand
<mathieu.dubois-briand@bootlin.com> wrote:
>
> On Fri Aug 22, 2025 at 7:17 AM CEST, Khem Raj via lists.openembedded.org wrote:
> > * Use posix thread on musl and cache
> > * Force using system posix complaint printf
> > * Add coreutils to ptest dependencies
> >
> > Signed-off-by: Khem Raj <raj.khem@gmail.com>
> > ---
> >  ...-tests-needing-BIG5-encoding-on-musl.patch | 84 +++++++++++++++++++
> >  meta/recipes-core/gettext/gettext_0.23.1.bb   |  7 +-
> >  2 files changed, 90 insertions(+), 1 deletion(-)
> >  create mode 100644 meta/recipes-core/gettext/gettext/0001-Ignore-failing-tests-needing-BIG5-encoding-on-musl.patch
> >
> > diff --git a/meta/recipes-core/gettext/gettext/0001-Ignore-failing-tests-needing-BIG5-encoding-on-musl.patch b/meta/recipes-core/gettext/gettext/0001-Ignore-failing-tests-needing-BIG5-encoding-on-musl.patch
> > new file mode 100644
> > index 00000000000..481bcc0cb27
> > --- /dev/null
> > +++ b/meta/recipes-core/gettext/gettext/0001-Ignore-failing-tests-needing-BIG5-encoding-on-musl.patch
>
> Hi Khem,
>
> I had some patch fuzz with this patch, probably because of the unicode
> chars on the last line.

hmm, yeah I usually push patches into contrib yoe/mut branch too. Its
easier to cherry pick at times since ML may have issues with unicode
 etc.
>
> I did fix it manually on my branch, and it looks like the issue is gone.
> So as long as you are fine with this, no action required.
>
> https://git.openembedded.org/openembedded-core-contrib/commit/?h=mathieu/master-next&id=1da6cc16bfe20e49007716511ea2d1cff0660006
>

looks good. Thanks for taking care of it.

> Best regards,
> Mathieu
>
> --
> Mathieu Dubois-Briand, Bootlin
> Embedded Linux and Kernel engineering
> https://bootlin.com
>
Alexander Kanavin Aug. 24, 2025, 10:19 a.m. UTC | #3
On Fri, 22 Aug 2025 at 07:17, Khem Raj via lists.openembedded.org
<raj.khem=gmail.com@lists.openembedded.org> wrote:
> +This test fails on Linux with musl libc
> +which does not support the BIG5 encoding in 'iconv'.
> +
> +Upstream-Status: Inappropriate [Musl-specific]
> ++exit 77
> +SRC_URI:append:libc-musl = " file://0001-Ignore-failing-tests-needing-BIG5-encoding-on-musl.patch"

Doing all of this is horrible for maintenance overhead. We're already
several gettext versions behind because no one has time or willpower
to update, and this makes it worse, not better. If you want to fix
tests on musl please do so with a patch that upstream accepts.

Alex
diff mbox series

Patch

diff --git a/meta/recipes-core/gettext/gettext/0001-Ignore-failing-tests-needing-BIG5-encoding-on-musl.patch b/meta/recipes-core/gettext/gettext/0001-Ignore-failing-tests-needing-BIG5-encoding-on-musl.patch
new file mode 100644
index 00000000000..481bcc0cb27
--- /dev/null
+++ b/meta/recipes-core/gettext/gettext/0001-Ignore-failing-tests-needing-BIG5-encoding-on-musl.patch
@@ -0,0 +1,84 @@ 
+From a6e95c626cd52423ca3ff75d47bb2f08b29ad5c8 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Thu, 21 Aug 2025 13:24:47 -0700
+Subject: [PATCH] Ignore failing tests needing BIG5 encoding on musl
+
+This test fails on Linux with musl libc
+which does not support the BIG5 encoding in 'iconv'.
+
+Upstream-Status: Inappropriate [Musl-specific]
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ gettext-tools/tests/msgcat-22             | 2 ++
+ gettext-tools/tests/msgconv-2             | 2 ++
+ gettext-tools/tests/msgconv-8             | 2 ++
+ gettext-tools/tests/msgmerge-compendium-6 | 2 ++
+ gettext-tools/tests/xgettext-python-3     | 2 ++
+ 5 files changed, 10 insertions(+)
+
+diff --git a/gettext-tools/tests/msgcat-22 b/gettext-tools/tests/msgcat-22
+index 6047188..abe5877 100755
+--- a/gettext-tools/tests/msgcat-22
++++ b/gettext-tools/tests/msgcat-22
+@@ -6,6 +6,8 @@
+ # Note: This test fails on Linux with musl libc versions that don't support
+ # the GB18030 encoding in 'iconv'.
+ 
++exit 77
++
+ cat <<\EOF > mcat-test22.po
+ msgid ""
+ msgstr ""
+diff --git a/gettext-tools/tests/msgconv-2 b/gettext-tools/tests/msgconv-2
+index d286cda..b02e1be 100755
+--- a/gettext-tools/tests/msgconv-2
++++ b/gettext-tools/tests/msgconv-2
+@@ -7,6 +7,8 @@
+ # Note: This test fails on Linux with musl libc versions that don't support
+ # the BIG5 encoding in 'iconv'.
+ 
++exit 77
++
+ cat <<\EOF > mco-test2.po
+ # Chinese translation for GNU gettext messages.
+ #
+diff --git a/gettext-tools/tests/msgconv-8 b/gettext-tools/tests/msgconv-8
+index 207b0f0..618de0f 100755
+--- a/gettext-tools/tests/msgconv-8
++++ b/gettext-tools/tests/msgconv-8
+@@ -6,6 +6,8 @@
+ # Note: This test fails on Linux with musl libc versions that don't support
+ # the GB18030 encoding in 'iconv'.
+ 
++exit 77
++
+ cat <<\EOF > mco-test8.po
+ msgid ""
+ msgstr ""
+diff --git a/gettext-tools/tests/msgmerge-compendium-6 b/gettext-tools/tests/msgmerge-compendium-6
+index 59eb00e..d1d7f0d 100755
+--- a/gettext-tools/tests/msgmerge-compendium-6
++++ b/gettext-tools/tests/msgmerge-compendium-6
+@@ -10,6 +10,8 @@
+ # Note: This test fails on Linux with musl libc versions and on Solaris 11
+ # (OpenIndiana, OmniOS) that don't support the EUC-KR encoding in 'iconv'.
+ 
++exit 77
++
+ : ${MSGCONV=msgconv}
+ ${MSGCONV} --to-code=UTF-8 -o mm-ko.utf-8.pot "$wabs_srcdir"/mm-ko.ascii.pot
+ 
+diff --git a/gettext-tools/tests/xgettext-python-3 b/gettext-tools/tests/xgettext-python-3
+index 1e13b57..ee1ffee 100755
+--- a/gettext-tools/tests/xgettext-python-3
++++ b/gettext-tools/tests/xgettext-python-3
+@@ -6,6 +6,8 @@
+ # Note: This test fails on Linux with musl libc versions that don't support
+ # the EUC-JP encoding in 'iconv'.
+ 
++exit 77
++
+ cat <<\EOF > xg-py-3a.py
+ #!/usr/bin/env python
+ # TRANSLATORS: Fran���ois Pinard is a hero.
diff --git a/meta/recipes-core/gettext/gettext_0.23.1.bb b/meta/recipes-core/gettext/gettext_0.23.1.bb
index c704a3b6d7e..e160d4839dc 100644
--- a/meta/recipes-core/gettext/gettext_0.23.1.bb
+++ b/meta/recipes-core/gettext/gettext_0.23.1.bb
@@ -27,6 +27,7 @@  SRC_URI += " \
            file://0001-tests-autopoint-3-unset-MAKEFLAGS.patch \
            file://0001-init-env.in-do-not-add-C-CXX-parameters.patch \
            "
+SRC_URI:append:libc-musl = " file://0001-Ignore-failing-tests-needing-BIG5-encoding-on-musl.patch"
 
 inherit autotools texinfo pkgconfig ptest
 
@@ -51,6 +52,10 @@  EXTRA_OECONF:append:class-target = " \
                  gt_cv_locale_de=de_DE.ISO-8859-1 \
 "
 
+EXTRA_OECONF:append:libc-musl = "\
+                 --enable-threads=posix \
+                 gt_cv_func_printf_posix=yes \
+"
 PACKAGECONFIG ??= "glib libxml"
 PACKAGECONFIG:class-native = ""
 PACKAGECONFIG:class-nativesdk = ""
@@ -174,7 +179,7 @@  do_install_ptest() {
         sed -i -e 's|${DEBUG_PREFIX_MAP}||g' ${D}${PTEST_PATH}/tests/init-env
 }
 
-RDEPENDS:${PN}-ptest += "make xz bash gawk autoconf locale-base-de-de locale-base-fr-fr"
+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 \
     glibc-charmap-big5 \