blob: 31d7252dc67721f7ca0ce51fb92f86fc577fe678 [file] [log] [blame]
Configure does not work with OE pkg-config for the ldns option
Upstream-Status: OE specific
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Index: opendnssec-2.1.8/configure.ac
===================================================================
--- opendnssec-2.1.8.orig/configure.ac
+++ opendnssec-2.1.8/configure.ac
@@ -133,9 +133,7 @@ AC_CHECK_MEMBER([struct sockaddr_un.sun_
# common dependencies
ACX_LIBXML2
-ACX_LDNS(1,6,17)
-ACX_LDNS_NOT(1,6,14, [binary incompatibility, see http://open.nlnetlabs.nl/pipermail/ldns-users/2012-October/000564.html])
-ACX_LDNS_NOT(1,6,15, [fail to create NSEC3 bitmap for empty non-terminals, see http://www.nlnetlabs.nl/pipermail/ldns-users/2012-November/000565.html])
+ACX_LDNS(1.6.17)
ACX_PKCS11_MODULES
ACX_RT
ACX_LIBC
Index: opendnssec-2.1.8/m4/acx_ldns.m4
===================================================================
--- opendnssec-2.1.8.orig/m4/acx_ldns.m4
+++ opendnssec-2.1.8/m4/acx_ldns.m4
@@ -1,128 +1,63 @@
-AC_DEFUN([ACX_LDNS],[
- AC_ARG_WITH(ldns,
- [AS_HELP_STRING([--with-ldns=PATH],[specify prefix of path of ldns library to use])],
- [
- LDNS_PATH="$withval"
- AC_PATH_PROGS(LDNS_CONFIG, ldns-config, ldns-config, $LDNS_PATH/bin)
- ],[
- LDNS_PATH="/usr/local"
- AC_PATH_PROGS(LDNS_CONFIG, ldns-config, ldns-config, $PATH)
- ])
-
- if test -x "$LDNS_CONFIG"
- then
- AC_MSG_CHECKING(what are the ldns includes)
- LDNS_INCLUDES="`$LDNS_CONFIG --cflags`"
- AC_MSG_RESULT($LDNS_INCLUDES)
-
- AC_MSG_CHECKING(what are the ldns libs)
- LDNS_LIBS="`$LDNS_CONFIG --libs`"
- AC_MSG_RESULT($LDNS_LIBS)
- else
- AC_MSG_CHECKING(what are the ldns includes)
- LDNS_INCLUDES="-I$LDNS_PATH/include"
- AC_MSG_RESULT($LDNS_INCLUDES)
-
- AC_MSG_CHECKING(what are the ldns libs)
- LDNS_LIBS="-L$LDNS_PATH/lib -lldns"
- AC_MSG_RESULT($LDNS_LIBS)
- fi
-
- tmp_CPPFLAGS=$CPPFLAGS
- tmp_LIBS=$LIBS
-
- CPPFLAGS="$CPPFLAGS $LDNS_INCLUDES"
- LIBS="$LIBS $LDNS_LIBS"
-
- AC_CHECK_LIB(ldns, ldns_rr_new,,[AC_MSG_ERROR([Can't find ldns library])])
- LIBS=$tmp_LIBS
-
- AC_MSG_CHECKING([for ldns version])
- CHECK_LDNS_VERSION=m4_format(0x%02x%02x%02x, $1, $2, $3)
- AC_LANG_PUSH([C])
- AC_RUN_IFELSE([
- AC_LANG_SOURCE([[
- #include <ldns/ldns.h>
- int main()
- {
- #ifdef LDNS_REVISION
- if (LDNS_REVISION >= $CHECK_LDNS_VERSION)
- return 0;
- #endif
- return 1;
- }
- ]])
- ],[
- AC_MSG_RESULT([>= $1.$2.$3])
- ],[
- AC_MSG_RESULT([< $1.$2.$3])
- AC_MSG_ERROR([ldns library too old ($1.$2.$3 or later required)])
- ],[])
- AC_LANG_POP([C])
-
- CPPFLAGS=$tmp_CPPFLAGS
-
- AC_SUBST(LDNS_INCLUDES)
- AC_SUBST(LDNS_LIBS)
-])
-
-
-AC_DEFUN([ACX_LDNS_NOT],[
- AC_ARG_WITH(ldns,
- [AS_HELP_STRING([--with-ldns=PATH],[specify prefix of path of ldns library to use])],
- [
- LDNS_PATH="$withval"
- AC_PATH_PROGS(LDNS_CONFIG, ldns-config, ldns-config, $LDNS_PATH/bin)
- ],[
- LDNS_PATH="/usr/local"
- AC_PATH_PROGS(LDNS_CONFIG, ldns-config, ldns-config, $PATH)
- ])
-
- if test -x "$LDNS_CONFIG"
- then
- AC_MSG_CHECKING(what are the ldns includes)
- LDNS_INCLUDES="`$LDNS_CONFIG --cflags`"
- AC_MSG_RESULT($LDNS_INCLUDES)
-
- AC_MSG_CHECKING(what are the ldns libs)
- LDNS_LIBS="`$LDNS_CONFIG --libs`"
- AC_MSG_RESULT($LDNS_LIBS)
- else
- AC_MSG_CHECKING(what are the ldns includes)
- LDNS_INCLUDES="-I$LDNS_PATH/include"
- AC_MSG_RESULT($LDNS_INCLUDES)
-
- AC_MSG_CHECKING(what are the ldns libs)
- LDNS_LIBS="-L$LDNS_PATH/lib -lldns"
- AC_MSG_RESULT($LDNS_LIBS)
- fi
-
- tmp_CPPFLAGS=$CPPFLAGS
-
- CPPFLAGS="$CPPFLAGS $LDNS_INCLUDES"
-
- AC_MSG_CHECKING([for ldns version not $1.$2.$3])
- CHECK_LDNS_VERSION=m4_format(0x%02x%02x%02x, $1, $2, $3)
- AC_LANG_PUSH([C])
- AC_RUN_IFELSE([
- AC_LANG_SOURCE([[
- #include <ldns/ldns.h>
- int main()
- {
- #ifdef LDNS_REVISION
- if (LDNS_REVISION != $CHECK_LDNS_VERSION)
- return 0;
- #endif
- return 1;
- }
- ]])
- ],[
- AC_MSG_RESULT([ok])
- ],[
- AC_MSG_RESULT([no])
- AC_MSG_ERROR([ldns version $1.$2.$3 is not compatible due to $4])
- ],[])
- AC_LANG_POP([C])
-
- CPPFLAGS=$tmp_CPPFLAGS
+AU_ALIAS([CHECK_LDNS], [ACX_LDNS])
+AC_DEFUN([ACX_LDNS], [
+ found=false
+ AC_ARG_WITH([ldns],
+ [AS_HELP_STRING([--with-ldns=DIR],
+ [root of the lnds directory])],
+ [
+ case "$withval" in
+ "" | y | ye | yes | n | no)
+ AC_MSG_ERROR([Invalid --with-lnds value])
+ ;;
+ *) ldnsdirs="$withval"
+ ;;
+ esac
+ ], [
+ # if pkg-config is installed and lnds has installed a .pc file,
+ # then use that information and don't search ldnsdirs
+ AC_CHECK_TOOL([PKG_CONFIG], [pkg-config])
+ if test x"$PKG_CONFIG" != x""; then
+ OPENSSL_LDFLAGS=`$PKG_CONFIG ldns --libs-only-L 2>/dev/null`
+ if test $? = 0; then
+ LDNS_LIBS=`$PKG_CONFIG ldns --libs-only-l 2>/dev/null`
+ LDNS_INCLUDES=`$PKG_CONFIG ldns --cflags-only-I 2>/dev/null`
+ found=true
+ fi
+ fi
+
+ # no such luck; use some default ldnsdirs
+ if ! $found; then
+ ldnsdirs="/usr/local/ldns /usr/lib/ldns /usr/ldns /usr/local /usr"
+ fi
+ ]
+ )
+
+
+ if ! $found; then
+ LDNS_INCLUDES=
+ for ldnsdir in $ldnsdirs; do
+ AC_MSG_CHECKING([for LDNS in $ldnsdir])
+ if test -f "$ldnsdir/include/ldns/dnssec.h"; then
+ LDNS_INCLUDES="-I$ldnsdir/include"
+ LDNS_LDFLAGS="-L$ldnsdir/lib"
+ LDNS_LIBS="-lldns"
+ found=true
+ AC_MSG_RESULT([yes])
+ break
+ else
+ AC_MSG_RESULT([no])
+ fi
+ done
+
+ # if the file wasn't found, well, go ahead and try the link anyway -- maybe
+ # it will just work!
+ fi
+
+ LDFLAGS="$LDFLAGS $OPENSSL_LDFLAGS"
+ LIBS="$LDNS_LIBS $LIBS"
+ CPPFLAGS="$LDNS_INCLUDES $CPPFLAGS"
+
+ AC_SUBST([LDNS_INCLUDES])
+ AC_SUBST([LDNS_LIBS])
+ AC_SUBST([LDNS_LDFLAGS])
])