Message ID | 20230512141135.308692-1-eero.aaltonen@vaisala.com |
---|---|
State | Accepted, archived |
Commit | b8183ad25af3bcf23f04dd649b6ef665569fac8c |
Headers | show |
Series | avahi: fix D-Bus introspection | expand |
On Fri, 12 May 2023 at 16:11, Eero Aaltonen via lists.openembedded.org <eero.aaltonen=vaisala.com@lists.openembedded.org> wrote: > --- a/meta/recipes-connectivity/avahi/avahi_0.8.bb > +++ b/meta/recipes-connectivity/avahi/avahi_0.8.bb > @@ -83,10 +83,13 @@ RRECOMMENDS:${PN}:append:libc-glibc = " libnss-mdns" > do_install() { > autotools_do_install > rm -rf ${D}/run > - rm -rf ${D}${datadir}/dbus-1/interfaces > - test -d ${D}${datadir}/dbus-1 && rmdir --ignore-fail-on-non-empty ${D}${datadir}/dbus-1 > rm -rf ${D}${libdir}/avahi > > + if ${@bb.utils.contains('PACKAGECONFIG', 'dbus', 'false', 'true', d)}; then > + rm -rf ${D}${datadir}/dbus-1/interfaces > + test -d ${D}${datadir}/dbus-1 && rmdir --ignore-fail-on-non-empty ${D}${datadir}/dbus-1 > + fi > + > # Move example service files out of /etc/avahi/services so we don't > # advertise ssh & sftp-ssh by default > install -d ${D}${docdir}/avahi > @@ -135,7 +138,7 @@ FILES:avahi-daemon = "${sbindir}/avahi-daemon \ > ${sysconfdir}/avahi/services \ > ${sysconfdir}/dbus-1 \ > ${sysconfdir}/init.d/avahi-daemon \ > - ${datadir}/avahi/introspection/*.introspect \ > + ${@bb.utils.contains('PACKAGECONFIG', 'dbus', '${datadir}/dbus-1/interfaces', '', d)} \ > ${datadir}/avahi/avahi-service.dtd \ > ${datadir}/avahi/service-types \ > ${datadir}/dbus-1/system-services" Why are these conditional? That packageconfig is defined as PACKAGECONFIG[dbus] = "--enable-dbus,--disable-dbus,dbus" so upstream should simply handle installing (or not) the needed files by itself? Alex
On Mon, 2023-05-15 at 10:36 +0200, Alexander Kanavin wrote: > On Fri, 12 May 2023 at 16:11, Eero Aaltonen via > lists.openembedded.org > <eero.aaltonen=vaisala.com@lists.openembedded.org> wrote: > > --- a/meta/recipes-connectivity/avahi/avahi_0.8.bb > > +++ b/meta/recipes-connectivity/avahi/avahi_0.8.bb > > Why are these conditional? That packageconfig is defined as > PACKAGECONFIG[dbus] = "--enable-dbus,--disable-dbus,dbus" > so upstream should simply handle installing (or not) the needed files > by itself? Overabundance of caution. I didn't find why the directories were removed in the recipe - so I tried to minimize the changes. The upstream build seems to install the D-Bus org.freedesktop.Avahi.service also with --disable-dbus. I'll follow with a minified patch V2. It server the same purpose AFAICT. Eero
diff --git a/meta/recipes-connectivity/avahi/avahi_0.8.bb b/meta/recipes-connectivity/avahi/avahi_0.8.bb index bf6835e0d6..9385404838 100644 --- a/meta/recipes-connectivity/avahi/avahi_0.8.bb +++ b/meta/recipes-connectivity/avahi/avahi_0.8.bb @@ -83,10 +83,13 @@ RRECOMMENDS:${PN}:append:libc-glibc = " libnss-mdns" do_install() { autotools_do_install rm -rf ${D}/run - rm -rf ${D}${datadir}/dbus-1/interfaces - test -d ${D}${datadir}/dbus-1 && rmdir --ignore-fail-on-non-empty ${D}${datadir}/dbus-1 rm -rf ${D}${libdir}/avahi + if ${@bb.utils.contains('PACKAGECONFIG', 'dbus', 'false', 'true', d)}; then + rm -rf ${D}${datadir}/dbus-1/interfaces + test -d ${D}${datadir}/dbus-1 && rmdir --ignore-fail-on-non-empty ${D}${datadir}/dbus-1 + fi + # Move example service files out of /etc/avahi/services so we don't # advertise ssh & sftp-ssh by default install -d ${D}${docdir}/avahi @@ -135,7 +138,7 @@ FILES:avahi-daemon = "${sbindir}/avahi-daemon \ ${sysconfdir}/avahi/services \ ${sysconfdir}/dbus-1 \ ${sysconfdir}/init.d/avahi-daemon \ - ${datadir}/avahi/introspection/*.introspect \ + ${@bb.utils.contains('PACKAGECONFIG', 'dbus', '${datadir}/dbus-1/interfaces', '', d)} \ ${datadir}/avahi/avahi-service.dtd \ ${datadir}/avahi/service-types \ ${datadir}/dbus-1/system-services"