[poky] Recompiles in Yocto/Poky

Paul Eggleton paul.eggleton at linux.intel.com
Tue Jun 7 21:56:02 PDT 2016


There's no mechanism to exclude files at present, but it sounds like we should 
add one. One workaround right now would be to track your source tree in a git 
repository and have .gitignore cover the generated files; I appreciate though 
that if you aren't using git for version control this is hardly ideal so it's 
not a substitute for a proper fix.

Cheers,
Paul

On Wed, 08 Jun 2016 04:50:15 Keskinarkaus, Teemu wrote:
> I think there are some files that are being generated at compilation time so
> most likely those triggers the recompilation every time.
> 
> The next question is that how to I 'hide' files so that they don't trigger
> the recompilation? Is that something that I need to do on my application
> side or can I list files in Yocto to ignore when hashing files? This is
> most likely the proper way to deal with this issue rather than disabling
> whole feature.
> 
> Teemu Keskinarkaus
> Software system engineer
> maximatecc
> making machines smart, safe and productive
> 
> 
> -----Original Message-----
> From: Paul Eggleton [mailto:paul.eggleton at linux.intel.com]
> Sent: 8. kesäkuuta 2016 4:52
> To: Peter Kjellerstedt; Keskinarkaus, Teemu
> Cc: poky at yoctoproject.org
> Subject: Re: [poky] Recompiles in Yocto/Poky
> 
> On Fri, 03 Jun 2016 07:00:14 Peter Kjellerstedt wrote:
> > This is a feature introduced to complement the main use of
> > externalsrc, which is together with devtool. When you use "devtool
> > modify -x <recipe>", it fetches the sources as specified in the recipe
> > and makes them available locally. At the same time it sets up a
> > bbappend in the workspace layer which uses externalsrc to use those
> > sources when building the recipe. This is intended to make it easy to
> > use BitBake to actually work on and develop the sources. However, for
> > this to work in practice, BitBake must rebuild the package if there
> > are any changes in the sources, but since BitBake normally only looks
> > at the meta data to determine if a recipe task needs to run, there is
> > nothing telling it that the sources have changed. Therefore changes
> > were made so that code specified using externalsrc is always rebuilt.
> 
> In 2.0 that's how it behaved - what it's supposed to do in 2.1 is determine
> if the sources have changed by either relying on the git metadata (if the
> source tree is tracked in git) or by hashing all files in the source tree
> if it isn't. It could be false triggering if you have files in the source
> tree that get regenerated as part of the compilation process that aren't
> hidden. Teemu, is that the case for your source tree?
> 
> Unfortunately there is no way at present to turn off this functionality; we
> could add one, however before doing that I would be more interested in
> looking at making the code more intelligent so it did automatically rebuild
> in response to source changes for this case and not when there were no
> changes, assuming that's practical.
> 
> Cheers,
> Paul
> 
> --
> 
> Paul Eggleton
> Intel Open Source Technology Centre
> 
> ________________________________
> 
> Actuant Corporation Email Notice
> 
> This message is intended only for the use of the Addressee and may contain
> information that is PRIVILEGED and/or CONFIDENTIAL. This email is intended
> only for the personal and confidential use of the recipient(s) named above.
> If the reader of this email is not an intended recipient, you have received
> this email in error and any review, dissemination, distribution or copying
> is strictly prohibited. If you have received this email in error, please
> notify the sender immediately by return mail and permanently delete the
> copy you received.
> 
> Thank you.

-- 

Paul Eggleton
Intel Open Source Technology Centre


More information about the poky mailing list