[oe-commits] [openembedded-core] 07/14: base.bbclass: Check BuildStarted for HOSTTOOLS

git at git.openembedded.org git at git.openembedded.org
Thu Feb 14 22:05:09 UTC 2019


This is an automated email from the git hooks/post-receive script.

rpurdie pushed a commit to branch master-next
in repository openembedded-core.

commit 40a894fb1e5f7a0c257f482e1be03bfe192fc5c8
Author: Robert Yang <liezhi.yang at windriver.com>
AuthorDate: Thu Feb 14 14:37:19 2019 +0800

    base.bbclass: Check BuildStarted for HOSTTOOLS
    
    There might be no bb.event.ConfigParsed event if bitbake server is running, so
    check bb.event.BuildStarted too to make sure HOSTTOOLS_DIR exists.
    
    Fixed:
    $ export BB_SERVER_TIMEOUT=-1
    $ bitbake quilt-native
    $ rm -fr tmp
    $ bitbake quilt-native
    ERROR: Error running gcc  --version: /bin/sh: gcc: command not found
    
    This error is caused by enable_uninative(), it runs twice (ConfigParsed and
    BuildStarted), the error would happen when there is no ConfigParsed event
    (no hosttools is created), but BuildStarted. This patch can fix the problem.
    
    [YOCTO #13022]
    
    Signed-off-by: Robert Yang <liezhi.yang at windriver.com>
    Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
---
 meta/classes/base.bbclass | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/meta/classes/base.bbclass b/meta/classes/base.bbclass
index f1a3c0e..8ece51f 100644
--- a/meta/classes/base.bbclass
+++ b/meta/classes/base.bbclass
@@ -228,6 +228,12 @@ python base_eventhandler() {
         if not d.getVar("NATIVELSBSTRING", False):
             d.setVar("NATIVELSBSTRING", lsb_distro_identifier(d))
         d.setVar('BB_VERSION', bb.__version__)
+
+    # There might be no bb.event.ConfigParsed event if bitbake server is
+    # running, so check bb.event.BuildStarted too to make sure ${HOSTTOOLS_DIR}
+    # exists.
+    if isinstance(e, bb.event.ConfigParsed) or \
+            (isinstance(e, bb.event.BuildStarted) and not os.path.exists(d.getVar('HOSTTOOLS_DIR'))):
         # Works with the line in layer.conf which changes PATH to point here
         setup_hosttools_dir(d.getVar('HOSTTOOLS_DIR'), 'HOSTTOOLS', d)
         setup_hosttools_dir(d.getVar('HOSTTOOLS_DIR'), 'HOSTTOOLS_NONFATAL', d, fatal=False)

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the Openembedded-commits mailing list