source: mod_gnutls/configure.ac @ 412ee84

debian/masterdebian/stretch-backportsjessie-backportsupstream
Last change on this file since 412ee84 was 412ee84, checked in by Thomas Klute <thomas2.klute@…>, 4 years ago

Test suite: Allow the user to disable use of "flock"

Using "flock" causes trouble on some exotic architectures (e.g. Hurd),
so allow disabling it. Running without lock files requires serial
execution of test cases to achieve reliable results.

  • Property mode set to 100644
File size: 4.9 KB
Line 
1dnl
2AC_INIT(mod_gnutls, 0.7.2)
3OOO_CONFIG_NICE(config.nice)
4MOD_GNUTLS_VERSION=AC_PACKAGE_VERSION
5AC_PREREQ(2.53)
6AC_CONFIG_SRCDIR([src/mod_gnutls.c])
7AC_CONFIG_AUX_DIR(config)
8
9OOO_MAINTAIN_MODE
10AM_MAINTAINER_MODE
11AC_CANONICAL_TARGET
12# mod_gnutls test suite requires GNU make
13AM_INIT_AUTOMAKE([-Wno-portability])
14AM_CONFIG_HEADER(include/mod_gnutls_config.h:config.in)
15
16AC_SUBST(MOD_GNUTLS_VERSION)
17
18AC_PROG_CC
19AC_PROG_CC_C99
20AC_PROG_LD
21AC_PROG_INSTALL
22AC_PROG_LIBTOOL
23
24AC_CONFIG_MACRO_DIR([m4])
25
26AP_VERSION=2.2.0
27CHECK_APACHE(,$AP_VERSION,
28    :,:,
29    AC_MSG_ERROR([*** Apache version $AP_VERSION not found!])
30)
31
32PKG_CHECK_MODULES([LIBGNUTLS], [gnutls >= 3.1.4])
33
34LIBGNUTLS_VERSION=`pkg-config --modversion gnutls`
35
36AC_ARG_ENABLE(srp,
37       AS_HELP_STRING([--disable-srp],
38               [unconditionally disable the SRP functionality]),
39       use_srp=$enableval, use_srp=yes)
40
41# check if the available GnuTLS library supports SRP
42AC_SEARCH_LIBS([gnutls_srp_server_get_username], [gnutls], [], [use_srp="no"])
43
44SRP_CFLAGS=""
45if test "$use_srp" != "no"; then
46        SRP_CFLAGS="-DENABLE_SRP=1"
47fi
48
49AC_ARG_ENABLE(strict,
50       AS_HELP_STRING([--disable-strict],
51               [Avoid strict compiler warnings and errors]),
52       use_strict=$enableval, use_strict=yes)
53
54STRICT_CFLAGS=""
55if test "$use_strict" != "no"; then
56        STRICT_CFLAGS="-Wall -Werror -Wextra"
57fi
58
59AC_MSG_CHECKING([whether to enable SRP functionality])
60AC_MSG_RESULT($use_srp)
61
62dnl Optionally disable flock
63AC_ARG_ENABLE(flock,
64        AS_HELP_STRING([--disable-flock], [Disable use of flock during tests]),
65        [use_flock=$enableval], [use_flock=yes])
66dnl If flock is not disabled, make sure it's available
67if test "$enable_flock" != "no"; then
68        AC_PATH_PROG([FLOCK], [flock], [no])
69        use_flock=${FLOCK}
70fi
71AM_CONDITIONAL([DISABLE_FLOCK], [test "$enable_flock" = "no"])
72
73AC_ARG_ENABLE(msva,
74       AS_HELP_STRING([--enable-msva],
75               [enable Monkeysphere client certificate verification]),
76       use_msva=$enableval, use_msva=no)
77AM_CONDITIONAL([USE_MSVA], [test "$use_msva" != "no"])
78
79MSVA_CFLAGS=""
80if test "$use_msva" != "no"; then
81        AC_CHECK_HEADERS([msv/msv.h], [],
82                         [AC_MSG_ERROR([*** No libmsv headers found!])])
83        AC_SEARCH_LIBS([msv_query_agent], [msv], [],
84                         [AC_MSG_ERROR([*** No libmsv found with msv_query_agent!])])
85        MSVA_CFLAGS="-DENABLE_MSVA=1"
86fi
87
88AC_MSG_CHECKING([whether to enable MSVA functionality])
89AC_MSG_RESULT($use_msva)
90
91have_apr_memcache=0
92CHECK_APR_MEMCACHE([have_apr_memcache=1], [have_apr_memcache=0])
93AC_SUBST(have_apr_memcache)
94
95# Building documentation requires pandoc, which in turn needs pdflatex
96# to build PDF output.
97build_doc=no
98AC_PATH_PROG([PANDOC], [pandoc], [no])
99if test "$PANDOC" != "no"; then
100        AC_PATH_PROG([PDFLATEX], [pdflatex], [no])
101        if test "$PDFLATEX" != "no"; then
102                build_doc=yes
103        else
104                build_doc="html only"
105        fi
106else
107        AC_PATH_PROG([MARKDOWN], [markdown], [no])
108        if test "$MARKDOWN" != "no"; then
109                build_doc="html stub"
110        fi
111fi
112AM_CONDITIONAL([USE_PANDOC], [test "$PANDOC" != "no"])
113AM_CONDITIONAL([USE_PDFLATEX], [test "$PANDOC" != "no" && \
114                               test "$PDFLATEX" != "no"])
115AM_CONDITIONAL([USE_MARKDOWN], [test -n "$MARKDOWN" && \
116                               test "$MARKDOWN" != "no"])
117
118# Check for Apache binary
119AC_PATH_PROGS([APACHE2], [apache2 httpd], [no], [$PATH:/usr/sbin])
120if test "${APACHE2}" = "no"; then
121        AC_MSG_WARN([Neither apache2 nor httpd found in \
122                     PATH. Test suite will fail.])
123fi
124
125MODULE_CFLAGS="${LIBGNUTLS_CFLAGS} ${SRP_CFLAGS} ${MSVA_CFLAGS} ${APR_MEMCACHE_CFLAGS} ${APXS_CFLAGS} ${AP_INCLUDES} ${APR_INCLUDES} ${APU_INCLUDES} ${STRICT_CFLAGS}"
126MODULE_LIBS="${APR_MEMCACHE_LIBS} ${LIBGNUTLS_LIBS}"
127
128AC_SUBST(MODULE_CFLAGS)
129AC_SUBST(MODULE_LIBS)
130
131# assign default values to TEST_HOST and TEST_IP if necessary
132: ${TEST_HOST:="localhost"}
133: ${TEST_IP:="[[::1]] 127.0.0.1"}
134AC_ARG_VAR([TEST_HOST], [Host name to use for server instances started by \
135                        "make check", must resolve to addresses in TEST_IP. \
136                        The default is "localhost".])
137AC_ARG_VAR([TEST_IP], [List of IP addresses to use for server instances \
138                      started by "make check". The default is \
139                      "[::1] 127.0.0.1". Note that IPv6 addresses must be \
140                      enclosed in square brackets.])
141AM_SUBST_NOTMAKE(TEST_IP)
142
143dnl Build list of "Listen" statements for Apache
144LISTEN_LIST="# Listen addresses for the test servers"
145for i in ${TEST_IP}; do
146        LISTEN_LIST="${LISTEN_LIST}
147Listen ${i}:\${TEST_PORT}"
148done
149AC_SUBST(LISTEN_LIST)
150AM_SUBST_NOTMAKE(LISTEN_LIST)
151
152AC_CONFIG_FILES([Makefile src/Makefile test/Makefile test/tests/Makefile \
153                          doc/Makefile include/mod_gnutls.h test/listen.conf])
154AC_OUTPUT
155
156echo "---"
157echo "Configuration summary for mod_gnutls:"
158echo ""
159echo "   * mod_gnutls version:  ${MOD_GNUTLS_VERSION}"
160echo "   * Apache Modules directory:    ${AP_LIBEXECDIR}"
161echo "   * GnuTLS Library version:      ${LIBGNUTLS_VERSION}"
162echo "   * SRP Authentication:  ${use_srp}"
163echo "   * MSVA Client Verification:    ${use_msva}"
164echo "   * Build documentation: ${build_doc}"
165echo ""
166echo "---"
Note: See TracBrowser for help on using the repository browser.