From af1e1e3f55050ab25ce3b6f37e3ee3b3b318f7e4 Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Thu, 13 Dec 2012 10:03:03 -0800 Subject: systemd.bbclass: Fixes for living along with multilib 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 --- meta-systemd/classes/systemd.bbclass | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'meta-systemd') diff --git a/meta-systemd/classes/systemd.bbclass b/meta-systemd/classes/systemd.bbclass index 958249259a..16ac1fbf1e 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 -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 -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(): -- cgit v1.2.3-54-g00ecf