tags 815306 + patch user debian-bsd@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 steven@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
Attachment:
signature.asc
Description: Digital signature