]> git.ipfire.org Git - thirdparty/bind9.git/commitdiff
Call krb5-config with just one argument at the time
authorOndřej Surý <ondrej@isc.org>
Wed, 8 Sep 2021 08:47:10 +0000 (10:47 +0200)
committerOndřej Surý <ondrej@isc.org>
Tue, 14 Sep 2021 18:58:22 +0000 (20:58 +0200)
The autoconf script would call the krb5-config with both gssapi and krb5
libraries as arguments in a single call.  It turned out that this is
actually not supported and it breaks some platforms.  This commit splits
the call into two separate calls - one for gssapi and one for krb5
library.

configure
configure.ac

index 6c2c554dd71907c619471d518a11e87229ff7ce7..edd0f9cde865c8ad2e3d286b3fbfde745747e8be 100755 (executable)
--- a/configure
+++ b/configure
     else
        KRB5_CONFIG="$use_gssapi"
     fi
-    gssapi_cflags=`$KRB5_CONFIG --cflags gssapi krb5`
-    gssapi_libs=`$KRB5_CONFIG --libs gssapi krb5`
+    gssapi_cflags=`$KRB5_CONFIG --cflags gssapi`
+    gssapi_libs=`$KRB5_CONFIG --libs gssapi`
+    krb5_cflags=`$KRB5_CONFIG --cflags krb5`
+    krb5_libs=`$KRB5_CONFIG --libs krb5`
     saved_cppflags="$CPPFLAGS"
-    CPPFLAGS="$gssapi_cflags $CPPFLAGS"
+    CPPFLAGS="$gssapi_cflags $krb5_cflags $CPPFLAGS"
     for ac_header in gssapi.h gssapi/gssapi.h
 do :
   as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
@@ -17568,7 +17570,7 @@ $as_echo "krb5-config: krb5.h not found" >&6; }
        else
            CPPFLAGS="$saved_cppflags"
            saved_libs="$LIBS"
-           LIBS=$gssapi_libs
+           LIBS="$gssapi_libs $krb5_libs $LIBS"
            { $as_echo "$as_me:${as_lineno-$LINENO}: checking krb5-config linking as $LIBS" >&5
 $as_echo_n "checking krb5-config linking as $LIBS... " >&6; }
            cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -17665,8 +17667,8 @@ $as_echo "disabled" >&6; }
                ;;
        */krb5-config|krb5-config)
                USE_GSSAPI='-DGSSAPI'
-               DST_GSSAPI_INC="$gssapi_cflags"
-               DNS_GSSAPI_LIBS="$gssapi_libs"
+               DST_GSSAPI_INC="$gssapi_cflags $krb5_cflags"
+               DNS_GSSAPI_LIBS="$gssapi_libs $krb5_libs"
                ;;
        framework)
                USE_GSSAPI='-DGSSAPI'
index a30f078a8abb799f21bc57e9ced35a3f581c6fa1..845c2ea7388c4dd0703109a6832ded3b64c765a2 100644 (file)
@@ -1011,10 +1011,12 @@ case "$use_gssapi" in
     else
        KRB5_CONFIG="$use_gssapi"
     fi
-    gssapi_cflags=`$KRB5_CONFIG --cflags gssapi krb5`
-    gssapi_libs=`$KRB5_CONFIG --libs gssapi krb5`
+    gssapi_cflags=`$KRB5_CONFIG --cflags gssapi`
+    gssapi_libs=`$KRB5_CONFIG --libs gssapi`
+    krb5_cflags=`$KRB5_CONFIG --cflags krb5`
+    krb5_libs=`$KRB5_CONFIG --libs krb5`
     saved_cppflags="$CPPFLAGS"
-    CPPFLAGS="$gssapi_cflags $CPPFLAGS"
+    CPPFLAGS="$gssapi_cflags $krb5_cflags $CPPFLAGS"
     AC_CHECK_HEADERS(gssapi.h gssapi/gssapi.h,
        [ISC_PLATFORM_GSSAPIHEADER="#define ISC_PLATFORM_GSSAPIHEADER <$ac_header>"])
     if test "" = "$ISC_PLATFORM_GSSAPIHEADER"; then
@@ -1031,7 +1033,7 @@ case "$use_gssapi" in
        else
            CPPFLAGS="$saved_cppflags"
            saved_libs="$LIBS"
-           LIBS=$gssapi_libs
+           LIBS="$gssapi_libs $krb5_libs $LIBS"
            AC_MSG_CHECKING([krb5-config linking as $LIBS])
            AC_TRY_LINK( , [gss_acquire_cred();krb5_init_context()],
                gssapi_linked=yes, gssapi_linked=no)
@@ -1107,8 +1109,8 @@ case "$use_gssapi" in
                ;;
        */krb5-config|krb5-config)
                USE_GSSAPI='-DGSSAPI'
-               DST_GSSAPI_INC="$gssapi_cflags"
-               DNS_GSSAPI_LIBS="$gssapi_libs"
+               DST_GSSAPI_INC="$gssapi_cflags $krb5_cflags"
+               DNS_GSSAPI_LIBS="$gssapi_libs $krb5_libs"
                ;;
        framework)
                USE_GSSAPI='-DGSSAPI'