[poky] [PATCH 1/1] meta-environment: Added package of meta-environment-${TARGET_ARCH} for environment files.

Richard Purdie richard.purdie at linuxfoundation.org
Mon Dec 20 09:29:15 PST 2010


On Fri, 2010-12-17 at 10:30 +0800, Lu, Lianhao wrote:
> Hi Richard,
> 
> Richard Purdie wrote on 2010-12-16:
> > Hi Lianhao,
> > 
> > On Thu, 2010-12-16 at 09:40 +0800, Lianhao Lu wrote:
> >> [BUGID #565] Fixing bug #565, added package of
> >> meta-environment-${TARGET_ARCH} for environment files used by
> >> cross-canadian toolchain.
> >> 
> >> Also corrected the situation of empty config site file for target.
> >> 
> >> Signed-off-by: Lianhao Lu <lianhao.lu at intel.com>
> >> ---
> >>  meta/classes/toolchain-scripts.bbclass         |   32 ++++++++++
> >>  meta/recipes-core/meta/meta-environment.bb     |   75
> >>  ++++++++++++++++++++++++
> >>  meta/recipes-core/tasks/task-cross-canadian.bb |    1 + 3 files
> >>  changed, 108 insertions(+), 0 deletions(-)  create mode
> >> 100644 meta/recipes-core/meta/meta-environment.bb
> > 
> > This recipe looks complex and seems to include a lot of cross-canadian.bbclass.
> > 
> > Would it be possible to inherit that class instead and try and keep
> > the recipe simpler? You can always drop the "meta" inherit. I'm
> > worried about the amount of code duplication here.
> > 
> 
> The reason I didn't inherit the cross-canadian.bbclass in
> meta-environment.bb is that by doing this, there would be a problem in
> the siteinfo.bbclass which is used to generate the autoconf site
> config file for the target. It uses the variables of HOST_ARCH and
> HOST_OS which is replaced by SDK_ARCH and SDK_OS respectively in
> cross-canadian.bbclass. If we inherit the cross-canadian, we need to
> duplicate the code in siteinfo.bbclass to use TARGET_ARCH(OS) instead
> of the HOST_ARCH(OS). So we duplicate either for siteinfo.bbclass or
> for cross-canadian.bbclass. Any comment?

I see your problem. Normally I'd not suggest something like this but
there is a way we can solve the problem. You can put this at the top of
the file before HOST_ARCH and HOST_OS are changed:

TARGET_SITE_CONFIG := "${CONFIG_SITE}"

Then the data you need should be preserved in TARGET_SITE_CONFIG.

Cheers,

Richard




More information about the poky mailing list