]> git.ipfire.org Git - thirdparty/openembedded/openembedded-core-contrib.git/commitdiff
bitbake: cookerdata: Set TOPDIR when using bblayers.conf
authorRichard Purdie <richard.purdie@linuxfoundation.org>
Thu, 29 Aug 2013 13:26:53 +0000 (14:26 +0100)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Fri, 30 Aug 2013 16:42:39 +0000 (17:42 +0100)
By definition, bblayers.conf is at the top of the build tree. We'd like
to support running bitbake anywhere within that build tree but TOPDIR
gets set to wherever cwd is. Change the code to reset TOPDIR
to the top of the build directory.

This shouldn't break anything but does make the system more usable.

(Bitbake rev: b266db27de0bba19a418e4d42e870649136b116b)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
bitbake/lib/bb/cookerdata.py

index a0379cf7f3411a17b596aaacc77571fe7c1fc3da..8a0bc22247d88c2a8cf0b397e09048de3f412692 100644 (file)
@@ -239,6 +239,9 @@ class CookerDataBuilder(object):
         layerconf = self._findLayerConf()
         if layerconf:
             parselog.debug(2, "Found bblayers.conf (%s)", layerconf)
+            # By definition bblayers.conf is in conf/ of TOPDIR.
+            # We may have been called with cwd somewhere else so reset TOPDIR
+            data.setVar("TOPDIR", os.path.dirname(os.path.dirname(layerconf)))
             data = parse_config_file(layerconf, data)
 
             layers = (data.getVar('BBLAYERS', True) or "").split()