diff mbox series

[v7,master-next,1/5] package_ipk.bbclass: add support for ACLs and xattr

Message ID 20230721120723.4006443-1-p.lobacz@welotec.com
State New
Headers show
Series [v7,master-next,1/5] package_ipk.bbclass: add support for ACLs and xattr | expand

Commit Message

Piotr Łobacz July 21, 2023, 12:07 p.m. UTC
Extend OPKGBUILDCMD variable, with additional parameters, depending
on target distro features, in order to support ACLs and xattr.

With fix pushed to the opkg-devel:
https://groups.google.com/g/opkg-devel/c/dYNHrLjDwg8
opkg-build is able to create tar archives with ACLs and xattr.

Signed-off-by: Piotr Łobacz <p.lobacz@welotec.com>
---
 meta/classes-global/package_ipk.bbclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Alexandre Belloni July 21, 2023, 10:01 p.m. UTC | #1
I confirm this still fails on the autobuilders:

This is a-full:
https://autobuilder.yoctoproject.org/typhoon/#/builders/83/builds/5631

On 21/07/2023 14:07:19+0200, Piotr Łobacz wrote:
> Extend OPKGBUILDCMD variable, with additional parameters, depending
> on target distro features, in order to support ACLs and xattr.
> 
> With fix pushed to the opkg-devel:
> https://groups.google.com/g/opkg-devel/c/dYNHrLjDwg8
> opkg-build is able to create tar archives with ACLs and xattr.
> 
> Signed-off-by: Piotr Łobacz <p.lobacz@welotec.com>
> ---
>  meta/classes-global/package_ipk.bbclass | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/meta/classes-global/package_ipk.bbclass b/meta/classes-global/package_ipk.bbclass
> index b4b7bc9ac2..5e151be3cd 100644
> --- a/meta/classes-global/package_ipk.bbclass
> +++ b/meta/classes-global/package_ipk.bbclass
> @@ -15,7 +15,7 @@ IPKGCONF_SDK_TARGET = "${WORKDIR}/opkg-sdk-target.conf"
>  PKGWRITEDIRIPK = "${WORKDIR}/deploy-ipks"
>  
>  # Program to be used to build opkg packages
> -OPKGBUILDCMD ??= 'opkg-build -Z xz -a "${XZ_DEFAULTS}"'
> +OPKGBUILDCMD ??= 'opkg-build -Z xz -a "${XZ_DEFAULTS}" "${@bb.utils.contains('DISTRO_FEATURES', 'acl', '-A', '', d)}" "${@bb.utils.contains('DISTRO_FEATURES', 'xattr', '-X', '', d)}"'
>  
>  OPKG_ARGS += "--force_postinstall --prefer-arch-to-version"
>  OPKG_ARGS += "${@['', '--no-install-recommends'][d.getVar("NO_RECOMMENDATIONS") == "1"]}"
> -- 
> 2.34.1
> 

> 
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#184688): https://lists.openembedded.org/g/openembedded-core/message/184688
> Mute This Topic: https://lists.openembedded.org/mt/100275318/3617179
> Group Owner: openembedded-core+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [alexandre.belloni@bootlin.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>
Piotr Łobacz July 21, 2023, 11:33 p.m. UTC | #2
Alexandre, Is it possible for you to create a docker file or some image etc. with all commands from autobuilder which will re-create the failure and pass it to me?

Because can grope, find nothing and waste our time...

Cheers,
Piotr
Alexandre Belloni July 22, 2023, 10:19 a.m. UTC | #3
On 21/07/2023 23:33:02+0000, Piotr Łobacz wrote:
> Alexandre, Is it possible for you to create a docker file or some image etc. with all commands from autobuilder which will re-create the failure and pass it to me?
> 

I don't have that but really, those are just bare installation of the
distro with just what is necessary to start an OE build.

How did you try to reproduce?

The log says that you are trying to execute this:

opkg-build -Z xz -a "--memlimit=5% --threads=8" "" "" nativesdk-glibc-binary-localedata-zu-za /home/pokybuild/yocto-worker/qemuarm-oecore/build/build/tmp-glibc/work/i686-nativesdk-oesdk-linux/nativesdk-glibc-locale/2.37-r1/deploy-ipks/i686-nativesdk'

The error is there, in the logs since I tested v4:

Usage: /home/pokybuild/yocto-worker/qemuarm-oecore/build/build/tmp-glibc/work/i686-nativesdk-oesdk-linux/nativesdk-glibc-locale/2.37-r1/recipe-sysroot-native/usr/bin/opkg-build [-A] [-X] [-c] [-C] [-Z compressor] [-a compressor_args] [-O] [-o owner] [-g group] <pkg_directory> [<destination_directory>]

It is because you changed OPKGBUILDCMD to be:

OPKGBUILDCMD ??= 'opkg-build -Z xz -a "${XZ_DEFAULTS}" "${@bb.utils.contains('DISTRO_FEATURES', 'acl', '-A', '', d)}" "${@bb.utils.contains('DISTRO_FEATURES', 'xattr', '-X', '', d)}"'

Can you see the extra double quotes that create two extra string
arguments?

Did you test without acl and xattr in DISTRO_FEATURES?

> Because can grope, find nothing and waste our time...
> 

Now, I've spent part of my week-end looking at that, this is time I will
never get back while you just had to read the errors I reported to you
on v4 and v5.
You are demanding this is urgently processed but your patch series is
not ready.

Also, you HAVE to fix the reproducibility issues, else this will not go
in.

> Cheers,
> Piotr
> 
> ________________________________
> Od: Alexandre Belloni <alexandre.belloni@bootlin.com>
> Wysłane: sobota, 22 lipca 2023 00:01
> Do: Piotr Łobacz <p.lobacz@welotec.com>
> DW: openembedded-core@lists.openembedded.org <openembedded-core@lists.openembedded.org>
> Temat: Re: [OE-Core][PATCH v7][master-next 1/5] package_ipk.bbclass: add support for ACLs and xattr
> 
> I confirm this still fails on the autobuilders:
> 
> This is a-full:
> https://eur04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fautobuilder.yoctoproject.org%2Ftyphoon%2F%23%2Fbuilders%2F83%2Fbuilds%2F5631&data=05%7C01%7Cp.lobacz%40welotec.com%7C308b241fa77c483b937808db8a360827%7C25111a7f1d5a4c51a4ca7f8e44011b39%7C0%7C0%7C638255736894248112%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=YHOXoiEiIYhWMLP%2FvytWKdXpcSpTDfKzwf8MEyGzWQ0%3D&reserved=0<https://autobuilder.yoctoproject.org/typhoon/#/builders/83/builds/5631>
> 
> On 21/07/2023 14:07:19+0200, Piotr Łobacz wrote:
> > Extend OPKGBUILDCMD variable, with additional parameters, depending
> > on target distro features, in order to support ACLs and xattr.
> >
> > With fix pushed to the opkg-devel:
> > https://eur04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgroups.google.com%2Fg%2Fopkg-devel%2Fc%2FdYNHrLjDwg8&data=05%7C01%7Cp.lobacz%40welotec.com%7C308b241fa77c483b937808db8a360827%7C25111a7f1d5a4c51a4ca7f8e44011b39%7C0%7C0%7C638255736894248112%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=Hhix8F4A6m9r0tFljzmTUXwQdBUPeV6X8g4c0Nm%2Favw%3D&reserved=0<https://groups.google.com/g/opkg-devel/c/dYNHrLjDwg8>
> > opkg-build is able to create tar archives with ACLs and xattr.
> >
> > Signed-off-by: Piotr Łobacz <p.lobacz@welotec.com>
> > ---
> >  meta/classes-global/package_ipk.bbclass | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/meta/classes-global/package_ipk.bbclass b/meta/classes-global/package_ipk.bbclass
> > index b4b7bc9ac2..5e151be3cd 100644
> > --- a/meta/classes-global/package_ipk.bbclass
> > +++ b/meta/classes-global/package_ipk.bbclass
> > @@ -15,7 +15,7 @@ IPKGCONF_SDK_TARGET = "${WORKDIR}/opkg-sdk-target.conf"
> >  PKGWRITEDIRIPK = "${WORKDIR}/deploy-ipks"
> >
> >  # Program to be used to build opkg packages
> > -OPKGBUILDCMD ??= 'opkg-build -Z xz -a "${XZ_DEFAULTS}"'
> > +OPKGBUILDCMD ??= 'opkg-build -Z xz -a "${XZ_DEFAULTS}" "${@bb.utils.contains('DISTRO_FEATURES', 'acl', '-A', '', d)}" "${@bb.utils.contains('DISTRO_FEATURES', 'xattr', '-X', '', d)}"'
> >
> >  OPKG_ARGS += "--force_postinstall --prefer-arch-to-version"
> >  OPKG_ARGS += "${@['', '--no-install-recommends'][d.getVar("NO_RECOMMENDATIONS") == "1"]}"
> > --
> > 2.34.1
> >
> 
> >
> > -=-=-=-=-=-=-=-=-=-=-=-
> > Links: You receive all messages sent to this group.
> > View/Reply Online (#184688): https://eur04.safelinks.protection.outlook.com/?url=https%3A%2F%2Flists.openembedded.org%2Fg%2Fopenembedded-core%2Fmessage%2F184688&data=05%7C01%7Cp.lobacz%40welotec.com%7C308b241fa77c483b937808db8a360827%7C25111a7f1d5a4c51a4ca7f8e44011b39%7C0%7C0%7C638255736894248112%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=ZwVNo7xrr50em37GziHwBnWym4C%2FiPec1ds13X5vY1g%3D&reserved=0<https://lists.openembedded.org/g/openembedded-core/message/184688>
> > Mute This Topic: https://eur04.safelinks.protection.outlook.com/?url=https%3A%2F%2Flists.openembedded.org%2Fmt%2F100275318%2F3617179&data=05%7C01%7Cp.lobacz%40welotec.com%7C308b241fa77c483b937808db8a360827%7C25111a7f1d5a4c51a4ca7f8e44011b39%7C0%7C0%7C638255736894248112%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=9xI%2FOyNZLgQHu3DxDlNrRlvGnw78R1r%2FMUDsMax2Ols%3D&reserved=0<https://lists.openembedded.org/mt/100275318/3617179>
> > Group Owner: openembedded-core+owner@lists.openembedded.org
> > Unsubscribe: https://eur04.safelinks.protection.outlook.com/?url=https%3A%2F%2Flists.openembedded.org%2Fg%2Fopenembedded-core%2Funsub&data=05%7C01%7Cp.lobacz%40welotec.com%7C308b241fa77c483b937808db8a360827%7C25111a7f1d5a4c51a4ca7f8e44011b39%7C0%7C0%7C638255736894248112%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=xsWva7UZC%2B%2BRVwZFqazqHnRFG2deHmovxTk%2BiamdwBs%3D&reserved=0<https://lists.openembedded.org/g/openembedded-core/unsub> [alexandre.belloni@bootlin.com]
> > -=-=-=-=-=-=-=-=-=-=-=-
> >
> 
> 
> --
> Alexandre Belloni, co-owner and COO, Bootlin
> Embedded Linux and Kernel engineering
> https://eur04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fbootlin.com%2F&data=05%7C01%7Cp.lobacz%40welotec.com%7C308b241fa77c483b937808db8a360827%7C25111a7f1d5a4c51a4ca7f8e44011b39%7C0%7C0%7C638255736894248112%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=qcJ5Tbo%2BeuKHZTpYlA5WJWQUekULrpnkHDmNnRAvEqo%3D&reserved=0<https://bootlin.com/>
Piotr Łobacz July 22, 2023, 11:20 a.m. UTC | #4
> How did you try to reproduce?
>
> The log says that you are trying to execute this:
>
> opkg-build -Z xz -a "--memlimit=5% --threads=8" "" "" nativesdk-glibc-binary-localedata-zu-za /home/pokybuild/yocto-worker/qemuarm-oecore/build/build/tmp-glibc/work/i686-nativesdk-oesdk-linux/nativesdk-glibc-locale/2.37-r1/deploy-ipks/i686-nativesdk'

Yes, you are absolutely right I haven't noticed these "" "" before...

> Did you test without acl and xattr in DISTRO_FEATURES?

Nevertheless, this was my first suspicion, which I have tested and it didn't occured. I'll try once again maybe for the first time something went wrong...

> Now, I've spent part of my week-end looking at that, this is time I will
> never get back while you just had to read the errors I reported to you
> on v4 and v5.

You don't have to be rude you know? I'm also investing my own time in order to improve it....

> You are demanding this is urgently processed but your patch series is
> not ready.

I'm not demanding anything, I'm only asking for support, that's all :)

> Cheers,
> Piotr
>
> ________________________________
> Od: Alexandre Belloni <alexandre.belloni@bootlin.com>
> Wysłane: sobota, 22 lipca 2023 00:01
> Do: Piotr Łobacz <p.lobacz@welotec.com>
> DW: openembedded-core@lists.openembedded.org <openembedded-core@lists.openembedded.org>
> Temat: Re: [OE-Core][PATCH v7][master-next 1/5] package_ipk.bbclass: add support for ACLs and xattr
>
> I confirm this still fails on the autobuilders:
>
> This is a-full:
> https://autobuilder.yoctoproject.org/typhoon/#/builders/83/builds/5631<https://autobuilder.yoctoproject.org/typhoon/#/builders/83/builds/5631>
>
> On 21/07/2023 14:07:19+0200, Piotr Łobacz wrote:
> > Extend OPKGBUILDCMD variable, with additional parameters, depending
> > on target distro features, in order to support ACLs and xattr.
> >
> > With fix pushed to the opkg-devel:
> > https://groups.google.com/g/opkg-devel/c/dYNHrLjDwg8<https://groups.google.com/g/opkg-devel/c/dYNHrLjDwg8>
> > opkg-build is able to create tar archives with ACLs and xattr.
> >
> > Signed-off-by: Piotr Łobacz <p.lobacz@welotec.com>
> > ---
> >  meta/classes-global/package_ipk.bbclass | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/meta/classes-global/package_ipk.bbclass b/meta/classes-global/package_ipk.bbclass
> > index b4b7bc9ac2..5e151be3cd 100644
> > --- a/meta/classes-global/package_ipk.bbclass
> > +++ b/meta/classes-global/package_ipk.bbclass
> > @@ -15,7 +15,7 @@ IPKGCONF_SDK_TARGET = "${WORKDIR}/opkg-sdk-target.conf"
> >  PKGWRITEDIRIPK = "${WORKDIR}/deploy-ipks"
> >
> >  # Program to be used to build opkg packages
> > -OPKGBUILDCMD ??= 'opkg-build -Z xz -a "${XZ_DEFAULTS}"'
> > +OPKGBUILDCMD ??= 'opkg-build -Z xz -a "${XZ_DEFAULTS}" "${@bb.utils.contains('DISTRO_FEATURES', 'acl', '-A', '', d)}" "${@bb.utils.contains('DISTRO_FEATURES', 'xattr', '-X', '', d)}"'
> >
> >  OPKG_ARGS += "--force_postinstall --prefer-arch-to-version"
> >  OPKG_ARGS += "${@['', '--no-install-recommends'][d.getVar("NO_RECOMMENDATIONS") == "1"]}"
> > --
> > 2.34.1
> >
>
> >
> > -=-=-=-=-=-=-=-=-=-=-=-
> > Links: You receive all messages sent to this group.
> > View/Reply Online (#184688): https://lists.openembedded.org/g/openembedded-core/message/184688<https://lists.openembedded.org/g/openembedded-core/message/184688>
> > Mute This Topic: https://lists.openembedded.org/mt/100275318/3617179<https://lists.openembedded.org/mt/100275318/3617179>
> > Group Owner: openembedded-core+owner@lists.openembedded.org
> > Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub<https://lists.openembedded.org/g/openembedded-core/unsub> [alexandre.belloni@bootlin.com]
> > -=-=-=-=-=-=-=-=-=-=-=-
> >
>
>
> --
> Alexandre Belloni, co-owner and COO, Bootlin
> Embedded Linux and Kernel engineering
> https://bootlin.com/<https://bootlin.com/>

--
Alexandre Belloni, co-owner and COO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com/
Piotr Łobacz July 22, 2023, 11:42 a.m. UTC | #5
OK, finally discovered why in my case removing of acl from DISTRO_FEATURES didn't work for me. We have our own DISTRO_FEATURES:append in which acl is being appended and I just removed it from there.

Unfortunately, there is this file:
yocto/openembedded-core/meta/conf/distro/include/default-distrovars.inc:19:DISTRO_FEATURES_DEFAULT ?= "acl alsa argp bluetooth debuginfod ext2 ipv4 ipv6 largefile pcmcia usbgadget usbhost wifi xattr nfs zeroconf pci 3g nfc x11 vfat seccomp"
which I was not aware of....

I will fix that today finally...

BR
Piotr
Alexandre Belloni July 22, 2023, 12:45 p.m. UTC | #6
On 22/07/2023 11:42:39+0000, Piotr Łobacz wrote:
> OK, finally discovered why in my case removing of acl from DISTRO_FEATURES didn't work for me. We have our own DISTRO_FEATURES:append in which acl is being appended and I just removed it from there.
> 
> Unfortunately, there is this file:
> yocto/openembedded-core/meta/conf/distro/include/default-distrovars.inc:19:DISTRO_FEATURES_DEFAULT ?= "acl alsa argp bluetooth debuginfod ext2 ipv4 ipv6 largefile pcmcia usbgadget usbhost wifi xattr nfs zeroconf pci 3g nfc x11 vfat seccomp"
> which I was not aware of....
> 

Note that the failing packages are nativesdk- so I suspect
DISTRO_FEATURES_FILTER_NATIVESDK may have something to do with this.

> I will fix that today finally...
> 
> BR
> Piotr
> ________________________________
> Od: Alexandre Belloni <alexandre.belloni@bootlin.com>
> Wysłane: sobota, 22 lipca 2023 12:19
> Do: Piotr Łobacz <p.lobacz@welotec.com>
> DW: openembedded-core@lists.openembedded.org <openembedded-core@lists.openembedded.org>
> Temat: Re: ODP: [OE-Core][PATCH v7][master-next 1/5] package_ipk.bbclass: add support for ACLs and xattr
> 
> On 21/07/2023 23:33:02+0000, Piotr Łobacz wrote:
> > Alexandre, Is it possible for you to create a docker file or some image etc. with all commands from autobuilder which will re-create the failure and pass it to me?
> >
> 
> I don't have that but really, those are just bare installation of the
> distro with just what is necessary to start an OE build.
> 
> How did you try to reproduce?
> 
> The log says that you are trying to execute this:
> 
> opkg-build -Z xz -a "--memlimit=5% --threads=8" "" "" nativesdk-glibc-binary-localedata-zu-za /home/pokybuild/yocto-worker/qemuarm-oecore/build/build/tmp-glibc/work/i686-nativesdk-oesdk-linux/nativesdk-glibc-locale/2.37-r1/deploy-ipks/i686-nativesdk'
> 
> The error is there, in the logs since I tested v4:
> 
> Usage: /home/pokybuild/yocto-worker/qemuarm-oecore/build/build/tmp-glibc/work/i686-nativesdk-oesdk-linux/nativesdk-glibc-locale/2.37-r1/recipe-sysroot-native/usr/bin/opkg-build [-A] [-X] [-c] [-C] [-Z compressor] [-a compressor_args] [-O] [-o owner] [-g group] <pkg_directory> [<destination_directory>]
> 
> It is because you changed OPKGBUILDCMD to be:
> 
> OPKGBUILDCMD ??= 'opkg-build -Z xz -a "${XZ_DEFAULTS}" "${@bb.utils.contains('DISTRO_FEATURES', 'acl', '-A', '', d)}" "${@bb.utils.contains('DISTRO_FEATURES', 'xattr', '-X', '', d)}"'
> 
> Can you see the extra double quotes that create two extra string
> arguments?
> 
> Did you test without acl and xattr in DISTRO_FEATURES?
> 
> > Because can grope, find nothing and waste our time...
> >
> 
> Now, I've spent part of my week-end looking at that, this is time I will
> never get back while you just had to read the errors I reported to you
> on v4 and v5.
> You are demanding this is urgently processed but your patch series is
> not ready.
> 
> Also, you HAVE to fix the reproducibility issues, else this will not go
> in.
> 
> > Cheers,
> > Piotr
> >
> > ________________________________
> > Od: Alexandre Belloni <alexandre.belloni@bootlin.com>
> > Wysłane: sobota, 22 lipca 2023 00:01
> > Do: Piotr Łobacz <p.lobacz@welotec.com>
> > DW: openembedded-core@lists.openembedded.org <openembedded-core@lists.openembedded.org>
> > Temat: Re: [OE-Core][PATCH v7][master-next 1/5] package_ipk.bbclass: add support for ACLs and xattr
> >
> > I confirm this still fails on the autobuilders:
> >
> > This is a-full:
> > https://eur04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fautobuilder.yoctoproject.org%2Ftyphoon%2F%23%2Fbuilders%2F83%2Fbuilds%2F5631&data=05%7C01%7Cp.lobacz%40welotec.com%7C144d5e10c57041bc852d08db8a9d349c%7C25111a7f1d5a4c51a4ca7f8e44011b39%7C0%7C0%7C638256180025031560%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=xRBC3fnrtzeYVHWF3NXuYNEUcItaUgthfNbsESw0Uf8%3D&reserved=0<https://eur04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fautobuilder.yoctoproject.org%2Ftyphoon%2F%23%2Fbuilders%2F83%2Fbuilds%2F5631&data=05%7C01%7Cp.lobacz%40welotec.com%7C144d5e10c57041bc852d08db8a9d349c%7C25111a7f1d5a4c51a4ca7f8e44011b39%7C0%7C0%7C638256180025031560%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=xRBC3fnrtzeYVHWF3NXuYNEUcItaUgthfNbsESw0Uf8%3D&reserved=0><https://autobuilder.yoctoproject.org/typhoon/#/builders/83/builds/5631>
> >
> > On 21/07/2023 14:07:19+0200, Piotr Łobacz wrote:
> > > Extend OPKGBUILDCMD variable, with additional parameters, depending
> > > on target distro features, in order to support ACLs and xattr.
> > >
> > > With fix pushed to the opkg-devel:
> > > https://eur04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgroups.google.com%2Fg%2Fopkg-devel%2Fc%2FdYNHrLjDwg8&data=05%7C01%7Cp.lobacz%40welotec.com%7C144d5e10c57041bc852d08db8a9d349c%7C25111a7f1d5a4c51a4ca7f8e44011b39%7C0%7C0%7C638256180025031560%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=tHNWv1KiC%2F23ieV1MDFHeDal56N68koKsSejPRw5xd4%3D&reserved=0<https://eur04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgroups.google.com%2Fg%2Fopkg-devel%2Fc%2FdYNHrLjDwg8&data=05%7C01%7Cp.lobacz%40welotec.com%7C144d5e10c57041bc852d08db8a9d349c%7C25111a7f1d5a4c51a4ca7f8e44011b39%7C0%7C0%7C638256180025031560%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=tHNWv1KiC%2F23ieV1MDFHeDal56N68koKsSejPRw5xd4%3D&reserved=0><https://groups.google.com/g/opkg-devel/c/dYNHrLjDwg8>
> > > opkg-build is able to create tar archives with ACLs and xattr.
> > >
> > > Signed-off-by: Piotr Łobacz <p.lobacz@welotec.com>
> > > ---
> > >  meta/classes-global/package_ipk.bbclass | 2 +-
> > >  1 file changed, 1 insertion(+), 1 deletion(-)
> > >
> > > diff --git a/meta/classes-global/package_ipk.bbclass b/meta/classes-global/package_ipk.bbclass
> > > index b4b7bc9ac2..5e151be3cd 100644
> > > --- a/meta/classes-global/package_ipk.bbclass
> > > +++ b/meta/classes-global/package_ipk.bbclass
> > > @@ -15,7 +15,7 @@ IPKGCONF_SDK_TARGET = "${WORKDIR}/opkg-sdk-target.conf"
> > >  PKGWRITEDIRIPK = "${WORKDIR}/deploy-ipks"
> > >
> > >  # Program to be used to build opkg packages
> > > -OPKGBUILDCMD ??= 'opkg-build -Z xz -a "${XZ_DEFAULTS}"'
> > > +OPKGBUILDCMD ??= 'opkg-build -Z xz -a "${XZ_DEFAULTS}" "${@bb.utils.contains('DISTRO_FEATURES', 'acl', '-A', '', d)}" "${@bb.utils.contains('DISTRO_FEATURES', 'xattr', '-X', '', d)}"'
> > >
> > >  OPKG_ARGS += "--force_postinstall --prefer-arch-to-version"
> > >  OPKG_ARGS += "${@['', '--no-install-recommends'][d.getVar("NO_RECOMMENDATIONS") == "1"]}"
> > > --
> > > 2.34.1
> > >
> >
> > >
> > > -=-=-=-=-=-=-=-=-=-=-=-
> > > Links: You receive all messages sent to this group.
> > > View/Reply Online (#184688): https://eur04.safelinks.protection.outlook.com/?url=https%3A%2F%2Flists.openembedded.org%2Fg%2Fopenembedded-core%2Fmessage%2F184688&data=05%7C01%7Cp.lobacz%40welotec.com%7C144d5e10c57041bc852d08db8a9d349c%7C25111a7f1d5a4c51a4ca7f8e44011b39%7C0%7C0%7C638256180025031560%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=VZTQIYFoSzjRHY42jZwFRCNC6EDE30tqMshNiIUcl6M%3D&reserved=0<https://eur04.safelinks.protection.outlook.com/?url=https%3A%2F%2Flists.openembedded.org%2Fg%2Fopenembedded-core%2Fmessage%2F184688&data=05%7C01%7Cp.lobacz%40welotec.com%7C144d5e10c57041bc852d08db8a9d349c%7C25111a7f1d5a4c51a4ca7f8e44011b39%7C0%7C0%7C638256180025031560%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=VZTQIYFoSzjRHY42jZwFRCNC6EDE30tqMshNiIUcl6M%3D&reserved=0><https://lists.openembedded.org/g/openembedded-core/message/184688>
> > > Mute This Topic: https://eur04.safelinks.protection.outlook.com/?url=https%3A%2F%2Flists.openembedded.org%2Fmt%2F100275318%2F3617179&data=05%7C01%7Cp.lobacz%40welotec.com%7C144d5e10c57041bc852d08db8a9d349c%7C25111a7f1d5a4c51a4ca7f8e44011b39%7C0%7C0%7C638256180025031560%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=b09R4UtKy%2FMdb%2Bo3H9c9FfG9yitoxo3ACuVSwiBxK7E%3D&reserved=0<https://eur04.safelinks.protection.outlook.com/?url=https%3A%2F%2Flists.openembedded.org%2Fmt%2F100275318%2F3617179&data=05%7C01%7Cp.lobacz%40welotec.com%7C144d5e10c57041bc852d08db8a9d349c%7C25111a7f1d5a4c51a4ca7f8e44011b39%7C0%7C0%7C638256180025031560%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=b09R4UtKy%2FMdb%2Bo3H9c9FfG9yitoxo3ACuVSwiBxK7E%3D&reserved=0><https://lists.openembedded.org/mt/100275318/3617179>
> > > Group Owner: openembedded-core+owner@lists.openembedded.org
> > > Unsubscribe: https://eur04.safelinks.protection.outlook.com/?url=https%3A%2F%2Flists.openembedded.org%2Fg%2Fopenembedded-core%2Funsub&data=05%7C01%7Cp.lobacz%40welotec.com%7C144d5e10c57041bc852d08db8a9d349c%7C25111a7f1d5a4c51a4ca7f8e44011b39%7C0%7C0%7C638256180025031560%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=ZWc%2FB6UBqT6hbR5bIxvtbdV41ibuKna%2Bk06Cnj9uq%2BY%3D&reserved=0<https://eur04.safelinks.protection.outlook.com/?url=https%3A%2F%2Flists.openembedded.org%2Fg%2Fopenembedded-core%2Funsub&data=05%7C01%7Cp.lobacz%40welotec.com%7C144d5e10c57041bc852d08db8a9d349c%7C25111a7f1d5a4c51a4ca7f8e44011b39%7C0%7C0%7C638256180025031560%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=ZWc%2FB6UBqT6hbR5bIxvtbdV41ibuKna%2Bk06Cnj9uq%2BY%3D&reserved=0><https://lists.openembedded.org/g/openembedded-core/unsub> [alexandre.belloni@bootlin.com]
> > > -=-=-=-=-=-=-=-=-=-=-=-
> > >
> >
> >
> > --
> > Alexandre Belloni, co-owner and COO, Bootlin
> > Embedded Linux and Kernel engineering
> > https://eur04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fbootlin.com%2F&data=05%7C01%7Cp.lobacz%40welotec.com%7C144d5e10c57041bc852d08db8a9d349c%7C25111a7f1d5a4c51a4ca7f8e44011b39%7C0%7C0%7C638256180025031560%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=XMC3vugVsU3kWlvJ7Ru%2FFh2RMc8v2NBhSD6vMk9hWlI%3D&reserved=0<https://eur04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fbootlin.com%2F&data=05%7C01%7Cp.lobacz%40welotec.com%7C144d5e10c57041bc852d08db8a9d349c%7C25111a7f1d5a4c51a4ca7f8e44011b39%7C0%7C0%7C638256180025031560%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=XMC3vugVsU3kWlvJ7Ru%2FFh2RMc8v2NBhSD6vMk9hWlI%3D&reserved=0><https://bootlin.com/>
> 
> --
> Alexandre Belloni, co-owner and COO, Bootlin
> Embedded Linux and Kernel engineering
> https://eur04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fbootlin.com%2F&data=05%7C01%7Cp.lobacz%40welotec.com%7C144d5e10c57041bc852d08db8a9d349c%7C25111a7f1d5a4c51a4ca7f8e44011b39%7C0%7C0%7C638256180025031560%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=XMC3vugVsU3kWlvJ7Ru%2FFh2RMc8v2NBhSD6vMk9hWlI%3D&reserved=0<https://bootlin.com/>
Piotr Łobacz July 22, 2023, 1:02 p.m. UTC | #7
It does not matter, the problem is due to this line:

OPKGBUILDCMD ??= 'opkg-build -Z xz -a "${XZ_DEFAULTS}" "${@bb.utils.contains('DISTRO_FEATURES', 'acl', '-A', '', d)}" "${@bb.utils.contains('DISTRO_FEATURES', 'xattr', '-X', '', d)}"'

For some reason these '' from both acl and xattr are being packed into "", but I wanted it to be threated as empty strings which would be actually not being passed to this command.

I have finally reproduced the error on my side:

ERROR: run-postinsts-1.0-r10 do_package_write_ipk: Fatal errors occurred in subprocesses:
Command 'PATH="/work/build/yocto/openembedded-core/scripts:/work/build/tmp-glibc/work/all-WelotecGmbH-linux/run-postinsts/1.0-r10/recipe-sysroot-native/usr/bin/allarch-WelotecGmbH-linux:/work/build/tmp-glibc/work/all-WelotecGmbH-linux/run-postinsts/1.0-r10/recipe-sysroot/usr/bin/crossscripts:/work/build/tmp-glibc/work/all-WelotecGmbH-linux/run-postinsts/1.0-r10/recipe-sysroot-native/usr/sbin:/work/build/tmp-glibc/work/all-WelotecGmbH-linux/run-postinsts/1.0-r10/recipe-sysroot-native/usr/bin:/work/build/tmp-glibc/work/all-WelotecGmbH-linux/run-postinsts/1.0-r10/recipe-sysroot-native/sbin:/work/build/tmp-glibc/work/all-WelotecGmbH-linux/run-postinsts/1.0-r10/recipe-sysroot-native/bin:/work/build/yocto/bitbake/bin:/work/build/tmp-glibc/hosttools" opkg-build -Z xz -a "--memlimit=50% --threads=16" "" "-X" run-postinsts /work/build/tmp-glibc/work/all-WelotecGmbH-linux/run-postinsts/1.0-r10/deploy-ipks/all' returned non-zero exit status 1.
Subprocess output:Usage: /work/build/tmp-glibc/work/all-WelotecGmbH-linux/run-postinsts/1.0-r10/recipe-sysroot-native/usr/bin/opkg-build [-A] [-X] [-c] [-C] [-Z compressor] [-a compressor_args] [-O] [-o owner] [-g group] <pkg_directory> [<destination_directory>]
Command 'PATH="/work/build/yocto/openembedded-core/scripts:/work/build/tmp-glibc/work/all-WelotecGmbH-linux/run-postinsts/1.0-r10/recipe-sysroot-native/usr/bin/allarch-WelotecGmbH-linux:/work/build/tmp-glibc/work/all-WelotecGmbH-linux/run-postinsts/1.0-r10/recipe-sysroot/usr/bin/crossscripts:/work/build/tmp-glibc/work/all-WelotecGmbH-linux/run-postinsts/1.0-r10/recipe-sysroot-native/usr/sbin:/work/build/tmp-glibc/work/all-WelotecGmbH-linux/run-postinsts/1.0-r10/recipe-sysroot-native/usr/bin:/work/build/tmp-glibc/work/all-WelotecGmbH-linux/run-postinsts/1.0-r10/recipe-sysroot-native/sbin:/work/build/tmp-glibc/work/all-WelotecGmbH-linux/run-postinsts/1.0-r10/recipe-sysroot-native/bin:/work/build/yocto/bitbake/bin:/work/build/tmp-glibc/hosttools" opkg-build -Z xz -a "--memlimit=50% --threads=16" "" "-X" run-postinsts-dbg /work/build/tmp-glibc/work/all-WelotecGmbH-linux/run-postinsts/1.0-r10/deploy-ipks/all' returned non-zero exit status 1.
Subprocess output:Usage: /work/build/tmp-glibc/work/all-WelotecGmbH-linux/run-postinsts/1.0-r10/recipe-sysroot-native/usr/bin/opkg-build [-A] [-X] [-c] [-C] [-Z compressor] [-a compressor_args] [-O] [-o owner] [-g group] <pkg_directory> [<destination_directory>]
Command 'PATH="/work/build/yocto/openembedded-core/scripts:/work/build/tmp-glibc/work/all-WelotecGmbH-linux/run-postinsts/1.0-r10/recipe-sysroot-native/usr/bin/allarch-WelotecGmbH-linux:/work/build/tmp-glibc/work/all-WelotecGmbH-linux/run-postinsts/1.0-r10/recipe-sysroot/usr/bin/crossscripts:/work/build/tmp-glibc/work/all-WelotecGmbH-linux/run-postinsts/1.0-r10/recipe-sysroot-native/usr/sbin:/work/build/tmp-glibc/work/all-WelotecGmbH-linux/run-postinsts/1.0-r10/recipe-sysroot-native/usr/bin:/work/build/tmp-glibc/work/all-WelotecGmbH-linux/run-postinsts/1.0-r10/recipe-sysroot-native/sbin:/work/build/tmp-glibc/work/all-WelotecGmbH-linux/run-postinsts/1.0-r10/recipe-sysroot-native/bin:/work/build/yocto/bitbake/bin:/work/build/tmp-glibc/hosttools" opkg-build -Z xz -a "--memlimit=50% --threads=16" "" "-X" run-postinsts-dev /work/build/tmp-glibc/work/all-WelotecGmbH-linux/run-postinsts/1.0-r10/deploy-ipks/all' returned non-zero exit status 1.
Subprocess output:Usage: /work/build/tmp-glibc/work/all-WelotecGmbH-linux/run-postinsts/1.0-r10/recipe-sysroot-native/usr/bin/opkg-build [-A] [-X] [-c] [-C] [-Z compressor] [-a compressor_args] [-O] [-o owner] [-g group] <pkg_directory> [<destination_directory>]

when I have just removed entirely acl from DISTRO_FEATURES.

So, in principle I just need to fix this command and that will be all, hopefully.
diff mbox series

Patch

diff --git a/meta/classes-global/package_ipk.bbclass b/meta/classes-global/package_ipk.bbclass
index b4b7bc9ac2..5e151be3cd 100644
--- a/meta/classes-global/package_ipk.bbclass
+++ b/meta/classes-global/package_ipk.bbclass
@@ -15,7 +15,7 @@  IPKGCONF_SDK_TARGET = "${WORKDIR}/opkg-sdk-target.conf"
 PKGWRITEDIRIPK = "${WORKDIR}/deploy-ipks"
 
 # Program to be used to build opkg packages
-OPKGBUILDCMD ??= 'opkg-build -Z xz -a "${XZ_DEFAULTS}"'
+OPKGBUILDCMD ??= 'opkg-build -Z xz -a "${XZ_DEFAULTS}" "${@bb.utils.contains('DISTRO_FEATURES', 'acl', '-A', '', d)}" "${@bb.utils.contains('DISTRO_FEATURES', 'xattr', '-X', '', d)}"'
 
 OPKG_ARGS += "--force_postinstall --prefer-arch-to-version"
 OPKG_ARGS += "${@['', '--no-install-recommends'][d.getVar("NO_RECOMMENDATIONS") == "1"]}"