On Mon, Feb 24, 2014 at 02:58:01PM +0000, Richard Purdie wrote: > For a while poky and others have been using the seperatebuilddir.inc > file. This makes ${S} != ${B} and means that ${B} can be wiped when > configuration changes. > > This helps deal with the fact that autotools and friends are not > particular good at rebuilding things that change. The recent libcheck > upgrade which broke bluez4 builds is but one example of the kind of > problem we can hit. Sadly bluez4 doesn't work for S!=B so it didn't > protect against that issue but it does protect other packages. > > I'd really love to switch the default in autotools.bbclass to make this > the default and then have broken packages opt out of it. > > I can deal with OE-Core and make sure the metadata there is updated, my > bigger worry is what this would do to other layers. > > The options I can see are therefore basically: > > a) We change the default in autotools.bbclass and fix things that break If there is patch to do that, I'm willing to run my world builds with it to generate updated www.openembedded.org/wiki/Bitbake_World_Status so that we have some estimate how many recipes will be broken. Can we start by adding include conf/distro/include/seperatebuilddir.inc to conf/distro/defaultsetup.conf ? so that more people start using it and possibly report issues in their builds? > b) We introduce an "autotools2" class and have recipes inherit that. > This version would default to separate builddirs. It does mean change to > all the "good" recipes rather than the broken ones though and hence a > fair bit of churn. or introduce "autotools-noseparatebuilddir" as easy to use fix for broken recipes from a), that will make it easier to search for recipes to fix (as some kind of janitor task). > Have we got the willpower to fix a)? is b) an option? Other ideas? We don't have willpower to fix all issues in Bitbake_World_Status so I don't expect many people jumping on task of fixing separate B in some less used recipes/layers (but I can volunteer to replace "s/autotools/autotools-noseparatebuilddir/g" to keep my World_Status close to current state). > One way or another I think we should try and switch things somehow... Agreed, it went quite smoothly with cmake, qmake5, so autotools is next :). -- Martin 'JaMa' Jansa jabber: Martin.Jansa@gmail.com