]>
Commit | Line | Data |
---|---|---|
bde978a6 | 1 | ## Copyright (C) 1996-2015 The Squid Software Foundation and contributors |
ca02e0ec AJ |
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 | ||
5eabe4b4 AJ |
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 | |
14 | if test "x$enable_auth_negotiate" = "x"; then | |
15 | enable_auth_negotiate=$enable_auth | |
16 | fi | |
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]) | |
20 | fi | |
21 | #define list of modules to build | |
c1bbd56c | 22 | auto_auth_negotiate_modules=no |
5eabe4b4 AJ |
23 | if test "x$enable_auth_negotiate" = "xyes" ; then |
24 | SQUID_LOOK_FOR_MODULES([$srcdir/helpers/negotiate_auth],[enable_auth_negotiate]) | |
c1bbd56c | 25 | auto_auth_negotiate_modules=yes |
5eabe4b4 AJ |
26 | fi |
27 | #handle the "none" special case | |
28 | if test "x$enable_auth_negotiate" = "xnone" ; then | |
29 | enable_auth_negotiate="" | |
30 | fi | |
31 | ||
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" | |
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([helpers/negotiate_auth/SSPI/required.m4]) | |
44 | ||
45 | elif test "x$helper" = "xkerberos" ; then | |
46 | m4_include([helpers/negotiate_auth/kerberos/required.m4]) | |
47 | ||
48 | elif test "x$helper" = "xwrapper" ; then | |
49 | m4_include([helpers/negotiate_auth/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/helpers/negotiate_auth/$helper"; then | |
57 | if test "$BUILD_HELPER" != "$helper"; then | |
c1bbd56c AJ |
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 | |
5eabe4b4 AJ |
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 | |
70 | fi | |
71 | ||
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) |