From: Michael Tremer Date: Mon, 11 May 2026 08:30:53 +0000 (+0000) Subject: configure: Link against libdns and libisc X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=2b83919fec7ee80a45205b7812ff7d806984537e;p=zone-sync.git configure: Link against libdns and libisc Signed-off-by: Michael Tremer --- diff --git a/Makefile.am b/Makefile.am index 6640601..f939990 100644 --- a/Makefile.am +++ b/Makefile.am @@ -61,9 +61,11 @@ zone_sync_CPPFLAGS = \ $(AM_CPPFLAGS) zone_sync_CFLAGS = \ - $(AM_CFLAGS) + $(AM_CFLAGS) \ + $(BIND_CFLAGS) zone_sync_LDFLAGS = \ $(AM_LDFLAGS) -zone_sync_LDADD = +zone_sync_LDADD = \ + $(BIND_LIBS) diff --git a/configure.ac b/configure.ac index 1e55ca6..b982b1d 100644 --- a/configure.ac +++ b/configure.ac @@ -129,6 +129,34 @@ AC_CHECK_HEADERS([ \ AC_CHECK_FUNCS([]) +# --- BIND 9 libdns / libisc --------------------------------------------- + +# uv is BIND 9.20's event loop backend; OpenSSL for crypto/TLS; +# pthread for the netmgr; dl for dlopen used by plugins/dst. +PKG_CHECK_MODULES([LIBUV], [libuv]) +PKG_CHECK_MODULES([OPENSSL], [openssl]) +AX_PTHREAD([], [AC_MSG_ERROR([pthread support is required])]) + +# libisc and libdns themselves — no .pc files, so link-test directly. +# Order matters: libdns depends on libisc. +BIND_LIBS="-ldns -lisc $LIBUV_LIBS $OPENSSL_LIBS $PTHREAD_LIBS -ldl" + +saved_LIBS="$LIBS" +LIBS="$BIND_LIBS $LIBS" +AC_MSG_CHECKING([whether libdns/libisc link]) +AC_LINK_IFELSE( + [AC_LANG_PROGRAM( + [[#include + #include ]], + [[isc_mem_t *m = NULL; (void)dns_xfrin_shutdown; (void)m;]])], + [AC_MSG_RESULT([yes])], + [AC_MSG_RESULT([no]) + AC_MSG_ERROR([cannot link against libdns/libisc])]) +LIBS="$saved_LIBS" + +AC_SUBST([BIND_LIBS]) +AC_SUBST([BIND_CFLAGS], ["$LIBUV_CFLAGS $OPENSSL_CFLAGS $PTHREAD_CFLAGS"]) + AC_CONFIG_FILES([ Makefile ])