Patchwork [meta-systemd,10/13] systemd.bbclass: Fixes for living along with multilib

login
register
mail settings
Submitter Khem Raj
Date Jan. 4, 2013, 3:59 a.m.
Message ID <1357271974-3317-9-git-send-email-raj.khem@gmail.com>
Download mbox | patch
Permalink /patch/41971/
State Accepted, archived
Commit af1e1e3f55050ab25ce3b6f37e3ee3b3b318f7e4
Headers show

Comments

Khem Raj - Jan. 4, 2013, 3:59 a.m.
This essentially fixes two problems
1. We were ignoring systemd for multilibs now we dont
2. We were replacing '-systemd' string in PN which is
a problem whenre -systemd appears more than once
e.g. lib32-systemd-units-system it was removing both
essentially we should only chop the end of PN if it
ends with '-systemd'

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 meta-systemd/classes/systemd.bbclass |    7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

Patch

diff --git a/meta-systemd/classes/systemd.bbclass b/meta-systemd/classes/systemd.bbclass
index 9582492..16ac1fb 100644
--- a/meta-systemd/classes/systemd.bbclass
+++ b/meta-systemd/classes/systemd.bbclass
@@ -53,7 +53,9 @@  def systemd_after_parse(d):
                         "\n\n%s: %s in SYSTEMD_PACKAGES does not match <existing-package>-systemd or ${PN}" % \
                         (bb_filename, pkg_systemd)
             else:
-                pkg_systemd_base = pkg_systemd.replace('-systemd', '')
+                pkg_systemd_base = pkg_systemd
+                if pkg_systemd_base.endswith('-systemd'):
+                    pkg_systemd_base = pkg_systemd[:-8]
                 if pkg_systemd_base not in packages:
                     raise bb.build.FuncFailed, \
                         "\n\n%s: %s in SYSTEMD_PACKAGES does not match <existing-package>-systemd or ${PN}" % \
@@ -68,9 +70,10 @@  def systemd_after_parse(d):
 
 
     bpn = d.getVar('BPN', 1)
+    ml = d.getVar('MLPREFIX', 1) or ""
     if bpn + "-native" != d.getVar('PN', 1) and \
             bpn + "-cross" != d.getVar('PN', 1) and \
-            not d.getVar('MLPREFIX', 1) and \
+            ml + bpn == d.getVar('PN', 1) and \
             "nativesdk-" + bpn != d.getVar('PN', 1):
         systemd_check_vars()
         for pkg_systemd in d.getVar('SYSTEMD_PACKAGES', 1).split():