* Re: [oe] [meta-gnome][PATCHv2] folks: initial add recipe
[not found] ` <33c62297-f753-3c63-d409-d6ed774ace94@t-online.de>
@ 2022-01-22 19:54 ` Alexander Kanavin
2022-01-23 12:14 ` Markus Volk
0 siblings, 1 reply; 8+ messages in thread
From: Alexander Kanavin @ 2022-01-22 19:54 UTC (permalink / raw)
To: Markus Volk; +Cc: OpenEmbedded Devel List
[-- Attachment #1: Type: text/plain, Size: 3535 bytes --]
Gobject introspection is inherently hostile to cross compilation
environments as it requires running a cross-compiled binary with the qemu
emulator. That does not always work, and if it does not, your build will
break. So there must be a way to turn it off when it happens.
Alex
On Sat, 22 Jan 2022 at 20:29, Markus Volk <f_l_k@t-online.de> wrote:
> I tried to make the 'folks' backends buildable and it turned out, that
> there are some more places where vala introspection is missing.
>
>
> https://github.com/openembedded/meta-openembedded/blob/461c04657c3151629b503fe134e9d672520aacbb/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server.bb#L34
>
>
> https://github.com/openembedded/meta-openembedded/blob/566049b4f1ddc049c1f89a5838d1a71bb429faa3/meta-oe/recipes-connectivity/telepathy/telepathy-glib_0.24.1.bb#L17
>
>
> Most gnome projects meanwhile make gobject-introspection mandatory and i
> can really feel why they are doing so for two important reasons.
>
> First it is just mandatory if you want to be able to build the whole
> gnome universe and second it is in my option one of the greatest
> features of gtk to be able to write code for it in almost every language
> available. This should not be an optional feature so people could rely
> on it.
>
> In both recipes introspection is disabled by default and dependent on
> 'GI_DATA_ENABLED=true'. Wouldn't it be a good idea to just enable
> Introspection by default? We already inherit gobject-introspection anyway.
>
> There are also some more issues in libgdata and libical with
> introspection i was able to fix locally. Will send patches for it if
> it'll be ok making introspection mandatory.
>
> Am 20.01.22 um 21:36 schrieb Markus Volk:
> > Signed-off-by: Markus Volk <f_l_k@t-online.de>
> > ---
> > .../folks/folks_0.15.4.bb | 24 +++++++++++++++++++
> > 1 file changed, 24 insertions(+)
> > create mode 100644 meta-gnome/recipes-connectivity/folks/
> folks_0.15.4.bb
> >
> > diff --git a/meta-gnome/recipes-connectivity/folks/folks_0.15.4.bb
> b/meta-gnome/recipes-connectivity/folks/folks_0.15.4.bb
> > new file mode 100644
> > index 000000000..b4ca551c8
> > --- /dev/null
> > +++ b/meta-gnome/recipes-connectivity/folks/folks_0.15.4.bb
> > @@ -0,0 +1,24 @@
> > +SUMMARY = "Folks is a contact aggregation library."
> > +LICENSE = "LGPLv2.1"
> > +LIC_FILES_CHKSUM = "file://COPYING;md5=2d5025d4aa3495befef8f17206a5b0a1"
> > +
> > +DEPENDS = " \
> > + glib-2.0 \
> > + libgee \
> > + libxml2 \
> > + dbus-glib \
> > + telepathy-glib \
> > +"
> > +
> > +GNOMEBASEBUILDCLASS = "meson"
> > +
> > +# gobject-introspection is mandatory and cannot be configured
> > +REQUIRED_DISTRO_FEATURES = "gobject-introspection-data"
> > +GIR_MESON_OPTION = ""
> > +
> > +EXTRA_OEMESON = "-Deds_backend=false -Dbluez_backend=false
> -Dofono_backend=false -Dtelepathy_backend=false"
> > +
> > +inherit gnomebase gettext gobject-introspection vala features_check
> > +
> > +SRC_URI[archive.sha256sum] =
> "e71099afc9e88fad4e757ae134bc3fd63e12b901ad62b0ed5536afb79124af5f"
> > +
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#95004):
> https://lists.openembedded.org/g/openembedded-devel/message/95004
> Mute This Topic: https://lists.openembedded.org/mt/88611345/1686489
> Group Owner: openembedded-devel+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-devel/unsub [
> alex.kanavin@gmail.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>
>
[-- Attachment #2: Type: text/html, Size: 5617 bytes --]
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [oe] [meta-gnome][PATCHv2] folks: initial add recipe
2022-01-22 19:54 ` [oe] [meta-gnome][PATCHv2] folks: initial add recipe Alexander Kanavin
@ 2022-01-23 12:14 ` Markus Volk
2022-01-23 13:00 ` Alexander Kanavin
0 siblings, 1 reply; 8+ messages in thread
From: Markus Volk @ 2022-01-23 12:14 UTC (permalink / raw)
To: Alexander Kanavin; +Cc: OpenEmbedded Devel List
[-- Attachment #1: Type: text/plain, Size: 5256 bytes --]
yes, but folks is one of that gnome projects that made introspection
mandatory. I can't find an option to disable it with the meson buildsystem:
https://gitlab.gnome.org/GNOME/folks/-/blob/master/meson_options.txt
So i'm really unsure what to do here.
But i have added some more usable PACKAGECONFIG options and sent a patchv3
Am 22.01.22 um 20:54 schrieb Alexander Kanavin:
> Gobject introspection is inherently hostile to cross compilation
> environments as it requires running a cross-compiled binary with the
> qemu emulator. That does not always work, and if it does not, your
> build will break. So there must be a way to turn it off when it happens.
>
> Alex
>
> On Sat, 22 Jan 2022 at 20:29, Markus Volk <f_l_k@t-online.de
> <mailto:f_l_k@t-online.de>> wrote:
>
> I tried to make the 'folks' backends buildable and it turned out,
> that
> there are some more places where vala introspection is missing.
>
> https://github.com/openembedded/meta-openembedded/blob/461c04657c3151629b503fe134e9d672520aacbb/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server.bb#L34
> <https://github.com/openembedded/meta-openembedded/blob/461c04657c3151629b503fe134e9d672520aacbb/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server.bb#L34>
>
> https://github.com/openembedded/meta-openembedded/blob/566049b4f1ddc049c1f89a5838d1a71bb429faa3/meta-oe/recipes-connectivity/telepathy/telepathy-glib_0.24.1.bb#L17
> <https://github.com/openembedded/meta-openembedded/blob/566049b4f1ddc049c1f89a5838d1a71bb429faa3/meta-oe/recipes-connectivity/telepathy/telepathy-glib_0.24.1.bb#L17>
>
>
> Most gnome projects meanwhile make gobject-introspection mandatory
> and i
> can really feel why they are doing so for two important reasons.
>
> First it is just mandatory if you want to be able to build the whole
> gnome universe and second it is in my option one of the greatest
> features of gtk to be able to write code for it in almost every
> language
> available. This should not be an optional feature so people could
> rely
> on it.
>
> In both recipes introspection is disabled by default and dependent on
> 'GI_DATA_ENABLED=true'. Wouldn't it be a good idea to just enable
> Introspection by default? We already inherit gobject-introspection
> anyway.
>
> There are also some more issues in libgdata and libical with
> introspection i was able to fix locally. Will send patches for it if
> it'll be ok making introspection mandatory.
>
> Am 20.01.22 um 21:36 schrieb Markus Volk:
> > Signed-off-by: Markus Volk <f_l_k@t-online.de
> <mailto:f_l_k@t-online.de>>
> > ---
> > .../folks/folks_0.15.4.bb <http://folks_0.15.4.bb>
> | 24 +++++++++++++++++++
> > 1 file changed, 24 insertions(+)
> > create mode 100644
> meta-gnome/recipes-connectivity/folks/folks_0.15.4.bb
> <http://folks_0.15.4.bb>
> >
> > diff --git
> a/meta-gnome/recipes-connectivity/folks/folks_0.15.4.bb
> <http://folks_0.15.4.bb>
> b/meta-gnome/recipes-connectivity/folks/folks_0.15.4.bb
> <http://folks_0.15.4.bb>
> > new file mode 100644
> > index 000000000..b4ca551c8
> > --- /dev/null
> > +++ b/meta-gnome/recipes-connectivity/folks/folks_0.15.4.bb
> <http://folks_0.15.4.bb>
> > @@ -0,0 +1,24 @@
> > +SUMMARY = "Folks is a contact aggregation library."
> > +LICENSE = "LGPLv2.1"
> > +LIC_FILES_CHKSUM =
> "file://COPYING;md5=2d5025d4aa3495befef8f17206a5b0a1"
> > +
> > +DEPENDS = " \
> > + glib-2.0 \
> > + libgee \
> > + libxml2 \
> > + dbus-glib \
> > + telepathy-glib \
> > +"
> > +
> > +GNOMEBASEBUILDCLASS = "meson"
> > +
> > +# gobject-introspection is mandatory and cannot be configured
> > +REQUIRED_DISTRO_FEATURES = "gobject-introspection-data"
> > +GIR_MESON_OPTION = ""
> > +
> > +EXTRA_OEMESON = "-Deds_backend=false -Dbluez_backend=false
> -Dofono_backend=false -Dtelepathy_backend=false"
> > +
> > +inherit gnomebase gettext gobject-introspection vala features_check
> > +
> > +SRC_URI[archive.sha256sum] =
> "e71099afc9e88fad4e757ae134bc3fd63e12b901ad62b0ed5536afb79124af5f"
> > +
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#95004):
> https://lists.openembedded.org/g/openembedded-devel/message/95004
> <https://lists.openembedded.org/g/openembedded-devel/message/95004>
> Mute This Topic:
> https://lists.openembedded.org/mt/88611345/1686489
> <https://lists.openembedded.org/mt/88611345/1686489>
> Group Owner: openembedded-devel+owner@lists.openembedded.org
> <mailto:openembedded-devel%2Bowner@lists.openembedded.org>
> Unsubscribe:
> https://lists.openembedded.org/g/openembedded-devel/unsub
> <https://lists.openembedded.org/g/openembedded-devel/unsub>
> [alex.kanavin@gmail.com <mailto:alex.kanavin@gmail.com>]
> -=-=-=-=-=-=-=-=-=-=-=-
>
[-- Attachment #2: Type: text/html, Size: 8336 bytes --]
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [oe] [meta-gnome][PATCHv2] folks: initial add recipe
2022-01-23 12:14 ` Markus Volk
@ 2022-01-23 13:00 ` Alexander Kanavin
2022-01-23 13:18 ` Markus Volk
[not found] ` <16CCE8C3AC544122.6784@lists.openembedded.org>
0 siblings, 2 replies; 8+ messages in thread
From: Alexander Kanavin @ 2022-01-23 13:00 UTC (permalink / raw)
To: Markus Volk; +Cc: OpenEmbedded Devel List
[-- Attachment #1: Type: text/plain, Size: 4304 bytes --]
You need to add a patch that guards introspection with a meson option,
submit the patch upstream, and then add the patch to the recipe, with a
link (in the patch file) to the upstream submission.
Alex
On Sun, 23 Jan 2022 at 13:14, Markus Volk <f_l_k@t-online.de> wrote:
> yes, but folks is one of that gnome projects that made introspection
> mandatory. I can't find an option to disable it with the meson buildsystem:
>
> https://gitlab.gnome.org/GNOME/folks/-/blob/master/meson_options.txt
>
> So i'm really unsure what to do here.
>
> But i have added some more usable PACKAGECONFIG options and sent a patchv3
> Am 22.01.22 um 20:54 schrieb Alexander Kanavin:
>
> Gobject introspection is inherently hostile to cross compilation
> environments as it requires running a cross-compiled binary with the qemu
> emulator. That does not always work, and if it does not, your build will
> break. So there must be a way to turn it off when it happens.
>
> Alex
>
> On Sat, 22 Jan 2022 at 20:29, Markus Volk <f_l_k@t-online.de> wrote:
>
>> I tried to make the 'folks' backends buildable and it turned out, that
>> there are some more places where vala introspection is missing.
>>
>>
>> https://github.com/openembedded/meta-openembedded/blob/461c04657c3151629b503fe134e9d672520aacbb/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server.bb#L34
>>
>>
>> https://github.com/openembedded/meta-openembedded/blob/566049b4f1ddc049c1f89a5838d1a71bb429faa3/meta-oe/recipes-connectivity/telepathy/telepathy-glib_0.24.1.bb#L17
>>
>>
>> Most gnome projects meanwhile make gobject-introspection mandatory and i
>> can really feel why they are doing so for two important reasons.
>>
>> First it is just mandatory if you want to be able to build the whole
>> gnome universe and second it is in my option one of the greatest
>> features of gtk to be able to write code for it in almost every language
>> available. This should not be an optional feature so people could rely
>> on it.
>>
>> In both recipes introspection is disabled by default and dependent on
>> 'GI_DATA_ENABLED=true'. Wouldn't it be a good idea to just enable
>> Introspection by default? We already inherit gobject-introspection anyway.
>>
>> There are also some more issues in libgdata and libical with
>> introspection i was able to fix locally. Will send patches for it if
>> it'll be ok making introspection mandatory.
>>
>> Am 20.01.22 um 21:36 schrieb Markus Volk:
>> > Signed-off-by: Markus Volk <f_l_k@t-online.de>
>> > ---
>> > .../folks/folks_0.15.4.bb | 24
>> +++++++++++++++++++
>> > 1 file changed, 24 insertions(+)
>> > create mode 100644 meta-gnome/recipes-connectivity/folks/
>> folks_0.15.4.bb
>> >
>> > diff --git a/meta-gnome/recipes-connectivity/folks/folks_0.15.4.bb
>> b/meta-gnome/recipes-connectivity/folks/folks_0.15.4.bb
>> > new file mode 100644
>> > index 000000000..b4ca551c8
>> > --- /dev/null
>> > +++ b/meta-gnome/recipes-connectivity/folks/folks_0.15.4.bb
>> > @@ -0,0 +1,24 @@
>> > +SUMMARY = "Folks is a contact aggregation library."
>> > +LICENSE = "LGPLv2.1"
>> > +LIC_FILES_CHKSUM =
>> "file://COPYING;md5=2d5025d4aa3495befef8f17206a5b0a1"
>> > +
>> > +DEPENDS = " \
>> > + glib-2.0 \
>> > + libgee \
>> > + libxml2 \
>> > + dbus-glib \
>> > + telepathy-glib \
>> > +"
>> > +
>> > +GNOMEBASEBUILDCLASS = "meson"
>> > +
>> > +# gobject-introspection is mandatory and cannot be configured
>> > +REQUIRED_DISTRO_FEATURES = "gobject-introspection-data"
>> > +GIR_MESON_OPTION = ""
>> > +
>> > +EXTRA_OEMESON = "-Deds_backend=false -Dbluez_backend=false
>> -Dofono_backend=false -Dtelepathy_backend=false"
>> > +
>> > +inherit gnomebase gettext gobject-introspection vala features_check
>> > +
>> > +SRC_URI[archive.sha256sum] =
>> "e71099afc9e88fad4e757ae134bc3fd63e12b901ad62b0ed5536afb79124af5f"
>> > +
>>
>> -=-=-=-=-=-=-=-=-=-=-=-
>> Links: You receive all messages sent to this group.
>> View/Reply Online (#95004):
>> https://lists.openembedded.org/g/openembedded-devel/message/95004
>> Mute This Topic: https://lists.openembedded.org/mt/88611345/1686489
>> Group Owner: openembedded-devel+owner@lists.openembedded.org
>> Unsubscribe: https://lists.openembedded.org/g/openembedded-devel/unsub [
>> alex.kanavin@gmail.com]
>> -=-=-=-=-=-=-=-=-=-=-=-
>>
>>
[-- Attachment #2: Type: text/html, Size: 8061 bytes --]
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [oe] [meta-gnome][PATCHv2] folks: initial add recipe
2022-01-23 13:00 ` Alexander Kanavin
@ 2022-01-23 13:18 ` Markus Volk
2022-01-23 13:28 ` Alexander Kanavin
[not found] ` <16CCE8C3AC544122.6784@lists.openembedded.org>
1 sibling, 1 reply; 8+ messages in thread
From: Markus Volk @ 2022-01-23 13:18 UTC (permalink / raw)
To: Alexander Kanavin; +Cc: OpenEmbedded Devel List
[-- Attachment #1: Type: text/plain, Size: 7848 bytes --]
But what you want is literally fighting against upstream design
decision. This always brings with it additional maintenance burden and i
don't see the big win of this.
Theres already plenty of gnome recipes that require introspection to be
enabled:
./meta-multimedia/recipes-support/libmediaart/libmediaart-2.0_1.9.5.bb:GIR_MESON_OPTION
= ""
./meta-gnome/recipes-gnome/tepl/tepl_6.00.0.bb:GIR_MESON_OPTION = ""
./meta-gnome/recipes-gnome/gnome-settings-daemon/gnome-settings-daemon_41.0.bb:GIR_MESON_OPTION
= ""
./meta-gnome/recipes-gnome/gdm/gdm_41.0.bb:GIR_MESON_OPTION = ""
./meta-gnome/recipes-gnome/tracker/tracker_3.2.1.bb:GIR_MESON_OPTION = ""
./meta-gnome/recipes-gnome/tracker/tracker-miners_3.2.1.bb:GIR_MESON_OPTION
= ""
./meta-gnome/recipes-gnome/amtk/amtk_5.3.1.bb:GIR_MESON_OPTION = ""
./meta-gnome/recipes-gnome/gnome-desktop/gnome-desktop_41.2.bb:GIR_MESON_OPTION
= ""
./meta-gnome/recipes-gnome/gnome-shell/gnome-shell_41.2.bb:GIR_MESON_OPTION
= ""
./meta-gnome/recipes-gnome/gjs/gjs_1.70.0.bb:GIR_MESON_OPTION = ""
./meta-gnome/recipes-gnome/gnome-tweaks/gnome-tweaks_40.0.bb:GIR_MESON_OPTION
= ""
./meta-gnome/recipes-gnome/gedit/gedit_40.1.bb:GIR_MESON_OPTION = ""
./meta-gnome/recipes-gnome/libgweather/libgweather_40.0.bb:GIR_MESON_OPTION
= ""
./meta-gnome/recipes-support/colord-gtk/colord-gtk_0.2.0.bb:GIR_MESON_OPTION
= ""
./meta-oe/recipes-support/colord/colord.bb:GIR_MESON_OPTION = ""
And they all just set
REQUIRED_DISTRO_FEATURES += "gobject-introspection-data"
Am 23.01.22 um 14:00 schrieb Alexander Kanavin:
> You need to add a patch that guards introspection with a meson option,
> submit the patch upstream, and then add the patch to the recipe, with
> a link (in the patch file) to the upstream submission.
>
> Alex
>
> On Sun, 23 Jan 2022 at 13:14, Markus Volk <f_l_k@t-online.de
> <mailto:f_l_k@t-online.de>> wrote:
>
> yes, but folks is one of that gnome projects that made
> introspection mandatory. I can't find an option to disable it with
> the meson buildsystem:
>
> https://gitlab.gnome.org/GNOME/folks/-/blob/master/meson_options.txt
> <https://gitlab.gnome.org/GNOME/folks/-/blob/master/meson_options.txt>
>
> So i'm really unsure what to do here.
>
> But i have added some more usable PACKAGECONFIG options and sent a
> patchv3
>
> Am 22.01.22 um 20:54 schrieb Alexander Kanavin:
>> Gobject introspection is inherently hostile to cross compilation
>> environments as it requires running a cross-compiled binary with
>> the qemu emulator. That does not always work, and if it does not,
>> your build will break. So there must be a way to turn it off when
>> it happens.
>>
>> Alex
>>
>> On Sat, 22 Jan 2022 at 20:29, Markus Volk <f_l_k@t-online.de
>> <mailto:f_l_k@t-online.de>> wrote:
>>
>> I tried to make the 'folks' backends buildable and it turned
>> out, that
>> there are some more places where vala introspection is missing.
>>
>> https://github.com/openembedded/meta-openembedded/blob/461c04657c3151629b503fe134e9d672520aacbb/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server.bb#L34
>> <https://github.com/openembedded/meta-openembedded/blob/461c04657c3151629b503fe134e9d672520aacbb/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server.bb#L34>
>>
>> https://github.com/openembedded/meta-openembedded/blob/566049b4f1ddc049c1f89a5838d1a71bb429faa3/meta-oe/recipes-connectivity/telepathy/telepathy-glib_0.24.1.bb#L17
>> <https://github.com/openembedded/meta-openembedded/blob/566049b4f1ddc049c1f89a5838d1a71bb429faa3/meta-oe/recipes-connectivity/telepathy/telepathy-glib_0.24.1.bb#L17>
>>
>>
>> Most gnome projects meanwhile make gobject-introspection
>> mandatory and i
>> can really feel why they are doing so for two important reasons.
>>
>> First it is just mandatory if you want to be able to build
>> the whole
>> gnome universe and second it is in my option one of the greatest
>> features of gtk to be able to write code for it in almost
>> every language
>> available. This should not be an optional feature so people
>> could rely
>> on it.
>>
>> In both recipes introspection is disabled by default and
>> dependent on
>> 'GI_DATA_ENABLED=true'. Wouldn't it be a good idea to just
>> enable
>> Introspection by default? We already inherit
>> gobject-introspection anyway.
>>
>> There are also some more issues in libgdata and libical with
>> introspection i was able to fix locally. Will send patches
>> for it if
>> it'll be ok making introspection mandatory.
>>
>> Am 20.01.22 um 21:36 schrieb Markus Volk:
>> > Signed-off-by: Markus Volk <f_l_k@t-online.de
>> <mailto:f_l_k@t-online.de>>
>> > ---
>> > .../folks/folks_0.15.4.bb <http://folks_0.15.4.bb>
>> | 24 +++++++++++++++++++
>> > 1 file changed, 24 insertions(+)
>> > create mode 100644
>> meta-gnome/recipes-connectivity/folks/folks_0.15.4.bb
>> <http://folks_0.15.4.bb>
>> >
>> > diff --git
>> a/meta-gnome/recipes-connectivity/folks/folks_0.15.4.bb
>> <http://folks_0.15.4.bb>
>> b/meta-gnome/recipes-connectivity/folks/folks_0.15.4.bb
>> <http://folks_0.15.4.bb>
>> > new file mode 100644
>> > index 000000000..b4ca551c8
>> > --- /dev/null
>> > +++ b/meta-gnome/recipes-connectivity/folks/folks_0.15.4.bb
>> <http://folks_0.15.4.bb>
>> > @@ -0,0 +1,24 @@
>> > +SUMMARY = "Folks is a contact aggregation library."
>> > +LICENSE = "LGPLv2.1"
>> > +LIC_FILES_CHKSUM =
>> "file://COPYING;md5=2d5025d4aa3495befef8f17206a5b0a1"
>> > +
>> > +DEPENDS = " \
>> > + glib-2.0 \
>> > + libgee \
>> > + libxml2 \
>> > + dbus-glib \
>> > + telepathy-glib \
>> > +"
>> > +
>> > +GNOMEBASEBUILDCLASS = "meson"
>> > +
>> > +# gobject-introspection is mandatory and cannot be configured
>> > +REQUIRED_DISTRO_FEATURES = "gobject-introspection-data"
>> > +GIR_MESON_OPTION = ""
>> > +
>> > +EXTRA_OEMESON = "-Deds_backend=false -Dbluez_backend=false
>> -Dofono_backend=false -Dtelepathy_backend=false"
>> > +
>> > +inherit gnomebase gettext gobject-introspection vala
>> features_check
>> > +
>> > +SRC_URI[archive.sha256sum] =
>> "e71099afc9e88fad4e757ae134bc3fd63e12b901ad62b0ed5536afb79124af5f"
>> > +
>>
>> -=-=-=-=-=-=-=-=-=-=-=-
>> Links: You receive all messages sent to this group.
>> View/Reply Online (#95004):
>> https://lists.openembedded.org/g/openembedded-devel/message/95004
>> <https://lists.openembedded.org/g/openembedded-devel/message/95004>
>> Mute This Topic:
>> https://lists.openembedded.org/mt/88611345/1686489
>> <https://lists.openembedded.org/mt/88611345/1686489>
>> Group Owner: openembedded-devel+owner@lists.openembedded.org
>> <mailto:openembedded-devel%2Bowner@lists.openembedded.org>
>> Unsubscribe:
>> https://lists.openembedded.org/g/openembedded-devel/unsub
>> <https://lists.openembedded.org/g/openembedded-devel/unsub>
>> [alex.kanavin@gmail.com <mailto:alex.kanavin@gmail.com>]
>> -=-=-=-=-=-=-=-=-=-=-=-
>>
[-- Attachment #2: Type: text/html, Size: 12498 bytes --]
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [oe] [meta-gnome][PATCHv2] folks: initial add recipe
[not found] ` <16CCE8C3AC544122.6784@lists.openembedded.org>
@ 2022-01-23 13:27 ` Markus Volk
0 siblings, 0 replies; 8+ messages in thread
From: Markus Volk @ 2022-01-23 13:27 UTC (permalink / raw)
To: openembedded-devel
[-- Attachment #1: Type: text/plain, Size: 8008 bytes --]
Would it help to add geary to the gnome-apps-packagegroup only if
introspection is enabled ? Its already done like this e.g. for colord:
https://github.com/openembedded/meta-openembedded/blob/a558d51fecda3e66ace21d02b57ab61bf122fdc1/meta-oe/recipes-core/packagegroups/packagegroup-meta-oe.bb#L738
Am 23.01.22 um 14:18 schrieb Markus Volk:
>
> But what you want is literally fighting against upstream design
> decision. This always brings with it additional maintenance burden and
> i don't see the big win of this.
>
> Theres already plenty of gnome recipes that require introspection to
> be enabled:
>
> ./meta-multimedia/recipes-support/libmediaart/libmediaart-2.0_1.9.5.bb:GIR_MESON_OPTION
> = ""
> ./meta-gnome/recipes-gnome/tepl/tepl_6.00.0.bb:GIR_MESON_OPTION = ""
> ./meta-gnome/recipes-gnome/gnome-settings-daemon/gnome-settings-daemon_41.0.bb:GIR_MESON_OPTION
> = ""
> ./meta-gnome/recipes-gnome/gdm/gdm_41.0.bb:GIR_MESON_OPTION = ""
> ./meta-gnome/recipes-gnome/tracker/tracker_3.2.1.bb:GIR_MESON_OPTION = ""
> ./meta-gnome/recipes-gnome/tracker/tracker-miners_3.2.1.bb:GIR_MESON_OPTION
> = ""
> ./meta-gnome/recipes-gnome/amtk/amtk_5.3.1.bb:GIR_MESON_OPTION = ""
> ./meta-gnome/recipes-gnome/gnome-desktop/gnome-desktop_41.2.bb:GIR_MESON_OPTION
> = ""
> ./meta-gnome/recipes-gnome/gnome-shell/gnome-shell_41.2.bb:GIR_MESON_OPTION
> = ""
> ./meta-gnome/recipes-gnome/gjs/gjs_1.70.0.bb:GIR_MESON_OPTION = ""
> ./meta-gnome/recipes-gnome/gnome-tweaks/gnome-tweaks_40.0.bb:GIR_MESON_OPTION
> = ""
> ./meta-gnome/recipes-gnome/gedit/gedit_40.1.bb:GIR_MESON_OPTION = ""
> ./meta-gnome/recipes-gnome/libgweather/libgweather_40.0.bb:GIR_MESON_OPTION
> = ""
> ./meta-gnome/recipes-support/colord-gtk/colord-gtk_0.2.0.bb:GIR_MESON_OPTION
> = ""
> ./meta-oe/recipes-support/colord/colord.bb:GIR_MESON_OPTION = ""
>
> And they all just set
>
> REQUIRED_DISTRO_FEATURES += "gobject-introspection-data"
>
> Am 23.01.22 um 14:00 schrieb Alexander Kanavin:
>> You need to add a patch that guards introspection with a meson
>> option, submit the patch upstream, and then add the patch to the
>> recipe, with a link (in the patch file) to the upstream submission.
>>
>> Alex
>>
>> On Sun, 23 Jan 2022 at 13:14, Markus Volk <f_l_k@t-online.de
>> <mailto:f_l_k@t-online.de>> wrote:
>>
>> yes, but folks is one of that gnome projects that made
>> introspection mandatory. I can't find an option to disable it
>> with the meson buildsystem:
>>
>> https://gitlab.gnome.org/GNOME/folks/-/blob/master/meson_options.txt
>> <https://gitlab.gnome.org/GNOME/folks/-/blob/master/meson_options.txt>
>>
>> So i'm really unsure what to do here.
>>
>> But i have added some more usable PACKAGECONFIG options and sent
>> a patchv3
>>
>> Am 22.01.22 um 20:54 schrieb Alexander Kanavin:
>>> Gobject introspection is inherently hostile to cross compilation
>>> environments as it requires running a cross-compiled binary with
>>> the qemu emulator. That does not always work, and if it does
>>> not, your build will break. So there must be a way to turn it
>>> off when it happens.
>>>
>>> Alex
>>>
>>> On Sat, 22 Jan 2022 at 20:29, Markus Volk <f_l_k@t-online.de
>>> <mailto:f_l_k@t-online.de>> wrote:
>>>
>>> I tried to make the 'folks' backends buildable and it turned
>>> out, that
>>> there are some more places where vala introspection is missing.
>>>
>>> https://github.com/openembedded/meta-openembedded/blob/461c04657c3151629b503fe134e9d672520aacbb/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server.bb#L34
>>> <https://github.com/openembedded/meta-openembedded/blob/461c04657c3151629b503fe134e9d672520aacbb/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server.bb#L34>
>>>
>>> https://github.com/openembedded/meta-openembedded/blob/566049b4f1ddc049c1f89a5838d1a71bb429faa3/meta-oe/recipes-connectivity/telepathy/telepathy-glib_0.24.1.bb#L17
>>> <https://github.com/openembedded/meta-openembedded/blob/566049b4f1ddc049c1f89a5838d1a71bb429faa3/meta-oe/recipes-connectivity/telepathy/telepathy-glib_0.24.1.bb#L17>
>>>
>>>
>>> Most gnome projects meanwhile make gobject-introspection
>>> mandatory and i
>>> can really feel why they are doing so for two important reasons.
>>>
>>> First it is just mandatory if you want to be able to build
>>> the whole
>>> gnome universe and second it is in my option one of the
>>> greatest
>>> features of gtk to be able to write code for it in almost
>>> every language
>>> available. This should not be an optional feature so people
>>> could rely
>>> on it.
>>>
>>> In both recipes introspection is disabled by default and
>>> dependent on
>>> 'GI_DATA_ENABLED=true'. Wouldn't it be a good idea to just
>>> enable
>>> Introspection by default? We already inherit
>>> gobject-introspection anyway.
>>>
>>> There are also some more issues in libgdata and libical with
>>> introspection i was able to fix locally. Will send patches
>>> for it if
>>> it'll be ok making introspection mandatory.
>>>
>>> Am 20.01.22 um 21:36 schrieb Markus Volk:
>>> > Signed-off-by: Markus Volk <f_l_k@t-online.de
>>> <mailto:f_l_k@t-online.de>>
>>> > ---
>>> > .../folks/folks_0.15.4.bb <http://folks_0.15.4.bb>
>>> | 24 +++++++++++++++++++
>>> > 1 file changed, 24 insertions(+)
>>> > create mode 100644
>>> meta-gnome/recipes-connectivity/folks/folks_0.15.4.bb
>>> <http://folks_0.15.4.bb>
>>> >
>>> > diff --git
>>> a/meta-gnome/recipes-connectivity/folks/folks_0.15.4.bb
>>> <http://folks_0.15.4.bb>
>>> b/meta-gnome/recipes-connectivity/folks/folks_0.15.4.bb
>>> <http://folks_0.15.4.bb>
>>> > new file mode 100644
>>> > index 000000000..b4ca551c8
>>> > --- /dev/null
>>> > +++
>>> b/meta-gnome/recipes-connectivity/folks/folks_0.15.4.bb
>>> <http://folks_0.15.4.bb>
>>> > @@ -0,0 +1,24 @@
>>> > +SUMMARY = "Folks is a contact aggregation library."
>>> > +LICENSE = "LGPLv2.1"
>>> > +LIC_FILES_CHKSUM =
>>> "file://COPYING;md5=2d5025d4aa3495befef8f17206a5b0a1"
>>> > +
>>> > +DEPENDS = " \
>>> > + glib-2.0 \
>>> > + libgee \
>>> > + libxml2 \
>>> > + dbus-glib \
>>> > + telepathy-glib \
>>> > +"
>>> > +
>>> > +GNOMEBASEBUILDCLASS = "meson"
>>> > +
>>> > +# gobject-introspection is mandatory and cannot be configured
>>> > +REQUIRED_DISTRO_FEATURES = "gobject-introspection-data"
>>> > +GIR_MESON_OPTION = ""
>>> > +
>>> > +EXTRA_OEMESON = "-Deds_backend=false
>>> -Dbluez_backend=false -Dofono_backend=false
>>> -Dtelepathy_backend=false"
>>> > +
>>> > +inherit gnomebase gettext gobject-introspection vala
>>> features_check
>>> > +
>>> > +SRC_URI[archive.sha256sum] =
>>> "e71099afc9e88fad4e757ae134bc3fd63e12b901ad62b0ed5536afb79124af5f"
>>> > +
>>>
>>>
>>>
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#95018): https://lists.openembedded.org/g/openembedded-devel/message/95018
> Mute This Topic: https://lists.openembedded.org/mt/88611345/3618223
> Group Owner: openembedded-devel+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-devel/unsub [f_l_k@t-online.de]
> -=-=-=-=-=-=-=-=-=-=-=-
>
[-- Attachment #2: Type: text/html, Size: 13430 bytes --]
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [oe] [meta-gnome][PATCHv2] folks: initial add recipe
2022-01-23 13:18 ` Markus Volk
@ 2022-01-23 13:28 ` Alexander Kanavin
2022-01-23 13:35 ` Markus Volk
0 siblings, 1 reply; 8+ messages in thread
From: Alexander Kanavin @ 2022-01-23 13:28 UTC (permalink / raw)
To: Markus Volk; +Cc: OpenEmbedded Devel List
[-- Attachment #1: Type: text/plain, Size: 6373 bytes --]
I don't think that's a design decision, just an oversight on the upstream
side. There are even more recipes that do allow disabling introspection, so
how about you make a patch, submit it upstream, explain why it is
beneficial, and see what they have to say?
Alex
On Sun, 23 Jan 2022 at 14:18, Markus Volk <f_l_k@t-online.de> wrote:
> But what you want is literally fighting against upstream design decision.
> This always brings with it additional maintenance burden and i don't see
> the big win of this.
>
> Theres already plenty of gnome recipes that require introspection to be
> enabled:
>
> ./meta-multimedia/recipes-support/libmediaart/libmediaart-2.0_1.9.5.bb:GIR_MESON_OPTION
> = ""
> ./meta-gnome/recipes-gnome/tepl/tepl_6.00.0.bb:GIR_MESON_OPTION = ""
>
> ./meta-gnome/recipes-gnome/gnome-settings-daemon/gnome-settings-daemon_41.0.bb:GIR_MESON_OPTION
> = ""
> ./meta-gnome/recipes-gnome/gdm/gdm_41.0.bb:GIR_MESON_OPTION = ""
> ./meta-gnome/recipes-gnome/tracker/tracker_3.2.1.bb:GIR_MESON_OPTION = ""
> ./meta-gnome/recipes-gnome/tracker/tracker-miners_3.2.1.bb:GIR_MESON_OPTION
> = ""
> ./meta-gnome/recipes-gnome/amtk/amtk_5.3.1.bb:GIR_MESON_OPTION = ""
> ./meta-gnome/recipes-gnome/gnome-desktop/gnome-desktop_41.2.bb:GIR_MESON_OPTION
> = ""
> ./meta-gnome/recipes-gnome/gnome-shell/gnome-shell_41.2.bb:GIR_MESON_OPTION
> = ""
> ./meta-gnome/recipes-gnome/gjs/gjs_1.70.0.bb:GIR_MESON_OPTION = ""
> ./meta-gnome/recipes-gnome/gnome-tweaks/gnome-tweaks_40.0.bb:GIR_MESON_OPTION
> = ""
> ./meta-gnome/recipes-gnome/gedit/gedit_40.1.bb:GIR_MESON_OPTION = ""
> ./meta-gnome/recipes-gnome/libgweather/libgweather_40.0.bb:GIR_MESON_OPTION
> = ""
> ./meta-gnome/recipes-support/colord-gtk/colord-gtk_0.2.0.bb:GIR_MESON_OPTION
> = ""
> ./meta-oe/recipes-support/colord/colord.bb:GIR_MESON_OPTION = ""
>
> And they all just set
>
> REQUIRED_DISTRO_FEATURES += "gobject-introspection-data"
> Am 23.01.22 um 14:00 schrieb Alexander Kanavin:
>
> You need to add a patch that guards introspection with a meson option,
> submit the patch upstream, and then add the patch to the recipe, with a
> link (in the patch file) to the upstream submission.
>
> Alex
>
> On Sun, 23 Jan 2022 at 13:14, Markus Volk <f_l_k@t-online.de> wrote:
>
>> yes, but folks is one of that gnome projects that made introspection
>> mandatory. I can't find an option to disable it with the meson buildsystem:
>>
>> https://gitlab.gnome.org/GNOME/folks/-/blob/master/meson_options.txt
>>
>> So i'm really unsure what to do here.
>>
>> But i have added some more usable PACKAGECONFIG options and sent a patchv3
>> Am 22.01.22 um 20:54 schrieb Alexander Kanavin:
>>
>> Gobject introspection is inherently hostile to cross compilation
>> environments as it requires running a cross-compiled binary with the qemu
>> emulator. That does not always work, and if it does not, your build will
>> break. So there must be a way to turn it off when it happens.
>>
>> Alex
>>
>> On Sat, 22 Jan 2022 at 20:29, Markus Volk <f_l_k@t-online.de> wrote:
>>
>>> I tried to make the 'folks' backends buildable and it turned out, that
>>> there are some more places where vala introspection is missing.
>>>
>>>
>>> https://github.com/openembedded/meta-openembedded/blob/461c04657c3151629b503fe134e9d672520aacbb/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server.bb#L34
>>>
>>>
>>> https://github.com/openembedded/meta-openembedded/blob/566049b4f1ddc049c1f89a5838d1a71bb429faa3/meta-oe/recipes-connectivity/telepathy/telepathy-glib_0.24.1.bb#L17
>>>
>>>
>>> Most gnome projects meanwhile make gobject-introspection mandatory and i
>>> can really feel why they are doing so for two important reasons.
>>>
>>> First it is just mandatory if you want to be able to build the whole
>>> gnome universe and second it is in my option one of the greatest
>>> features of gtk to be able to write code for it in almost every language
>>> available. This should not be an optional feature so people could rely
>>> on it.
>>>
>>> In both recipes introspection is disabled by default and dependent on
>>> 'GI_DATA_ENABLED=true'. Wouldn't it be a good idea to just enable
>>> Introspection by default? We already inherit gobject-introspection
>>> anyway.
>>>
>>> There are also some more issues in libgdata and libical with
>>> introspection i was able to fix locally. Will send patches for it if
>>> it'll be ok making introspection mandatory.
>>>
>>> Am 20.01.22 um 21:36 schrieb Markus Volk:
>>> > Signed-off-by: Markus Volk <f_l_k@t-online.de>
>>> > ---
>>> > .../folks/folks_0.15.4.bb | 24
>>> +++++++++++++++++++
>>> > 1 file changed, 24 insertions(+)
>>> > create mode 100644 meta-gnome/recipes-connectivity/folks/
>>> folks_0.15.4.bb
>>> >
>>> > diff --git a/meta-gnome/recipes-connectivity/folks/folks_0.15.4.bb
>>> b/meta-gnome/recipes-connectivity/folks/folks_0.15.4.bb
>>> > new file mode 100644
>>> > index 000000000..b4ca551c8
>>> > --- /dev/null
>>> > +++ b/meta-gnome/recipes-connectivity/folks/folks_0.15.4.bb
>>> > @@ -0,0 +1,24 @@
>>> > +SUMMARY = "Folks is a contact aggregation library."
>>> > +LICENSE = "LGPLv2.1"
>>> > +LIC_FILES_CHKSUM =
>>> "file://COPYING;md5=2d5025d4aa3495befef8f17206a5b0a1"
>>> > +
>>> > +DEPENDS = " \
>>> > + glib-2.0 \
>>> > + libgee \
>>> > + libxml2 \
>>> > + dbus-glib \
>>> > + telepathy-glib \
>>> > +"
>>> > +
>>> > +GNOMEBASEBUILDCLASS = "meson"
>>> > +
>>> > +# gobject-introspection is mandatory and cannot be configured
>>> > +REQUIRED_DISTRO_FEATURES = "gobject-introspection-data"
>>> > +GIR_MESON_OPTION = ""
>>> > +
>>> > +EXTRA_OEMESON = "-Deds_backend=false -Dbluez_backend=false
>>> -Dofono_backend=false -Dtelepathy_backend=false"
>>> > +
>>> > +inherit gnomebase gettext gobject-introspection vala features_check
>>> > +
>>> > +SRC_URI[archive.sha256sum] =
>>> "e71099afc9e88fad4e757ae134bc3fd63e12b901ad62b0ed5536afb79124af5f"
>>> > +
>>>
>>> -=-=-=-=-=-=-=-=-=-=-=-
>>> Links: You receive all messages sent to this group.
>>> View/Reply Online (#95004):
>>> https://lists.openembedded.org/g/openembedded-devel/message/95004
>>> Mute This Topic: https://lists.openembedded.org/mt/88611345/1686489
>>> Group Owner: openembedded-devel+owner@lists.openembedded.org
>>> Unsubscribe: https://lists.openembedded.org/g/openembedded-devel/unsub [
>>> alex.kanavin@gmail.com]
>>> -=-=-=-=-=-=-=-=-=-=-=-
>>>
>>>
[-- Attachment #2: Type: text/html, Size: 12092 bytes --]
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [oe] [meta-gnome][PATCHv2] folks: initial add recipe
2022-01-23 13:28 ` Alexander Kanavin
@ 2022-01-23 13:35 ` Markus Volk
2022-01-23 13:51 ` Alexander Kanavin
0 siblings, 1 reply; 8+ messages in thread
From: Markus Volk @ 2022-01-23 13:35 UTC (permalink / raw)
To: openembedded-devel
What brought me to thinking this really is a design decision was this
conversation some time back
https://gitlab.gnome.org/GNOME/gimp/-/issues/7208
Am 23.01.22 um 14:28 schrieb Alexander Kanavin:
> nd see what they have to say
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [oe] [meta-gnome][PATCHv2] folks: initial add recipe
2022-01-23 13:35 ` Markus Volk
@ 2022-01-23 13:51 ` Alexander Kanavin
0 siblings, 0 replies; 8+ messages in thread
From: Alexander Kanavin @ 2022-01-23 13:51 UTC (permalink / raw)
To: Markus Volk; +Cc: OpenEmbedded Devel List
[-- Attachment #1: Type: text/plain, Size: 808 bytes --]
I added a comment there, for what it's worth.
Alex
On Sun, 23 Jan 2022 at 14:35, Markus Volk <f_l_k@t-online.de> wrote:
> What brought me to thinking this really is a design decision was this
> conversation some time back
>
> https://gitlab.gnome.org/GNOME/gimp/-/issues/7208
>
> Am 23.01.22 um 14:28 schrieb Alexander Kanavin:
> > nd see what they have to say
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#95021):
> https://lists.openembedded.org/g/openembedded-devel/message/95021
> Mute This Topic: https://lists.openembedded.org/mt/88611345/1686489
> Group Owner: openembedded-devel+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-devel/unsub [
> alex.kanavin@gmail.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>
>
[-- Attachment #2: Type: text/html, Size: 1737 bytes --]
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2022-01-23 13:52 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
[not found] <20220120203602.3833757-1-f_l_k@t-online.de>
[not found] ` <33c62297-f753-3c63-d409-d6ed774ace94@t-online.de>
2022-01-22 19:54 ` [oe] [meta-gnome][PATCHv2] folks: initial add recipe Alexander Kanavin
2022-01-23 12:14 ` Markus Volk
2022-01-23 13:00 ` Alexander Kanavin
2022-01-23 13:18 ` Markus Volk
2022-01-23 13:28 ` Alexander Kanavin
2022-01-23 13:35 ` Markus Volk
2022-01-23 13:51 ` Alexander Kanavin
[not found] ` <16CCE8C3AC544122.6784@lists.openembedded.org>
2022-01-23 13:27 ` Markus Volk
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.