diff mbox series

[2/2] gawk: Fix ptests on musl

Message ID 20230413055432.1977413-2-raj.khem@gmail.com
State New
Headers show
Series [1/2] musl-locales: Add Canadian French (fr_CA) locale support | expand

Commit Message

Khem Raj April 13, 2023, 5:54 a.m. UTC
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 ...0001-Provide-fixes-for-tests-on-musl.patch | 73 +++++++++++++++++++
 meta/recipes-extended/gawk/gawk_5.2.1.bb      |  7 +-
 2 files changed, 77 insertions(+), 3 deletions(-)
 create mode 100644 meta/recipes-extended/gawk/gawk/0001-Provide-fixes-for-tests-on-musl.patch

Comments

Richard Purdie April 13, 2023, 10:14 a.m. UTC | #1
On Wed, 2023-04-12 at 22:54 -0700, Khem Raj wrote:
> Signed-off-by: Khem Raj <raj.khem@gmail.com>
> ---
>  ...0001-Provide-fixes-for-tests-on-musl.patch | 73 +++++++++++++++++++
>  meta/recipes-extended/gawk/gawk_5.2.1.bb      |  7 +-
>  2 files changed, 77 insertions(+), 3 deletions(-)
>  create mode 100644 meta/recipes-extended/gawk/gawk/0001-Provide-fixes-for-tests-on-musl.patch
> 
> diff --git a/meta/recipes-extended/gawk/gawk/0001-Provide-fixes-for-tests-on-musl.patch b/meta/recipes-extended/gawk/gawk/0001-Provide-fixes-for-tests-on-musl.patch
> new file mode 100644
> index 0000000000..4ff2466c0e
> --- /dev/null
> +++ b/meta/recipes-extended/gawk/gawk/0001-Provide-fixes-for-tests-on-musl.patch
> @@ -0,0 +1,73 @@
> +From 95bcf4397b6f727208f3c627b7d00dacec406d02 Mon Sep 17 00:00:00 2001
> +From: Khem Raj <raj.khem@gmail.com>
> +Date: Wed, 12 Apr 2023 21:57:18 -0700
> +Subject: [PATCH] Provide fixes for tests on musl
> +
> +Fixes rebt8b1 and regx8bit
> +Disable clos1way6 [1]
> +
> +Disable commas and backsmalls1, they do not work
> +with musl-locales somehow even though we do isntall
> +en_US.UTF-8 on target
> +
> +[1] https://lists.gnu.org/archive/html/bug-gawk/2021-02/msg00005.html
> +
> +Upstream-Status: Inappropriate [musl-specific]
> +Signed-off-by: Khem Raj <raj.khem@gmail.com>
> +---
> + test/Maketests | 11 ++++-------
> +

Carrying a patch like this makes me a bit nervous as:

a) it is only applied for musl so it makes recipe upgrade testing a
nightmare

b) there doesn't appear to be any path to upstream it, we'd just have
to carry it indefinitely.

c) the reasons for the failure don't seem to be understood.

Is there something we can do to avoid having to carry this
indefinitely?

Out of interest did alpine do anything for this?

Cheers,

Richard
Khem Raj April 13, 2023, 1:16 p.m. UTC | #2
On Thu, Apr 13, 2023 at 3:14 AM Richard Purdie
<richard.purdie@linuxfoundation.org> wrote:
>
> On Wed, 2023-04-12 at 22:54 -0700, Khem Raj wrote:
> > Signed-off-by: Khem Raj <raj.khem@gmail.com>
> > ---
> >  ...0001-Provide-fixes-for-tests-on-musl.patch | 73 +++++++++++++++++++
> >  meta/recipes-extended/gawk/gawk_5.2.1.bb      |  7 +-
> >  2 files changed, 77 insertions(+), 3 deletions(-)
> >  create mode 100644 meta/recipes-extended/gawk/gawk/0001-Provide-fixes-for-tests-on-musl.patch
> >
> > diff --git a/meta/recipes-extended/gawk/gawk/0001-Provide-fixes-for-tests-on-musl.patch b/meta/recipes-extended/gawk/gawk/0001-Provide-fixes-for-tests-on-musl.patch
> > new file mode 100644
> > index 0000000000..4ff2466c0e
> > --- /dev/null
> > +++ b/meta/recipes-extended/gawk/gawk/0001-Provide-fixes-for-tests-on-musl.patch
> > @@ -0,0 +1,73 @@
> > +From 95bcf4397b6f727208f3c627b7d00dacec406d02 Mon Sep 17 00:00:00 2001
> > +From: Khem Raj <raj.khem@gmail.com>
> > +Date: Wed, 12 Apr 2023 21:57:18 -0700
> > +Subject: [PATCH] Provide fixes for tests on musl
> > +
> > +Fixes rebt8b1 and regx8bit
> > +Disable clos1way6 [1]
> > +
> > +Disable commas and backsmalls1, they do not work
> > +with musl-locales somehow even though we do isntall
> > +en_US.UTF-8 on target
> > +
> > +[1] https://lists.gnu.org/archive/html/bug-gawk/2021-02/msg00005.html
> > +
> > +Upstream-Status: Inappropriate [musl-specific]
> > +Signed-off-by: Khem Raj <raj.khem@gmail.com>
> > +---
> > + test/Maketests | 11 ++++-------
> > +
>
> Carrying a patch like this makes me a bit nervous as:
>
> a) it is only applied for musl so it makes recipe upgrade testing a
> nightmare
>
> b) there doesn't appear to be any path to upstream it, we'd just have
> to carry it indefinitely.
>
> c) the reasons for the failure don't seem to be understood.

reasons are clear,  these tests need full locale support which we do
not have with musl.

>
> Is there something we can do to avoid having to carry this
> indefinitely?
>
> Out of interest did alpine do anything for this?

they have patches.

>
> Cheers,
>
> Richard
>
Alexander Kanavin April 13, 2023, 1:26 p.m. UTC | #3
I tend to agree with RP, this needs to be discussed with upstream
first. We should avoid patches which are both conditional and
non-upstreamable. If gawk upstream doesn't want their tests to be
compatible with musl, then maybe neither should we.

Alex

On Thu, 13 Apr 2023 at 15:17, Khem Raj <raj.khem@gmail.com> wrote:
>
> On Thu, Apr 13, 2023 at 3:14 AM Richard Purdie
> <richard.purdie@linuxfoundation.org> wrote:
> >
> > On Wed, 2023-04-12 at 22:54 -0700, Khem Raj wrote:
> > > Signed-off-by: Khem Raj <raj.khem@gmail.com>
> > > ---
> > >  ...0001-Provide-fixes-for-tests-on-musl.patch | 73 +++++++++++++++++++
> > >  meta/recipes-extended/gawk/gawk_5.2.1.bb      |  7 +-
> > >  2 files changed, 77 insertions(+), 3 deletions(-)
> > >  create mode 100644 meta/recipes-extended/gawk/gawk/0001-Provide-fixes-for-tests-on-musl.patch
> > >
> > > diff --git a/meta/recipes-extended/gawk/gawk/0001-Provide-fixes-for-tests-on-musl.patch b/meta/recipes-extended/gawk/gawk/0001-Provide-fixes-for-tests-on-musl.patch
> > > new file mode 100644
> > > index 0000000000..4ff2466c0e
> > > --- /dev/null
> > > +++ b/meta/recipes-extended/gawk/gawk/0001-Provide-fixes-for-tests-on-musl.patch
> > > @@ -0,0 +1,73 @@
> > > +From 95bcf4397b6f727208f3c627b7d00dacec406d02 Mon Sep 17 00:00:00 2001
> > > +From: Khem Raj <raj.khem@gmail.com>
> > > +Date: Wed, 12 Apr 2023 21:57:18 -0700
> > > +Subject: [PATCH] Provide fixes for tests on musl
> > > +
> > > +Fixes rebt8b1 and regx8bit
> > > +Disable clos1way6 [1]
> > > +
> > > +Disable commas and backsmalls1, they do not work
> > > +with musl-locales somehow even though we do isntall
> > > +en_US.UTF-8 on target
> > > +
> > > +[1] https://lists.gnu.org/archive/html/bug-gawk/2021-02/msg00005.html
> > > +
> > > +Upstream-Status: Inappropriate [musl-specific]
> > > +Signed-off-by: Khem Raj <raj.khem@gmail.com>
> > > +---
> > > + test/Maketests | 11 ++++-------
> > > +
> >
> > Carrying a patch like this makes me a bit nervous as:
> >
> > a) it is only applied for musl so it makes recipe upgrade testing a
> > nightmare
> >
> > b) there doesn't appear to be any path to upstream it, we'd just have
> > to carry it indefinitely.
> >
> > c) the reasons for the failure don't seem to be understood.
>
> reasons are clear,  these tests need full locale support which we do
> not have with musl.
>
> >
> > Is there something we can do to avoid having to carry this
> > indefinitely?
> >
> > Out of interest did alpine do anything for this?
>
> they have patches.
>
> >
> > Cheers,
> >
> > Richard
> >
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#179976): https://lists.openembedded.org/g/openembedded-core/message/179976
> Mute This Topic: https://lists.openembedded.org/mt/98235523/1686489
> Group Owner: openembedded-core+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [alex.kanavin@gmail.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>
Richard Purdie April 13, 2023, 1:44 p.m. UTC | #4
On Thu, 2023-04-13 at 06:16 -0700, Khem Raj wrote:
> On Thu, Apr 13, 2023 at 3:14 AM Richard Purdie
> <richard.purdie@linuxfoundation.org> wrote:
> > 
> > On Wed, 2023-04-12 at 22:54 -0700, Khem Raj wrote:
> > > Signed-off-by: Khem Raj <raj.khem@gmail.com>
> > > ---
> > >  ...0001-Provide-fixes-for-tests-on-musl.patch | 73 +++++++++++++++++++
> > >  meta/recipes-extended/gawk/gawk_5.2.1.bb      |  7 +-
> > >  2 files changed, 77 insertions(+), 3 deletions(-)
> > >  create mode 100644 meta/recipes-extended/gawk/gawk/0001-Provide-fixes-for-tests-on-musl.patch
> > > 
> > > diff --git a/meta/recipes-extended/gawk/gawk/0001-Provide-fixes-for-tests-on-musl.patch b/meta/recipes-extended/gawk/gawk/0001-Provide-fixes-for-tests-on-musl.patch
> > > new file mode 100644
> > > index 0000000000..4ff2466c0e
> > > --- /dev/null
> > > +++ b/meta/recipes-extended/gawk/gawk/0001-Provide-fixes-for-tests-on-musl.patch
> > > @@ -0,0 +1,73 @@
> > > +From 95bcf4397b6f727208f3c627b7d00dacec406d02 Mon Sep 17 00:00:00 2001
> > > +From: Khem Raj <raj.khem@gmail.com>
> > > +Date: Wed, 12 Apr 2023 21:57:18 -0700
> > > +Subject: [PATCH] Provide fixes for tests on musl
> > > +
> > > +Fixes rebt8b1 and regx8bit
> > > +Disable clos1way6 [1]
> > > +
> > > +Disable commas and backsmalls1, they do not work
> > > +with musl-locales somehow even though we do isntall
> > > +en_US.UTF-8 on target
> > > +
> > > +[1] https://lists.gnu.org/archive/html/bug-gawk/2021-02/msg00005.html
> > > +
> > > +Upstream-Status: Inappropriate [musl-specific]
> > > +Signed-off-by: Khem Raj <raj.khem@gmail.com>
> > > +---
> > > + test/Maketests | 11 ++++-------
> > > +
> > 
> > Carrying a patch like this makes me a bit nervous as:
> > 
> > a) it is only applied for musl so it makes recipe upgrade testing a
> > nightmare
> > 
> > b) there doesn't appear to be any path to upstream it, we'd just have
> > to carry it indefinitely.
> > 
> > c) the reasons for the failure don't seem to be understood.
> 
> reasons are clear,  these tests need full locale support which we do
> not have with musl.

The above says something quite different to what the patch says:

"they do not work with musl-locales somehow"

which sounds like nobody has looked into it.

> > Is there something we can do to avoid having to carry this
> > indefinitely?
> > 
> > Out of interest did alpine do anything for this?
> 
> they have patches.

The same as ours or different? Was there any discussion with upstream
on this?

Cheers,

Richard
Khem Raj April 13, 2023, 3:29 p.m. UTC | #5
On Thu, Apr 13, 2023 at 6:44 AM Richard Purdie
<richard.purdie@linuxfoundation.org> wrote:
>
> On Thu, 2023-04-13 at 06:16 -0700, Khem Raj wrote:
> > On Thu, Apr 13, 2023 at 3:14 AM Richard Purdie
> > <richard.purdie@linuxfoundation.org> wrote:
> > >
> > > On Wed, 2023-04-12 at 22:54 -0700, Khem Raj wrote:
> > > > Signed-off-by: Khem Raj <raj.khem@gmail.com>
> > > > ---
> > > >  ...0001-Provide-fixes-for-tests-on-musl.patch | 73 +++++++++++++++++++
> > > >  meta/recipes-extended/gawk/gawk_5.2.1.bb      |  7 +-
> > > >  2 files changed, 77 insertions(+), 3 deletions(-)
> > > >  create mode 100644 meta/recipes-extended/gawk/gawk/0001-Provide-fixes-for-tests-on-musl.patch
> > > >
> > > > diff --git a/meta/recipes-extended/gawk/gawk/0001-Provide-fixes-for-tests-on-musl.patch b/meta/recipes-extended/gawk/gawk/0001-Provide-fixes-for-tests-on-musl.patch
> > > > new file mode 100644
> > > > index 0000000000..4ff2466c0e
> > > > --- /dev/null
> > > > +++ b/meta/recipes-extended/gawk/gawk/0001-Provide-fixes-for-tests-on-musl.patch
> > > > @@ -0,0 +1,73 @@
> > > > +From 95bcf4397b6f727208f3c627b7d00dacec406d02 Mon Sep 17 00:00:00 2001
> > > > +From: Khem Raj <raj.khem@gmail.com>
> > > > +Date: Wed, 12 Apr 2023 21:57:18 -0700
> > > > +Subject: [PATCH] Provide fixes for tests on musl
> > > > +
> > > > +Fixes rebt8b1 and regx8bit
> > > > +Disable clos1way6 [1]
> > > > +
> > > > +Disable commas and backsmalls1, they do not work
> > > > +with musl-locales somehow even though we do isntall
> > > > +en_US.UTF-8 on target
> > > > +
> > > > +[1] https://lists.gnu.org/archive/html/bug-gawk/2021-02/msg00005.html
> > > > +
> > > > +Upstream-Status: Inappropriate [musl-specific]
> > > > +Signed-off-by: Khem Raj <raj.khem@gmail.com>
> > > > +---
> > > > + test/Maketests | 11 ++++-------
> > > > +
> > >
> > > Carrying a patch like this makes me a bit nervous as:
> > >
> > > a) it is only applied for musl so it makes recipe upgrade testing a
> > > nightmare
> > >
> > > b) there doesn't appear to be any path to upstream it, we'd just have
> > > to carry it indefinitely.
> > >
> > > c) the reasons for the failure don't seem to be understood.
> >
> > reasons are clear,  these tests need full locale support which we do
> > not have with musl.
>
> The above says something quite different to what the patch says:
>
> "they do not work with musl-locales somehow"

yeah the metadata patch subject should be improved to say disable tests

>
> which sounds like nobody has looked into it.

yes, and my localedata knowledge is limited to root cause this further sadly.

>
> > > Is there something we can do to avoid having to carry this
> > > indefinitely?

You can do sed operations from the recipe. I don't know how that will be better
than patch. btw. we are already carrying another patch to disable other tests
because I guess they fail on Autobuilder on stress but not always,
because they worked
fine on my ptest run.

https://git.openembedded.org/openembedded-core/tree/meta/recipes-extended/gawk/gawk/remove-sensitive-tests.patch

Do we have plans to address this with upstream as well ?

> > >
> > > Out of interest did alpine do anything for this?
> >
> > they have patches.
>
> The same as ours or different? Was there any discussion with upstream
> on this?

There is one failure which is common and I have quoted upstream discussion
others are not. I dont have alpine install handy to try it out quickly
to confirm.

>
> Cheers,
>
> Richard
>
Richard Purdie April 13, 2023, 4:06 p.m. UTC | #6
On Thu, 2023-04-13 at 08:29 -0700, Khem Raj wrote:
> On Thu, Apr 13, 2023 at 6:44 AM Richard Purdie
> <richard.purdie@linuxfoundation.org> wrote:
> > 
> > On Thu, 2023-04-13 at 06:16 -0700, Khem Raj wrote:
> > > On Thu, Apr 13, 2023 at 3:14 AM Richard Purdie
> > > <richard.purdie@linuxfoundation.org> wrote:
> > > > 
> > > > On Wed, 2023-04-12 at 22:54 -0700, Khem Raj wrote:
> > > > > Signed-off-by: Khem Raj <raj.khem@gmail.com>
> > > > > ---
> > > > >  ...0001-Provide-fixes-for-tests-on-musl.patch | 73 +++++++++++++++++++
> > > > >  meta/recipes-extended/gawk/gawk_5.2.1.bb      |  7 +-
> > > > >  2 files changed, 77 insertions(+), 3 deletions(-)
> > > > >  create mode 100644 meta/recipes-extended/gawk/gawk/0001-Provide-fixes-for-tests-on-musl.patch
> > > > > 
> > > > > diff --git a/meta/recipes-extended/gawk/gawk/0001-Provide-fixes-for-tests-on-musl.patch b/meta/recipes-extended/gawk/gawk/0001-Provide-fixes-for-tests-on-musl.patch
> > > > > new file mode 100644
> > > > > index 0000000000..4ff2466c0e
> > > > > --- /dev/null
> > > > > +++ b/meta/recipes-extended/gawk/gawk/0001-Provide-fixes-for-tests-on-musl.patch
> > > > > @@ -0,0 +1,73 @@
> > > > > +From 95bcf4397b6f727208f3c627b7d00dacec406d02 Mon Sep 17 00:00:00 2001
> > > > > +From: Khem Raj <raj.khem@gmail.com>
> > > > > +Date: Wed, 12 Apr 2023 21:57:18 -0700
> > > > > +Subject: [PATCH] Provide fixes for tests on musl
> > > > > +
> > > > > +Fixes rebt8b1 and regx8bit
> > > > > +Disable clos1way6 [1]
> > > > > +
> > > > > +Disable commas and backsmalls1, they do not work
> > > > > +with musl-locales somehow even though we do isntall
> > > > > +en_US.UTF-8 on target
> > > > > +
> > > > > +[1] https://lists.gnu.org/archive/html/bug-gawk/2021-02/msg00005.html
> > > > > +
> > > > > +Upstream-Status: Inappropriate [musl-specific]
> > > > > +Signed-off-by: Khem Raj <raj.khem@gmail.com>
> > > > > +---
> > > > > + test/Maketests | 11 ++++-------
> > > > > +
> > > > 
> > > > Carrying a patch like this makes me a bit nervous as:
> > > > 
> > > > a) it is only applied for musl so it makes recipe upgrade testing a
> > > > nightmare
> > > > 
> > > > b) there doesn't appear to be any path to upstream it, we'd just have
> > > > to carry it indefinitely.
> > > > 
> > > > c) the reasons for the failure don't seem to be understood.
> > > 
> > > reasons are clear,  these tests need full locale support which we do
> > > not have with musl.
> > 
> > The above says something quite different to what the patch says:
> > 
> > "they do not work with musl-locales somehow"
> 
> yeah the metadata patch subject should be improved to say disable tests

That would be clearer, yes.

> > 
> > which sounds like nobody has looked into it.
> 
> yes, and my localedata knowledge is limited to root cause this further sadly.

Fair enough, we just need to be clear about that.

> > > > Is there something we can do to avoid having to carry this
> > > > indefinitely?
> 
> You can do sed operations from the recipe. I don't know how that will be better
> than patch. btw. we are already carrying another patch to disable other tests
> because I guess they fail on Autobuilder on stress but not always,
> because they worked
> fine on my ptest run.
> 
> https://git.openembedded.org/openembedded-core/tree/meta/recipes-extended/gawk/gawk/remove-sensitive-tests.patch
> 
> Do we have plans to address this with upstream as well ?

The difference between that patch and the one proposed is that the one
above:

a) is unconditional
b) is clear and simple, it just deletes the tests

This means when the recipe is upgraded, the patch is obvious and
therefore straight forward to port.

Ideas:

Can we simplify the musl one to delete the tests in question?

Could we get a patch upstream which allowed us to disable tests from
the commandline to improve both cases? 

I think we should be able to work something out but I just wanted to
make it clear the patch as it stands isn't clear enough and will cause
maintenance issues so we need to work out something better.

Cheers,

Richard


> > > > Out of interest did alpine do anything for this?
> > > 
> > > they have patches.
> > 
> > The same as ours or different? Was there any discussion with upstream
> > on this?
> 
> There is one failure which is common and I have quoted upstream discussion
> others are not. I dont have alpine install handy to try it out quickly
> to confirm.
> 
> > 
> > Cheers,
> > 
> > Richard
> > 
>
Khem Raj April 14, 2023, 7:35 a.m. UTC | #7
On Thu, Apr 13, 2023 at 9:06 AM Richard Purdie
<richard.purdie@linuxfoundation.org> wrote:
>
> On Thu, 2023-04-13 at 08:29 -0700, Khem Raj wrote:
> > On Thu, Apr 13, 2023 at 6:44 AM Richard Purdie
> > <richard.purdie@linuxfoundation.org> wrote:
> > >
> > > On Thu, 2023-04-13 at 06:16 -0700, Khem Raj wrote:
> > > > On Thu, Apr 13, 2023 at 3:14 AM Richard Purdie
> > > > <richard.purdie@linuxfoundation.org> wrote:
> > > > >
> > > > > On Wed, 2023-04-12 at 22:54 -0700, Khem Raj wrote:
> > > > > > Signed-off-by: Khem Raj <raj.khem@gmail.com>
> > > > > > ---
> > > > > >  ...0001-Provide-fixes-for-tests-on-musl.patch | 73 +++++++++++++++++++
> > > > > >  meta/recipes-extended/gawk/gawk_5.2.1.bb      |  7 +-
> > > > > >  2 files changed, 77 insertions(+), 3 deletions(-)
> > > > > >  create mode 100644 meta/recipes-extended/gawk/gawk/0001-Provide-fixes-for-tests-on-musl.patch
> > > > > >
> > > > > > diff --git a/meta/recipes-extended/gawk/gawk/0001-Provide-fixes-for-tests-on-musl.patch b/meta/recipes-extended/gawk/gawk/0001-Provide-fixes-for-tests-on-musl.patch
> > > > > > new file mode 100644
> > > > > > index 0000000000..4ff2466c0e
> > > > > > --- /dev/null
> > > > > > +++ b/meta/recipes-extended/gawk/gawk/0001-Provide-fixes-for-tests-on-musl.patch
> > > > > > @@ -0,0 +1,73 @@
> > > > > > +From 95bcf4397b6f727208f3c627b7d00dacec406d02 Mon Sep 17 00:00:00 2001
> > > > > > +From: Khem Raj <raj.khem@gmail.com>
> > > > > > +Date: Wed, 12 Apr 2023 21:57:18 -0700
> > > > > > +Subject: [PATCH] Provide fixes for tests on musl
> > > > > > +
> > > > > > +Fixes rebt8b1 and regx8bit
> > > > > > +Disable clos1way6 [1]
> > > > > > +
> > > > > > +Disable commas and backsmalls1, they do not work
> > > > > > +with musl-locales somehow even though we do isntall
> > > > > > +en_US.UTF-8 on target
> > > > > > +
> > > > > > +[1] https://lists.gnu.org/archive/html/bug-gawk/2021-02/msg00005.html
> > > > > > +
> > > > > > +Upstream-Status: Inappropriate [musl-specific]
> > > > > > +Signed-off-by: Khem Raj <raj.khem@gmail.com>
> > > > > > +---
> > > > > > + test/Maketests | 11 ++++-------
> > > > > > +
> > > > >
> > > > > Carrying a patch like this makes me a bit nervous as:
> > > > >
> > > > > a) it is only applied for musl so it makes recipe upgrade testing a
> > > > > nightmare
> > > > >
> > > > > b) there doesn't appear to be any path to upstream it, we'd just have
> > > > > to carry it indefinitely.
> > > > >
> > > > > c) the reasons for the failure don't seem to be understood.
> > > >
> > > > reasons are clear,  these tests need full locale support which we do
> > > > not have with musl.
> > >
> > > The above says something quite different to what the patch says:
> > >
> > > "they do not work with musl-locales somehow"
> >
> > yeah the metadata patch subject should be improved to say disable tests
>
> That would be clearer, yes.
>
> > >
> > > which sounds like nobody has looked into it.
> >
> > yes, and my localedata knowledge is limited to root cause this further sadly.
>
> Fair enough, we just need to be clear about that.
>
> > > > > Is there something we can do to avoid having to carry this
> > > > > indefinitely?
> >
> > You can do sed operations from the recipe. I don't know how that will be better
> > than patch. btw. we are already carrying another patch to disable other tests
> > because I guess they fail on Autobuilder on stress but not always,
> > because they worked
> > fine on my ptest run.
> >
> > https://git.openembedded.org/openembedded-core/tree/meta/recipes-extended/gawk/gawk/remove-sensitive-tests.patch
> >
> > Do we have plans to address this with upstream as well ?
>
> The difference between that patch and the one proposed is that the one
> above:
>
> a) is unconditional
> b) is clear and simple, it just deletes the tests
>
> This means when the recipe is upgraded, the patch is obvious and
> therefore straight forward to port.
>
> Ideas:
>
> Can we simplify the musl one to delete the tests in question?
>
> Could we get a patch upstream which allowed us to disable tests from
> the commandline to improve both cases?
>
> I think we should be able to work something out but I just wanted to
> make it clear the patch as it stands isn't clear enough and will cause
> maintenance issues so we need to work out something better.
>

if you run make check on musl/emux86-64 then we only get one failure clos1way6
and others pass. Which matches alpine. However, I think the way ptest is copying
partially the test environment seems to be the cause. I tried to pass LANG=C etc
but it did not help. Secondly, there are some surgeries the run-ptest
is also doing
which makes the test environment quite unique to yocto ptests.

Its fine to ignore this patch. I have already drove into weeds trying
to fix it, not worth it.

> Cheers,
>
> Richard
>
>
> > > > > Out of interest did alpine do anything for this?
> > > >
> > > > they have patches.
> > >
> > > The same as ours or different? Was there any discussion with upstream
> > > on this?
> >
> > There is one failure which is common and I have quoted upstream discussion
> > others are not. I dont have alpine install handy to try it out quickly
> > to confirm.
> >
> > >
> > > Cheers,
> > >
> > > Richard
> > >
> >
>
Khem Raj April 14, 2023, 11:46 p.m. UTC | #8
On Fri, Apr 14, 2023 at 12:35 AM Khem Raj <raj.khem@gmail.com> wrote:
>
> On Thu, Apr 13, 2023 at 9:06 AM Richard Purdie
> <richard.purdie@linuxfoundation.org> wrote:
> >
> > On Thu, 2023-04-13 at 08:29 -0700, Khem Raj wrote:
> > > On Thu, Apr 13, 2023 at 6:44 AM Richard Purdie
> > > <richard.purdie@linuxfoundation.org> wrote:
> > > >
> > > > On Thu, 2023-04-13 at 06:16 -0700, Khem Raj wrote:
> > > > > On Thu, Apr 13, 2023 at 3:14 AM Richard Purdie
> > > > > <richard.purdie@linuxfoundation.org> wrote:
> > > > > >
> > > > > > On Wed, 2023-04-12 at 22:54 -0700, Khem Raj wrote:
> > > > > > > Signed-off-by: Khem Raj <raj.khem@gmail.com>
> > > > > > > ---
> > > > > > >  ...0001-Provide-fixes-for-tests-on-musl.patch | 73 +++++++++++++++++++
> > > > > > >  meta/recipes-extended/gawk/gawk_5.2.1.bb      |  7 +-
> > > > > > >  2 files changed, 77 insertions(+), 3 deletions(-)
> > > > > > >  create mode 100644 meta/recipes-extended/gawk/gawk/0001-Provide-fixes-for-tests-on-musl.patch
> > > > > > >
> > > > > > > diff --git a/meta/recipes-extended/gawk/gawk/0001-Provide-fixes-for-tests-on-musl.patch b/meta/recipes-extended/gawk/gawk/0001-Provide-fixes-for-tests-on-musl.patch
> > > > > > > new file mode 100644
> > > > > > > index 0000000000..4ff2466c0e
> > > > > > > --- /dev/null
> > > > > > > +++ b/meta/recipes-extended/gawk/gawk/0001-Provide-fixes-for-tests-on-musl.patch
> > > > > > > @@ -0,0 +1,73 @@
> > > > > > > +From 95bcf4397b6f727208f3c627b7d00dacec406d02 Mon Sep 17 00:00:00 2001
> > > > > > > +From: Khem Raj <raj.khem@gmail.com>
> > > > > > > +Date: Wed, 12 Apr 2023 21:57:18 -0700
> > > > > > > +Subject: [PATCH] Provide fixes for tests on musl
> > > > > > > +
> > > > > > > +Fixes rebt8b1 and regx8bit
> > > > > > > +Disable clos1way6 [1]
> > > > > > > +
> > > > > > > +Disable commas and backsmalls1, they do not work
> > > > > > > +with musl-locales somehow even though we do isntall
> > > > > > > +en_US.UTF-8 on target
> > > > > > > +
> > > > > > > +[1] https://lists.gnu.org/archive/html/bug-gawk/2021-02/msg00005.html
> > > > > > > +
> > > > > > > +Upstream-Status: Inappropriate [musl-specific]
> > > > > > > +Signed-off-by: Khem Raj <raj.khem@gmail.com>
> > > > > > > +---
> > > > > > > + test/Maketests | 11 ++++-------
> > > > > > > +
> > > > > >
> > > > > > Carrying a patch like this makes me a bit nervous as:
> > > > > >
> > > > > > a) it is only applied for musl so it makes recipe upgrade testing a
> > > > > > nightmare
> > > > > >
> > > > > > b) there doesn't appear to be any path to upstream it, we'd just have
> > > > > > to carry it indefinitely.
> > > > > >
> > > > > > c) the reasons for the failure don't seem to be understood.
> > > > >
> > > > > reasons are clear,  these tests need full locale support which we do
> > > > > not have with musl.
> > > >
> > > > The above says something quite different to what the patch says:
> > > >
> > > > "they do not work with musl-locales somehow"
> > >
> > > yeah the metadata patch subject should be improved to say disable tests
> >
> > That would be clearer, yes.
> >
> > > >
> > > > which sounds like nobody has looked into it.
> > >
> > > yes, and my localedata knowledge is limited to root cause this further sadly.
> >
> > Fair enough, we just need to be clear about that.
> >
> > > > > > Is there something we can do to avoid having to carry this
> > > > > > indefinitely?
> > >
> > > You can do sed operations from the recipe. I don't know how that will be better
> > > than patch. btw. we are already carrying another patch to disable other tests
> > > because I guess they fail on Autobuilder on stress but not always,
> > > because they worked
> > > fine on my ptest run.
> > >
> > > https://git.openembedded.org/openembedded-core/tree/meta/recipes-extended/gawk/gawk/remove-sensitive-tests.patch
> > >
> > > Do we have plans to address this with upstream as well ?
> >
> > The difference between that patch and the one proposed is that the one
> > above:
> >
> > a) is unconditional
> > b) is clear and simple, it just deletes the tests
> >
> > This means when the recipe is upgraded, the patch is obvious and
> > therefore straight forward to port.
> >
> > Ideas:
> >
> > Can we simplify the musl one to delete the tests in question?
> >
> > Could we get a patch upstream which allowed us to disable tests from
> > the commandline to improve both cases?
> >
> > I think we should be able to work something out but I just wanted to
> > make it clear the patch as it stands isn't clear enough and will cause
> > maintenance issues so we need to work out something better.
> >

I just sent a v3 patchset for this issue which IMO solves the problem and
creates less hassle to maintain as well. Let me know.

>
> if you run make check on musl/emux86-64 then we only get one failure clos1way6
> and others pass. Which matches alpine. However, I think the way ptest is copying
> partially the test environment seems to be the cause. I tried to pass LANG=C etc
> but it did not help. Secondly, there are some surgeries the run-ptest
> is also doing
> which makes the test environment quite unique to yocto ptests.
>
> Its fine to ignore this patch. I have already drove into weeds trying
> to fix it, not worth it.
>
> > Cheers,
> >
> > Richard
> >
> >
> > > > > > Out of interest did alpine do anything for this?
> > > > >
> > > > > they have patches.
> > > >
> > > > The same as ours or different? Was there any discussion with upstream
> > > > on this?
> > >
> > > There is one failure which is common and I have quoted upstream discussion
> > > others are not. I dont have alpine install handy to try it out quickly
> > > to confirm.
> > >
> > > >
> > > > Cheers,
> > > >
> > > > Richard
> > > >
> > >
> >
diff mbox series

Patch

diff --git a/meta/recipes-extended/gawk/gawk/0001-Provide-fixes-for-tests-on-musl.patch b/meta/recipes-extended/gawk/gawk/0001-Provide-fixes-for-tests-on-musl.patch
new file mode 100644
index 0000000000..4ff2466c0e
--- /dev/null
+++ b/meta/recipes-extended/gawk/gawk/0001-Provide-fixes-for-tests-on-musl.patch
@@ -0,0 +1,73 @@ 
+From 95bcf4397b6f727208f3c627b7d00dacec406d02 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Wed, 12 Apr 2023 21:57:18 -0700
+Subject: [PATCH] Provide fixes for tests on musl
+
+Fixes rebt8b1 and regx8bit
+Disable clos1way6 [1]
+
+Disable commas and backsmalls1, they do not work
+with musl-locales somehow even though we do isntall
+en_US.UTF-8 on target
+
+[1] https://lists.gnu.org/archive/html/bug-gawk/2021-02/msg00005.html
+
+Upstream-Status: Inappropriate [musl-specific]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ test/Maketests | 11 ++++-------
+ 1 file changed, 4 insertions(+), 7 deletions(-)
+
+--- a/test/Maketests
++++ b/test/Maketests
+@@ -916,7 +916,8 @@ rebrackloc:
+ 
+ rebt8b1:
+ 	@echo $@
+-	@-AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
++	@-[ -z "$$LANG" ] && LANG=C; export LANG; \
++	AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+ 
+ rebuild:
+@@ -1391,17 +1392,6 @@ clos1way5:
+ 	@-AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+ 
+-clos1way6:
+-	@echo $@ $(ZOS_FAIL)
+-	@-AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+-	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+-
+-commas:
+-	@echo $@ $(ZOS_FAIL)
+-	@-[ -z "$$GAWKLOCALE" ] && GAWKLOCALE=en_US.UTF-8; export GAWKLOCALE; \
+-	AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+-	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+-
+ crlf:
+ 	@echo $@
+ 	@-AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+@@ -2003,7 +1993,8 @@ regnul2:
+ 
+ regx8bit:
+ 	@echo $@
+-	@-AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
++	@-[ -z "$$LANG" ] && LANG=C; export LANG; \
++	AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+ 
+ reint:
+@@ -2256,12 +2247,6 @@ backbigs1:
+ 	@echo $@ $(ZOS_FAIL)
+ 	@-[ -z "$$GAWKLOCALE" ] && GAWKLOCALE=en_US.UTF-8; export GAWKLOCALE; \
+ 	AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+-	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+-
+-backsmalls1:
+-	@echo $@ $(ZOS_FAIL)
+-	@-[ -z "$$GAWKLOCALE" ] && GAWKLOCALE=en_US.UTF-8; export GAWKLOCALE; \
+-	AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+ 
+ backsmalls2:
diff --git a/meta/recipes-extended/gawk/gawk_5.2.1.bb b/meta/recipes-extended/gawk/gawk_5.2.1.bb
index e381bad148..b2eb6987ed 100644
--- a/meta/recipes-extended/gawk/gawk_5.2.1.bb
+++ b/meta/recipes-extended/gawk/gawk_5.2.1.bb
@@ -19,7 +19,7 @@  SRC_URI = "${GNU_MIRROR}/gawk/gawk-${PV}.tar.gz \
            file://remove-sensitive-tests.patch \
            file://run-ptest \
            "
-
+SRC_URI:append:libc-musl = " file://0001-Provide-fixes-for-tests-on-musl.patch "
 SRC_URI[sha256sum] = "529e7c8c6acf21ff3a6183f4d763c632810908989c24675c77995d51ac37b79c"
 
 inherit autotools gettext texinfo update-alternatives
@@ -62,8 +62,9 @@  do_install_ptest() {
 	rm -f ${D}${PTEST_PATH}/test/timeout.*
 }
 
-RDEPENDS:${PN}-ptest += "make"
+RDEPENDS:${PN}-ptest += "make locale-base-en-us"
 
-RDEPENDS:${PN}-ptest:append:libc-glibc = " locale-base-en-us locale-base-en-us.iso-8859-1"
+RDEPENDS:${PN}-ptest:append:libc-glibc = " locale-base-en-us.iso-8859-1"
+RDEPENDS:${PN}-ptest:append:libc-musl = " musl-locales"
 
 BBCLASSEXTEND = "native nativesdk"