[oe-commits] Muhammad Shakeel : systemd: Remove base_libdir if installed only for systemd_unitdir

git at git.openembedded.org git at git.openembedded.org
Tue Sep 10 22:03:30 UTC 2013


Module: openembedded-core.git
Branch: master
Commit: c700cb21c189e23a78f0efaaf763259c8cfefa4d
URL:    http://git.openembedded.org/?p=openembedded-core.git&a=commit;h=c700cb21c189e23a78f0efaaf763259c8cfefa4d

Author: Muhammad Shakeel <muhammad_shakeel at mentor.com>
Date:   Wed Sep  4 11:05:03 2013 +0000

systemd: Remove base_libdir if installed only for systemd_unitdir

If a recipe installs systemd_unitdir and it is a non-systemd build than
systemd.bbclass deletes systemd_unitdir (/lib/systemd/) but not
base_libdir (/lib). In this case if base_libdir is empty than following
QA Issue is reported.

ERROR: QA Issue: openssh: Files/directories were installed but not shipped
  /lib

If base_libdir was installed due to systemd_unitdir installation than for
non-systemd build it should also be removed.

Signed-off-by: Muhammad Shakeel <muhammad_shakeel at mentor.com>
Signed-off-by: Saul Wold <sgw at linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>

---

 meta/classes/systemd.bbclass |    3 +++
 1 files changed, 3 insertions(+), 0 deletions(-)

diff --git a/meta/classes/systemd.bbclass b/meta/classes/systemd.bbclass
index 76f0e7d..8ec4992 100644
--- a/meta/classes/systemd.bbclass
+++ b/meta/classes/systemd.bbclass
@@ -168,6 +168,9 @@ python rm_systemd_unitdir (){
         systemd_unitdir = oe.path.join(d.getVar("D", True), d.getVar('systemd_unitdir', True))
         if os.path.exists(systemd_unitdir):
             shutil.rmtree(systemd_unitdir)
+        base_libdir = oe.path.join(d.getVar("D", True), d.getVar('base_libdir', True))
+        if (os.path.exists(base_libdir) and not os.listdir(base_libdir)):
+            os.rmdir(base_libdir)
 }
 do_install[postfuncs] += "rm_systemd_unitdir "
 



More information about the Openembedded-commits mailing list