tags 815306 + patch user debian-...@lists.debian.org usertags 815306 + kfreebsd thanks
Hi, Andreas Beckmann wrote: > corosync FTBFS on kfreebsd-i386, kfreebsd-amd64: > https://buildd.debian.org/status/fetch.php?pkg=corosync&arch=kfreebsd-amd64&ver=2.3.5-3&stamp=1445527755 > https://buildd.debian.org/status/fetch.php?pkg=corosync&arch=kfreebsd-i386&ver=2.3.5-3&stamp=1445522632 > > checking linux/watchdog.h usability... no > checking linux/watchdog.h presence... no > checking for linux/watchdog.h... no > configure: error: watchdog requires linux/watchdog.h watchdog and systemd, should be enabled only when building on Linux. That's quite easily to do. But then I found that systemd unit files are not created(?) any more so dh_install failed. So I added an exclusion on non-Linux, but maybe dh_install should not have been installing those files itself? Then "rm debian/tmp/usr/share/corosync/corosync" and "-notifyd" complained that those files did not exist, but they did exist in "tmp/etc/init.d/" where dh_install complained they were not being installed anywhere... so I changed it to just "rm -f" all of those. I didn't test to see if it caused regressions on linux, but the attached patch has fixed the package build for me on kfreebsd-amd64, at least. It probably could be better. Thanks, Regards, -- Steven Chamberlain ste...@pyro.eu.org
--- corosync-2.3.5/debian/control.orig 2015-10-22 14:36:41.000000000 +0100 +++ corosync-2.3.5/debian/control 2016-02-21 03:33:09.847711088 +0000 @@ -21,7 +21,7 @@ librdmacm-dev [linux-any], libsnmp-dev, libstatgrab-dev [linux-any], - libsystemd-dev, + libsystemd-dev [linux-any], libxml2-dev, pkg-config, zlib1g-dev --- corosync-2.3.5/debian/rules.orig 2015-10-22 14:36:41.000000000 +0100 +++ corosync-2.3.5/debian/rules 2016-02-21 03:51:31.792640939 +0000 @@ -16,6 +16,14 @@ enable-monitoring=--enable-monitoring endif +DEB_HOST_ARCH_OS ?= $(shell dpkg-architecture -qDEB_HOST_ARCH_OS) +ifeq (linux,${DEB_HOST_ARCH_OS}) +enable-watchdog=--enable-watchdog +enable-systemd=--enable-systemd +else +exclude-systemd=-X/lib/systemd/ +endif + %: dh $@ --with autoreconf,systemd @@ -25,11 +33,11 @@ --enable-dbus \ $(enable-rdma) \ $(enable-monitoring) \ - --enable-watchdog \ + $(enable-watchdog) \ --enable-augeas \ --enable-snmp \ --enable-xmlconf \ - --enable-systemd \ + $(enable-systemd) \ --enable-upstart \ --enable-qdevices \ --disable-static @@ -44,12 +52,14 @@ dh_auto_install rm -v debian/tmp/usr/lib/*/lib*.la # we don't need the upstream SysV init scripts and license - rm debian/tmp/usr/share/corosync/corosync \ - debian/tmp/usr/share/corosync/corosync-notifyd \ - debian/tmp/usr/share/doc/corosync/LICENSE + rm -f debian/tmp/etc/init.d/corosync \ + debian/tmp/etc/init.d/corosync-notifyd \ + debian/tmp/usr/share/corosync/corosync \ + debian/tmp/usr/share/corosync/corosync-notifyd \ + debian/tmp/usr/share/doc/corosync/LICENSE override_dh_install: - dh_install --fail-missing --exclude=.md5 + dh_install --fail-missing --exclude=.md5 $(exclude-systemd) override_dh_installchangelogs: dh_installchangelogs ChangeLog
signature.asc
Description: Digital signature