[Pkg-dns-devel] Bug#830935: pdns: FTBFS on kFreeBSD: Unable to find a suitable libsystemd library

Christian Hofstaedtler zeha at debian.org
Wed Jul 13 07:46:52 UTC 2016


Control: reassign -1 libsystemd-dummy
Control: found -1 222-1

* Aaron M. Ucko <amu at alum.mit.edu> [160713 05:36]:
> Builds of pdns 4 for kFreeBSD failed:
>   checking systemd/sd-daemon.h usability... no
>   checking systemd/sd-daemon.h presence... yes
>   configure: WARNING: systemd/sd-daemon.h: present but cannot be compiled
>   configure: WARNING: systemd/sd-daemon.h:     check for missing prerequisite headers?
>   configure: WARNING: systemd/sd-daemon.h: see the Autoconf documentation
>   configure: WARNING: systemd/sd-daemon.h:     section "Present But Cannot Be Compiled"
>   configure: WARNING: systemd/sd-daemon.h: proceeding with the compiler's result
[..]
>   debian/rules:14: recipe for target 'build-arch' failed
> 
> It looks like the version of libsystemd-dev available on kFreeBSD (and
> the Hurd), 222-1, is too old for pdns's purposes.  Please version the
> build dependency appropriately.

Judging from config.log, this is a bug in libsystemd-dev on these
platforms:

  configure:21866: checking systemd/sd-daemon.h usability
  configure:21866: g++ -c -pthread -pthread -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 --param ssp-buffer-size=4 -fstack-protector -Wall -g -O2 -std=gnu++11  conftest.cpp >&5
  In file included from conftest.cpp:74:0:
  /usr/include/systemd/sd-daemon.h:247:79: error: expected initializer before '_sd_printf_'
   int sd_pid_notifyf(pid_t pid, int unset_environment, const char *format, ...) _sd_printf_(3,4);
                                                                                 ^
  In file included from conftest.cpp:74:0:
  /usr/include/systemd/sd-daemon.h: In function 'int sd_watchdog_enabled(int, uint64_t*)':
  /usr/include/systemd/sd-daemon.h:330:76: error: 'int sd_watchdog_enabled(int, uint64_t*)' was declared 'extern' and later 'static' [-fpermissive]
   static inline int sd_watchdog_enabled(int unset_environment, uint64_t *usec) {
                                                                              ^
  In file included from conftest.cpp:74:0:
  /usr/include/systemd/sd-daemon.h:283:5: note: previous declaration of 'int sd_watchdog_enabled(int, uint64_t*)'
   int sd_watchdog_enabled(int unset_environment, uint64_t *usec);
       ^

I do not really understand what the point of shipping a -dev package
with broken header is.

OTOH, pdns only wants sd-daemon.h and sd_notify from libsystemd(-dev),
which are available since 209-1 on linux. Adding a versioned
dependency would hinder backporting pdns, therefore I'd find that
unacceptable.

-- 
 ,''`.  Christian Hofstaedtler <zeha at debian.org>
: :' :  Debian Developer
`. `'   7D1A CFFA D9E0 806C 9C4C  D392 5C13 D6DB 9305 2E03
  `-



More information about the pkg-dns-devel mailing list