Re: [OE-core] [PATCH] glib-2.0: backport a switch from distutils to packaging in codegen

2024-03-07 Thread Martin Jansa
On Thu, Mar 7, 2024 at 4:48 PM Peter Kjellerstedt
 wrote:
>
> We have a lot of recipes that use gdbus-codegen and are now facing this
> problem. To solve it, I have added a gdbus-codegen.bbclass that does:
>
> DEPENDS:append = " glib-2.0-native python3-packaging-native"
>
> inherit python3native
>
> This adds the dependencies needed to use gdbus-codegen, and is similar
> in spirit to pkgconfig.bbclass, which adds the dependencies needed to use
> pkg-config.
>
> I can send a patch to add it to either meta or meta-oe if it sounds
> like this is something that would be useful to others.

I was wondering about the same while changing this, there is already
CODEGEN_PYTHON_RDEPENDS = "python3 python3-packaging python3-xml"
CODEGEN_PYTHON_RDEPENDS:mingw32 = ""

RDEPENDS:${PN}-codegen += "${CODEGEN_PYTHON_RDEPENDS}"

but that won't apply the python3native inherit, unless moving this to
some gdbus-codegen.bbclass as you suggested.

I've already fixed all recipes in meta-oe and our internal layers so I
don't need this anymore, but agree it would be useful.

Regards,

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#196808): 
https://lists.openembedded.org/g/openembedded-core/message/196808
Mute This Topic: https://lists.openembedded.org/mt/104560766/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [OE-core] [PATCH] glib-2.0: backport a switch from distutils to packaging in codegen

2024-03-07 Thread Peter Kjellerstedt
> -Original Message-
> From: openembedded-core@lists.openembedded.org  c...@lists.openembedded.org> On Behalf Of Alexander Kanavin
> Sent: den 7 mars 2024 17:11
> To: Peter Kjellerstedt 
> Cc: Khem Raj ; Martin Jansa ;
> openembedded-core@lists.openembedded.org
> Subject: Re: [OE-core] [PATCH] glib-2.0: backport a switch from distutils
> to packaging in codegen
> 
> On Thu, 7 Mar 2024 at 16:49, Peter Kjellerstedt
>  wrote:
> 
> > We have a lot of recipes that use gdbus-codegen and are now facing this
> > problem. To solve it, I have added a gdbus-codegen.bbclass that does:
> >
> > DEPENDS:append = " glib-2.0-native python3-packaging-native"
> >
> > inherit python3native
> >
> > This adds the dependencies needed to use gdbus-codegen, and is similar
> > in spirit to pkgconfig.bbclass, which adds the dependencies needed to use
> > pkg-config.
> >
> > I can send a patch to add it to either meta or meta-oe if it sounds
> > like this is something that would be useful to others.
> 
> I wonder if instead of a class, this can be solved by tweaking
> RDEPENDS of glib recipe (perhaps with a class-native override), so
> that python3-packaging is pulled in through that, and no special
> dependencies are needed, other than glib-2.0-native.
> 
> Alex

The problem is the need to inherit python3native. Without it, the host 
packages are used...

//Peter


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#196807): 
https://lists.openembedded.org/g/openembedded-core/message/196807
Mute This Topic: https://lists.openembedded.org/mt/104560766/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [OE-core] [PATCH] glib-2.0: backport a switch from distutils to packaging in codegen

2024-03-07 Thread Alexander Kanavin
On Thu, 7 Mar 2024 at 16:49, Peter Kjellerstedt
 wrote:

> We have a lot of recipes that use gdbus-codegen and are now facing this
> problem. To solve it, I have added a gdbus-codegen.bbclass that does:
>
> DEPENDS:append = " glib-2.0-native python3-packaging-native"
>
> inherit python3native
>
> This adds the dependencies needed to use gdbus-codegen, and is similar
> in spirit to pkgconfig.bbclass, which adds the dependencies needed to use
> pkg-config.
>
> I can send a patch to add it to either meta or meta-oe if it sounds
> like this is something that would be useful to others.

I wonder if instead of a class, this can be solved by tweaking
RDEPENDS of glib recipe (perhaps with a class-native override), so
that python3-packaging is pulled in through that, and no special
dependencies are needed, other than glib-2.0-native.

Alex

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#196803): 
https://lists.openembedded.org/g/openembedded-core/message/196803
Mute This Topic: https://lists.openembedded.org/mt/104560766/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [OE-core] [PATCH] glib-2.0: backport a switch from distutils to packaging in codegen

2024-03-07 Thread Peter Kjellerstedt
> -Original Message-
> From: openembedded-core@lists.openembedded.org  c...@lists.openembedded.org> On Behalf Of Khem Raj
> Sent: den 28 februari 2024 19:30
> To: Martin Jansa 
> Cc: openembedded-core@lists.openembedded.org
> Subject: Re: [OE-core] [PATCH] glib-2.0: backport a switch from distutils
> to packaging in codegen
> 
> some more failures in meta-openembedded layers ( meta-xfce)
> 
> https://errors.yoctoproject.org/Errors/Details/754995/
> https://errors.yoctoproject.org/Errors/Details/754996/
> 
> On Tue, Feb 27, 2024 at 3:39 AM Martin Jansa 
> wrote:
> >
> > Yes, it was reproducible on my host gentoo after removing distutils
> > with dev-python/setuptools (and for updated glib-2.0-native after
> > removing dev-python/packaging)
> >
> > Fixes sent:
> > https://patchwork.yoctoproject.org/project/oe/patch/20240227113711.834767-1-martin.ja...@gmail.com/
> > https://patchwork.yoctoproject.org/project/oe/patch/20240227113711.834767-2-martin.ja...@gmail.com/
> >
> > Cheers,
> >
> > On Tue, Feb 27, 2024 at 12:58 AM Martin Jansa via
> > lists.openembedded.org 
> > wrote:
> > >
> > > Thanks Khem, will try to reproduce tomorrow. Maybe these don't use
> > > CODEGEN_PYTHON_RDEPENDS.
> > >
> > > With this patch backported to kirkstone I've seen glib-2.0-native
> > > failing with the same issue as python3native there doesn't include
> > > python3-packaging.
> > >
> > > Maybe these recipes aren't using python3native and were depending on
> > > packaging from host, will debug tomorrow.
> > >
> > > On Tue, Feb 27, 2024 at 12:16 AM Khem Raj  wrote:
> > > >
> > > > I am seeing some build failures which seems to be related to this
> > > > patch
> > > >
> > > > https://autobuilder.yoctoproject.org/typhoon/#/builders/88/builds/3657/steps/15/logs/stdio
> > > >
> > > >  |   File 
> > > > "/home/pokybuild/yocto-worker/meta-oe/build/build/tmp/work/core2-64-poky-linux/gattlib/0.2+git/recipe-sysroot-native/usr/share/glib-2.0/codegen/utils.py",
> > > >  line 22, in 
> > > > | import packaging.version
> > > > | ModuleNotFoundError: No module named 'packaging'
> > > >
> > > >
> > > >
> > > >   |   File 
> > > > "/home/pokybuild/yocto-worker/meta-oe/build/build/tmp/work/core2-64-poky-linux/networkmanager-fortisslvpn/1.4.0/recipe-sysroot-native/usr/share/glib-2.0/codegen/utils.py",
> > > >  line 22, in 
> > > > | import packaging.version
> > > > | ModuleNotFoundError: No module named 'packaging'
> > > > | make: *** [Makefile:2081: src/nm-fortisslvpn-pppd-service-dbus.h] 
> > > > Error 1

We have a lot of recipes that use gdbus-codegen and are now facing this 
problem. To solve it, I have added a gdbus-codegen.bbclass that does:

DEPENDS:append = " glib-2.0-native python3-packaging-native"

inherit python3native

This adds the dependencies needed to use gdbus-codegen, and is similar 
in spirit to pkgconfig.bbclass, which adds the dependencies needed to use 
pkg-config.

I can send a patch to add it to either meta or meta-oe if it sounds 
like this is something that would be useful to others.

//Peter


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#196801): 
https://lists.openembedded.org/g/openembedded-core/message/196801
Mute This Topic: https://lists.openembedded.org/mt/104560766/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [OE-core] [PATCH] glib-2.0: backport a switch from distutils to packaging in codegen

2024-02-28 Thread Khem Raj
some more failures in meta-openembedded layers ( meta-xfce)

https://errors.yoctoproject.org/Errors/Details/754995/
https://errors.yoctoproject.org/Errors/Details/754996/

On Tue, Feb 27, 2024 at 3:39 AM Martin Jansa  wrote:
>
> Yes, it was reproducible on my host gentoo after removing distutils
> with dev-python/setuptools (and for updated glib-2.0-native after
> removing dev-python/packaging)
>
> Fixes sent:
> https://patchwork.yoctoproject.org/project/oe/patch/20240227113711.834767-1-martin.ja...@gmail.com/
> https://patchwork.yoctoproject.org/project/oe/patch/20240227113711.834767-2-martin.ja...@gmail.com/
>
> Cheers,
>
> On Tue, Feb 27, 2024 at 12:58 AM Martin Jansa via
> lists.openembedded.org 
> wrote:
> >
> > Thanks Khem, will try to reproduce tomorrow. Maybe these don't use
> > CODEGEN_PYTHON_RDEPENDS.
> >
> > With this patch backported to kirkstone I've seen glib-2.0-native
> > failing with the same issue as python3native there doesn't include
> > python3-packaging.
> >
> > Maybe these recipes aren't using python3native and were depending on
> > packaging from host, will debug tomorrow.
> >
> > On Tue, Feb 27, 2024 at 12:16 AM Khem Raj  wrote:
> > >
> > > I am seeing some build failures which seems to be related to this patch
> > >
> > > https://autobuilder.yoctoproject.org/typhoon/#/builders/88/builds/3657/steps/15/logs/stdio
> > >
> > >  |   File 
> > > "/home/pokybuild/yocto-worker/meta-oe/build/build/tmp/work/core2-64-poky-linux/gattlib/0.2+git/recipe-sysroot-native/usr/share/glib-2.0/codegen/utils.py",
> > > line 22, in 
> > > | import packaging.version
> > > | ModuleNotFoundError: No module named 'packaging'
> > >
> > >
> > >
> > >   |   File 
> > > "/home/pokybuild/yocto-worker/meta-oe/build/build/tmp/work/core2-64-poky-linux/networkmanager-fortisslvpn/1.4.0/recipe-sysroot-native/usr/share/glib-2.0/codegen/utils.py",
> > > line 22, in 
> > > | import packaging.version
> > > | ModuleNotFoundError: No module named 'packaging'
> > > | make: *** [Makefile:2081: src/nm-fortisslvpn-pppd-service-dbus.h] 
> > > Error 1
> > >
> > >
> > > On Sun, Feb 25, 2024 at 1:37 AM Martin Jansa  
> > > wrote:
> > > >
> > > > * to fix build on hosts with python-3.12, now it fails with:
> > > >
> > > > Traceback (most recent call last):
> > > >   File "recipe-sysroot-native/usr/bin/gdbus-codegen", line 53, in 
> > > > 
> > > > from codegen import codegen_main
> > > >   File 
> > > > "recipe-sysroot-native/usr/share/glib-2.0/codegen/codegen_main.py", 
> > > > line 29, in 
> > > > from . import dbustypes
> > > >   File "recipe-sysroot-native/usr/share/glib-2.0/codegen/dbustypes.py", 
> > > > line 22, in 
> > > > from . import utils
> > > >   File "recipe-sysroot-native/usr/share/glib-2.0/codegen/utils.py", 
> > > > line 22, in 
> > > > import distutils.version
> > > > ModuleNotFoundError: No module named 'distutils'
> > > > CMake Error at CMakeLists.txt:90 (message):
> > > >   Error in generating code for connman interface using gdbus-codegen
> > > >
> > > > Signed-off-by: Martin Jansa 
> > > > ---
> > > >  ...deprecated-distutils-module-to-the-p.patch | 34 +++
> > > >  meta/recipes-core/glib-2.0/glib-2.0_2.78.3.bb |  1 +
> > > >  meta/recipes-core/glib-2.0/glib.inc   |  4 +--
> > > >  3 files changed, 36 insertions(+), 3 deletions(-)
> > > >  create mode 100644 
> > > > meta/recipes-core/glib-2.0/glib-2.0/0001-Switch-from-the-deprecated-distutils-module-to-the-p.patch
> > > >
> > > > diff --git 
> > > > a/meta/recipes-core/glib-2.0/glib-2.0/0001-Switch-from-the-deprecated-distutils-module-to-the-p.patch
> > > >  
> > > > b/meta/recipes-core/glib-2.0/glib-2.0/0001-Switch-from-the-deprecated-distutils-module-to-the-p.patch
> > > > new file mode 100644
> > > > index 00..50368ed22c
> > > > --- /dev/null
> > > > +++ 
> > > > b/meta/recipes-core/glib-2.0/glib-2.0/0001-Switch-from-the-deprecated-distutils-module-to-the-p.patch
> > > > @@ -0,0 +1,34 @@
> > > > +From 05f0674c93d94fe6b29c1b707980aac469ddcd72 Mon Sep 17 00:00:00 2001
> > > > +From: Jordan Williams 
> > > > +Date: Fri, 1 Dec 2023 09:53:50 -0600
> > > > +Subject: [PATCH] Switch from the deprecated distutils module to the 
> > > > packaging
> > > > + module
> > > > +
> > > > +The distutils module was removed in Python 3.12.
> > > > +
> > > > +Upstream-Status: Backport 
> > > > [https://gitlab.gnome.org/GNOME/glib/-/commit/6ef967a0f930ce37a8c9b5aff969693b34714291]
> > > > +
> > > > +Signed-off-by: Martin Jansa 
> > > > +---
> > > > + gio/gdbus-2.0/codegen/utils.py | 4 ++--
> > > > + 1 file changed, 2 insertions(+), 2 deletions(-)
> > > > +
> > > > +diff --git a/gio/gdbus-2.0/codegen/utils.py 
> > > > b/gio/gdbus-2.0/codegen/utils.py
> > > > +index 0204610..08f1ba9 100644
> > > > +--- a/gio/gdbus-2.0/codegen/utils.py
> > > >  b/gio/gdbus-2.0/codegen/utils.py
> > > > +@@ -19,7 +19,7 @@
> > > > + #
> > > > + # Author: David Zeuthen 
> > > > +
> > > > +-import distutils.version
> > > > 

Re: [OE-core] [PATCH] glib-2.0: backport a switch from distutils to packaging in codegen

2024-02-27 Thread Martin Jansa
Yes, it was reproducible on my host gentoo after removing distutils
with dev-python/setuptools (and for updated glib-2.0-native after
removing dev-python/packaging)

Fixes sent:
https://patchwork.yoctoproject.org/project/oe/patch/20240227113711.834767-1-martin.ja...@gmail.com/
https://patchwork.yoctoproject.org/project/oe/patch/20240227113711.834767-2-martin.ja...@gmail.com/

Cheers,

On Tue, Feb 27, 2024 at 12:58 AM Martin Jansa via
lists.openembedded.org 
wrote:
>
> Thanks Khem, will try to reproduce tomorrow. Maybe these don't use
> CODEGEN_PYTHON_RDEPENDS.
>
> With this patch backported to kirkstone I've seen glib-2.0-native
> failing with the same issue as python3native there doesn't include
> python3-packaging.
>
> Maybe these recipes aren't using python3native and were depending on
> packaging from host, will debug tomorrow.
>
> On Tue, Feb 27, 2024 at 12:16 AM Khem Raj  wrote:
> >
> > I am seeing some build failures which seems to be related to this patch
> >
> > https://autobuilder.yoctoproject.org/typhoon/#/builders/88/builds/3657/steps/15/logs/stdio
> >
> >  |   File 
> > "/home/pokybuild/yocto-worker/meta-oe/build/build/tmp/work/core2-64-poky-linux/gattlib/0.2+git/recipe-sysroot-native/usr/share/glib-2.0/codegen/utils.py",
> > line 22, in 
> > | import packaging.version
> > | ModuleNotFoundError: No module named 'packaging'
> >
> >
> >
> >   |   File 
> > "/home/pokybuild/yocto-worker/meta-oe/build/build/tmp/work/core2-64-poky-linux/networkmanager-fortisslvpn/1.4.0/recipe-sysroot-native/usr/share/glib-2.0/codegen/utils.py",
> > line 22, in 
> > | import packaging.version
> > | ModuleNotFoundError: No module named 'packaging'
> > | make: *** [Makefile:2081: src/nm-fortisslvpn-pppd-service-dbus.h] 
> > Error 1
> >
> >
> > On Sun, Feb 25, 2024 at 1:37 AM Martin Jansa  wrote:
> > >
> > > * to fix build on hosts with python-3.12, now it fails with:
> > >
> > > Traceback (most recent call last):
> > >   File "recipe-sysroot-native/usr/bin/gdbus-codegen", line 53, in 
> > > from codegen import codegen_main
> > >   File 
> > > "recipe-sysroot-native/usr/share/glib-2.0/codegen/codegen_main.py", line 
> > > 29, in 
> > > from . import dbustypes
> > >   File "recipe-sysroot-native/usr/share/glib-2.0/codegen/dbustypes.py", 
> > > line 22, in 
> > > from . import utils
> > >   File "recipe-sysroot-native/usr/share/glib-2.0/codegen/utils.py", line 
> > > 22, in 
> > > import distutils.version
> > > ModuleNotFoundError: No module named 'distutils'
> > > CMake Error at CMakeLists.txt:90 (message):
> > >   Error in generating code for connman interface using gdbus-codegen
> > >
> > > Signed-off-by: Martin Jansa 
> > > ---
> > >  ...deprecated-distutils-module-to-the-p.patch | 34 +++
> > >  meta/recipes-core/glib-2.0/glib-2.0_2.78.3.bb |  1 +
> > >  meta/recipes-core/glib-2.0/glib.inc   |  4 +--
> > >  3 files changed, 36 insertions(+), 3 deletions(-)
> > >  create mode 100644 
> > > meta/recipes-core/glib-2.0/glib-2.0/0001-Switch-from-the-deprecated-distutils-module-to-the-p.patch
> > >
> > > diff --git 
> > > a/meta/recipes-core/glib-2.0/glib-2.0/0001-Switch-from-the-deprecated-distutils-module-to-the-p.patch
> > >  
> > > b/meta/recipes-core/glib-2.0/glib-2.0/0001-Switch-from-the-deprecated-distutils-module-to-the-p.patch
> > > new file mode 100644
> > > index 00..50368ed22c
> > > --- /dev/null
> > > +++ 
> > > b/meta/recipes-core/glib-2.0/glib-2.0/0001-Switch-from-the-deprecated-distutils-module-to-the-p.patch
> > > @@ -0,0 +1,34 @@
> > > +From 05f0674c93d94fe6b29c1b707980aac469ddcd72 Mon Sep 17 00:00:00 2001
> > > +From: Jordan Williams 
> > > +Date: Fri, 1 Dec 2023 09:53:50 -0600
> > > +Subject: [PATCH] Switch from the deprecated distutils module to the 
> > > packaging
> > > + module
> > > +
> > > +The distutils module was removed in Python 3.12.
> > > +
> > > +Upstream-Status: Backport 
> > > [https://gitlab.gnome.org/GNOME/glib/-/commit/6ef967a0f930ce37a8c9b5aff969693b34714291]
> > > +
> > > +Signed-off-by: Martin Jansa 
> > > +---
> > > + gio/gdbus-2.0/codegen/utils.py | 4 ++--
> > > + 1 file changed, 2 insertions(+), 2 deletions(-)
> > > +
> > > +diff --git a/gio/gdbus-2.0/codegen/utils.py 
> > > b/gio/gdbus-2.0/codegen/utils.py
> > > +index 0204610..08f1ba9 100644
> > > +--- a/gio/gdbus-2.0/codegen/utils.py
> > >  b/gio/gdbus-2.0/codegen/utils.py
> > > +@@ -19,7 +19,7 @@
> > > + #
> > > + # Author: David Zeuthen 
> > > +
> > > +-import distutils.version
> > > ++import packaging.version
> > > + import os
> > > + import sys
> > > +
> > > +@@ -166,4 +166,4 @@ def version_cmp_key(key):
> > > + v = str(key[0])
> > > + else:
> > > + v = "0"
> > > +-return (distutils.version.LooseVersion(v), key[1])
> > > ++return (packaging.version.Version(v), key[1])
> > > diff --git a/meta/recipes-core/glib-2.0/glib-2.0_2.78.3.bb 
> > > b/meta/recipes-core/glib-2.0/glib-2.0_2.78.3.bb
> > > index 

Re: [OE-core] [PATCH] glib-2.0: backport a switch from distutils to packaging in codegen

2024-02-26 Thread Martin Jansa
Thanks Khem, will try to reproduce tomorrow. Maybe these don't use
CODEGEN_PYTHON_RDEPENDS.

With this patch backported to kirkstone I've seen glib-2.0-native
failing with the same issue as python3native there doesn't include
python3-packaging.

Maybe these recipes aren't using python3native and were depending on
packaging from host, will debug tomorrow.

On Tue, Feb 27, 2024 at 12:16 AM Khem Raj  wrote:
>
> I am seeing some build failures which seems to be related to this patch
>
> https://autobuilder.yoctoproject.org/typhoon/#/builders/88/builds/3657/steps/15/logs/stdio
>
>  |   File 
> "/home/pokybuild/yocto-worker/meta-oe/build/build/tmp/work/core2-64-poky-linux/gattlib/0.2+git/recipe-sysroot-native/usr/share/glib-2.0/codegen/utils.py",
> line 22, in 
> | import packaging.version
> | ModuleNotFoundError: No module named 'packaging'
>
>
>
>   |   File 
> "/home/pokybuild/yocto-worker/meta-oe/build/build/tmp/work/core2-64-poky-linux/networkmanager-fortisslvpn/1.4.0/recipe-sysroot-native/usr/share/glib-2.0/codegen/utils.py",
> line 22, in 
> | import packaging.version
> | ModuleNotFoundError: No module named 'packaging'
> | make: *** [Makefile:2081: src/nm-fortisslvpn-pppd-service-dbus.h] Error 
> 1
>
>
> On Sun, Feb 25, 2024 at 1:37 AM Martin Jansa  wrote:
> >
> > * to fix build on hosts with python-3.12, now it fails with:
> >
> > Traceback (most recent call last):
> >   File "recipe-sysroot-native/usr/bin/gdbus-codegen", line 53, in 
> > from codegen import codegen_main
> >   File "recipe-sysroot-native/usr/share/glib-2.0/codegen/codegen_main.py", 
> > line 29, in 
> > from . import dbustypes
> >   File "recipe-sysroot-native/usr/share/glib-2.0/codegen/dbustypes.py", 
> > line 22, in 
> > from . import utils
> >   File "recipe-sysroot-native/usr/share/glib-2.0/codegen/utils.py", line 
> > 22, in 
> > import distutils.version
> > ModuleNotFoundError: No module named 'distutils'
> > CMake Error at CMakeLists.txt:90 (message):
> >   Error in generating code for connman interface using gdbus-codegen
> >
> > Signed-off-by: Martin Jansa 
> > ---
> >  ...deprecated-distutils-module-to-the-p.patch | 34 +++
> >  meta/recipes-core/glib-2.0/glib-2.0_2.78.3.bb |  1 +
> >  meta/recipes-core/glib-2.0/glib.inc   |  4 +--
> >  3 files changed, 36 insertions(+), 3 deletions(-)
> >  create mode 100644 
> > meta/recipes-core/glib-2.0/glib-2.0/0001-Switch-from-the-deprecated-distutils-module-to-the-p.patch
> >
> > diff --git 
> > a/meta/recipes-core/glib-2.0/glib-2.0/0001-Switch-from-the-deprecated-distutils-module-to-the-p.patch
> >  
> > b/meta/recipes-core/glib-2.0/glib-2.0/0001-Switch-from-the-deprecated-distutils-module-to-the-p.patch
> > new file mode 100644
> > index 00..50368ed22c
> > --- /dev/null
> > +++ 
> > b/meta/recipes-core/glib-2.0/glib-2.0/0001-Switch-from-the-deprecated-distutils-module-to-the-p.patch
> > @@ -0,0 +1,34 @@
> > +From 05f0674c93d94fe6b29c1b707980aac469ddcd72 Mon Sep 17 00:00:00 2001
> > +From: Jordan Williams 
> > +Date: Fri, 1 Dec 2023 09:53:50 -0600
> > +Subject: [PATCH] Switch from the deprecated distutils module to the 
> > packaging
> > + module
> > +
> > +The distutils module was removed in Python 3.12.
> > +
> > +Upstream-Status: Backport 
> > [https://gitlab.gnome.org/GNOME/glib/-/commit/6ef967a0f930ce37a8c9b5aff969693b34714291]
> > +
> > +Signed-off-by: Martin Jansa 
> > +---
> > + gio/gdbus-2.0/codegen/utils.py | 4 ++--
> > + 1 file changed, 2 insertions(+), 2 deletions(-)
> > +
> > +diff --git a/gio/gdbus-2.0/codegen/utils.py 
> > b/gio/gdbus-2.0/codegen/utils.py
> > +index 0204610..08f1ba9 100644
> > +--- a/gio/gdbus-2.0/codegen/utils.py
> >  b/gio/gdbus-2.0/codegen/utils.py
> > +@@ -19,7 +19,7 @@
> > + #
> > + # Author: David Zeuthen 
> > +
> > +-import distutils.version
> > ++import packaging.version
> > + import os
> > + import sys
> > +
> > +@@ -166,4 +166,4 @@ def version_cmp_key(key):
> > + v = str(key[0])
> > + else:
> > + v = "0"
> > +-return (distutils.version.LooseVersion(v), key[1])
> > ++return (packaging.version.Version(v), key[1])
> > diff --git a/meta/recipes-core/glib-2.0/glib-2.0_2.78.3.bb 
> > b/meta/recipes-core/glib-2.0/glib-2.0_2.78.3.bb
> > index 42814ba544..6c3e99c641 100644
> > --- a/meta/recipes-core/glib-2.0/glib-2.0_2.78.3.bb
> > +++ b/meta/recipes-core/glib-2.0/glib-2.0_2.78.3.bb
> > @@ -14,6 +14,7 @@ SRC_URI = 
> > "${GNOME_MIRROR}/glib/${SHRT_VER}/glib-${PV}.tar.xz \
> > file://0001-Do-not-write-bindir-into-pkg-config-files.patch \
> > file://0001-meson-Run-atomics-test-on-clang-as-well.patch \
> > 
> > file://0001-gio-tests-resources.c-comment-out-a-build-host-only-.patch \
> > +   
> > file://0001-Switch-from-the-deprecated-distutils-module-to-the-p.patch \
> > file://memory-monitor.patch \
> > file://native-gtkdoc.patch \
> > "
> > diff --git 

Re: [OE-core] [PATCH] glib-2.0: backport a switch from distutils to packaging in codegen

2024-02-26 Thread Khem Raj
I am seeing some build failures which seems to be related to this patch

https://autobuilder.yoctoproject.org/typhoon/#/builders/88/builds/3657/steps/15/logs/stdio

 |   File 
"/home/pokybuild/yocto-worker/meta-oe/build/build/tmp/work/core2-64-poky-linux/gattlib/0.2+git/recipe-sysroot-native/usr/share/glib-2.0/codegen/utils.py",
line 22, in 
| import packaging.version
| ModuleNotFoundError: No module named 'packaging'



  |   File 
"/home/pokybuild/yocto-worker/meta-oe/build/build/tmp/work/core2-64-poky-linux/networkmanager-fortisslvpn/1.4.0/recipe-sysroot-native/usr/share/glib-2.0/codegen/utils.py",
line 22, in 
| import packaging.version
| ModuleNotFoundError: No module named 'packaging'
| make: *** [Makefile:2081: src/nm-fortisslvpn-pppd-service-dbus.h] Error 1


On Sun, Feb 25, 2024 at 1:37 AM Martin Jansa  wrote:
>
> * to fix build on hosts with python-3.12, now it fails with:
>
> Traceback (most recent call last):
>   File "recipe-sysroot-native/usr/bin/gdbus-codegen", line 53, in 
> from codegen import codegen_main
>   File "recipe-sysroot-native/usr/share/glib-2.0/codegen/codegen_main.py", 
> line 29, in 
> from . import dbustypes
>   File "recipe-sysroot-native/usr/share/glib-2.0/codegen/dbustypes.py", line 
> 22, in 
> from . import utils
>   File "recipe-sysroot-native/usr/share/glib-2.0/codegen/utils.py", line 22, 
> in 
> import distutils.version
> ModuleNotFoundError: No module named 'distutils'
> CMake Error at CMakeLists.txt:90 (message):
>   Error in generating code for connman interface using gdbus-codegen
>
> Signed-off-by: Martin Jansa 
> ---
>  ...deprecated-distutils-module-to-the-p.patch | 34 +++
>  meta/recipes-core/glib-2.0/glib-2.0_2.78.3.bb |  1 +
>  meta/recipes-core/glib-2.0/glib.inc   |  4 +--
>  3 files changed, 36 insertions(+), 3 deletions(-)
>  create mode 100644 
> meta/recipes-core/glib-2.0/glib-2.0/0001-Switch-from-the-deprecated-distutils-module-to-the-p.patch
>
> diff --git 
> a/meta/recipes-core/glib-2.0/glib-2.0/0001-Switch-from-the-deprecated-distutils-module-to-the-p.patch
>  
> b/meta/recipes-core/glib-2.0/glib-2.0/0001-Switch-from-the-deprecated-distutils-module-to-the-p.patch
> new file mode 100644
> index 00..50368ed22c
> --- /dev/null
> +++ 
> b/meta/recipes-core/glib-2.0/glib-2.0/0001-Switch-from-the-deprecated-distutils-module-to-the-p.patch
> @@ -0,0 +1,34 @@
> +From 05f0674c93d94fe6b29c1b707980aac469ddcd72 Mon Sep 17 00:00:00 2001
> +From: Jordan Williams 
> +Date: Fri, 1 Dec 2023 09:53:50 -0600
> +Subject: [PATCH] Switch from the deprecated distutils module to the packaging
> + module
> +
> +The distutils module was removed in Python 3.12.
> +
> +Upstream-Status: Backport 
> [https://gitlab.gnome.org/GNOME/glib/-/commit/6ef967a0f930ce37a8c9b5aff969693b34714291]
> +
> +Signed-off-by: Martin Jansa 
> +---
> + gio/gdbus-2.0/codegen/utils.py | 4 ++--
> + 1 file changed, 2 insertions(+), 2 deletions(-)
> +
> +diff --git a/gio/gdbus-2.0/codegen/utils.py b/gio/gdbus-2.0/codegen/utils.py
> +index 0204610..08f1ba9 100644
> +--- a/gio/gdbus-2.0/codegen/utils.py
>  b/gio/gdbus-2.0/codegen/utils.py
> +@@ -19,7 +19,7 @@
> + #
> + # Author: David Zeuthen 
> +
> +-import distutils.version
> ++import packaging.version
> + import os
> + import sys
> +
> +@@ -166,4 +166,4 @@ def version_cmp_key(key):
> + v = str(key[0])
> + else:
> + v = "0"
> +-return (distutils.version.LooseVersion(v), key[1])
> ++return (packaging.version.Version(v), key[1])
> diff --git a/meta/recipes-core/glib-2.0/glib-2.0_2.78.3.bb 
> b/meta/recipes-core/glib-2.0/glib-2.0_2.78.3.bb
> index 42814ba544..6c3e99c641 100644
> --- a/meta/recipes-core/glib-2.0/glib-2.0_2.78.3.bb
> +++ b/meta/recipes-core/glib-2.0/glib-2.0_2.78.3.bb
> @@ -14,6 +14,7 @@ SRC_URI = 
> "${GNOME_MIRROR}/glib/${SHRT_VER}/glib-${PV}.tar.xz \
> file://0001-Do-not-write-bindir-into-pkg-config-files.patch \
> file://0001-meson-Run-atomics-test-on-clang-as-well.patch \
> 
> file://0001-gio-tests-resources.c-comment-out-a-build-host-only-.patch \
> +   
> file://0001-Switch-from-the-deprecated-distutils-module-to-the-p.patch \
> file://memory-monitor.patch \
> file://native-gtkdoc.patch \
> "
> diff --git a/meta/recipes-core/glib-2.0/glib.inc 
> b/meta/recipes-core/glib-2.0/glib.inc
> index 5a57549d85..fac8875d84 100644
> --- a/meta/recipes-core/glib-2.0/glib.inc
> +++ b/meta/recipes-core/glib-2.0/glib.inc
> @@ -144,9 +144,7 @@ do_install:append:mingw32() {
>  rm -f ${D}${bindir}/gtester-report
>  }
>
> -# remove setuptools dependency when usage of distutils is dropped in
> -# 
> https://gitlab.gnome.org/GNOME/glib/-/blob/main/gio/gdbus-2.0/codegen/utils.py
> -CODEGEN_PYTHON_RDEPENDS = "python3 python3-setuptools python3-xml"
> +CODEGEN_PYTHON_RDEPENDS = "python3 python3-packaging python3-xml"
>  CODEGEN_PYTHON_RDEPENDS:mingw32 = ""
>
>  

[OE-core] [PATCH] glib-2.0: backport a switch from distutils to packaging in codegen

2024-02-25 Thread Martin Jansa
* to fix build on hosts with python-3.12, now it fails with:

Traceback (most recent call last):
  File "recipe-sysroot-native/usr/bin/gdbus-codegen", line 53, in 
from codegen import codegen_main
  File "recipe-sysroot-native/usr/share/glib-2.0/codegen/codegen_main.py", line 
29, in 
from . import dbustypes
  File "recipe-sysroot-native/usr/share/glib-2.0/codegen/dbustypes.py", line 
22, in 
from . import utils
  File "recipe-sysroot-native/usr/share/glib-2.0/codegen/utils.py", line 22, in 

import distutils.version
ModuleNotFoundError: No module named 'distutils'
CMake Error at CMakeLists.txt:90 (message):
  Error in generating code for connman interface using gdbus-codegen

Signed-off-by: Martin Jansa 
---
 ...deprecated-distutils-module-to-the-p.patch | 34 +++
 meta/recipes-core/glib-2.0/glib-2.0_2.78.3.bb |  1 +
 meta/recipes-core/glib-2.0/glib.inc   |  4 +--
 3 files changed, 36 insertions(+), 3 deletions(-)
 create mode 100644 
meta/recipes-core/glib-2.0/glib-2.0/0001-Switch-from-the-deprecated-distutils-module-to-the-p.patch

diff --git 
a/meta/recipes-core/glib-2.0/glib-2.0/0001-Switch-from-the-deprecated-distutils-module-to-the-p.patch
 
b/meta/recipes-core/glib-2.0/glib-2.0/0001-Switch-from-the-deprecated-distutils-module-to-the-p.patch
new file mode 100644
index 00..50368ed22c
--- /dev/null
+++ 
b/meta/recipes-core/glib-2.0/glib-2.0/0001-Switch-from-the-deprecated-distutils-module-to-the-p.patch
@@ -0,0 +1,34 @@
+From 05f0674c93d94fe6b29c1b707980aac469ddcd72 Mon Sep 17 00:00:00 2001
+From: Jordan Williams 
+Date: Fri, 1 Dec 2023 09:53:50 -0600
+Subject: [PATCH] Switch from the deprecated distutils module to the packaging
+ module
+
+The distutils module was removed in Python 3.12.
+
+Upstream-Status: Backport 
[https://gitlab.gnome.org/GNOME/glib/-/commit/6ef967a0f930ce37a8c9b5aff969693b34714291]
+
+Signed-off-by: Martin Jansa 
+---
+ gio/gdbus-2.0/codegen/utils.py | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/gio/gdbus-2.0/codegen/utils.py b/gio/gdbus-2.0/codegen/utils.py
+index 0204610..08f1ba9 100644
+--- a/gio/gdbus-2.0/codegen/utils.py
 b/gio/gdbus-2.0/codegen/utils.py
+@@ -19,7 +19,7 @@
+ #
+ # Author: David Zeuthen 
+ 
+-import distutils.version
++import packaging.version
+ import os
+ import sys
+ 
+@@ -166,4 +166,4 @@ def version_cmp_key(key):
+ v = str(key[0])
+ else:
+ v = "0"
+-return (distutils.version.LooseVersion(v), key[1])
++return (packaging.version.Version(v), key[1])
diff --git a/meta/recipes-core/glib-2.0/glib-2.0_2.78.3.bb 
b/meta/recipes-core/glib-2.0/glib-2.0_2.78.3.bb
index 42814ba544..6c3e99c641 100644
--- a/meta/recipes-core/glib-2.0/glib-2.0_2.78.3.bb
+++ b/meta/recipes-core/glib-2.0/glib-2.0_2.78.3.bb
@@ -14,6 +14,7 @@ SRC_URI = "${GNOME_MIRROR}/glib/${SHRT_VER}/glib-${PV}.tar.xz 
\
file://0001-Do-not-write-bindir-into-pkg-config-files.patch \
file://0001-meson-Run-atomics-test-on-clang-as-well.patch \

file://0001-gio-tests-resources.c-comment-out-a-build-host-only-.patch \
+   
file://0001-Switch-from-the-deprecated-distutils-module-to-the-p.patch \
file://memory-monitor.patch \
file://native-gtkdoc.patch \
"
diff --git a/meta/recipes-core/glib-2.0/glib.inc 
b/meta/recipes-core/glib-2.0/glib.inc
index 5a57549d85..fac8875d84 100644
--- a/meta/recipes-core/glib-2.0/glib.inc
+++ b/meta/recipes-core/glib-2.0/glib.inc
@@ -144,9 +144,7 @@ do_install:append:mingw32() {
 rm -f ${D}${bindir}/gtester-report
 }
 
-# remove setuptools dependency when usage of distutils is dropped in
-# 
https://gitlab.gnome.org/GNOME/glib/-/blob/main/gio/gdbus-2.0/codegen/utils.py
-CODEGEN_PYTHON_RDEPENDS = "python3 python3-setuptools python3-xml"
+CODEGEN_PYTHON_RDEPENDS = "python3 python3-packaging python3-xml"
 CODEGEN_PYTHON_RDEPENDS:mingw32 = ""
 
 RDEPENDS:${PN}-codegen += "${CODEGEN_PYTHON_RDEPENDS}"
-- 
2.43.2


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#196136): 
https://lists.openembedded.org/g/openembedded-core/message/196136
Mute This Topic: https://lists.openembedded.org/mt/104560766/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-