Patchwork [2/2] base: add RRECOMMENDS to PACKAGECONFIG

login
register
mail settings
Submitter Ross Burton
Date Sept. 11, 2013, 6:17 p.m.
Message ID <1378923463-31773-2-git-send-email-ross.burton@intel.com>
Download mbox | patch
Permalink /patch/57837/
State New
Headers show

Comments

Ross Burton - Sept. 11, 2013, 6:17 p.m.
Add a fifth optional element of the PACKAGECONFIG flags that can be used to set
RRECOMMENDS_${PN}.

Signed-off-by: Ross Burton <ross.burton@intel.com>
---
 meta/classes/base.bbclass |   14 ++++++++++----
 1 file changed, 10 insertions(+), 4 deletions(-)

Patch

diff --git a/meta/classes/base.bbclass b/meta/classes/base.bbclass
index 37dc790..924c45b 100644
--- a/meta/classes/base.bbclass
+++ b/meta/classes/base.bbclass
@@ -394,7 +394,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', True) or "").split()
@@ -420,7 +420,7 @@  python () {
         def appendVar(varname, appends):
             if not appends:
                 return
-            if "DEPENDS_" in varname:
+            if "DEPENDS_" in varname or "RRECOMMENDS_" in varname:
                 if pn.startswith("nativesdk-"):
                     appends = expandFilter(appends, "", "nativesdk-")
                 if pn.endswith("-native"):
@@ -432,14 +432,15 @@  python () {
 
         extradeps = []
         extrardeps = []
+        extrarrecs = []
         extraconf = []
         for flag, flagval in pkgconfigflags.items():
             if flag == "defaultval":
                 continue
             items = flagval.split(",")
             num = len(items)
-            if num > 4:
-                bb.error("Only enable,disable,depend,rdepend can be specified!")
+            if num > 5:
+                bb.error("Only enable,disable,depend,rdepend,rrecommend can be specified!")
 
             if flag in pkgconfig:
                 if items:
@@ -457,10 +458,15 @@  python () {
                     item = items.pop(0)
                     if item:
                         extrardeps.append(item)
+                if items:
+                    item = items.pop(0)
+                    if item:
+                        extrarrecs.append(item)
             elif num >= 2 and items[1]:
                     extraconf.append(items[1])
         appendVar('DEPENDS', extradeps)
         appendVar('RDEPENDS_${PN}', extrardeps)
+        appendVar('RRECOMMENDS_${PN}', extrarrecs)
         if bb.data.inherits_class('cmake', d):
             appendVar('EXTRA_OECMAKE', extraconf)
         else: