From: Kazuhiro Hayashi <kazuhiro3.hayashi@toshiba.co.jp>
To: isar-users@googlegroups.com,
"[ext] Jan Kiszka" <jan.kiszka@siemens.com>,
asmirnov@ilbers.de,
Claudius Heine <claudius.heine.ext@siemens.com>,
Henning Schild <henning.schild@siemens.com>,
KOBAYASHI Yoshitake <yoshitake.kobayashi@toshiba.co.jp>,
Daniel Sangorrin <daniel.sangorrin@toshiba.co.jp>,
Claudius Heine <ch@denx.de>
Subject: Re: [RFC] can we just extend openembedded to get Isar 2.0
Date: Thu, 27 Jul 2017 22:14:23 +0900 [thread overview]
Message-ID: <20bd9141-aa4c-2211-2c0b-b5294c971133@toshiba.co.jp> (raw)
In-Reply-To: <98c6b5a8-d428-5116-84fe-4342177c8af3@siemens.com>
Hello,
>>>>> The problem with Debian support in OE is that it is very undebian. Debian has
>>>>> its strengths, and there are reasons why Debian developers strongly dislike OE
>>>>> (see e.g. [1], and I've heard many such discussions). Deby / meta-debian
>>>>> follows the OE way of building Debian packages, and currently considers moving
>>>>> to the Debian way. The reason is, as soon as you oeize a package, you have to
>>>>> maintain it. That is why Isar does things the Debian way and aims at avoiding
>>>>> massive package modifications; OE doesn't really help here.
>>>>
>>>> The idea is not to move to the OE way of doing Debian, for sure. It's
>>>> about adding the right way to the OE-core tools and libs that are useful
>>>> or even mandatory for Isar instead of forking or reimplementing them now.
>>>
>>> The idea is clear, the answer is above: The adjustment effort is the same. We
>>> want to merge upstream, we don't reimplement.
>>
>> So far, we do reimplement (which includes code snippet imports).
In Deby, there are more than 700 recipes (.bb) and all of them are
implemented following OE-Core way. As Baurzhan mentioned, the main issue
is to create and maintain such recipes ourselves. On the other hands,
as an advantage, the recipes can reuse (inherits) most common stuffs
like .bbclass, .conf, etc. provided by OE-Core without any changes.
Examples:
* Tasks for cross-building own kernel (kernel.bbclass)
* Functions to run menuconfig through bitbake (cml1.bbclass)
* ptest infrastructure (ptest.bbclass)
* Packaging functions (package_deb.bbclass)
* Recipes for generating rootfs and SDK
(core-image-minimal.bb, meta-toolchain.bb)
* sstate caching (sstate.bbclass)
IIUC, most .bbclass depend on OE-Core infrastructure (some of them
depend on metadata as well). For examples, they add several recipes
(especially native recipes) provided in OE-Core to their DEPENDS,
assume the default task flow (do_configure, do_compile, etc.),
cross toolchain and sysroots of OE-Core. To split such OE-Core
dependent stuffs from existing .bbclass (or to adjust them for
other system like Isar) may require much effort.
Additionally, big issues we met are:
* There is no efficient way to append .bbclass
* Specification of such kind of common stuffs frequently change in upstream
Regarding libraries (meta/lib), I've never tried to reuse or
inherit classes or functions in them, but I guess that they have
less dependencies on OE-Core infrastructure and metadata than .bbclass.
Some of them get values from several global variables define in
the default configs (.conf) in OE-Core.
Regarding scripts, we are just users, no experience of customization.
As Baurzhan mentioned, Deby is now considering moving to the Debian way,
but this change affects only how to implement .bb for Debian packages.
In other words, we will keep using OE-Core infrastructure as before
under the following policies.
* Manage all files (.bb, .bbclass, .conf, etc.) in an independent layer
(meta-debian.git) which works on top of OE-Core
* Don't modify (fork) OE-Core layer, instead, adjust by overriding variables
Actually, due to the above reasons, there might not be so many existing
stuffs, which can be shared with Debian way, in OE-Core (except bitbake).
At least, supporting sysroot and adapting Debian toolchain to OE-Core
are required to reuse most existing .bbclass. We are just considering
the better solution to implement Debian way on top of OE-Core
infrastructure, including such wide adaptation.
Best regards,
Kazuhiro
--
Kazuhiro Hayashi
E-mail: kazuhiro3.hayashi@toshiba.co.jp
prev parent reply other threads:[~2017-07-27 13:14 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-07-20 8:30 Henning Schild
2017-07-20 9:03 ` Claudius Heine
2017-07-20 9:15 ` Jan Kiszka
2017-07-20 23:05 ` Baurzhan Ismagulov
2017-07-21 7:31 ` Jan Kiszka
2017-07-24 22:53 ` Baurzhan Ismagulov
2017-07-25 6:08 ` Jan Kiszka
2017-07-25 8:06 ` Claudius Heine
2017-07-27 13:14 ` Kazuhiro Hayashi [this message]
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=20bd9141-aa4c-2211-2c0b-b5294c971133@toshiba.co.jp \
--to=kazuhiro3.hayashi@toshiba.co.jp \
--cc=asmirnov@ilbers.de \
--cc=ch@denx.de \
--cc=claudius.heine.ext@siemens.com \
--cc=daniel.sangorrin@toshiba.co.jp \
--cc=henning.schild@siemens.com \
--cc=isar-users@googlegroups.com \
--cc=jan.kiszka@siemens.com \
--cc=yoshitake.kobayashi@toshiba.co.jp \
/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