]> 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>
Wed, 8 Sep 2021 11:10:25 +0000 (13:10 +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 54e8607609b4427b7f8f2053a4037b77100be7c0..2928c064cf116315114cf2fa9e105c02dc30fa3d 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=`printf "%s\n" "ac_cv_header_$ac_header" | $as_tr_sh`
@@ -16254,7 +16256,7 @@ printf "%s\n" "krb5-config: krb5.h not found" >&6; }
        else
            CPPFLAGS="$saved_cppflags"
            saved_libs="$LIBS"
-           LIBS=$gssapi_libs
+           LIBS="$gssapi_libs $krb5_libs $LIBS"
            { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking krb5-config linking as $LIBS" >&5
 printf %s "checking krb5-config linking as $LIBS... " >&6; }
            cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -16352,8 +16354,8 @@ printf "%s\n" "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 b36a09ed442ad9843b1907f99b583cdf688a2ed1..d837780eb829b820da081ef08fe453c9d843ca6b 100644 (file)
@@ -921,10 +921,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
@@ -941,7 +943,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)
@@ -1017,8 +1019,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'