From: Martin Jansa <martin.jansa@gmail.com>
To: Richard Purdie <richard.purdie@linuxfoundation.org>
Cc: openembedded-core@lists.openembedded.org
Subject: Re: [PATCH 06/24] gobject-introspection.bbclass: add a class that enables gobject introspection
Date: Thu, 10 Mar 2016 01:30:43 +0100 [thread overview]
Message-ID: <20160310003043.GQ2542@jama> (raw)
In-Reply-To: <1457568909.2804.209.camel@linuxfoundation.org>
[-- Attachment #1: Type: text/plain, Size: 3261 bytes --]
On Thu, Mar 10, 2016 at 12:15:09AM +0000, Richard Purdie wrote:
> On Thu, 2016-03-10 at 01:09 +0100, Martin Jansa wrote:
> > On Thu, Mar 10, 2016 at 12:52:20AM +0100, Andreas Oberritter wrote:
> > > Hello Alexander,
> > >
> > > On 09.03.2016 16:01, Alexander Kanavin wrote:
> > > > Signed-off-by: Alexander Kanavin <
> > > > alexander.kanavin@linux.intel.com>
> > > > ---
> > > > meta/classes/gobject-introspection.bbclass | 39
> > > > ++++++++++++++++++++++++++++++
> > > > 1 file changed, 39 insertions(+)
> > > > create mode 100644 meta/classes/gobject-introspection.bbclass
> > > >
> > > > diff --git a/meta/classes/gobject-introspection.bbclass
> > > > b/meta/classes/gobject-introspection.bbclass
> > > > new file mode 100644
> > > > index 0000000..ef51629
> > > > --- /dev/null
> > > > +++ b/meta/classes/gobject-introspection.bbclass
> > > > @@ -0,0 +1,39 @@
> > > > +# Inherit this class in recipes to enable building their
> > > > introspection files
> > > > +
> > > > +# This allows disabling introspection support in recipes
> > > > +# (and therefore avoiding the use of qemu)
> > > > +# if gobject-introspection-data is omitted from DISTRO_FEATURES
> > > > and MACHINE_FEATURES.
> > > > +EXTRA_OECONF_prepend = "${@bb.utils.contains('COMBINED_FEATURES'
> > > > , 'gobject-introspection-data', '--enable-introspection', '-
> > > > -disable-introspection', d)} "
> > >
> > > testing only DISTRO_FEATURES would be better. If MACHINE_FEATURES
]> > > gets
> > > tested, even though indirectly, I'd expect every recipe inheriting
> > > this
> > > class to switch to MACHINE_ARCH implicitly.
> >
> > I think the idea was to prevent using qemu for MACHINEs without
> > support
> > in qemu. But I fully agree that causing all recipes which inherit
> > this
> > bbclass effectively MACHINE_ARCH is even worse.
> >
> > DISTRO needs to make sure that all supported MACHINEs have support in
> > qemu or disable introspection for all of them.
>
> Remember that bitbake has special knowledge of bb.utils.contains() and
> is clever enough to make the checksums depend on "gobject-introspection
> -data" being present or not and not the actual complete value.
But then the same TUNE_PKGARCH package created for 2 MACHINEs where one
has gobject-introspection-data in MACHINE_FEATURES and the second has
not, will still use different EXTRA_OECONF value.
So it will be overwriting the same package in same architecture with and
without introspection enabled, because on which MACHINE was built last.
Which is even worse than admitting that this is fscked combination and
turning such recipe and all depending on it to MACHINE_ARCH so that it
at leasts keeps the introspection enabled or disabled consistently.
On the other hand we can expect that if the DEFAULTTUNE has support in
qemu for MACHINE1, then MACHINE2 should be supported as well and this
combination is probably just overlook when setting MACHINE_FEATURES.
> So we can get the best of both worlds here, you can disable g-i on a
> per machine basis yet still enable at the distro level. Recipes don't
> become machine specific.
>
> Cheers,
>
> Richard
>
--
Martin 'JaMa' Jansa jabber: Martin.Jansa@gmail.com
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 188 bytes --]
next prev parent reply other threads:[~2016-03-10 0:27 UTC|newest]
Thread overview: 41+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-03-09 15:01 [PATCH 00/24] Add gobject introspection support to oe-core Alexander Kanavin
2016-03-09 15:01 ` [PATCH 01/24] qemu.bbclass: add qemu_wrapper_cmdline() Alexander Kanavin
2016-03-09 15:01 ` [PATCH 02/24] python3-native: use the previous version of python-config script Alexander Kanavin
2016-03-10 21:24 ` Andreas Müller
2016-03-15 15:59 ` Alexander Kanavin
2016-03-15 16:40 ` Andreas Müller
2016-03-15 19:23 ` Khem Raj
2016-03-15 22:29 ` alexander.kanavin
2016-03-15 22:37 ` Andreas Müller
2016-03-16 16:23 ` alexander.kanavin
2016-03-16 21:28 ` Andreas Müller
2016-03-18 19:29 ` alexander.kanavin
2016-03-09 15:01 ` [PATCH 03/24] python3: fix patching get_python_lib() in distutils/sysconfig.py Alexander Kanavin
2016-03-09 15:01 ` [PATCH 04/24] gobject-introspection: add the recipe Alexander Kanavin
2016-03-09 15:01 ` [PATCH 05/24] gtk-doc-stub: remove introspection stubs Alexander Kanavin
2016-03-09 15:01 ` [PATCH 06/24] gobject-introspection.bbclass: add a class that enables gobject introspection Alexander Kanavin
2016-03-09 23:52 ` Andreas Oberritter
2016-03-10 0:09 ` Martin Jansa
2016-03-10 0:15 ` Richard Purdie
2016-03-10 0:26 ` Andreas Oberritter
2016-03-10 0:28 ` Richard Purdie
2016-03-10 1:38 ` Andreas Oberritter
2016-03-10 0:30 ` Martin Jansa [this message]
2016-03-09 15:01 ` [PATCH 07/24] vala: enable the use of vapigen by packages with vala support Alexander Kanavin
2016-03-09 15:01 ` [PATCH 08/24] vala.bbclass: remove pre-packaged vapigen.m4 from tarballs Alexander Kanavin
2016-03-09 15:01 ` [PATCH 09/24] avahi-ui: remove the dependency on python-pygtk by disabling avahi-discover Alexander Kanavin
2016-03-09 15:01 ` [PATCH 10/24] python-pygtk: remove the recipe Alexander Kanavin
2016-03-09 15:01 ` [PATCH 11/24] avahi: enable gobject-introspection Alexander Kanavin
2016-03-09 15:01 ` [PATCH 12/24] gtk+: enable gobject introspection Alexander Kanavin
2016-03-09 15:01 ` [PATCH 13/24] gtk+3: enable gobject-introspection Alexander Kanavin
2016-03-09 15:02 ` [PATCH 14/24] clutter: enable gobject introspection Alexander Kanavin
2016-03-09 15:02 ` [PATCH 15/24] libsoup-2.4: " Alexander Kanavin
2016-03-09 15:02 ` [PATCH 16/24] gstreamer: " Alexander Kanavin
2016-03-09 15:02 ` [PATCH 17/24] gnomebase.bbclass: do not disable " Alexander Kanavin
2016-03-09 15:02 ` [PATCH 18/24] python-pygobject: update to 3.18.2 Alexander Kanavin
2016-03-09 15:02 ` [PATCH 19/24] recipes-gnome: fix introspection support Alexander Kanavin
2016-03-09 15:02 ` [PATCH 20/24] webkitgtk: enable gobject introspection Alexander Kanavin
2016-03-09 15:02 ` [PATCH 21/24] packagegroup-core-x11-sato: add python-pygobject and gtk+3 Alexander Kanavin
2016-03-09 15:02 ` [PATCH 22/24] bitbake.conf: add 'gobject-introspection-data' to DISTRO/MACHINE_FEATURES_BACKFILL Alexander Kanavin
2016-03-09 15:02 ` [PATCH 23/24] machine/include/arch-x86: Make x32 ABI not supporting gobject-introspection-data Alexander Kanavin
2016-03-09 15:02 ` [PATCH 24/24] musl: disable building of gobject introspection data Alexander Kanavin
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20160310003043.GQ2542@jama \
--to=martin.jansa@gmail.com \
--cc=openembedded-core@lists.openembedded.org \
--cc=richard.purdie@linuxfoundation.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox