1 ## Copyright (C) 1996-2015 The Squid Software Foundation and contributors
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.
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
11 # FIXME: de-duplicate $enable_auth_negotiate list containing double entries.
13 #not specified. Inherit global
14 if test "x$enable_auth_negotiate" = "x"; then
15 enable_auth_negotiate=$enable_auth
17 #conflicts with global
18 if test "x$enable_auth_negotiate" != "xno" -a "x$enable_auth" = "xno" ; then
19 AC_MSG_ERROR([Negotiate auth requested but auth disabled])
21 #define list of modules to build
22 auto_auth_negotiate_modules=no
23 if test "x$enable_auth_negotiate" = "xyes" ; then
24 SQUID_LOOK_FOR_MODULES([$srcdir/helpers/negotiate_auth],[enable_auth_negotiate])
25 auto_auth_negotiate_modules=yes
27 #handle the "none" special case
28 if test "x$enable_auth_negotiate" = "xnone" ; then
29 enable_auth_negotiate=""
32 NEGOTIATE_AUTH_HELPERS=""
33 enable_auth_negotiate="`echo $enable_auth_negotiate| sed -e 's/,/ /g;s/ */ /g'`"
34 if 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/helpers/negotiate_auth/$helper"
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([helpers/negotiate_auth/SSPI/required.m4])
45 elif test "x$helper" = "xkerberos" ; then
46 m4_include([helpers/negotiate_auth/kerberos/required.m4])
48 elif test "x$helper" = "xwrapper" ; then
49 m4_include([helpers/negotiate_auth/wrapper/required.m4])
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"
56 if test -d "$srcdir/helpers/negotiate_auth/$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])
61 AC_MSG_ERROR([Negotiate auth helper $helper ... found but cannot be built])
64 NEGOTIATE_AUTH_HELPERS="$NEGOTIATE_AUTH_HELPERS $BUILD_HELPER"
67 AC_MSG_ERROR([Negotiate auth helper $helper ... not found])
72 AC_MSG_NOTICE([Negotiate auth helpers to be built: $NEGOTIATE_AUTH_HELPERS])
73 AM_CONDITIONAL(ENABLE_AUTH_NEGOTIATE, test "x$enable_auth_negotiate" != "xno")
74 AC_SUBST(NEGOTIATE_AUTH_HELPERS)