[oe-commits] [bitbake] branch master updated: cookerdata: Add support for BBFILES_DYNAMIC

git at git.openembedded.org git at git.openembedded.org
Fri Jun 9 16:14:24 UTC 2017


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

rpurdie pushed a commit to branch master
in repository bitbake.

The following commit(s) were added to refs/heads/master by this push:
     new 04f8bd5  cookerdata: Add support for BBFILES_DYNAMIC
04f8bd5 is described below

commit 04f8bd50aa04b12cf91dd6a3154527ad2c24695c
Author: Patrick Ohly <patrick.ohly at intel.com>
AuthorDate: Wed Jun 7 11:03:18 2017 +0200

    cookerdata: Add support for BBFILES_DYNAMIC
    
    BBFILES_DYNAMIC can be used to activate content only when some other
    layers are present. The other layers are identified by the collections
    that they define.
    
    The main use case is to avoid .bbappends without the corresponding .bb
    file in layers that want to modify other layers via .bbappends without
    introducing a hard dependency on those other layers. .bb files could
    also be handled via BBFILES_DYNAMIC.
    
    Entries in BBFILES_DYNAMIC must have the form <collection
    name>:<filename pattern>. Example usage:
     BBFILES_DYNAMIC += " \
         clang-layer:${LAYERDIR}/bbappends/meta-clang/*/*/*.bbappend \
         core:${LAYERDIR}/bbappends/openembedded-core/meta/*/*/*.bbappend \
     "
    
    Parsing is aborted when invalid entries are found with an error
    message like this:
    
     ERROR: BBFILES_DYNAMIC entries must be of the form <collection name>:<filename pattern>, not:
         /work/my-layer/bbappends/meta-security-isafw/*/*/*.bbappend
         /work/my-layer/bbappends/openembedded-core/meta/*/*/*.bbappend
    
    Based on a patch by Richard Purdie.
    
    Signed-off-by: Patrick Ohly <patrick.ohly at intel.com>
    Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
---
 lib/bb/cookerdata.py | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

diff --git a/lib/bb/cookerdata.py b/lib/bb/cookerdata.py
index 722d860..aa96f54 100644
--- a/lib/bb/cookerdata.py
+++ b/lib/bb/cookerdata.py
@@ -346,6 +346,20 @@ class CookerDataBuilder(object):
             data.delVar('LAYERDIR_RE')
             data.delVar('LAYERDIR')
 
+            bbfiles_dynamic = (data.getVar('BBFILES_DYNAMIC') or "").split()
+            collections = (data.getVar('BBFILE_COLLECTIONS') or "").split()
+            invalid = []
+            for entry in bbfiles_dynamic:
+                parts = entry.split(":", 1)
+                if len(parts) != 2:
+                    invalid.append(entry)
+                    continue
+                l, f = parts
+                if l in collections:
+                    data.appendVar("BBFILES", " " + f)
+            if invalid:
+                bb.fatal("BBFILES_DYNAMIC entries must be of the form <collection name>:<filename pattern>, not:\n    %s" % "\n    ".join(invalid))
+
         if not data.getVar("BBPATH"):
             msg = "The BBPATH variable is not set"
             if not layerconf:

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


More information about the Openembedded-commits mailing list