From eb8dc40360f0cfef56fb6947cc817a547d6d9bc6 Mon Sep 17 00:00:00 2001 From: Dave Cobbley Date: Tue, 14 Aug 2018 10:05:37 -0700 Subject: [Subtree] Removing import-layers directory As part of the move to subtrees, need to bring all the import layers content to the top level. Change-Id: I4a163d10898cbc6e11c27f776f60e1a470049d8f Signed-off-by: Dave Cobbley Signed-off-by: Brad Bishop --- .../recipes-connectivity/avahi/avahi-ui_0.7.bb | 62 +++++++++ poky/meta/recipes-connectivity/avahi/avahi.inc | 139 +++++++++++++++++++++ poky/meta/recipes-connectivity/avahi/avahi_0.7.bb | 20 +++ .../avahi/files/00avahi-autoipd | 10 ++ .../avahi/files/99avahi-autoipd | 10 ++ .../avahi/files/initscript.patch | 47 +++++++ 6 files changed, 288 insertions(+) create mode 100644 poky/meta/recipes-connectivity/avahi/avahi-ui_0.7.bb create mode 100644 poky/meta/recipes-connectivity/avahi/avahi.inc create mode 100644 poky/meta/recipes-connectivity/avahi/avahi_0.7.bb create mode 100644 poky/meta/recipes-connectivity/avahi/files/00avahi-autoipd create mode 100644 poky/meta/recipes-connectivity/avahi/files/99avahi-autoipd create mode 100644 poky/meta/recipes-connectivity/avahi/files/initscript.patch (limited to 'poky/meta/recipes-connectivity/avahi') diff --git a/poky/meta/recipes-connectivity/avahi/avahi-ui_0.7.bb b/poky/meta/recipes-connectivity/avahi/avahi-ui_0.7.bb new file mode 100644 index 000000000..5648e386b --- /dev/null +++ b/poky/meta/recipes-connectivity/avahi/avahi-ui_0.7.bb @@ -0,0 +1,62 @@ +LIC_FILES_CHKSUM = "file://LICENSE;md5=2d5025d4aa3495befef8f17206a5b0a1 \ + file://avahi-common/address.h;endline=25;md5=b1d1d2cda1c07eb848ea7d6215712d9d \ + file://avahi-core/dns.h;endline=23;md5=6fe82590b81aa0ddea5095b548e2fdcb \ + file://avahi-daemon/main.c;endline=21;md5=9ee77368c5407af77caaef1b07285969 \ + file://avahi-client/client.h;endline=23;md5=f4ac741a25c4f434039ba3e18c8674cf" + +require avahi.inc + +inherit distro_features_check +ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}" + +SRC_URI[md5sum] = "d76c59d0882ac6c256d70a2a585362a6" +SRC_URI[sha256sum] = "57a99b5dfe7fdae794e3d1ee7a62973a368e91e414bd0dfa5d84434de5b14804" + +DEPENDS += "avahi" + +AVAHI_GTK = "gtk3" + +S = "${WORKDIR}/avahi-${PV}" + +PACKAGES = "${PN} ${PN}-utils ${PN}-dbg ${PN}-dev ${PN}-staticdev ${PN}-doc avahi-discover" + +FILES_${PN} = "${libdir}/libavahi-ui*.so.*" +FILES_${PN}-dev += "${libdir}/libavahi-ui${SOLIBSDEV}" +FILES_${PN}-staticdev += "${libdir}/libavahi-ui.a" + +FILES_${PN}-utils = "${bindir}/b* ${datadir}/applications/b*" + +FILES_avahi-discover = "${datadir}/applications/avahi-discover.desktop \ + ${datadir}/avahi/interfaces/avahi-discover.ui \ + ${bindir}/avahi-discover-standalone \ + " + +do_install_append () { + rm ${D}${sysconfdir} -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* + rm ${D}${bindir}/avahi-s* + rm ${D}${includedir}/avahi-c* -rf + rm ${D}${includedir}/avahi-g* -rf + rm ${D}${libdir}/libavahi-c* + rm ${D}${libdir}/libavahi-g* + rm ${D}${libdir}/pkgconfig/avahi-c* + rm ${D}${libdir}/pkgconfig/avahi-g* + rm ${D}${sbindir} -rf + rm ${D}${datadir}/avahi/a* + rm ${D}${datadir}/locale/ -rf + rm ${D}${datadir}/dbus* -rf + rm ${D}${mandir}/man1/a* + rm ${D}${mandir}/man5 -rf + rm ${D}${mandir}/man8 -rf + rm ${D}${libdir}/girepository-1.0/ -rf + rm ${D}${datadir}/gir-1.0/ -rf +} + diff --git a/poky/meta/recipes-connectivity/avahi/avahi.inc b/poky/meta/recipes-connectivity/avahi/avahi.inc new file mode 100644 index 000000000..ec368de4f --- /dev/null +++ b/poky/meta/recipes-connectivity/avahi/avahi.inc @@ -0,0 +1,139 @@ +SUMMARY = "Avahi IPv4LL network address configuration daemon" +DESCRIPTION = 'Avahi is a fully LGPL framework for Multicast DNS Service Discovery. It \ +allows programs to publish and discover services and hosts running on a local network \ +with no specific configuration. This tool implements IPv4LL, "Dynamic Configuration of \ +IPv4 Link-Local Addresses" (IETF RFC3927), a protocol for automatic IP address \ +configuration from the link-local 169.254.0.0/16 range without the need for a central \ +server.' +AUTHOR = "Lennart Poettering " +HOMEPAGE = "http://avahi.org" +BUGTRACKER = "https://github.com/lathiat/avahi/issues" +SECTION = "network" + +# major part is under LGPLv2.1+, but several .dtd, .xsl, initscripts and +# python scripts are under GPLv2+ +LICENSE = "GPLv2+ & LGPLv2.1+" + +DEPENDS = "expat libcap libdaemon glib-2.0 intltool-native" + +SRC_URI = "https://github.com/lathiat/avahi/releases/download/v${PV}/avahi-${PV}.tar.gz \ + file://00avahi-autoipd \ + file://99avahi-autoipd \ + file://initscript.patch \ + " +UPSTREAM_CHECK_URI = "https://github.com/lathiat/avahi/releases/" + +# For gtk related PACKAGECONFIGs: gtk, gtk3 +AVAHI_GTK ?= "" + +PACKAGECONFIG ??= "dbus ${AVAHI_GTK}" +PACKAGECONFIG[dbus] = "--enable-dbus,--disable-dbus,dbus" +PACKAGECONFIG[gtk] = "--enable-gtk,--disable-gtk,gtk+" +PACKAGECONFIG[gtk3] = "--enable-gtk3,--disable-gtk3,gtk+3" + +USERADD_PACKAGES = "avahi-daemon avahi-autoipd" +USERADD_PARAM_avahi-daemon = "--system --home /run/avahi-daemon \ + --no-create-home --shell /bin/false \ + --user-group avahi" + +USERADD_PARAM_avahi-autoipd = "--system --home /run/avahi-autoipd \ + --no-create-home --shell /bin/false \ + --user-group \ + -c \"Avahi autoip daemon\" \ + avahi-autoipd" + +inherit autotools pkgconfig update-rc.d gettext useradd gobject-introspection + +EXTRA_OECONF = "--with-avahi-priv-access-group=adm \ + --disable-stack-protector \ + --disable-gdbm \ + --disable-mono \ + --disable-monodoc \ + --disable-qt3 \ + --disable-qt4 \ + --disable-python \ + --disable-doxygen-doc \ + --enable-manpages \ + ${EXTRA_OECONF_SYSVINIT} \ + ${EXTRA_OECONF_SYSTEMD} \ + " + +# The distro choice determines what init scripts are installed +EXTRA_OECONF_SYSVINIT = "${@bb.utils.contains('DISTRO_FEATURES','sysvinit','--with-distro=debian','--with-distro=none',d)}" +EXTRA_OECONF_SYSTEMD = "${@bb.utils.contains('DISTRO_FEATURES','systemd','--with-systemdsystemunitdir=${systemd_unitdir}/system/','--without-systemdsystemunitdir',d)}" + +do_configure_prepend() { + sed 's:AM_CHECK_PYMOD:echo "no pymod" #AM_CHECK_PYMOD:g' -i ${S}/configure.ac + + # This m4 file will get in the way of our introspection.m4 with special cross-compilation fixes + rm "${S}/common/introspection.m4" || true +} + +do_compile_prepend() { + export GIR_EXTRA_LIBS_PATH="${B}/avahi-gobject/.libs:${B}/avahi-common/.libs:${B}/avahi-client/.libs:${B}/avahi-glib/.libs" +} + +PACKAGES =+ "avahi-daemon libavahi-common libavahi-core libavahi-client avahi-dnsconfd libavahi-glib libavahi-ui avahi-autoipd avahi-utils" + +# As avahi doesn't put any files into PN, clear the files list to avoid problems +# if extra libraries appear. +FILES_${PN} = "" +FILES_avahi-autoipd = "${sbindir}/avahi-autoipd \ + ${sysconfdir}/avahi/avahi-autoipd.action \ + ${sysconfdir}/dhcp/*/avahi-autoipd \ + ${sysconfdir}/udhcpc.d/00avahi-autoipd \ + ${sysconfdir}/udhcpc.d/99avahi-autoipd" +FILES_libavahi-common = "${libdir}/libavahi-common.so.*" +FILES_libavahi-core = "${libdir}/libavahi-core.so.* ${libdir}/girepository-1.0/AvahiCore*.typelib" +FILES_avahi-daemon = "${sbindir}/avahi-daemon \ + ${sysconfdir}/avahi/avahi-daemon.conf \ + ${sysconfdir}/avahi/hosts \ + ${sysconfdir}/avahi/services \ + ${sysconfdir}/dbus-1 \ + ${sysconfdir}/init.d/avahi-daemon \ + ${datadir}/avahi/introspection/*.introspect \ + ${datadir}/avahi/avahi-service.dtd \ + ${datadir}/avahi/service-types \ + ${datadir}/dbus-1/system-services" +FILES_libavahi-client = "${libdir}/libavahi-client.so.*" +FILES_libavahi-ui = "${libdir}/libavahi-ui.so.*" +FILES_avahi-dnsconfd = "${sbindir}/avahi-dnsconfd \ + ${sysconfdir}/avahi/avahi-dnsconfd.action \ + ${sysconfdir}/init.d/avahi-dnsconfd" +FILES_libavahi-glib = "${libdir}/libavahi-glib.so.*" +FILES_libavahi-gobject = "${libdir}/libavahi-gobject.so.* ${libdir}/girepository-1.0/Avahi*.typelib" +FILES_avahi-utils = "${bindir}/avahi-*" + +RDEPENDS_${PN}-dev = "avahi-daemon (= ${EXTENDPKGV}) libavahi-core (= ${EXTENDPKGV}) libavahi-client (= ${EXTENDPKGV})" + +RRECOMMENDS_avahi-daemon_append_libc-glibc = " libnss-mdns" +RRECOMMENDS_${PN}_append_libc-glibc = " libnss-mdns" + +CONFFILES_avahi-daemon = "${sysconfdir}/avahi/avahi-daemon.conf" + +INITSCRIPT_PACKAGES = "avahi-daemon avahi-dnsconfd" +INITSCRIPT_NAME_avahi-daemon = "avahi-daemon" +INITSCRIPT_PARAMS_avahi-daemon = "defaults 21 19" +INITSCRIPT_NAME_avahi-dnsconfd = "avahi-dnsconfd" +INITSCRIPT_PARAMS_avahi-dnsconfd = "defaults 22 19" + +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 + + install -d ${D}${sysconfdir}/udhcpc.d + install ${WORKDIR}/00avahi-autoipd ${D}${sysconfdir}/udhcpc.d + install ${WORKDIR}/99avahi-autoipd ${D}${sysconfdir}/udhcpc.d +} + +# At the time the postinst runs, dbus might not be setup so only restart if running +# Don't exit early, because update-rc.d needs to run subsequently. + +pkg_postinst_avahi-daemon () { +if [ -z "$D" ]; then + killall -q -HUP dbus-daemon || true +fi +} diff --git a/poky/meta/recipes-connectivity/avahi/avahi_0.7.bb b/poky/meta/recipes-connectivity/avahi/avahi_0.7.bb new file mode 100644 index 000000000..7c91f10f1 --- /dev/null +++ b/poky/meta/recipes-connectivity/avahi/avahi_0.7.bb @@ -0,0 +1,20 @@ +require avahi.inc + +inherit systemd + +SYSTEMD_PACKAGES = "${PN}-daemon ${PN}-dnsconfd" +SYSTEMD_SERVICE_${PN}-daemon = "avahi-daemon.service" +SYSTEMD_SERVICE_${PN}-dnsconfd = "avahi-dnsconfd.service" + +LIC_FILES_CHKSUM = "file://LICENSE;md5=2d5025d4aa3495befef8f17206a5b0a1 \ + file://avahi-common/address.h;endline=25;md5=b1d1d2cda1c07eb848ea7d6215712d9d \ + file://avahi-core/dns.h;endline=23;md5=6fe82590b81aa0ddea5095b548e2fdcb \ + file://avahi-daemon/main.c;endline=21;md5=9ee77368c5407af77caaef1b07285969 \ + file://avahi-client/client.h;endline=23;md5=f4ac741a25c4f434039ba3e18c8674cf" + +SRC_URI[md5sum] = "d76c59d0882ac6c256d70a2a585362a6" +SRC_URI[sha256sum] = "57a99b5dfe7fdae794e3d1ee7a62973a368e91e414bd0dfa5d84434de5b14804" + +DEPENDS += "intltool-native" + +PACKAGES =+ "libavahi-gobject" diff --git a/poky/meta/recipes-connectivity/avahi/files/00avahi-autoipd b/poky/meta/recipes-connectivity/avahi/files/00avahi-autoipd new file mode 100644 index 000000000..a0ab81460 --- /dev/null +++ b/poky/meta/recipes-connectivity/avahi/files/00avahi-autoipd @@ -0,0 +1,10 @@ +#!/bin/sh + +[ -z "$1" ] && echo "Error: should be called from udhcpc" && exit 1 + +case "$1" in + + deconfig|renew|bound) + /usr/sbin/avahi-autoipd -k $interface 2> /dev/null + ;; +esac diff --git a/poky/meta/recipes-connectivity/avahi/files/99avahi-autoipd b/poky/meta/recipes-connectivity/avahi/files/99avahi-autoipd new file mode 100644 index 000000000..234cdaa3e --- /dev/null +++ b/poky/meta/recipes-connectivity/avahi/files/99avahi-autoipd @@ -0,0 +1,10 @@ +#!/bin/sh + +[ -z "$1" ] && echo "Error: should be called from udhcpc" && exit 1 + +case "$1" in + + leasefail) + /usr/sbin/avahi-autoipd -wD $interface 2> /dev/null + ;; +esac diff --git a/poky/meta/recipes-connectivity/avahi/files/initscript.patch b/poky/meta/recipes-connectivity/avahi/files/initscript.patch new file mode 100644 index 000000000..c856c3df0 --- /dev/null +++ b/poky/meta/recipes-connectivity/avahi/files/initscript.patch @@ -0,0 +1,47 @@ +Upstream-Status: Pending + +Index: avahi-0.7/initscript/debian/avahi-daemon.in +=================================================================== +--- avahi-0.7.orig/initscript/debian/avahi-daemon.in ++++ avahi-0.7/initscript/debian/avahi-daemon.in +@@ -1,5 +1,17 @@ + #!/bin/sh +- ++### BEGIN INIT INFO ++# Provides: avahi ++# Required-Start: $remote_fs dbus ++# Required-Stop: $remote_fs dbus ++# Should-Start: $syslog ++# Should-Stop: $syslog ++# Default-Start: 2 3 4 5 ++# Default-Stop: 0 1 6 ++# Short-Description: Avahi mDNS/DNS-SD Daemon ++# Description: Zeroconf daemon for configuring your network ++# automatically ++### END INIT INFO ++# + # This file is part of avahi. + # + # avahi is free software; you can redistribute it and/or modify it +Index: avahi-0.7/initscript/debian/avahi-dnsconfd.in +=================================================================== +--- avahi-0.7.orig/initscript/debian/avahi-dnsconfd.in ++++ avahi-0.7/initscript/debian/avahi-dnsconfd.in +@@ -1,4 +1,17 @@ + #!/bin/sh ++### BEGIN INIT INFO ++# Provides: avahi-dnsconfd ++# Required-Start: $remote_fs avahi ++# Required-Stop: $remote_fs avahi ++# Should-Start: $syslog ++# Should-Stop: $syslog ++# Default-Start: 2 3 4 5 ++# Default-Stop: 0 1 6 ++# Short-Description: Avahi mDNS/DNS-SD DNS configuration ++# Description: Zeroconf daemon for configuring your network ++# automatically ++### END INIT INFO ++# + + # This file is part of avahi. + # -- cgit v1.2.3