1## Copyright (C) 1996-2021 The Squid Software Foundation and contributors 2## 3## Squid software is distributed under GPLv2+ license and includes 4## contributions from numerous individuals and organizations. 5## Please see the COPYING and CONTRIBUTORS files for details. 6## 7 8# This file is supposed to run all the tests required to identify which 9# configured modules are able to be built in this environment 10 11# FIXME: de-duplicate $enable_auth_negotiate list containing double entries. 12 13#not specified. Inherit global 14if test "x$enable_auth_negotiate" = "x"; then 15 enable_auth_negotiate=$enable_auth 16fi 17#conflicts with global 18if test "x$enable_auth_negotiate" != "xno" -a "x$enable_auth" = "xno" ; then 19 AC_MSG_ERROR([Negotiate auth requested but auth disabled]) 20fi 21#define list of modules to build 22auto_auth_negotiate_modules=no 23if test "x$enable_auth_negotiate" = "xyes" ; then 24 SQUID_LOOK_FOR_MODULES([$srcdir/src/auth/negotiate],[enable_auth_negotiate]) 25 auto_auth_negotiate_modules=yes 26fi 27#handle the "none" special case 28if test "x$enable_auth_negotiate" = "xnone" ; then 29 enable_auth_negotiate="" 30fi 31 32NEGOTIATE_AUTH_HELPERS="" 33enable_auth_negotiate="`echo $enable_auth_negotiate| sed -e 's/,/ /g;s/ */ /g'`" 34if test "x$enable_auth_negotiate" != "xno" ; then 35 AUTH_MODULES="$AUTH_MODULES negotiate" 36 AC_DEFINE([HAVE_AUTH_MODULE_NEGOTIATE],1,[Negotiate auth module is built]) 37 for helper in $enable_auth_negotiate; do 38 dir="$srcdir/src/auth/negotiate/$helper" 39 40 # modules converted to autoconf macros already 41 # NP: we only need this list because m4_include() does not accept variables 42 if test "x$helper" = "xSSPI" ; then 43 m4_include([src/auth/negotiate/SSPI/required.m4]) 44 45 elif test "x$helper" = "xkerberos" ; then 46 m4_include([src/auth/negotiate/kerberos/required.m4]) 47 48 elif test "x$helper" = "xwrapper" ; then 49 m4_include([src/auth/negotiate/wrapper/required.m4]) 50 51 # modules not yet converted to autoconf macros (or third party drop-in's) 52 elif test -f "$dir/config.test" && sh "$dir/config.test" "$squid_host_os"; then 53 BUILD_HELPER="$helper" 54 fi 55 56 if test -d "$srcdir/src/auth/negotiate/$helper"; then 57 if test "$BUILD_HELPER" != "$helper"; then 58 if test "x$auto_auth_negotiate_modules" = "xyes"; then 59 AC_MSG_NOTICE([Negotiate auth helper $helper ... found but cannot be built]) 60 else 61 AC_MSG_ERROR([Negotiate auth helper $helper ... found but cannot be built]) 62 fi 63 else 64 NEGOTIATE_AUTH_HELPERS="$NEGOTIATE_AUTH_HELPERS $BUILD_HELPER" 65 fi 66 else 67 AC_MSG_ERROR([Negotiate auth helper $helper ... not found]) 68 fi 69 done 70fi 71 72AC_MSG_NOTICE([Negotiate auth helpers to be built: $NEGOTIATE_AUTH_HELPERS]) 73AM_CONDITIONAL(ENABLE_AUTH_NEGOTIATE, test "x$enable_auth_negotiate" != "xno") 74AC_SUBST(NEGOTIATE_AUTH_HELPERS) 75