All of lore.kernel.org
 help / color / mirror / Atom feed
From: Patrick Ohly <patrick.ohly@intel.com>
To: "Burton, Ross" <ross.burton@intel.com>
Cc: Andrew Shadura <andrew.shadura@collabora.co.uk>,
	OE Core <openembedded-core@lists.openembedded.org>
Subject: Re: [PATCH v3 1/3] dbus: merge .bb and .inc
Date: Thu, 03 Dec 2015 08:46:41 +0100	[thread overview]
Message-ID: <1449128801.10734.73.camel@intel.com> (raw)
In-Reply-To: <CAJTo0LZZZ8O_xnpg2fmqbD77JVWq89aYSUUujAWm7JbN=Q51hw@mail.gmail.com>

On Wed, 2015-12-02 at 16:47 +0000, Burton, Ross wrote:
> 
> On 2 December 2015 at 16:27, Patrick Ohly <patrick.ohly@intel.com>
> wrote:
>         I'm not sure about the "more complicated to do changes in
>         external
>         layers". Why is that?
>         
>         Quite the opposite, I found it useful that the version
>         independent build
>         rules (*) were in a .inc file and relied on including
>         that .inc file in
>         a "dbus-cynara" recipe which builds a specific fork of the
>         source code
>         [2].
>         
>         But I understand that this is an unusual usage of OE-core. As
>         I didn't
>         notice the change in time (it's in master now), I'll just copy
>         the
>         previous content of dbus.inc.
> 
> When a bb and an inc are split the inc has to be considered some sort
> of ABI.  For example, you couldn't remove a configure option that was
> removed in a new release from the .inc because older recipes that use
> the inc will still want it.  Then of course on new recipes that
> triggers a QA warning.  New options need to be added to the
> relevant .bb and not the inc, but then break if other users don't
> notice that they need to add options explicitly.  Basically the idea
> of bb/inc seems good, and in some situations is useful (multiple
> recipes maintained *in the same place* sharing common code) but as a
> method of re-using packaging it's got many pitfalls,

Thanks for the explanation, I understand now better why relying on
a .inc file is not recommended ;-) However, it remains unclear to me why
its presence makes changes in external layers more complicated. Based on
what you said, these external layers should completely ignore that there
is a .inc file and just work with the .bb file. I'm just curious whether
I'm still missing something.

> especially as your recipe could include the .bb from oe-core directly
> or be a bbappend.

In the layer I am trying to be compatible with OE-core master, dizzy,
fido and jethro. That means I cannot "require
recipes-core/dbus/dbus_1.8.18.bb" because that file only exists on
master.

It is possible to use a dbus_%.bbappend and then make changes based on
the current $PV (this is how some other differences between the OE-core
branches are handled), but that is not so easy for dbus-cynara because
it is not just modifying dbus. It's a new recipe.

I guess a virtual package created from the dbus recipe could work, but
that sounds way too complex compared to just copying the dbus.inc file.

-- 
Best Regards, Patrick Ohly

The content of this message is my personal opinion only and although
I am an employee of Intel, the statements I make here in no way
represent Intel's position on the issue, nor am I authorized to speak
on behalf of Intel on this matter.





  reply	other threads:[~2015-12-03  7:46 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-11-20 14:27 [PATCH v3 1/3] dbus: merge .bb and .inc Andrew Shadura
2015-11-20 14:27 ` [PATCH v3 2/3] dbus: update the recipes to 1.10.2 Andrew Shadura
2015-11-24 15:17   ` Burton, Ross
2016-01-08 14:50   ` Patrick Ohly
2015-11-20 14:27 ` [PATCH v3 3/3] dbus: add apparmor support Andrew Shadura
2015-12-02 16:27 ` [PATCH v3 1/3] dbus: merge .bb and .inc Patrick Ohly
2015-12-02 16:47   ` Burton, Ross
2015-12-03  7:46     ` Patrick Ohly [this message]
2015-12-03  8:39       ` Burton, Ross
2015-12-03  9:56         ` Patrick Ohly

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=1449128801.10734.73.camel@intel.com \
    --to=patrick.ohly@intel.com \
    --cc=andrew.shadura@collabora.co.uk \
    --cc=openembedded-core@lists.openembedded.org \
    --cc=ross.burton@intel.com \
    /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 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.