]> git.ipfire.org Git - thirdparty/openembedded/openembedded-core-contrib.git/commitdiff
avahi-ui: fix for building systemd with multilib
authorRobert Yang <liezhi.yang@windriver.com>
Thu, 9 Oct 2014 15:37:41 +0000 (08:37 -0700)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Fri, 10 Oct 2014 09:39:13 +0000 (10:39 +0100)
Fixed:
MACHINE = "qemux86-64"
VIRTUAL-RUNTIME_init_manager = " systemd "
DISTRO_FEATURES_append = " systemd"
DISTRO_FEATURES_BACKFILL_CONSIDERED += " sysvinit "

require conf/multilib.conf
MULTILIBS = "multilib:lib32"
DEFAULTTUNE_virtclass-multilib-lib32 = "x86"

$ bitbake avahi avahi-ui
ERROR: QA Issue: avahi-ui: Files/directories were installed but not shipped
  /lib
  /lib/systemd
  /lib/systemd/system
  /lib/systemd/system/avahi-daemon.socket
  /lib/systemd/system/avahi-dnsconfd.service
  /lib/systemd/system/avahi-daemon.service [installed-vs-shipped]
ERROR: The recipe avahi-ui is trying to install files into a sharedarea when those files already exist. Those files and their manifestlocation are:
   /path/to/sysroots/qemux86-64/lib/systemd/system/avahi-daemon.socket
 Matched in manifest-qemux86-64-avahi.populate_sysroot
 /path/to/sysroots/qemux86-64/lib/systemd/system/avahi-dnsconfd.service
 Matched in manifest-qemux86-64-avahi.populate_sysroot
 /path/to/sysroots/qemux86-64/lib/systemd/system/avahi-daemon.service
 Matched in manifest-qemux86-64-avahi.populate_sysroot
Please verify which recipe should provide theabove files.

And remove the duplicated line:
rm ${D}${base_libdir} -rf

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
meta/recipes-connectivity/avahi/avahi-ui_0.6.31.bb

index 070530ec3fa8cc17c999cab4073cbcad44406e83..eea4d70fabf120cb8fcb44b145fd1adb6ac7e2e3 100644 (file)
@@ -45,7 +45,11 @@ RDEPENDS_python-avahi = "python-core python-dbus"
 do_install_append () {
        rm ${D}${sysconfdir} -rf
        rm ${D}${base_libdir} -rf
-       rm ${D}${base_libdir} -rf
+       rm ${D}${systemd_unitdir} -rf
+       # The ${systemd_unitdir} is /lib/systemd, so we need rmdir /lib,
+       # but not ${base_libdir} here. And the /lib may not exist
+       # whithout systemd.
+       [ ! -d ${D}/lib ] || rmdir ${D}/lib --ignore-fail-on-non-empty
        rm ${D}${bindir}/avahi-b*
        rm ${D}${bindir}/avahi-p*
        rm ${D}${bindir}/avahi-r*