[OE-core] [PATCHv3 0/5] Add dummy tools to help identify needed dependencies

Peter Kjellerstedt peter.kjellerstedt at axis.com
Fri Mar 3 19:52:34 UTC 2017


> -----Original Message-----
> From: Max Krummenacher [mailto:max.oss.09 at gmail.com]
> Sent: den 3 mars 2017 17:24
> To: Peter Kjellerstedt
> Cc: OE-core
> Subject: Re: [OE-core] [PATCHv3 0/5] Add dummy tools to help identify
> needed dependencies
> 
> Hi
> 
> 2017-03-03 12:17 GMT+01:00 Peter Kjellerstedt
> <peter.kjellerstedt at axis.com>:
> 
> > To circumvent this, I created dummy versions of the tools that always
> > fail and placed them in the scripts directory. Thus, if the real tool
> > has not been installed in the RSS, the dummy version is used and the
> > build fails. For good measures I even output a message that says what
> > needs to be corrected in the recipe.
> >
> > Included is also an update to linux-libc-headers as it apparently
> > needs to inherit pkgconfig, which the introduction of the dummy
> > version of pkg-config showed.
> >
> 
> I tried the whole series, i.e. applied on top of openembedded-core,
> 20c6e87 and bitbake 6fe07ed.
> 
> The resulting build failed in linux-libc-headers because it picked up
> the dummy script instead of the real pkg-config binary which actually
> is installed in the RSS.
> 
> run.do_configure has a PATH setting with first ...meta/scripts and
> only then the paths to the different RSS directories.
> 
> Changing that order in meta/conf/bitbake.conf line 450 fixed this for
> me, however I'm unsure of posible sideeffects of that reordering.
> 
> Max

Bah, you are correct. That is what I get for not testing exactly 
what I sent for integration. Shame on me.

Anyway, I see a couple of possible solutions:

* Put the scripts in bitbake/bin instead. This should work as it 
  is only added to $PATH by oe-buildenv-internal (contrary to 
  ${COREBASE}/scripts which is added to $PATH both by 
  oe-buildenv-internal and bitbake.conf). However, I do not like 
  this idea as it feels wrong to put them there.
* Put the scripts in a subdirectory of ${COREBASE}/scripts, e.g., 
  ${COREBASE}/scripts/blacklisted, and add that path to $PATH in 
  bitbake.conf, but at the other end of it so that the RSS paths 
  appear before it. This sounds a lot more appealing to me.
* Implement the whitelist solution Patrick Ohly mentioned instead.
  Although this is probably the best solution, prioritizing it 
  for 2.3 does not sound likely to happen.

I have implemented solution two above (properly tested this time), 
and will send that along in a little while.

//Peter



More information about the Openembedded-core mailing list