diff mbox

[v2,23/25] avahi: systemd cleanups

Message ID 1426878856-15747-24-git-send-email-mike@mikebwilliams.com
State Changes Requested
Headers show

Commit Message

Mike Williams March 20, 2015, 7:14 p.m. UTC
* Move service files to /usr/lib/systemd/system/
* Only disable systemd support on non-systemd systems

Signed-off-by: Mike Williams <mike@mikebwilliams.com>
---
 package/avahi/0002-disable-systemd-support.patch | 22 ----------------------
 package/avahi/avahi.mk                           |  8 ++++++--
 2 files changed, 6 insertions(+), 24 deletions(-)
 delete mode 100644 package/avahi/0002-disable-systemd-support.patch

Comments

Thomas Petazzoni March 20, 2015, 7:41 p.m. UTC | #1
Dear Mike Williams,

On Fri, 20 Mar 2015 15:14:14 -0400, Mike Williams wrote:

> +ifneq ($(BR2_PACKAGE_SYSTEMD),y)
> +AVAHI_CFLAGS += -DDISABLE_SYSTEMD
> +endif

Seriously, do you test the patches you send? I really value the
contributions you're making around systemd support: it's great to have
someone finally picking up this topic and doing some
cleanup/refactoring. But please, test your patches at least minimally.

The <pkg>_CFLAGS variable does not exist and has no effect.

Best regards,

Thomas
Mike Williams March 20, 2015, 8:10 p.m. UTC | #2
Thomas,

On Fri, Mar 20, 2015 at 3:41 PM, Thomas Petazzoni
<thomas.petazzoni@free-electrons.com> wrote:
> Dear Mike Williams,
>
> On Fri, 20 Mar 2015 15:14:14 -0400, Mike Williams wrote:
>
>> +ifneq ($(BR2_PACKAGE_SYSTEMD),y)
>> +AVAHI_CFLAGS += -DDISABLE_SYSTEMD
>> +endif
>
> Seriously, do you test the patches you send? I really value the
> contributions you're making around systemd support: it's great to have
> someone finally picking up this topic and doing some
> cleanup/refactoring. But please, test your patches at least minimally.

Yes, I built, booted it, and verified that systemd started it without
error. I mistakenly assumed that meant it the patch was working
correctly; I don't use avahi for anything and have no experience with
it.

> The <pkg>_CFLAGS variable does not exist and has no effect.

I see that now. I fgrep'd for _CFLAGS initially to find out how other
packages were doing it, and didn't realize this common convention
wasn't part of buildroot.

>
> Best regards,
>
> Thomas
> --
> Thomas Petazzoni, CTO, Free Electrons
> Embedded Linux, Kernel and Android engineering
> http://free-electrons.com
Thomas Petazzoni March 20, 2015, 8:24 p.m. UTC | #3
Dear Mike Williams,

On Fri, 20 Mar 2015 16:10:16 -0400, Mike Williams wrote:

> > Seriously, do you test the patches you send? I really value the
> > contributions you're making around systemd support: it's great to have
> > someone finally picking up this topic and doing some
> > cleanup/refactoring. But please, test your patches at least minimally.
> 
> Yes, I built, booted it, and verified that systemd started it without
> error. I mistakenly assumed that meant it the patch was working
> correctly; I don't use avahi for anything and have no experience with
> it.

Right, I also assumed you tested the systemd case. But here it's the
non-systemd case that can be problematic.

> > The <pkg>_CFLAGS variable does not exist and has no effect.
> 
> I see that now. I fgrep'd for _CFLAGS initially to find out how other
> packages were doing it, and didn't realize this common convention
> wasn't part of buildroot.

Right, the <pkg>_CFLAGS variable doesn't mean anything for the
Buildroot package infrastructure. You have to do something like:

<pkg>_CFLAGS = $(TARGET_CFLAGS)
...
<pkg>_CFLAGS += -something
...
<pkg>_CONF_ENV += CFLAGS="$(<pkg>_CFLAGS)"

The default value of CFLAGS being $(TARGET_CFLAGS), this allows to add
some more flags in a correct fashion.

Thanks,

Thomas
diff mbox

Patch

diff --git a/package/avahi/0002-disable-systemd-support.patch b/package/avahi/0002-disable-systemd-support.patch
deleted file mode 100644
index 909795a..0000000
--- a/package/avahi/0002-disable-systemd-support.patch
+++ /dev/null
@@ -1,22 +0,0 @@ 
-[PATCH] avahi-daemon: disable systemd support
-
-Disable systemd support as it isn't needed for BR, and uses SOCK_CLOEXEC
-which isn't available on uClibc.
-
-Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
----
- avahi-daemon/sd-daemon.h |    1 +
- 1 file changed, 1 insertion(+)
-
-Index: avahi-0.6.27/avahi-daemon/sd-daemon.h
-===================================================================
---- avahi-0.6.27.orig/avahi-daemon/sd-daemon.h
-+++ avahi-0.6.27/avahi-daemon/sd-daemon.h
-@@ -66,6 +66,7 @@ extern "C" {
- 
-   See sd-daemon(7) for more information.
- */
-+#define DISABLE_SYSTEMD /* no systemd support in BR */
- 
- #if __GNUC__ >= 4
- #define _sd_printf_attr_(a,b) __attribute__ ((format (printf, a, b)))
diff --git a/package/avahi/avahi.mk b/package/avahi/avahi.mk
index 10c9915..53bbab7 100644
--- a/package/avahi/avahi.mk
+++ b/package/avahi/avahi.mk
@@ -88,6 +88,10 @@  AVAHI_DEPENDENCIES = \
 	$(if $(BR2_NEEDS_GETTEXT_IF_LOCALE),gettext) host-intltool \
 	host-pkgconf host-gettext
 
+ifneq ($(BR2_PACKAGE_SYSTEMD),y)
+AVAHI_CFLAGS += -DDISABLE_SYSTEMD
+endif
+
 ifneq ($(BR2_PACKAGE_AVAHI_DAEMON)$(BR2_PACKAGE_AVAHI_AUTOIPD),)
 AVAHI_DEPENDENCIES += libdaemon
 else
@@ -185,10 +189,10 @@  ifeq ($(BR2_PACKAGE_AVAHI_DAEMON),y)
 define AVAHI_INSTALL_INIT_SYSTEMD
 	mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants
 
-	ln -fs /lib/systemd/system/avahi-daemon.service \
+	ln -fs ../../../../usr/lib/systemd/system/avahi-daemon.service \
 		$(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/avahi-daemon.service
 
-	ln -fs /lib/systemd/system/avahi-dnsconfd.service \
+	ln -fs ../../../../usr/lib/systemd/system/avahi-dnsconfd.service \
 		$(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/avahi-dnsconfd.service
 
 	$(INSTALL) -D -m 644 package/avahi/avahi_tmpfiles.conf \