[gnome-continuous-yocto/gnomeostree-3.28-rocko: 6565/8267] base.bbclass: extend PACKAGECONFIG to also allow RRECOMMENDS



commit aec7969f491b79f02c7c318830ddcf79ecb9ea1b
Author: André Draszik <adraszik tycoint com>
Date:   Mon Jun 26 11:08:45 2017 +0100

    base.bbclass: extend PACKAGECONFIG to also allow RRECOMMENDS
    
    It can be useful to add RRECOMMENDS to packages created, based
    on certain PACKAGECONFIGs.
    
    In particular where a package depends on certain linux kernel
    infrastructure (kernel modules) which might or might not be
    built as a module, being able to RRECOMMENDS instead of
    RDEPENDS on the relevant packages avoids build failures in
    case those modules are built statically into the kernel, i.e.
    in case no package is being created for them.
    
    Add another field to the PACKAGECONFIG syntax to achieve just
    that.
    
    (From OE-Core rev: ec96c985ce1c888c3ce3c4d964d7a106c3c88a5c)
    
    Signed-off-by: André Draszik <adraszik tycoint com>
    Signed-off-by: Ross Burton <ross burton intel com>
    Signed-off-by: Richard Purdie <richard purdie linuxfoundation org>

 meta/classes/base.bbclass |   10 +++++++---
 1 files changed, 7 insertions(+), 3 deletions(-)
---
diff --git a/meta/classes/base.bbclass b/meta/classes/base.bbclass
index 7892665..3762c8a 100644
--- a/meta/classes/base.bbclass
+++ b/meta/classes/base.bbclass
@@ -384,7 +384,7 @@ python () {
     # These take the form:
     #
     # PACKAGECONFIG ??= "<default options>"
-    # PACKAGECONFIG[foo] = "--enable-foo,--disable-foo,foo_depends,foo_runtime_depends"
+    # PACKAGECONFIG[foo] = 
"--enable-foo,--disable-foo,foo_depends,foo_runtime_depends,foo_runtime_recommends"
     pkgconfigflags = d.getVarFlags("PACKAGECONFIG") or {}
     if pkgconfigflags:
         pkgconfig = (d.getVar('PACKAGECONFIG') or "").split()
@@ -426,12 +426,13 @@ python () {
 
         extradeps = []
         extrardeps = []
+        extrarrecs = []
         extraconf = []
         for flag, flagval in sorted(pkgconfigflags.items()):
             items = flagval.split(",")
             num = len(items)
-            if num > 4:
-                bb.error("%s: PACKAGECONFIG[%s] Only enable,disable,depend,rdepend can be specified!"
+            if num > 5:
+                bb.error("%s: PACKAGECONFIG[%s] Only enable,disable,depend,rdepend,rrecommend can be 
specified!"
                     % (d.getVar('PN'), flag))
 
             if flag in pkgconfig:
@@ -439,12 +440,15 @@ python () {
                     extradeps.append(items[2])
                 if num >= 4 and items[3]:
                     extrardeps.append(items[3])
+                if num >= 5 and items[4]:
+                    extrarrecs.append(items[4])
                 if num >= 1 and items[0]:
                     extraconf.append(items[0])
             elif num >= 2 and items[1]:
                     extraconf.append(items[1])
         appendVar('DEPENDS', extradeps)
         appendVar('RDEPENDS_${PN}', extrardeps)
+        appendVar('RRECOMMENDS_${PN}', extrarrecs)
         appendVar('PACKAGECONFIG_CONFARGS', extraconf)
 
     pn = d.getVar('PN')


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]