diff options
Diffstat (limited to 'yocto-poky/meta/recipes-connectivity/avahi')
11 files changed, 493 insertions, 0 deletions
diff --git a/yocto-poky/meta/recipes-connectivity/avahi/avahi-ui_0.6.31.bb b/yocto-poky/meta/recipes-connectivity/avahi/avahi-ui_0.6.31.bb new file mode 100644 index 000000000..eea4d70fa --- /dev/null +++ b/yocto-poky/meta/recipes-connectivity/avahi/avahi-ui_0.6.31.bb @@ -0,0 +1,72 @@ +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 python-dir pythonnative + +PACKAGECONFIG ??= "python" +PACKAGECONFIG[python] = "--enable-python,--disable-python,python-native python" + +PR = "${INC_PR}.0" + +SRC_URI[md5sum] = "2f22745b8f7368ad5a0a3fddac343f2d" +SRC_URI[sha256sum] = "8372719b24e2dd75de6f59bb1315e600db4fd092805bd1201ed0cb651a2dab48" + +DEPENDS += "avahi gtk+ libglade" + +AVAHI_GTK = "--enable-gtk --disable-gtk3" + +S = "${WORKDIR}/avahi-${PV}" + +PACKAGES = "${PN} ${PN}-utils ${PN}-dbg ${PN}-dev ${PN}-staticdev ${PN}-doc python-avahi avahi-discover avahi-discover-standalone" + +FILES_${PN} = "${libdir}/libavahi-ui*.so.*" +FILES_${PN}-dbg += "${libdir}/.debug/libavah-ui*" +FILES_${PN}-dev += "${libdir}/libavahi-ui${SOLIBSDEV}" +FILES_${PN}-staticdev += "${libdir}/libavahi-ui.a" + +FILES_${PN}-utils = "${bindir}/b* ${datadir}/applications/b*" + +FILES_python-avahi = "${PYTHON_SITEPACKAGES_DIR}/avahi ${PYTHON_SITEPACKAGES_DIR}/avahi_discover" +FILES_avahi-discover = "${bindir}/avahi-discover \ + ${datadir}/applications/avahi-discover.desktop \ + ${datadir}/avahi/interfaces/avahi-discover*" +FILES_avahi-discover-standalone = "${bindir}/avahi-discover-standalone \ + ${datadir}/avahi/interfaces/avahi-discover.glade" + +RDEPENDS_avahi-discover = "python-avahi python-pygtk" +RDEPENDS_python-avahi = "python-core python-dbus" + + +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}/avahi/s* + 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 +} + diff --git a/yocto-poky/meta/recipes-connectivity/avahi/avahi.inc b/yocto-poky/meta/recipes-connectivity/avahi/avahi.inc new file mode 100644 index 000000000..825197d61 --- /dev/null +++ b/yocto-poky/meta/recipes-connectivity/avahi/avahi.inc @@ -0,0 +1,158 @@ +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 <lennart@poettering.net>" +HOMEPAGE = "http://avahi.org" +BUGTRACKER = "http://avahi.org/report" +SECTION = "network" + +# major part is under LGPLv2.1+, but several .dtd, .xsl, initscripts and +# python scripts are under GPLv2+ +LICENSE = "GPLv2+ & LGPLv2.1+" + +INC_PR = "r11" + +DEPENDS = "expat libcap libdaemon dbus glib-2.0" + +SRC_URI = "http://avahi.org/download/avahi-${PV}.tar.gz \ + file://00avahi-autoipd \ + file://99avahi-autoipd \ + file://initscript.patch \ + file://avahi_fix_install_issue.patch \ + file://fix_for_automake_1.12.x.patch \ + file://out-of-tree.patch \ + file://0001-avahi-fix-avahi-status-command-error-prompt.patch \ + file://reuseport-check.patch \ + " + +USERADD_PACKAGES = "avahi-daemon avahi-autoipd" +USERADD_PARAM_avahi-daemon = "--system --home /var/run/avahi-daemon \ + --no-create-home --shell /bin/false \ + --user-group avahi" + +USERADD_PARAM_avahi-autoipd = "--system --home /var/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 + +EXTRA_OECONF = "--disable-introspection \ + --with-avahi-priv-access-group=adm \ + --disable-stack-protector \ + --disable-gdbm \ + --disable-mono \ + --disable-monodoc \ + --disable-qt3 \ + --disable-qt4 \ + --disable-python \ + --disable-doxygen-doc \ + ${EXTRA_OECONF_SYSVINIT} \ + ${EXTRA_OECONF_SYSTEMD} \ + ${AVAHI_GTK} \ + " + +# 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)}" + +AVAHI_GTK ?= "--disable-gtk --disable-gtk3" + +LDFLAGS_append_libc-uclibc = " -lintl" +LDFLAGS_append_uclinux-uclibc = " -lintl" + +do_configure_prepend() { + sed 's:AM_CHECK_PYMOD:echo "no pymod" #AM_CHECK_PYMOD:g' -i ${S}/configure.ac +} + + +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.*" +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.*" +FILES_avahi-utils = "${bindir}/avahi-*" + +RDEPENDS_${PN}-dev = "avahi-daemon (= ${EXTENDPKGV}) libavahi-core (= ${EXTENDPKGV}) libavahi-client (= ${EXTENDPKGV})" + +# uclibc has no nss +RRECOMMENDS_avahi-daemon_append_libc-glibc = " libnss-mdns" +RRECOMMENDS_${PN}_append_libc-glibc = " libnss-mdns" + +RRECOMMENDS_avahi-dev = "expat-dev libcap-dev libdaemon-dev dbus-dev glib-2.0-dev update-rc.d-dev" +RRECOMMENDS_avahi-dev_append_libc-glibc = " gettext-dev" + +RRECOMMENDS_avahi-dev[nodeprrecs] = "1" + +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 + + # don't install /var/run when populating rootfs. Do it through volatile + # /var/run of current version is empty, so just remove it. + # if /var/run become non-empty in the future, need to install it via volatile + rm -rf ${D}${localstatedir}/run + rmdir --ignore-fail-on-non-empty ${D}${localstatedir} + rm -rf ${D}${datadir}/dbus-1/interfaces + 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 +} + +pkg_postrm_avahi-daemon () { + deluser avahi || true + delgroup avahi || true +} + +pkg_postrm_avahi-autoipd () { + deluser avahi-autoipd || true + delgroup avahi-autoipd || true +} diff --git a/yocto-poky/meta/recipes-connectivity/avahi/avahi_0.6.31.bb b/yocto-poky/meta/recipes-connectivity/avahi/avahi_0.6.31.bb new file mode 100644 index 000000000..5d796a202 --- /dev/null +++ b/yocto-poky/meta/recipes-connectivity/avahi/avahi_0.6.31.bb @@ -0,0 +1,22 @@ +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" + +PR = "${INC_PR}.1" + +SRC_URI[md5sum] = "2f22745b8f7368ad5a0a3fddac343f2d" +SRC_URI[sha256sum] = "8372719b24e2dd75de6f59bb1315e600db4fd092805bd1201ed0cb651a2dab48" + +DEPENDS += "intltool-native" + +PACKAGES =+ "libavahi-gobject" diff --git a/yocto-poky/meta/recipes-connectivity/avahi/files/0001-avahi-fix-avahi-status-command-error-prompt.patch b/yocto-poky/meta/recipes-connectivity/avahi/files/0001-avahi-fix-avahi-status-command-error-prompt.patch new file mode 100644 index 000000000..7590df79f --- /dev/null +++ b/yocto-poky/meta/recipes-connectivity/avahi/files/0001-avahi-fix-avahi-status-command-error-prompt.patch @@ -0,0 +1,52 @@ +From f774ac25f436a782ccccc4dbe68378a684596799 Mon Sep 17 00:00:00 2001 +From: Lu Chong <Chong.Lu@windriver.com> +Date: Thu, 7 Nov 2013 14:36:28 +0800 +Subject: [PATCH] avahi: fix avahi status command error prompt + +service --status-all command will display wrong status for avahi-daemon. +This commit fix this error prompt and make service display right status +for avahi-daemon. + +Upstream-Status: Pending + +Signed-off-by: Lu Chong <Chong.Lu@windriver.com> +--- + initscript/debian/avahi-daemon.in | 14 +++++++++++--- + 1 file changed, 11 insertions(+), 3 deletions(-) + +diff --git a/initscript/debian/avahi-daemon.in b/initscript/debian/avahi-daemon.in +index 4793b46..49ec358 100755 +--- a/initscript/debian/avahi-daemon.in ++++ b/initscript/debian/avahi-daemon.in +@@ -153,7 +153,15 @@ d_reload() { + # Function that check the status of the daemon/service. + # + d_status() { +- $DAEMON -c && echo "$DESC is running" || echo "$DESC is not running" ++ $DAEMON -c ++ status=$? ++ if [ $status = 0 ]; then ++ echo "$DESC is running" ++ return 0 ++ else ++ echo "$DESC is not running" ++ return 3 ++ fi + } + + case "$1" in +@@ -182,9 +190,9 @@ case "$1" in + d_status + ;; + *) +- echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload|reload}" >&2 ++ echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload|reload|status}" >&2 + exit 1 + ;; + esac + +-exit 0 ++exit $? +-- +1.7.9.5 + diff --git a/yocto-poky/meta/recipes-connectivity/avahi/files/00avahi-autoipd b/yocto-poky/meta/recipes-connectivity/avahi/files/00avahi-autoipd new file mode 100644 index 000000000..a0ab81460 --- /dev/null +++ b/yocto-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/yocto-poky/meta/recipes-connectivity/avahi/files/99avahi-autoipd b/yocto-poky/meta/recipes-connectivity/avahi/files/99avahi-autoipd new file mode 100644 index 000000000..234cdaa3e --- /dev/null +++ b/yocto-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/yocto-poky/meta/recipes-connectivity/avahi/files/avahi_fix_install_issue.patch b/yocto-poky/meta/recipes-connectivity/avahi/files/avahi_fix_install_issue.patch new file mode 100644 index 000000000..32f20ece4 --- /dev/null +++ b/yocto-poky/meta/recipes-connectivity/avahi/files/avahi_fix_install_issue.patch @@ -0,0 +1,32 @@ +Upstream-Status: Pending + +Fixes this install issue +#| /bin/sh: line 0: cd: /srv/home/nitin/builds/build-gcc47/tmp/work/i586-poky-linux/avahi-0.6.31-r3.0/image//usr/bin: No such file or directory + +Signed-Off-By: Nitin A Kamble <nitin.a.kamble@intel.com> +2012/05/03 + +Index: avahi-0.6.31/avahi-utils/Makefile.am +=================================================================== +--- avahi-0.6.31.orig/avahi-utils/Makefile.am ++++ avahi-0.6.31/avahi-utils/Makefile.am +@@ -54,6 +54,7 @@ avahi_set_host_name_CFLAGS = $(AM_CFLAGS + avahi_set_host_name_LDADD = $(AM_LDADD) ../avahi-client/libavahi-client.la ../avahi-common/libavahi-common.la + + install-exec-local: ++ $(MKDIR_P) $(DESTDIR)/$(bindir) && \ + cd $(DESTDIR)/$(bindir) && \ + rm -f avahi-resolve-host-name avahi-resolve-address avahi-browse-domains avahi-publish-address avahi-publish-service && \ + $(LN_S) avahi-resolve avahi-resolve-host-name && \ +Index: avahi-0.6.31/avahi-utils/Makefile.in +=================================================================== +--- avahi-0.6.31.orig/avahi-utils/Makefile.in ++++ avahi-0.6.31/avahi-utils/Makefile.in +@@ -906,6 +906,7 @@ uninstall-am: uninstall-binPROGRAMS + + + @HAVE_DBUS_TRUE@install-exec-local: ++@HAVE_DBUS_TRUE@ $(MKDIR_P) $(DESTDIR)/$(bindir) && \ + @HAVE_DBUS_TRUE@ cd $(DESTDIR)/$(bindir) && \ + @HAVE_DBUS_TRUE@ rm -f avahi-resolve-host-name avahi-resolve-address avahi-browse-domains avahi-publish-address avahi-publish-service && \ + @HAVE_DBUS_TRUE@ $(LN_S) avahi-resolve avahi-resolve-host-name && \ diff --git a/yocto-poky/meta/recipes-connectivity/avahi/files/fix_for_automake_1.12.x.patch b/yocto-poky/meta/recipes-connectivity/avahi/files/fix_for_automake_1.12.x.patch new file mode 100644 index 000000000..0fc4c290c --- /dev/null +++ b/yocto-poky/meta/recipes-connectivity/avahi/files/fix_for_automake_1.12.x.patch @@ -0,0 +1,34 @@ +Upstream-Status: Pending + +autoamke 1.12.x has depricated use of mkdir_p , and recommends use of MKDIR_P +instead. Fixed the automake files accordingly to avoid warning-errors. +Signed-Off-By: Nitin A Kamble <nitin.a.kamble@intel.com> +2012/07/09 + + +Index: avahi-0.6.31/avahi-daemon/Makefile.am +=================================================================== +--- avahi-0.6.31.orig/avahi-daemon/Makefile.am ++++ avahi-0.6.31/avahi-daemon/Makefile.am +@@ -169,7 +169,7 @@ xmllint: + done + + install-data-local: +- test -z "$(localstatedir)/run" || $(mkdir_p) "$(DESTDIR)$(localstatedir)/run" ++ test -z "$(localstatedir)/run" || $(MKDIR_P) "$(DESTDIR)$(localstatedir)/run" + + update-systemd: + curl http://cgit.freedesktop.org/systemd/plain/src/sd-daemon.c > sd-daemon.c +Index: avahi-0.6.31/avahi-autoipd/Makefile.am +=================================================================== +--- avahi-0.6.31.orig/avahi-autoipd/Makefile.am ++++ avahi-0.6.31/avahi-autoipd/Makefile.am +@@ -76,7 +76,7 @@ dhcliententerdir = $(sysconfdir)/dhcp/dh + dhclientexitdir = $(sysconfdir)/dhcp/dhclient-exit-hooks.d + + install-exec-hook: dhclient-exit-hook dhclient-enter-hook +- $(mkdir_p) $(DESTDIR)$(dhcliententerdir) $(DESTDIR)$(dhclientexitdir) ++ $(MKDIR_P) $(DESTDIR)$(dhcliententerdir) $(DESTDIR)$(dhclientexitdir) + $(INSTALL) dhclient-enter-hook $(DESTDIR)$(dhcliententerdir)/avahi-autoipd + $(INSTALL) dhclient-exit-hook $(DESTDIR)$(dhclientexitdir)/avahi-autoipd + diff --git a/yocto-poky/meta/recipes-connectivity/avahi/files/initscript.patch b/yocto-poky/meta/recipes-connectivity/avahi/files/initscript.patch new file mode 100644 index 000000000..193889eb5 --- /dev/null +++ b/yocto-poky/meta/recipes-connectivity/avahi/files/initscript.patch @@ -0,0 +1,41 @@ +Upstream-Status: Pending + +diff --git a/initscript/debian/avahi-daemon.in b/initscript/debian/avahi-daemon.in +index 30a2c2f..b5848a8 100755 +--- a/initscript/debian/avahi-daemon.in ++++ b/initscript/debian/avahi-daemon.in +@@ -1,2 +1,14 @@ + #!/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 ++# +diff --git a/initscript/debian/avahi-dnsconfd.in b/initscript/debian/avahi-dnsconfd.in +index ac34804..f95c340 100755 +--- a/initscript/debian/avahi-dnsconfd.in ++++ b/initscript/debian/avahi-dnsconfd.in +@@ -1,1 +1,14 @@ + #!/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 ++# diff --git a/yocto-poky/meta/recipes-connectivity/avahi/files/out-of-tree.patch b/yocto-poky/meta/recipes-connectivity/avahi/files/out-of-tree.patch new file mode 100644 index 000000000..43476cde0 --- /dev/null +++ b/yocto-poky/meta/recipes-connectivity/avahi/files/out-of-tree.patch @@ -0,0 +1,32 @@ +Upstream-Status: Pending +Signed-off-by: Ross Burton <ross.burton@intel.com> + +From a62dc95d75691ea4aefa86d8bbe54c62afd78ff6 Mon Sep 17 00:00:00 2001 +From: Ross Burton <ross.burton@intel.com> +Date: Tue, 17 Sep 2013 12:27:36 +0100 +Subject: [PATCH] build-sys: fix out-of-tree builds without xmltoman + +If manpages are enabled but xmltoman isn't present, out-of-tree builds fail +because it checks inside the build directory for the pre-generated manpages. + +Fix this by using $srcdir when looking for files inside the source directory. +--- + configure.ac | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index 9debce2..047c7ae 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -1021,7 +1021,7 @@ if test x$manpages = xyes ; then + fi + + if test x$have_xmltoman = xno -o x$xmltoman = xno; then +- if ! test -e man/avahi-daemon.8 ; then ++ if ! test -e $srcdir/man/avahi-daemon.8 ; then + AC_MSG_ERROR([*** xmltoman was not found or was disabled, it is required to build the manpages as they have not been pre-built, install xmltoman, pass --disable-manpages or dont pass --disable-xmltoman]) + exit 1 + fi +-- +1.7.10.4 + diff --git a/yocto-poky/meta/recipes-connectivity/avahi/files/reuseport-check.patch b/yocto-poky/meta/recipes-connectivity/avahi/files/reuseport-check.patch new file mode 100644 index 000000000..bb81c2cb4 --- /dev/null +++ b/yocto-poky/meta/recipes-connectivity/avahi/files/reuseport-check.patch @@ -0,0 +1,30 @@ +Fix avahi-daemon when running on kernel < 3.9 (patch taken from Ubuntu). + +Upstream-Status: Pending (unmaintained upstream) +Signed-off-by: Ross Burton <ross.burton@intel.com> + +Description: SO_REUSEPORT may not exist in running kernel + When userspace defines SO_REUSEPORT we will attempt to enable socket + port number reuse. However if the running kernel does not support + this call it will fail preventing daemon startup. If this call is + present but fails ENOPROTOOPT then we know that actually the kernel + does not support it and we should continue as if we did not have the + call at all. (LP: #1228204) + . + This patch could be removed from the debian package after jessie release. +Author: Andy Whitcroft <apw@canonical.com> + +Index: avahi-0.6.31/avahi-core/socket.c +=================================================================== +--- avahi-0.6.31.orig/avahi-core/socket.c 2013-09-20 16:36:50.000000000 +0100 ++++ avahi-0.6.31/avahi-core/socket.c 2013-09-20 16:38:23.781863644 +0100 +@@ -177,7 +177,8 @@ + yes = 1; + if (setsockopt(fd, SOL_SOCKET, SO_REUSEPORT, &yes, sizeof(yes)) < 0) { + avahi_log_warn("SO_REUSEPORT failed: %s", strerror(errno)); +- return -1; ++ if (errno != ENOPROTOOPT) ++ return -1; + } + #endif + |