annotate configure.in @ 15199:73916b7be94e

Plugin ABI version checking improvements. Previously the plugin version was checked against the version string returned by the currently running Dovecot master process, not necessarily the same as the binary. Also version_ignore=yes setting skipped the version check entirely. Now there's a new DOVECOT_ABI_VERSION macro that can (at least in theory) be updated only when the ABI actually changes. The version is in format "2.2.ABIv1(2.2.15)", where the (2.2.15) would be the actual Dovecot version number that gets ignored when comparing the strings. Also now the plugin version is compared to the actually running binary's ABI, not the master's version, and it can't be ignored with a setting.
author Timo Sirainen <tss@iki.fi>
date Fri, 12 Oct 2012 00:51:41 +0300
parents 70305d850220
children c30673b5ec1b
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
3784
beeae4f17615 Cleanups and some more kqueue stuff
Timo Sirainen <tss@iki.fi>
parents: 3783
diff changeset
1 AC_PREREQ([2.59])
14145
8457e41b634b Updated version number to v2.2.UNSTABLE and added a warning to configure.
Timo Sirainen <tss@iki.fi>
parents: 14140
diff changeset
2 AC_INIT([Dovecot],[2.2.UNSTABLE],[dovecot@dovecot.org])
15199
73916b7be94e Plugin ABI version checking improvements.
Timo Sirainen <tss@iki.fi>
parents: 15195
diff changeset
3 AC_DEFINE_UNQUOTED([DOVECOT_ABI_VERSION], "2.2.ABIv0($PACKAGE_VERSION)", [Dovecot ABI version])
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
4 AC_CONFIG_SRCDIR([src])
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
5
8523
426b356a0708 Use "foreign" automake option so it doesn't complain about missing ChangeLog.
Timo Sirainen <tss@iki.fi>
parents: 8517
diff changeset
6 AM_INIT_AUTOMAKE([foreign])
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
7
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
8 AM_MAINTAINER_MODE
12438
c1d8fb31c1ad configure: Use PKG_PROG_PKG_CONFIG to find pkg-config binary.
Timo Sirainen <tss@iki.fi>
parents: 12400
diff changeset
9 PKG_PROG_PKG_CONFIG
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
10
10754
c5cbc99f4627 configure: Set ACLOCAL_AMFLAGS so make finds dovecot.m4.
Timo Sirainen <tss@iki.fi>
parents: 10753
diff changeset
11 ACLOCAL_AMFLAGS='-I $(top_srcdir)'
c5cbc99f4627 configure: Set ACLOCAL_AMFLAGS so make finds dovecot.m4.
Timo Sirainen <tss@iki.fi>
parents: 10753
diff changeset
12 AC_SUBST(ACLOCAL_AMFLAGS)
c5cbc99f4627 configure: Set ACLOCAL_AMFLAGS so make finds dovecot.m4.
Timo Sirainen <tss@iki.fi>
parents: 10753
diff changeset
13
8517
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
14 dnl TEST_WITH(name, value, [plugin])
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
15 AC_DEFUN([TEST_WITH], [
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
16 want=want_`echo $1|sed s/-/_/g`
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
17 if test $2 = yes || test $2 = no || test $2 = auto; then
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
18 eval $want=$2
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
19 elif test $2 = plugin; then
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
20 if test "$3" = plugin; then
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
21 eval $want=plugin
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
22 else
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
23 AC_ERROR([--with-$1=plugin not supported])
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
24 fi
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
25 elif `echo $2|grep '^/' >/dev/null`; then
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
26 AC_ERROR([--with-$1=path not supported. You may want to use instead:
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
27 CPPFLAGS=-I$2/include LDFLAGS=-L$2/lib ./configure --with-$1])
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
28 else
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
29 AC_ERROR([--with-$1: Unknown value: $2])
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
30 fi
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
31 ])
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
32
7929
55d1a2bf4573 Renamed --enable-debug to --enable-devel-checks, which describes it better.
Timo Sirainen <tss@iki.fi>
parents: 7924
diff changeset
33 AC_ARG_ENABLE(devel-checks,
12441
ae5b5961a6a7 configure: Use AS_HELP_STRING() macro.
Timo Sirainen <tss@iki.fi>
parents: 12439
diff changeset
34 AS_HELP_STRING([--enable-devel-checks], [Enable some extra expensive checks for developers]),
544
42e65c2ba49d Added --enable-debug. Currently it just forces file locks so that index
Timo Sirainen <tss@iki.fi>
parents: 530
diff changeset
35 if test x$enableval = xyes; then
742
b3dd87844fff acconfig.h is deprecated with autoconf 2.5, changed configure to contain
Timo Sirainen <tss@iki.fi>
parents: 739
diff changeset
36 AC_DEFINE(DEBUG,, Build with extra debugging checks)
13866
c682a5bf3de7 --enable-devel-checks: Use -fcatch-undefined-behavior -ftrapv with clang.
Timo Sirainen <tss@iki.fi>
parents: 13794
diff changeset
37 want_devel_checks=yes
544
42e65c2ba49d Added --enable-debug. Currently it just forces file locks so that index
Timo Sirainen <tss@iki.fi>
parents: 530
diff changeset
38 fi)
42e65c2ba49d Added --enable-debug. Currently it just forces file locks so that index
Timo Sirainen <tss@iki.fi>
parents: 530
diff changeset
39
546
e1254b838e0b Added --enable-asserts (default) and fixed some warnings when building
Timo Sirainen <tss@iki.fi>
parents: 544
diff changeset
40 AC_ARG_ENABLE(asserts,
12441
ae5b5961a6a7 configure: Use AS_HELP_STRING() macro.
Timo Sirainen <tss@iki.fi>
parents: 12439
diff changeset
41 AS_HELP_STRING([--enable-asserts], [Enable asserts (default)]),
4057
f4807accc1d5 Unbreak last accidental change..
Timo Sirainen <tss@iki.fi>
parents: 4055
diff changeset
42 if test x$enableval = xno; then
742
b3dd87844fff acconfig.h is deprecated with autoconf 2.5, changed configure to contain
Timo Sirainen <tss@iki.fi>
parents: 739
diff changeset
43 AC_DEFINE(DISABLE_ASSERTS,, Disable asserts)
546
e1254b838e0b Added --enable-asserts (default) and fixed some warnings when building
Timo Sirainen <tss@iki.fi>
parents: 544
diff changeset
44 fi)
e1254b838e0b Added --enable-asserts (default) and fixed some warnings when building
Timo Sirainen <tss@iki.fi>
parents: 544
diff changeset
45
9104
c6d306772f4e Added configure --without-shared-libs to link built binaries against static libraries.
Timo Sirainen <tss@iki.fi>
parents: 9092
diff changeset
46 AC_ARG_WITH(shared-libs,
12441
ae5b5961a6a7 configure: Use AS_HELP_STRING() macro.
Timo Sirainen <tss@iki.fi>
parents: 12439
diff changeset
47 AS_HELP_STRING([--with-shared-libs], [Link binaries using shared Dovecot libraries (default)]),
9104
c6d306772f4e Added configure --without-shared-libs to link built binaries against static libraries.
Timo Sirainen <tss@iki.fi>
parents: 9092
diff changeset
48 want_shared_libs=$withval,
c6d306772f4e Added configure --without-shared-libs to link built binaries against static libraries.
Timo Sirainen <tss@iki.fi>
parents: 9092
diff changeset
49 want_shared_libs=yes)
c6d306772f4e Added configure --without-shared-libs to link built binaries against static libraries.
Timo Sirainen <tss@iki.fi>
parents: 9092
diff changeset
50 AM_CONDITIONAL(BUILD_SHARED_LIBS, test "$want_shared_libs" = "yes")
c6d306772f4e Added configure --without-shared-libs to link built binaries against static libraries.
Timo Sirainen <tss@iki.fi>
parents: 9092
diff changeset
51
439
b66ccecbc8a6 Added --with-mem-align=BYTES option
Timo Sirainen <tss@iki.fi>
parents: 426
diff changeset
52 AC_ARG_WITH(mem-align,
12441
ae5b5961a6a7 configure: Use AS_HELP_STRING() macro.
Timo Sirainen <tss@iki.fi>
parents: 12439
diff changeset
53 AS_HELP_STRING([--with-mem-align=BYTES], [Set the memory alignment (default: 8)]),
439
b66ccecbc8a6 Added --with-mem-align=BYTES option
Timo Sirainen <tss@iki.fi>
parents: 426
diff changeset
54 mem_align=$withval,
b66ccecbc8a6 Added --with-mem-align=BYTES option
Timo Sirainen <tss@iki.fi>
parents: 426
diff changeset
55 mem_align=8)
b66ccecbc8a6 Added --with-mem-align=BYTES option
Timo Sirainen <tss@iki.fi>
parents: 426
diff changeset
56
2569
554f1324a435 Added epoll support if --with-ioloop=epoll is given. Patch by Andrey Panin.
Timo Sirainen <tss@iki.fi>
parents: 2538
diff changeset
57 AC_ARG_WITH(ioloop,
12441
ae5b5961a6a7 configure: Use AS_HELP_STRING() macro.
Timo Sirainen <tss@iki.fi>
parents: 12439
diff changeset
58 AS_HELP_STRING([--with-ioloop=IOLOOP], [Specify the I/O loop method to use (epoll, kqueue, poll; best for the fastest available; default is best)]),
2569
554f1324a435 Added epoll support if --with-ioloop=epoll is given. Patch by Andrey Panin.
Timo Sirainen <tss@iki.fi>
parents: 2538
diff changeset
59 ioloop=$withval,
7268
80cd999d5623 Changed the default ioloop to "best".
Timo Sirainen <tss@iki.fi>
parents: 7264
diff changeset
60 ioloop=best)
2569
554f1324a435 Added epoll support if --with-ioloop=epoll is given. Patch by Andrey Panin.
Timo Sirainen <tss@iki.fi>
parents: 2538
diff changeset
61
3482
465c465c66be Added inotify patch by Johannes Berg and did some restructuring to
Timo Sirainen <tss@iki.fi>
parents: 3452
diff changeset
62 AC_ARG_WITH(notify,
12441
ae5b5961a6a7 configure: Use AS_HELP_STRING() macro.
Timo Sirainen <tss@iki.fi>
parents: 12439
diff changeset
63 AS_HELP_STRING([--with-notify=NOTIFY], [Specify the file system notification method to use (inotify, kqueue, dnotify, none; default is detected in the above order)]),
3482
465c465c66be Added inotify patch by Johannes Berg and did some restructuring to
Timo Sirainen <tss@iki.fi>
parents: 3452
diff changeset
64 notify=$withval,
465c465c66be Added inotify patch by Johannes Berg and did some restructuring to
Timo Sirainen <tss@iki.fi>
parents: 3452
diff changeset
65 notify=)
465c465c66be Added inotify patch by Johannes Berg and did some restructuring to
Timo Sirainen <tss@iki.fi>
parents: 3452
diff changeset
66
6111
c83546491bad --with-passwd was used also for --with-nss
Timo Sirainen <tss@iki.fi>
parents: 6106
diff changeset
67 AC_ARG_WITH(nss,
12441
ae5b5961a6a7 configure: Use AS_HELP_STRING() macro.
Timo Sirainen <tss@iki.fi>
parents: 12439
diff changeset
68 AS_HELP_STRING([--with-nss], [Build with NSS module support (auto)]),
8517
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
69 TEST_WITH(nss, $withval),
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
70 want_nss=auto)
5870
c9b49ed99d28 Added userdb nss which currently supports glibc-compatible NSS modules.
Timo Sirainen <tss@iki.fi>
parents: 5859
diff changeset
71
328
a0abed892d11 s/--enable/--with/ to all auth modules. added --with-file-offset-size=BITS
Timo Sirainen <tss@iki.fi>
parents: 313
diff changeset
72 AC_ARG_WITH(shadow,
12441
ae5b5961a6a7 configure: Use AS_HELP_STRING() macro.
Timo Sirainen <tss@iki.fi>
parents: 12439
diff changeset
73 AS_HELP_STRING([--with-shadow], [Build with shadow password support (auto)]),
8517
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
74 TEST_WITH(shadow, $withval),
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
75 want_shadow=auto)
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
76
328
a0abed892d11 s/--enable/--with/ to all auth modules. added --with-file-offset-size=BITS
Timo Sirainen <tss@iki.fi>
parents: 313
diff changeset
77 AC_ARG_WITH(pam,
12441
ae5b5961a6a7 configure: Use AS_HELP_STRING() macro.
Timo Sirainen <tss@iki.fi>
parents: 12439
diff changeset
78 AS_HELP_STRING([--with-pam], [Build with PAM support (auto)]),
8517
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
79 TEST_WITH(pam, $withval),
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
80 want_pam=auto)
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
81
1851
d66d53f57e43 Added bsdauth support, patch by Dan Cross
Timo Sirainen <tss@iki.fi>
parents: 1849
diff changeset
82 AC_ARG_WITH(bsdauth,
12441
ae5b5961a6a7 configure: Use AS_HELP_STRING() macro.
Timo Sirainen <tss@iki.fi>
parents: 12439
diff changeset
83 AS_HELP_STRING([--with-bsdauth], [Build with BSD authentication support (auto)]),
8517
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
84 TEST_WITH(bsdauth, $withval),
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
85 want_bsdauth=auto)
1851
d66d53f57e43 Added bsdauth support, patch by Dan Cross
Timo Sirainen <tss@iki.fi>
parents: 1849
diff changeset
86
3683
28cca6317829 Added GSSAPI support. Patch by Jelmer Vernooij and some fixes by
Timo Sirainen <tss@iki.fi>
parents: 3671
diff changeset
87 AC_ARG_WITH(gssapi,
12441
ae5b5961a6a7 configure: Use AS_HELP_STRING() macro.
Timo Sirainen <tss@iki.fi>
parents: 12439
diff changeset
88 AS_HELP_STRING([--with-gssapi=yes|plugin Build with GSSAPI authentication support]),
8517
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
89 TEST_WITH(gssapi, $withval, plugin),
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
90 want_gssapi=no)
3683
28cca6317829 Added GSSAPI support. Patch by Jelmer Vernooij and some fixes by
Timo Sirainen <tss@iki.fi>
parents: 3671
diff changeset
91
4638
689a02ca02d3 Tru64 SIA authentication support. Patch by Simon L Jackson
Timo Sirainen <tss@iki.fi>
parents: 4621
diff changeset
92 AC_ARG_WITH(sia,
12441
ae5b5961a6a7 configure: Use AS_HELP_STRING() macro.
Timo Sirainen <tss@iki.fi>
parents: 12439
diff changeset
93 AS_HELP_STRING([--with-sia], [Build with Tru64 SIA support]),
8517
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
94 TEST_WITH(sia, $withval),
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
95 want_sia=no)
4638
689a02ca02d3 Tru64 SIA authentication support. Patch by Simon L Jackson
Timo Sirainen <tss@iki.fi>
parents: 4621
diff changeset
96
1057
c5ab972db48c libldap checks, --without-pop3 disables pop3 server
Timo Sirainen <tss@iki.fi>
parents: 1049
diff changeset
97 AC_ARG_WITH(ldap,
12441
ae5b5961a6a7 configure: Use AS_HELP_STRING() macro.
Timo Sirainen <tss@iki.fi>
parents: 12439
diff changeset
98 AS_HELP_STRING([--with-ldap=yes|plugin], [Build with LDAP support]),
8517
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
99 TEST_WITH(ldap, $withval, plugin),
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
100 want_ldap=no)
1057
c5ab972db48c libldap checks, --without-pop3 disables pop3 server
Timo Sirainen <tss@iki.fi>
parents: 1049
diff changeset
101
280
fa2d1a1d025e vpopmail authentication. compiles, not tested if it really works.
Timo Sirainen <tss@iki.fi>
parents: 247
diff changeset
102 AC_ARG_WITH(vpopmail,
12441
ae5b5961a6a7 configure: Use AS_HELP_STRING() macro.
Timo Sirainen <tss@iki.fi>
parents: 12439
diff changeset
103 AS_HELP_STRING([--with-vpopmail], [Build with vpopmail support (auto)]),
280
fa2d1a1d025e vpopmail authentication. compiles, not tested if it really works.
Timo Sirainen <tss@iki.fi>
parents: 247
diff changeset
104 if test x$withval = xno; then
fa2d1a1d025e vpopmail authentication. compiles, not tested if it really works.
Timo Sirainen <tss@iki.fi>
parents: 247
diff changeset
105 want_vpopmail=no
fa2d1a1d025e vpopmail authentication. compiles, not tested if it really works.
Timo Sirainen <tss@iki.fi>
parents: 247
diff changeset
106 else
6974
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
107 if test x$withval = xyes || test x$withval = xauto; then
5035
80f0ee36e905 Allow --with-vpopmail=path specify the vpopmail_home path.
Timo Sirainen <tss@iki.fi>
parents: 5034
diff changeset
108 vpopmail_home="`echo ~vpopmail`"
6974
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
109 want_vpopmail=$withval
5035
80f0ee36e905 Allow --with-vpopmail=path specify the vpopmail_home path.
Timo Sirainen <tss@iki.fi>
parents: 5034
diff changeset
110 else
80f0ee36e905 Allow --with-vpopmail=path specify the vpopmail_home path.
Timo Sirainen <tss@iki.fi>
parents: 5034
diff changeset
111 vpopmail_home="$withval"
6974
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
112 want_vpopmail=yes
5035
80f0ee36e905 Allow --with-vpopmail=path specify the vpopmail_home path.
Timo Sirainen <tss@iki.fi>
parents: 5034
diff changeset
113 fi
80f0ee36e905 Allow --with-vpopmail=path specify the vpopmail_home path.
Timo Sirainen <tss@iki.fi>
parents: 5034
diff changeset
114 fi, [
12049
f90590836165 configure: vpopmail is broken, fail configure if --with-vpopmail is used.
Timo Sirainen <tss@iki.fi>
parents: 12044
diff changeset
115 want_vpopmail=no
5035
80f0ee36e905 Allow --with-vpopmail=path specify the vpopmail_home path.
Timo Sirainen <tss@iki.fi>
parents: 5034
diff changeset
116 ])
280
fa2d1a1d025e vpopmail authentication. compiles, not tested if it really works.
Timo Sirainen <tss@iki.fi>
parents: 247
diff changeset
117
10581
6ecb1b7528c9 Disabled Berkeley DB support until someone fixes it.
Timo Sirainen <tss@iki.fi>
parents: 10567
diff changeset
118 # Berkeley DB support is more or less broken. Disabled for now.
6ecb1b7528c9 Disabled Berkeley DB support until someone fixes it.
Timo Sirainen <tss@iki.fi>
parents: 10567
diff changeset
119 #AC_ARG_WITH(db,
12441
ae5b5961a6a7 configure: Use AS_HELP_STRING() macro.
Timo Sirainen <tss@iki.fi>
parents: 12439
diff changeset
120 #AS_HELP_STRING([--with-db], [Build with Berkeley DB support]),
10581
6ecb1b7528c9 Disabled Berkeley DB support until someone fixes it.
Timo Sirainen <tss@iki.fi>
parents: 10567
diff changeset
121 # TEST_WITH(db, $withval),
6ecb1b7528c9 Disabled Berkeley DB support until someone fixes it.
Timo Sirainen <tss@iki.fi>
parents: 10567
diff changeset
122 # want_db=no)
10600
20963e8ec560 configure: Another try at fixing Berkeley DB check to not give an error.
Timo Sirainen <tss@iki.fi>
parents: 10598
diff changeset
123 want_db=no
4517
e661182eab75 Berkeley DB dict support is now enabled only when using --with-db configure option.
Timo Sirainen <timo.sirainen@movial.fi>
parents: 4482
diff changeset
124
4013
bf0357107349 Added --with-sql option to build with SQL userdb/passdb but without any
Timo Sirainen <tss@iki.fi>
parents: 4012
diff changeset
125 dnl The --with-sql is useful only if Dovecot is being built with all the SQL
bf0357107349 Added --with-sql option to build with SQL userdb/passdb but without any
Timo Sirainen <tss@iki.fi>
parents: 4012
diff changeset
126 dnl drivers as modules. If any SQL driver is built-in, this option is ignored.
bf0357107349 Added --with-sql option to build with SQL userdb/passdb but without any
Timo Sirainen <tss@iki.fi>
parents: 4012
diff changeset
127 AC_ARG_WITH(sql,
12441
ae5b5961a6a7 configure: Use AS_HELP_STRING() macro.
Timo Sirainen <tss@iki.fi>
parents: 12439
diff changeset
128 AS_HELP_STRING([--with-sql=yes|plugin], [Build with generic SQL support]),
8517
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
129 TEST_WITH(sql, $withval, plugin),
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
130 want_sql=no)
4013
bf0357107349 Added --with-sql option to build with SQL userdb/passdb but without any
Timo Sirainen <tss@iki.fi>
parents: 4012
diff changeset
131
1283
2d8af547a8b4 Added PostgreSQL support, patch by Alex Howansky
Timo Sirainen <tss@iki.fi>
parents: 1256
diff changeset
132 AC_ARG_WITH(pgsql,
12441
ae5b5961a6a7 configure: Use AS_HELP_STRING() macro.
Timo Sirainen <tss@iki.fi>
parents: 12439
diff changeset
133 AS_HELP_STRING([--with-pgsql], [Build with PostgreSQL driver support]),
8517
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
134 TEST_WITH(pgsql, $withval),
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
135 want_pgsql=no)
1283
2d8af547a8b4 Added PostgreSQL support, patch by Alex Howansky
Timo Sirainen <tss@iki.fi>
parents: 1256
diff changeset
136
1995
cc64f8bb4716 MySQL authentication patch by Matther Reimer
Timo Sirainen <tss@iki.fi>
parents: 1990
diff changeset
137 AC_ARG_WITH(mysql,
12441
ae5b5961a6a7 configure: Use AS_HELP_STRING() macro.
Timo Sirainen <tss@iki.fi>
parents: 12439
diff changeset
138 AS_HELP_STRING([--with-mysql], [Build with MySQL driver support]),
8517
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
139 TEST_WITH(mysql, $withval),
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
140 want_mysql=no)
1995
cc64f8bb4716 MySQL authentication patch by Matther Reimer
Timo Sirainen <tss@iki.fi>
parents: 1990
diff changeset
141
3919
b967ffb7e3a6 SQLite support. Patch by Jakob Hirsch.
Timo Sirainen <tss@iki.fi>
parents: 3904
diff changeset
142 AC_ARG_WITH(sqlite,
12441
ae5b5961a6a7 configure: Use AS_HELP_STRING() macro.
Timo Sirainen <tss@iki.fi>
parents: 12439
diff changeset
143 AS_HELP_STRING([--with-sqlite], [Build with SQLite3 driver support]),
8517
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
144 TEST_WITH(sqlite, $withval),
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
145 want_sqlite=no)
3919
b967ffb7e3a6 SQLite support. Patch by Jakob Hirsch.
Timo Sirainen <tss@iki.fi>
parents: 3904
diff changeset
146
4621
446646de0c4a --with-lucene now enables lucene full text search indexing. Note that using
Timo Sirainen <tss@iki.fi>
parents: 4609
diff changeset
147 AC_ARG_WITH(lucene,
12441
ae5b5961a6a7 configure: Use AS_HELP_STRING() macro.
Timo Sirainen <tss@iki.fi>
parents: 12439
diff changeset
148 AS_HELP_STRING([--with-lucene], [Build with CLucene full text search support]),
8517
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
149 TEST_WITH(lucene, $withval),
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
150 want_lucene=no)
4621
446646de0c4a --with-lucene now enables lucene full text search indexing. Note that using
Timo Sirainen <tss@iki.fi>
parents: 4609
diff changeset
151 AM_CONDITIONAL(BUILD_LUCENE, test "$want_lucene" = "yes")
446646de0c4a --with-lucene now enables lucene full text search indexing. Note that using
Timo Sirainen <tss@iki.fi>
parents: 4609
diff changeset
152
13305
57aeda3d94ad configure: Added --with-stemmer and output which fts backends are compiled.
Timo Sirainen <tss@iki.fi>
parents: 13294
diff changeset
153 AC_ARG_WITH(stemmer,
57aeda3d94ad configure: Added --with-stemmer and output which fts backends are compiled.
Timo Sirainen <tss@iki.fi>
parents: 13294
diff changeset
154 AS_HELP_STRING([--with-stemmer], [Build with libstemmer support (for CLucene)]),
57aeda3d94ad configure: Added --with-stemmer and output which fts backends are compiled.
Timo Sirainen <tss@iki.fi>
parents: 13294
diff changeset
155 TEST_WITH(stemmer, $withval),
57aeda3d94ad configure: Added --with-stemmer and output which fts backends are compiled.
Timo Sirainen <tss@iki.fi>
parents: 13294
diff changeset
156 want_stemmer=auto)
57aeda3d94ad configure: Added --with-stemmer and output which fts backends are compiled.
Timo Sirainen <tss@iki.fi>
parents: 13294
diff changeset
157
7990
662172573fe1 Initial code to support Apache Solr (Lucene indexing server).
Timo Sirainen <tss@iki.fi>
parents: 7983
diff changeset
158 AC_ARG_WITH(solr,
12441
ae5b5961a6a7 configure: Use AS_HELP_STRING() macro.
Timo Sirainen <tss@iki.fi>
parents: 12439
diff changeset
159 AS_HELP_STRING([--with-solr], [Build with Solr full text search support]),
8517
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
160 TEST_WITH(solr, $withval),
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
161 want_solr=no)
7990
662172573fe1 Initial code to support Apache Solr (Lucene indexing server).
Timo Sirainen <tss@iki.fi>
parents: 7983
diff changeset
162
8090
75b1f16cba72 Added --with-zlib and --with-bzlib configure options.
Timo Sirainen <tss@iki.fi>
parents: 8076
diff changeset
163 AC_ARG_WITH(zlib,
12441
ae5b5961a6a7 configure: Use AS_HELP_STRING() macro.
Timo Sirainen <tss@iki.fi>
parents: 12439
diff changeset
164 AS_HELP_STRING([--with-zlib], [Build with zlib compression support]),
8517
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
165 TEST_WITH(zlib, $withval),
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
166 want_zlib=auto)
8090
75b1f16cba72 Added --with-zlib and --with-bzlib configure options.
Timo Sirainen <tss@iki.fi>
parents: 8076
diff changeset
167
75b1f16cba72 Added --with-zlib and --with-bzlib configure options.
Timo Sirainen <tss@iki.fi>
parents: 8076
diff changeset
168 AC_ARG_WITH(bzlib,
12441
ae5b5961a6a7 configure: Use AS_HELP_STRING() macro.
Timo Sirainen <tss@iki.fi>
parents: 12439
diff changeset
169 AS_HELP_STRING([--with-bzlib], [Build with bzlib compression support]),
8517
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
170 TEST_WITH(bzlib, $withval),
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
171 want_bzlib=auto)
8090
75b1f16cba72 Added --with-zlib and --with-bzlib configure options.
Timo Sirainen <tss@iki.fi>
parents: 8076
diff changeset
172
9538
b20513ab8f5a Added --without-libcap configure option.
Daniel Mierswa <impulze@impulze.org>
parents: 9410
diff changeset
173 AC_ARG_WITH(libcap,
12441
ae5b5961a6a7 configure: Use AS_HELP_STRING() macro.
Timo Sirainen <tss@iki.fi>
parents: 12439
diff changeset
174 AS_HELP_STRING([--with-libcap], [Build with libcap support (Dropping capabilities).]),
9538
b20513ab8f5a Added --without-libcap configure option.
Daniel Mierswa <impulze@impulze.org>
parents: 9410
diff changeset
175 TEST_WITH(libcap, $withval),
b20513ab8f5a Added --without-libcap configure option.
Daniel Mierswa <impulze@impulze.org>
parents: 9410
diff changeset
176 want_libcap=auto)
b20513ab8f5a Added --without-libcap configure option.
Daniel Mierswa <impulze@impulze.org>
parents: 9410
diff changeset
177
10647
51a978045f47 Added support for tcpwrappers and potentially other login access checks.
Timo Sirainen <tss@iki.fi>
parents: 10645
diff changeset
178 AC_ARG_WITH(libwrap,
12441
ae5b5961a6a7 configure: Use AS_HELP_STRING() macro.
Timo Sirainen <tss@iki.fi>
parents: 12439
diff changeset
179 AS_HELP_STRING([--with-libwrap], [Build with libwrap, ie. TCP-wrappers]),
10647
51a978045f47 Added support for tcpwrappers and potentially other login access checks.
Timo Sirainen <tss@iki.fi>
parents: 10645
diff changeset
180 TEST_WITH(libwrap, $withval),
11005
51150f2b3be8 configure: Disabled tcp-wrappers by default.
Timo Sirainen <tss@iki.fi>
parents: 10994
diff changeset
181 want_libwrap=no)
10647
51a978045f47 Added support for tcpwrappers and potentially other login access checks.
Timo Sirainen <tss@iki.fi>
parents: 10645
diff changeset
182
622
235188ee7a05 Support for OpenSSL.
Timo Sirainen <tss@iki.fi>
parents: 576
diff changeset
183 AC_ARG_WITH(ssl,
12441
ae5b5961a6a7 configure: Use AS_HELP_STRING() macro.
Timo Sirainen <tss@iki.fi>
parents: 12439
diff changeset
184 AS_HELP_STRING([--with-ssl=gnutls|openssl], [Build with GNUTLS or OpenSSL (default)]),
245
Timo Sirainen <tss@iki.fi>
parents: 244
diff changeset
185 if test x$withval = xno; then
244
bf1e284fece2 added --without-gnutls option
Timo Sirainen <tss@iki.fi>
parents: 224
diff changeset
186 want_gnutls=no
622
235188ee7a05 Support for OpenSSL.
Timo Sirainen <tss@iki.fi>
parents: 576
diff changeset
187 want_openssl=no
235188ee7a05 Support for OpenSSL.
Timo Sirainen <tss@iki.fi>
parents: 576
diff changeset
188 elif test x$withval = xgnutls; then
12026
ab75eff633aa configure: --with-ssl=gnutls gives error now immediately
Timo Sirainen <tss@iki.fi>
parents: 12002
diff changeset
189 AC_ERROR([GNUTLS support is broken currently])
622
235188ee7a05 Support for OpenSSL.
Timo Sirainen <tss@iki.fi>
parents: 576
diff changeset
190 want_gnutls=yes
235188ee7a05 Support for OpenSSL.
Timo Sirainen <tss@iki.fi>
parents: 576
diff changeset
191 want_openssl=no
235188ee7a05 Support for OpenSSL.
Timo Sirainen <tss@iki.fi>
parents: 576
diff changeset
192 elif test x$withval = xopenssl; then
235188ee7a05 Support for OpenSSL.
Timo Sirainen <tss@iki.fi>
parents: 576
diff changeset
193 want_gnutls=no
235188ee7a05 Support for OpenSSL.
Timo Sirainen <tss@iki.fi>
parents: 576
diff changeset
194 want_openssl=yes
8517
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
195 elif test x$withval = xyes; then
3004
60a172e62d11 Don't use GNUTLS unless explicitly specified. It's not working currently
Timo Sirainen <tss@iki.fi>
parents: 3002
diff changeset
196 want_gnutls=no
622
235188ee7a05 Support for OpenSSL.
Timo Sirainen <tss@iki.fi>
parents: 576
diff changeset
197 want_openssl=yes
8517
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
198 else
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
199 AC_ERROR([--with-ssl: Invalid value: $withval])
622
235188ee7a05 Support for OpenSSL.
Timo Sirainen <tss@iki.fi>
parents: 576
diff changeset
200 fi, [
3004
60a172e62d11 Don't use GNUTLS unless explicitly specified. It's not working currently
Timo Sirainen <tss@iki.fi>
parents: 3002
diff changeset
201 want_gnutls=no
6974
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
202 want_openssl=auto
622
235188ee7a05 Support for OpenSSL.
Timo Sirainen <tss@iki.fi>
parents: 576
diff changeset
203 ])
244
bf1e284fece2 added --without-gnutls option
Timo Sirainen <tss@iki.fi>
parents: 224
diff changeset
204
657
85a888d2766e Added script to easily generate self-signed certificate.
Timo Sirainen <tss@iki.fi>
parents: 654
diff changeset
205 AC_ARG_WITH(ssldir,
12441
ae5b5961a6a7 configure: Use AS_HELP_STRING() macro.
Timo Sirainen <tss@iki.fi>
parents: 12439
diff changeset
206 AS_HELP_STRING([--with-ssldir=DIR], [SSL base directory for certificates (/etc/ssl)]),
657
85a888d2766e Added script to easily generate self-signed certificate.
Timo Sirainen <tss@iki.fi>
parents: 654
diff changeset
207 ssldir="$withval",
85a888d2766e Added script to easily generate self-signed certificate.
Timo Sirainen <tss@iki.fi>
parents: 654
diff changeset
208 ssldir=/etc/ssl
85a888d2766e Added script to easily generate self-signed certificate.
Timo Sirainen <tss@iki.fi>
parents: 654
diff changeset
209 )
712
385f862a4005 --with-ssldir actually didn't do anything, and the default directory for
Timo Sirainen <tss@iki.fi>
parents: 711
diff changeset
210 AC_SUBST(ssldir)
657
85a888d2766e Added script to easily generate self-signed certificate.
Timo Sirainen <tss@iki.fi>
parents: 654
diff changeset
211
3327
ce0733b39311 Added --with-rundir configure option.
Timo Sirainen <tss@iki.fi>
parents: 3284
diff changeset
212 AC_ARG_WITH(rundir,
12441
ae5b5961a6a7 configure: Use AS_HELP_STRING() macro.
Timo Sirainen <tss@iki.fi>
parents: 12439
diff changeset
213 AS_HELP_STRING([--with-rundir=DIR], [Runtime data directory (LOCALSTATEDIR/run/dovecot)]),
3327
ce0733b39311 Added --with-rundir configure option.
Timo Sirainen <tss@iki.fi>
parents: 3284
diff changeset
214 rundir="$withval",
7914
5061533382be Uppercased PACKAGE_NAME macro and started using it in some places.
Timo Sirainen <tss@iki.fi>
parents: 7902
diff changeset
215 rundir=$localstatedir/run/$PACKAGE
3327
ce0733b39311 Added --with-rundir configure option.
Timo Sirainen <tss@iki.fi>
parents: 3284
diff changeset
216 )
ce0733b39311 Added --with-rundir configure option.
Timo Sirainen <tss@iki.fi>
parents: 3284
diff changeset
217 AC_SUBST(rundir)
ce0733b39311 Added --with-rundir configure option.
Timo Sirainen <tss@iki.fi>
parents: 3284
diff changeset
218
4407
2e4857a2b858 Added --with-statedir configure option which defaults to
Timo Sirainen <tss@iki.fi>
parents: 4387
diff changeset
219 AC_ARG_WITH(statedir,
12441
ae5b5961a6a7 configure: Use AS_HELP_STRING() macro.
Timo Sirainen <tss@iki.fi>
parents: 12439
diff changeset
220 AS_HELP_STRING([--with-statedir=DIR], [Permanent data directory (LOCALSTATEDIR/lib/dovecot)]),
4407
2e4857a2b858 Added --with-statedir configure option which defaults to
Timo Sirainen <tss@iki.fi>
parents: 4387
diff changeset
221 statedir="$withval",
7914
5061533382be Uppercased PACKAGE_NAME macro and started using it in some places.
Timo Sirainen <tss@iki.fi>
parents: 7902
diff changeset
222 statedir=$localstatedir/lib/$PACKAGE
4407
2e4857a2b858 Added --with-statedir configure option which defaults to
Timo Sirainen <tss@iki.fi>
parents: 4387
diff changeset
223 )
2e4857a2b858 Added --with-statedir configure option which defaults to
Timo Sirainen <tss@iki.fi>
parents: 4387
diff changeset
224 AC_SUBST(statedir)
2e4857a2b858 Added --with-statedir configure option which defaults to
Timo Sirainen <tss@iki.fi>
parents: 4387
diff changeset
225
12442
e0b42fcf31a1 configure: --with-systemdsystemunitdir wasn't working right.
Timo Sirainen <tss@iki.fi>
parents: 12441
diff changeset
226 AC_ARG_WITH([systemdsystemunitdir],
e0b42fcf31a1 configure: --with-systemdsystemunitdir wasn't working right.
Timo Sirainen <tss@iki.fi>
parents: 12441
diff changeset
227 AS_HELP_STRING([--with-systemdsystemunitdir=DIR], [Directory for systemd service files (auto=detect)]), [
e0b42fcf31a1 configure: --with-systemdsystemunitdir wasn't working right.
Timo Sirainen <tss@iki.fi>
parents: 12441
diff changeset
228 if test "$withval" = "auto"; then
e0b42fcf31a1 configure: --with-systemdsystemunitdir wasn't working right.
Timo Sirainen <tss@iki.fi>
parents: 12441
diff changeset
229 systemdsystemunitdir=`$PKG_CONFIG --variable=systemdsystemunitdir systemd`
e0b42fcf31a1 configure: --with-systemdsystemunitdir wasn't working right.
Timo Sirainen <tss@iki.fi>
parents: 12441
diff changeset
230 elif test "$withval" != "no"; then
e0b42fcf31a1 configure: --with-systemdsystemunitdir wasn't working right.
Timo Sirainen <tss@iki.fi>
parents: 12441
diff changeset
231 systemdsystemunitdir=$withval
e0b42fcf31a1 configure: --with-systemdsystemunitdir wasn't working right.
Timo Sirainen <tss@iki.fi>
parents: 12441
diff changeset
232 fi
e0b42fcf31a1 configure: --with-systemdsystemunitdir wasn't working right.
Timo Sirainen <tss@iki.fi>
parents: 12441
diff changeset
233 ], [])
e0b42fcf31a1 configure: --with-systemdsystemunitdir wasn't working right.
Timo Sirainen <tss@iki.fi>
parents: 12441
diff changeset
234 if test "$systemdsystemunitdir" != ""; then
e0b42fcf31a1 configure: --with-systemdsystemunitdir wasn't working right.
Timo Sirainen <tss@iki.fi>
parents: 12441
diff changeset
235 AC_SUBST(systemdsystemunitdir)
e0b42fcf31a1 configure: --with-systemdsystemunitdir wasn't working right.
Timo Sirainen <tss@iki.fi>
parents: 12441
diff changeset
236 AC_DEFINE(HAVE_SYSTEMD,, Define if you want to use systemd socket activation)
e0b42fcf31a1 configure: --with-systemdsystemunitdir wasn't working right.
Timo Sirainen <tss@iki.fi>
parents: 12441
diff changeset
237 fi
12443
94c5d2189006 configure: And small fix to previous --with-systemdsystemunitdir fix.
Timo Sirainen <tss@iki.fi>
parents: 12442
diff changeset
238 AM_CONDITIONAL(HAVE_SYSTEMD, test "$systemdsystemunitdir" != "")
12442
e0b42fcf31a1 configure: --with-systemdsystemunitdir wasn't working right.
Timo Sirainen <tss@iki.fi>
parents: 12441
diff changeset
239
1786
49b6103dd2e0 Added support for Boehm GC. However it seems to be crashing for some reason
Timo Sirainen <tss@iki.fi>
parents: 1729
diff changeset
240 AC_ARG_WITH(gc,
12441
ae5b5961a6a7 configure: Use AS_HELP_STRING() macro.
Timo Sirainen <tss@iki.fi>
parents: 12439
diff changeset
241 AS_HELP_STRING([--with-gc], [Use Boehm garbage collector]),
8517
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
242 TEST_WITH(gc, $withval),
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
243 want_gc=no)
1786
49b6103dd2e0 Added support for Boehm GC. However it seems to be crashing for some reason
Timo Sirainen <tss@iki.fi>
parents: 1729
diff changeset
244
1404
54015ae11177 --with-storage=maildir,mbox can now be used to compile in only the wanted
Timo Sirainen <tss@iki.fi>
parents: 1403
diff changeset
245 AC_ARG_WITH(storages,
13880
d4c909d2306f lib-storage: Added initial support for pop3c backend.
Timo Sirainen <tss@iki.fi>
parents: 13875
diff changeset
246 AS_HELP_STRING([--with-storages], [Build with specified mail storage formats (mdbox sdbox maildir mbox cydir imapc pop3c)]), [
8517
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
247 if test "$withval" = "yes" || test "$withval" = "no"; then
4005
450ee12c2e26 Give error if --with-storages or --without-storages is used without
Timo Sirainen <tss@iki.fi>
parents: 3997
diff changeset
248 AC_MSG_ERROR([--with-storages needs storage list as parameter])
450ee12c2e26 Give error if --with-storages or --without-storages is used without
Timo Sirainen <tss@iki.fi>
parents: 3997
diff changeset
249 fi
8398
d331b8fc8ba8 configure: Previous change broke shared storage completely.
Timo Sirainen <tss@iki.fi>
parents: 8392
diff changeset
250 mail_storages="shared `echo "$withval"|sed 's/,/ /g'`" ],
13880
d4c909d2306f lib-storage: Added initial support for pop3c backend.
Timo Sirainen <tss@iki.fi>
parents: 13875
diff changeset
251 mail_storages="shared mdbox sdbox maildir mbox cydir imapc pop3c")
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
252 AC_SUBST(mail_storages)
13699
500bf1444ad6 configure: Don't reorder --with-storages values.
Timo Sirainen <tss@iki.fi>
parents: 13679
diff changeset
253 mail_storages="$mail_storages raw"
500bf1444ad6 configure: Don't reorder --with-storages values.
Timo Sirainen <tss@iki.fi>
parents: 13679
diff changeset
254 # drop duplicates
500bf1444ad6 configure: Don't reorder --with-storages values.
Timo Sirainen <tss@iki.fi>
parents: 13679
diff changeset
255 duplicates=`(for i in $mail_storages; do echo $i; done)|sort|uniq -d|xargs echo`
500bf1444ad6 configure: Don't reorder --with-storages values.
Timo Sirainen <tss@iki.fi>
parents: 13679
diff changeset
256 if test "$duplicates" != ""; then
500bf1444ad6 configure: Don't reorder --with-storages values.
Timo Sirainen <tss@iki.fi>
parents: 13679
diff changeset
257 AC_ERROR([Duplicate --with-storages: $duplicates])
500bf1444ad6 configure: Don't reorder --with-storages values.
Timo Sirainen <tss@iki.fi>
parents: 13679
diff changeset
258 fi
1404
54015ae11177 --with-storage=maildir,mbox can now be used to compile in only the wanted
Timo Sirainen <tss@iki.fi>
parents: 1403
diff changeset
259
12092
711b5f193f04 dovecot.m4: Added --with-moduledir and export dovecotdir
Timo Sirainen <tss@iki.fi>
parents: 12049
diff changeset
260 DC_DOVECOT_MODULEDIR
2070
0c8f884d1648 Added --with-moduledir configure option
Timo Sirainen <tss@iki.fi>
parents: 2036
diff changeset
261
3779
e87a8db60d25 Added --with-docs parameter to specify if documentation should be installed.
Timo Sirainen <tss@iki.fi>
parents: 3762
diff changeset
262 AC_ARG_WITH(docs,
12441
ae5b5961a6a7 configure: Use AS_HELP_STRING() macro.
Timo Sirainen <tss@iki.fi>
parents: 12439
diff changeset
263 AS_HELP_STRING([--with-docs], [Install documentation (default)]),
3779
e87a8db60d25 Added --with-docs parameter to specify if documentation should be installed.
Timo Sirainen <tss@iki.fi>
parents: 3762
diff changeset
264 if test x$withval = xno; then
e87a8db60d25 Added --with-docs parameter to specify if documentation should be installed.
Timo Sirainen <tss@iki.fi>
parents: 3762
diff changeset
265 want_docs=no
e87a8db60d25 Added --with-docs parameter to specify if documentation should be installed.
Timo Sirainen <tss@iki.fi>
parents: 3762
diff changeset
266 else
e87a8db60d25 Added --with-docs parameter to specify if documentation should be installed.
Timo Sirainen <tss@iki.fi>
parents: 3762
diff changeset
267 want_docs=yes
e87a8db60d25 Added --with-docs parameter to specify if documentation should be installed.
Timo Sirainen <tss@iki.fi>
parents: 3762
diff changeset
268 fi,
e87a8db60d25 Added --with-docs parameter to specify if documentation should be installed.
Timo Sirainen <tss@iki.fi>
parents: 3762
diff changeset
269 want_docs=yes)
e87a8db60d25 Added --with-docs parameter to specify if documentation should be installed.
Timo Sirainen <tss@iki.fi>
parents: 3762
diff changeset
270 AM_CONDITIONAL(BUILD_DOCS, test "$want_docs" = "yes")
e87a8db60d25 Added --with-docs parameter to specify if documentation should be installed.
Timo Sirainen <tss@iki.fi>
parents: 3762
diff changeset
271
9158
69aa6e878a59 configure: Removed --with-* parameters for passdbs/userdbs that don't require external libraries.
Timo Sirainen <tss@iki.fi>
parents: 9157
diff changeset
272 dnl always enable all of the passbs and userdbs that don't require extra libs
69aa6e878a59 configure: Removed --with-* parameters for passdbs/userdbs that don't require external libraries.
Timo Sirainen <tss@iki.fi>
parents: 9157
diff changeset
273 want_passwd=yes
69aa6e878a59 configure: Removed --with-* parameters for passdbs/userdbs that don't require external libraries.
Timo Sirainen <tss@iki.fi>
parents: 9157
diff changeset
274 want_passwd_file=yes
69aa6e878a59 configure: Removed --with-* parameters for passdbs/userdbs that don't require external libraries.
Timo Sirainen <tss@iki.fi>
parents: 9157
diff changeset
275 want_checkpassword=yes
69aa6e878a59 configure: Removed --with-* parameters for passdbs/userdbs that don't require external libraries.
Timo Sirainen <tss@iki.fi>
parents: 9157
diff changeset
276 want_prefetch_userdb=yes
69aa6e878a59 configure: Removed --with-* parameters for passdbs/userdbs that don't require external libraries.
Timo Sirainen <tss@iki.fi>
parents: 9157
diff changeset
277
8517
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
278 AC_ISC_POSIX
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
279 AC_PROG_CC
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
280 AC_PROG_CPP
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
281 AC_PROG_CXX # lucene plugin needs this
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
282 AC_HEADER_STDC
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
283 AC_C_INLINE
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
284 AC_PROG_LIBTOOL
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
285 AM_ICONV
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
286
10645
928312d6017c config.h: Added DOVECOT_* macros for PACKAGE_* macros.
Timo Sirainen <tss@iki.fi>
parents: 10619
diff changeset
287 AC_DEFINE_UNQUOTED(DOVECOT_NAME, "$PACKAGE_NAME", Dovecot name)
928312d6017c config.h: Added DOVECOT_* macros for PACKAGE_* macros.
Timo Sirainen <tss@iki.fi>
parents: 10619
diff changeset
288 AC_DEFINE_UNQUOTED(DOVECOT_STRING, "$PACKAGE_STRING", Dovecot string)
928312d6017c config.h: Added DOVECOT_* macros for PACKAGE_* macros.
Timo Sirainen <tss@iki.fi>
parents: 10619
diff changeset
289 AC_DEFINE_UNQUOTED(DOVECOT_VERSION, "$PACKAGE_VERSION", Dovecot version)
928312d6017c config.h: Added DOVECOT_* macros for PACKAGE_* macros.
Timo Sirainen <tss@iki.fi>
parents: 10619
diff changeset
290
8517
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
291 AC_CHECK_HEADERS(strings.h stdint.h unistd.h dirent.h malloc.h inttypes.h \
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
292 sys/uio.h sys/sysmacros.h sys/resource.h sys/select.h libgen.h \
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
293 sys/quota.h sys/fs/ufs_quota.h ufs/ufs/quota.h jfs/quota.h sys/fs/quota_common.h \
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
294 mntent.h sys/mnttab.h sys/event.h sys/time.h sys/mkdev.h linux/dqblk_xfs.h \
9656
dc6d35b51b68 configure: Check sasl.h existence only when using --with-ldap.
Timo Sirainen <tss@iki.fi>
parents: 9655
diff changeset
295 xfs/xqm.h execinfo.h ucontext.h malloc_np.h sys/utsname.h sys/vmount.h \
14233
80688ab1ea3d Extends struct net_unix_cred with pid field and modifies net_getunixcred() to fill it in if possible.
Timo Sirainen <tss@iki.fi>
parents: 14217
diff changeset
296 sys/utsname.h glob.h linux/falloc.h ucred.h sys/ucred.h)
8517
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
297
14101
671b637e20db configure: Avoid some unnecessary warnings with clang.
Timo Sirainen <tss@iki.fi>
parents: 14038
diff changeset
298 dnl * clang check
671b637e20db configure: Avoid some unnecessary warnings with clang.
Timo Sirainen <tss@iki.fi>
parents: 14038
diff changeset
299 have_clang=no
671b637e20db configure: Avoid some unnecessary warnings with clang.
Timo Sirainen <tss@iki.fi>
parents: 14038
diff changeset
300 if $CC -dM -E -x c /dev/null | grep __clang__ > /dev/null 2>&1; then
671b637e20db configure: Avoid some unnecessary warnings with clang.
Timo Sirainen <tss@iki.fi>
parents: 14038
diff changeset
301 have_clang=yes
671b637e20db configure: Avoid some unnecessary warnings with clang.
Timo Sirainen <tss@iki.fi>
parents: 14038
diff changeset
302 fi
671b637e20db configure: Avoid some unnecessary warnings with clang.
Timo Sirainen <tss@iki.fi>
parents: 14038
diff changeset
303
691
567f5e66c7b8 We compile now if dev_t is a structure (eg. glibc+tcc).
Timo Sirainen <tss@iki.fi>
parents: 679
diff changeset
304 dnl * gcc specific options
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
305 if test "x$ac_cv_c_compiler_gnu" = "xyes"; then
4826
53ff1a59cdd5 Enable -Wstrict-aliasing=2 with gcc 4.
Timo Sirainen <tss@iki.fi>
parents: 4808
diff changeset
306 # -Wcast-qual -Wcast-align -Wconversion -Wunreachable-code # too many warnings
850
a6f53dbe803f Enable more warnings with gcc
Timo Sirainen <tss@iki.fi>
parents: 843
diff changeset
307 # -Wstrict-prototypes -Wredundant-decls # may give warnings in some systems
1043
cacabd33c68a Initial code for POP3 server. RETR isn't working right yet, there's some
Timo Sirainen <tss@iki.fi>
parents: 1022
diff changeset
308 # -Wmissing-format-attribute -Wmissing-noreturn -Wwrite-strings # a couple of warnings
4022
2f26567685ff Removed -Wstrict-aliasing=2 since it gives errors with older gccs
Timo Sirainen <tss@iki.fi>
parents: 4018
diff changeset
309 CFLAGS="$CFLAGS -Wall -W -Wmissing-prototypes -Wmissing-declarations -Wpointer-arith -Wchar-subscripts -Wformat=2 -Wbad-function-cast"
3091
0704b595c873 Give -std=gnu99 option to gcc.
Timo Sirainen <tss@iki.fi>
parents: 3062
diff changeset
310
14101
671b637e20db configure: Avoid some unnecessary warnings with clang.
Timo Sirainen <tss@iki.fi>
parents: 14038
diff changeset
311 if test "$have_clang" != "yes"; then
671b637e20db configure: Avoid some unnecessary warnings with clang.
Timo Sirainen <tss@iki.fi>
parents: 14038
diff changeset
312 # This is simply to avoid warning when building strftime() wrappers..
671b637e20db configure: Avoid some unnecessary warnings with clang.
Timo Sirainen <tss@iki.fi>
parents: 14038
diff changeset
313 CFLAGS="$CFLAGS -fno-builtin-strftime"
671b637e20db configure: Avoid some unnecessary warnings with clang.
Timo Sirainen <tss@iki.fi>
parents: 14038
diff changeset
314 fi
13930
e0ff21d73630 configure: Add -fno-builtin-strftime flag with gcc to avoid warning.
Timo Sirainen <tss@iki.fi>
parents: 13907
diff changeset
315
4826
53ff1a59cdd5 Enable -Wstrict-aliasing=2 with gcc 4.
Timo Sirainen <tss@iki.fi>
parents: 4808
diff changeset
316 AC_TRY_COMPILE([
53ff1a59cdd5 Enable -Wstrict-aliasing=2 with gcc 4.
Timo Sirainen <tss@iki.fi>
parents: 4808
diff changeset
317 #if __GNUC__ < 4
53ff1a59cdd5 Enable -Wstrict-aliasing=2 with gcc 4.
Timo Sirainen <tss@iki.fi>
parents: 4808
diff changeset
318 # error old gcc
53ff1a59cdd5 Enable -Wstrict-aliasing=2 with gcc 4.
Timo Sirainen <tss@iki.fi>
parents: 4808
diff changeset
319 #endif
53ff1a59cdd5 Enable -Wstrict-aliasing=2 with gcc 4.
Timo Sirainen <tss@iki.fi>
parents: 4808
diff changeset
320 ],,[
53ff1a59cdd5 Enable -Wstrict-aliasing=2 with gcc 4.
Timo Sirainen <tss@iki.fi>
parents: 4808
diff changeset
321 # gcc4
53ff1a59cdd5 Enable -Wstrict-aliasing=2 with gcc 4.
Timo Sirainen <tss@iki.fi>
parents: 4808
diff changeset
322 CFLAGS="$CFLAGS -Wstrict-aliasing=2"
53ff1a59cdd5 Enable -Wstrict-aliasing=2 with gcc 4.
Timo Sirainen <tss@iki.fi>
parents: 4808
diff changeset
323 ])
53ff1a59cdd5 Enable -Wstrict-aliasing=2 with gcc 4.
Timo Sirainen <tss@iki.fi>
parents: 4808
diff changeset
324
3097
3ba362513202 Don't use -std=gnu99 if gcc doesn't support it.
Timo Sirainen <tss@iki.fi>
parents: 3091
diff changeset
325 # Use std=gnu99 if we have new enough gcc
3ba362513202 Don't use -std=gnu99 if gcc doesn't support it.
Timo Sirainen <tss@iki.fi>
parents: 3091
diff changeset
326 old_cflags=$CFLAGS
3ba362513202 Don't use -std=gnu99 if gcc doesn't support it.
Timo Sirainen <tss@iki.fi>
parents: 3091
diff changeset
327 CFLAGS="-std=gnu99"
3ba362513202 Don't use -std=gnu99 if gcc doesn't support it.
Timo Sirainen <tss@iki.fi>
parents: 3091
diff changeset
328 AC_TRY_COMPILE([
3ba362513202 Don't use -std=gnu99 if gcc doesn't support it.
Timo Sirainen <tss@iki.fi>
parents: 3091
diff changeset
329 ],, [
3ba362513202 Don't use -std=gnu99 if gcc doesn't support it.
Timo Sirainen <tss@iki.fi>
parents: 3091
diff changeset
330 CFLAGS="$CFLAGS $old_cflags"
3ba362513202 Don't use -std=gnu99 if gcc doesn't support it.
Timo Sirainen <tss@iki.fi>
parents: 3091
diff changeset
331 ], [
3ba362513202 Don't use -std=gnu99 if gcc doesn't support it.
Timo Sirainen <tss@iki.fi>
parents: 3091
diff changeset
332 CFLAGS="$old_cflags"
3ba362513202 Don't use -std=gnu99 if gcc doesn't support it.
Timo Sirainen <tss@iki.fi>
parents: 3091
diff changeset
333 ])
691
567f5e66c7b8 We compile now if dev_t is a structure (eg. glibc+tcc).
Timo Sirainen <tss@iki.fi>
parents: 679
diff changeset
334 fi
14101
671b637e20db configure: Avoid some unnecessary warnings with clang.
Timo Sirainen <tss@iki.fi>
parents: 14038
diff changeset
335 if test "$have_clang" = "yes"; then
13866
c682a5bf3de7 --enable-devel-checks: Use -fcatch-undefined-behavior -ftrapv with clang.
Timo Sirainen <tss@iki.fi>
parents: 13794
diff changeset
336 # clang specific options
c682a5bf3de7 --enable-devel-checks: Use -fcatch-undefined-behavior -ftrapv with clang.
Timo Sirainen <tss@iki.fi>
parents: 13794
diff changeset
337 if test "$want_devel_checks" = "yes"; then
c682a5bf3de7 --enable-devel-checks: Use -fcatch-undefined-behavior -ftrapv with clang.
Timo Sirainen <tss@iki.fi>
parents: 13794
diff changeset
338 CFLAGS="$CFLAGS -fcatch-undefined-behavior -ftrapv"
c682a5bf3de7 --enable-devel-checks: Use -fcatch-undefined-behavior -ftrapv with clang.
Timo Sirainen <tss@iki.fi>
parents: 13794
diff changeset
339 fi
c682a5bf3de7 --enable-devel-checks: Use -fcatch-undefined-behavior -ftrapv with clang.
Timo Sirainen <tss@iki.fi>
parents: 13794
diff changeset
340 fi
691
567f5e66c7b8 We compile now if dev_t is a structure (eg. glibc+tcc).
Timo Sirainen <tss@iki.fi>
parents: 679
diff changeset
341
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
342 dnl **
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
343 dnl ** just some generic stuff...
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
344 dnl **
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
345
5690
c1f51c3510ca Simplify some checks with AC_SEARCH_LIBS()
Timo Sirainen <tss@iki.fi>
parents: 5681
diff changeset
346 AC_SEARCH_LIBS(socket, socket)
c1f51c3510ca Simplify some checks with AC_SEARCH_LIBS()
Timo Sirainen <tss@iki.fi>
parents: 5681
diff changeset
347 AC_SEARCH_LIBS(inet_addr, nsl)
c1f51c3510ca Simplify some checks with AC_SEARCH_LIBS()
Timo Sirainen <tss@iki.fi>
parents: 5681
diff changeset
348 AC_SEARCH_LIBS(fdatasync, rt, [
c1f51c3510ca Simplify some checks with AC_SEARCH_LIBS()
Timo Sirainen <tss@iki.fi>
parents: 5681
diff changeset
349 AC_DEFINE(HAVE_FDATASYNC,, Define if you have fdatasync())
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
350 ])
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
351
9538
b20513ab8f5a Added --without-libcap configure option.
Daniel Mierswa <impulze@impulze.org>
parents: 9410
diff changeset
352 if test $want_libcap != no; then
b20513ab8f5a Added --without-libcap configure option.
Daniel Mierswa <impulze@impulze.org>
parents: 9410
diff changeset
353 AC_CHECK_LIB(cap, cap_init, [
b20513ab8f5a Added --without-libcap configure option.
Daniel Mierswa <impulze@impulze.org>
parents: 9410
diff changeset
354 AC_DEFINE(HAVE_LIBCAP,, libcap is installed for cap_init())
b20513ab8f5a Added --without-libcap configure option.
Daniel Mierswa <impulze@impulze.org>
parents: 9410
diff changeset
355 LIBCAP="-lcap"
b20513ab8f5a Added --without-libcap configure option.
Daniel Mierswa <impulze@impulze.org>
parents: 9410
diff changeset
356 AC_SUBST(LIBCAP)
b20513ab8f5a Added --without-libcap configure option.
Daniel Mierswa <impulze@impulze.org>
parents: 9410
diff changeset
357 ], [
b20513ab8f5a Added --without-libcap configure option.
Daniel Mierswa <impulze@impulze.org>
parents: 9410
diff changeset
358 if test "$want_libcap" = "yes"; then
b20513ab8f5a Added --without-libcap configure option.
Daniel Mierswa <impulze@impulze.org>
parents: 9410
diff changeset
359 AC_ERROR([Can't build with libcap support: libcap not found])
b20513ab8f5a Added --without-libcap configure option.
Daniel Mierswa <impulze@impulze.org>
parents: 9410
diff changeset
360 fi
b20513ab8f5a Added --without-libcap configure option.
Daniel Mierswa <impulze@impulze.org>
parents: 9410
diff changeset
361 ])
b20513ab8f5a Added --without-libcap configure option.
Daniel Mierswa <impulze@impulze.org>
parents: 9410
diff changeset
362 fi
5201
8920e744dac4 Drop privileges if libcap is found. Patch by David (lists edeca.net).
Timo Sirainen <tss@iki.fi>
parents: 5197
diff changeset
363
10647
51a978045f47 Added support for tcpwrappers and potentially other login access checks.
Timo Sirainen <tss@iki.fi>
parents: 10645
diff changeset
364 have_libwrap=no
51a978045f47 Added support for tcpwrappers and potentially other login access checks.
Timo Sirainen <tss@iki.fi>
parents: 10645
diff changeset
365 if test $want_libwrap != no; then
51a978045f47 Added support for tcpwrappers and potentially other login access checks.
Timo Sirainen <tss@iki.fi>
parents: 10645
diff changeset
366 AC_CHECK_HEADER(tcpd.h, [
10700
b14e694fc8b4 configure: libwrap detection cleared $LIBS
Timo Sirainen <tss@iki.fi>
parents: 10699
diff changeset
367 old_LIBS=$LIBS
10980
5b0a88cb9a12 configure: Fixed libwrap checking in some systems.
Timo Sirainen <tss@iki.fi>
parents: 10968
diff changeset
368
5b0a88cb9a12 configure: Fixed libwrap checking in some systems.
Timo Sirainen <tss@iki.fi>
parents: 10968
diff changeset
369 AC_CACHE_CHECK([whether we have libwrap],i_cv_have_libwrap,[
5b0a88cb9a12 configure: Fixed libwrap checking in some systems.
Timo Sirainen <tss@iki.fi>
parents: 10968
diff changeset
370 AC_TRY_COMPILE([
5b0a88cb9a12 configure: Fixed libwrap checking in some systems.
Timo Sirainen <tss@iki.fi>
parents: 10968
diff changeset
371 #include <tcpd.h>
5b0a88cb9a12 configure: Fixed libwrap checking in some systems.
Timo Sirainen <tss@iki.fi>
parents: 10968
diff changeset
372 int allow_severity = 0;
5b0a88cb9a12 configure: Fixed libwrap checking in some systems.
Timo Sirainen <tss@iki.fi>
parents: 10968
diff changeset
373 int deny_severity = 0;
5b0a88cb9a12 configure: Fixed libwrap checking in some systems.
Timo Sirainen <tss@iki.fi>
parents: 10968
diff changeset
374 ], [
5b0a88cb9a12 configure: Fixed libwrap checking in some systems.
Timo Sirainen <tss@iki.fi>
parents: 10968
diff changeset
375 request_init((void *)0);
5b0a88cb9a12 configure: Fixed libwrap checking in some systems.
Timo Sirainen <tss@iki.fi>
parents: 10968
diff changeset
376 ], [
5b0a88cb9a12 configure: Fixed libwrap checking in some systems.
Timo Sirainen <tss@iki.fi>
parents: 10968
diff changeset
377 i_cv_have_libwrap=yes
5b0a88cb9a12 configure: Fixed libwrap checking in some systems.
Timo Sirainen <tss@iki.fi>
parents: 10968
diff changeset
378 ], [
5b0a88cb9a12 configure: Fixed libwrap checking in some systems.
Timo Sirainen <tss@iki.fi>
parents: 10968
diff changeset
379 i_cv_have_libwrap=no
5b0a88cb9a12 configure: Fixed libwrap checking in some systems.
Timo Sirainen <tss@iki.fi>
parents: 10968
diff changeset
380 ])
5b0a88cb9a12 configure: Fixed libwrap checking in some systems.
Timo Sirainen <tss@iki.fi>
parents: 10968
diff changeset
381 ])
5b0a88cb9a12 configure: Fixed libwrap checking in some systems.
Timo Sirainen <tss@iki.fi>
parents: 10968
diff changeset
382 if test $i_cv_have_libwrap = yes; then
10647
51a978045f47 Added support for tcpwrappers and potentially other login access checks.
Timo Sirainen <tss@iki.fi>
parents: 10645
diff changeset
383 AC_DEFINE(HAVE_LIBWRAP,, Define if you have libwrap)
51a978045f47 Added support for tcpwrappers and potentially other login access checks.
Timo Sirainen <tss@iki.fi>
parents: 10645
diff changeset
384 LIBWRAP_LIBS=-lwrap
51a978045f47 Added support for tcpwrappers and potentially other login access checks.
Timo Sirainen <tss@iki.fi>
parents: 10645
diff changeset
385 AC_SUBST(LIBWRAP_LIBS)
51a978045f47 Added support for tcpwrappers and potentially other login access checks.
Timo Sirainen <tss@iki.fi>
parents: 10645
diff changeset
386 have_libwrap=yes
10980
5b0a88cb9a12 configure: Fixed libwrap checking in some systems.
Timo Sirainen <tss@iki.fi>
parents: 10968
diff changeset
387 else
10647
51a978045f47 Added support for tcpwrappers and potentially other login access checks.
Timo Sirainen <tss@iki.fi>
parents: 10645
diff changeset
388 if test "$want_libwrap" = "yes"; then
51a978045f47 Added support for tcpwrappers and potentially other login access checks.
Timo Sirainen <tss@iki.fi>
parents: 10645
diff changeset
389 AC_ERROR([Can't build with libwrap support: libwrap not found])
51a978045f47 Added support for tcpwrappers and potentially other login access checks.
Timo Sirainen <tss@iki.fi>
parents: 10645
diff changeset
390 fi
10980
5b0a88cb9a12 configure: Fixed libwrap checking in some systems.
Timo Sirainen <tss@iki.fi>
parents: 10968
diff changeset
391 fi
10647
51a978045f47 Added support for tcpwrappers and potentially other login access checks.
Timo Sirainen <tss@iki.fi>
parents: 10645
diff changeset
392 LIBS=$old_LIBS
51a978045f47 Added support for tcpwrappers and potentially other login access checks.
Timo Sirainen <tss@iki.fi>
parents: 10645
diff changeset
393 ], [
51a978045f47 Added support for tcpwrappers and potentially other login access checks.
Timo Sirainen <tss@iki.fi>
parents: 10645
diff changeset
394 if test "$want_libwrap" = "yes"; then
51a978045f47 Added support for tcpwrappers and potentially other login access checks.
Timo Sirainen <tss@iki.fi>
parents: 10645
diff changeset
395 AC_ERROR([Can't build with libwrap support: tcpd.h not found])
51a978045f47 Added support for tcpwrappers and potentially other login access checks.
Timo Sirainen <tss@iki.fi>
parents: 10645
diff changeset
396 fi
51a978045f47 Added support for tcpwrappers and potentially other login access checks.
Timo Sirainen <tss@iki.fi>
parents: 10645
diff changeset
397 ])
51a978045f47 Added support for tcpwrappers and potentially other login access checks.
Timo Sirainen <tss@iki.fi>
parents: 10645
diff changeset
398 fi
51a978045f47 Added support for tcpwrappers and potentially other login access checks.
Timo Sirainen <tss@iki.fi>
parents: 10645
diff changeset
399 AM_CONDITIONAL(TCPWRAPPERS, test "$have_libwrap" = "yes")
51a978045f47 Added support for tcpwrappers and potentially other login access checks.
Timo Sirainen <tss@iki.fi>
parents: 10645
diff changeset
400
7917
ca2ff54ee9b4 Added support for IMAP ID extension.
Timo Sirainen <tss@iki.fi>
parents: 7914
diff changeset
401 AC_DEFINE(PACKAGE_WEBPAGE, "http://www.dovecot.org/", Support URL)
ca2ff54ee9b4 Added support for IMAP ID extension.
Timo Sirainen <tss@iki.fi>
parents: 7914
diff changeset
402
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
403 dnl * after -lsocket and -lnsl tests, inet_aton() may be in them
2103
879b0b9ed5d4 Separate mbox_locks/mbox_read_dotlock to mbox_read_locks and
Timo Sirainen <tss@iki.fi>
parents: 2080
diff changeset
404 AC_CHECK_FUNCS(fcntl flock lockf inet_aton sigaction getpagesize madvise \
8600
7c12e20f1eee env_remove(): Implement a fallback method if unsetenv() doesn't exist.
Timo Sirainen <tss@iki.fi>
parents: 8578
diff changeset
405 strcasecmp stricmp vsyslog writev pread uname unsetenv \
3237
2f57438d9542 Added setegid() emulation for HP-UX.
Timo Sirainen <tss@iki.fi>
parents: 3236
diff changeset
406 setrlimit setproctitle seteuid setreuid setegid setresgid \
14038
4b783711a22e configure: Added getmntinfo() check for BSD mountpoint iteration.
Timo Sirainen <tss@iki.fi>
parents: 13994
diff changeset
407 strtoull strtoll strtouq strtoq getmntinfo \
7847
35877d1131db Added more fallbacks if strtoll() or strtoull() isn't implemented
Timo Sirainen <tss@iki.fi>
parents: 7844
diff changeset
408 setpriority quotactl getmntent kqueue kevent backtrace_symbols \
12874
0461e23ae57c Search supports now prefetching data for returned mails. Dropped imapc's own prefetching.
Timo Sirainen <tss@iki.fi>
parents: 12860
diff changeset
409 walkcontext dirfd clearenv malloc_usable_size glob fallocate \
12887
352999078d83 Added net_getunixcred() to get UNIX socket peer process's UID and GID.
Timo Sirainen <tss@iki.fi>
parents: 12876
diff changeset
410 posix_fadvise getpeereid getpeerucred)
9655
cef143e8719d configure: Use -lrt for clock_gettime() if necessary.
Timo Sirainen <tss@iki.fi>
parents: 9654
diff changeset
411
14233
80688ab1ea3d Extends struct net_unix_cred with pid field and modifies net_getunixcred() to fill it in if possible.
Timo Sirainen <tss@iki.fi>
parents: 14217
diff changeset
412 AC_CHECK_TYPES([struct sockpeercred])
80688ab1ea3d Extends struct net_unix_cred with pid field and modifies net_getunixcred() to fill it in if possible.
Timo Sirainen <tss@iki.fi>
parents: 14217
diff changeset
413
9655
cef143e8719d configure: Use -lrt for clock_gettime() if necessary.
Timo Sirainen <tss@iki.fi>
parents: 9654
diff changeset
414 AC_CHECK_LIB(rt, clock_gettime, [
cef143e8719d configure: Use -lrt for clock_gettime() if necessary.
Timo Sirainen <tss@iki.fi>
parents: 9654
diff changeset
415 AC_DEFINE(HAVE_CLOCK_GETTIME,, Define if you have the clock_gettime function)
9677
00399010c88a configure: clock_gettime()'s -lrt adding dropped everything else from $LIBS.
Timo Sirainen <tss@iki.fi>
parents: 9669
diff changeset
416 LIBS="$LIBS -lrt"
9655
cef143e8719d configure: Use -lrt for clock_gettime() if necessary.
Timo Sirainen <tss@iki.fi>
parents: 9654
diff changeset
417 ], [
cef143e8719d configure: Use -lrt for clock_gettime() if necessary.
Timo Sirainen <tss@iki.fi>
parents: 9654
diff changeset
418 # OpenBSD
cef143e8719d configure: Use -lrt for clock_gettime() if necessary.
Timo Sirainen <tss@iki.fi>
parents: 9654
diff changeset
419 AC_CHECK_FUNCS(clock_gettime)
cef143e8719d configure: Use -lrt for clock_gettime() if necessary.
Timo Sirainen <tss@iki.fi>
parents: 9654
diff changeset
420 ])
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
421
7889
ef8af0eb161a Check strtoimax() and strtoumax() with inttypes.h included. They won't be
Timo Sirainen <tss@iki.fi>
parents: 7869
diff changeset
422 dnl strtoimax and strtoumax are macros in HP-UX, so inttypes.h must be included
8601
da02a1d15783 configure: Test strtoumax() and strtoimax() by linking instead of just compiling (Tru64 fix).
Timo Sirainen <tss@iki.fi>
parents: 8600
diff changeset
423 dnl Link instead of just compiling since there's something wrong with Tru64
10014
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
424 AC_CACHE_CHECK([for strtoimax],i_cv_have_strtoimax,[
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
425 AC_TRY_LINK([
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
426 #include <inttypes.h>
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
427 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
428 strtoimax(0, 0, 0);
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
429 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
430 i_cv_have_strtoimax=yes
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
431 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
432 i_cv_have_strtoimax=no
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
433 ])
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
434 ])
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
435 if test $i_cv_have_strtoimax = yes; then
7889
ef8af0eb161a Check strtoimax() and strtoumax() with inttypes.h included. They won't be
Timo Sirainen <tss@iki.fi>
parents: 7869
diff changeset
436 AC_DEFINE(HAVE_STRTOIMAX,, Define if you have strtoimax function)
10014
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
437 fi
7889
ef8af0eb161a Check strtoimax() and strtoumax() with inttypes.h included. They won't be
Timo Sirainen <tss@iki.fi>
parents: 7869
diff changeset
438
10014
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
439 AC_CACHE_CHECK([for strtoumax],i_cv_have_strtoumax,[
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
440 AC_TRY_LINK([
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
441 #include <inttypes.h>
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
442 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
443 strtoumax(0, 0, 0);
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
444 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
445 i_cv_have_strtoumax=yes
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
446 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
447 i_cv_have_strtoumax=no
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
448 ])
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
449 ])
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
450 if test $i_cv_have_strtoumax = yes; then
7889
ef8af0eb161a Check strtoimax() and strtoumax() with inttypes.h included. They won't be
Timo Sirainen <tss@iki.fi>
parents: 7869
diff changeset
451 AC_DEFINE(HAVE_STRTOUMAX,, Define if you have strtoumax function)
10014
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
452 fi
7889
ef8af0eb161a Check strtoimax() and strtoumax() with inttypes.h included. They won't be
Timo Sirainen <tss@iki.fi>
parents: 7869
diff changeset
453
2569
554f1324a435 Added epoll support if --with-ioloop=epoll is given. Patch by Andrey Panin.
Timo Sirainen <tss@iki.fi>
parents: 2538
diff changeset
454 dnl * I/O loop function
554f1324a435 Added epoll support if --with-ioloop=epoll is given. Patch by Andrey Panin.
Timo Sirainen <tss@iki.fi>
parents: 2538
diff changeset
455 have_ioloop=no
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
456
4482
f60b07bd5fa7 --with-ioloop=auto changed to --with-ioloop=best
Timo Sirainen <tss@iki.fi>
parents: 4478
diff changeset
457 if test "$ioloop" = "best" || test "$ioloop" = "epoll"; then
7555
47c5e52c1181 Prefix AC_CACHE_CHECK variables with i_cv_.
Timo Sirainen <tss@iki.fi>
parents: 7554
diff changeset
458 AC_CACHE_CHECK([whether we can use epoll],i_cv_epoll_works,[
5165
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
459 AC_TRY_RUN([
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
460 #include <sys/epoll.h>
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
461
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
462 int main()
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
463 {
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
464 return epoll_create(5) < 1;
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
465 }
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
466 ], [
7555
47c5e52c1181 Prefix AC_CACHE_CHECK variables with i_cv_.
Timo Sirainen <tss@iki.fi>
parents: 7554
diff changeset
467 i_cv_epoll_works=yes
5165
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
468 ], [
7555
47c5e52c1181 Prefix AC_CACHE_CHECK variables with i_cv_.
Timo Sirainen <tss@iki.fi>
parents: 7554
diff changeset
469 i_cv_epoll_works=no
5165
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
470 ])
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
471 ])
7555
47c5e52c1181 Prefix AC_CACHE_CHECK variables with i_cv_.
Timo Sirainen <tss@iki.fi>
parents: 7554
diff changeset
472 if test $i_cv_epoll_works = yes; then
2569
554f1324a435 Added epoll support if --with-ioloop=epoll is given. Patch by Andrey Panin.
Timo Sirainen <tss@iki.fi>
parents: 2538
diff changeset
473 AC_DEFINE(IOLOOP_EPOLL,, Implement I/O loop with Linux 2.6 epoll())
554f1324a435 Added epoll support if --with-ioloop=epoll is given. Patch by Andrey Panin.
Timo Sirainen <tss@iki.fi>
parents: 2538
diff changeset
474 have_ioloop=yes
4386
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
475 ioloop=epoll
5165
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
476 else
4478
4b01707d6cbe Don't use epoll/kqueue by default unless --with-ioloop=auto is given.
Timo Sirainen <tss@iki.fi>
parents: 4443
diff changeset
477 if test "$ioloop" = "epoll" ; then
4b01707d6cbe Don't use epoll/kqueue by default unless --with-ioloop=auto is given.
Timo Sirainen <tss@iki.fi>
parents: 4443
diff changeset
478 AC_MSG_ERROR([epoll ioloop requested but epoll_create() is not available])
4386
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
479 fi
5165
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
480 fi
2569
554f1324a435 Added epoll support if --with-ioloop=epoll is given. Patch by Andrey Panin.
Timo Sirainen <tss@iki.fi>
parents: 2538
diff changeset
481 fi
554f1324a435 Added epoll support if --with-ioloop=epoll is given. Patch by Andrey Panin.
Timo Sirainen <tss@iki.fi>
parents: 2538
diff changeset
482
4482
f60b07bd5fa7 --with-ioloop=auto changed to --with-ioloop=best
Timo Sirainen <tss@iki.fi>
parents: 4478
diff changeset
483 if test "$ioloop" = "best" || test "$ioloop" = "kqueue"; then
4433
Timo Sirainen <tss@iki.fi>
parents: 4426
diff changeset
484 if test "$ac_cv_func_kqueue" = yes && test "$ac_cv_func_kevent" = yes; then
4386
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
485 AC_DEFINE(IOLOOP_KQUEUE,, [Implement I/O loop with BSD kqueue()])
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
486 ioloop=kqueue
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
487 have_ioloop=yes
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
488 elif test "$ioloop" = "kqueue"; then
4478
4b01707d6cbe Don't use epoll/kqueue by default unless --with-ioloop=auto is given.
Timo Sirainen <tss@iki.fi>
parents: 4443
diff changeset
489 AC_MSG_ERROR([kqueue ioloop requested but kqueue() is not available])
4386
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
490 fi
3749
194295062e5e Added kqueue support. Patch by Vaclav Haisman.
Timo Sirainen <tss@iki.fi>
parents: 3745
diff changeset
491 fi
194295062e5e Added kqueue support. Patch by Vaclav Haisman.
Timo Sirainen <tss@iki.fi>
parents: 3745
diff changeset
492
4482
f60b07bd5fa7 --with-ioloop=auto changed to --with-ioloop=best
Timo Sirainen <tss@iki.fi>
parents: 4478
diff changeset
493 if test "$ioloop" = "best" || test "$ioloop" = "poll"; then
2569
554f1324a435 Added epoll support if --with-ioloop=epoll is given. Patch by Andrey Panin.
Timo Sirainen <tss@iki.fi>
parents: 2538
diff changeset
494 AC_CHECK_FUNC(poll, [
554f1324a435 Added epoll support if --with-ioloop=epoll is given. Patch by Andrey Panin.
Timo Sirainen <tss@iki.fi>
parents: 2538
diff changeset
495 AC_DEFINE(IOLOOP_POLL,, Implement I/O loop with poll())
554f1324a435 Added epoll support if --with-ioloop=epoll is given. Patch by Andrey Panin.
Timo Sirainen <tss@iki.fi>
parents: 2538
diff changeset
496 ioloop=poll
554f1324a435 Added epoll support if --with-ioloop=epoll is given. Patch by Andrey Panin.
Timo Sirainen <tss@iki.fi>
parents: 2538
diff changeset
497 have_ioloop=yes
554f1324a435 Added epoll support if --with-ioloop=epoll is given. Patch by Andrey Panin.
Timo Sirainen <tss@iki.fi>
parents: 2538
diff changeset
498 ])
554f1324a435 Added epoll support if --with-ioloop=epoll is given. Patch by Andrey Panin.
Timo Sirainen <tss@iki.fi>
parents: 2538
diff changeset
499 fi
554f1324a435 Added epoll support if --with-ioloop=epoll is given. Patch by Andrey Panin.
Timo Sirainen <tss@iki.fi>
parents: 2538
diff changeset
500
554f1324a435 Added epoll support if --with-ioloop=epoll is given. Patch by Andrey Panin.
Timo Sirainen <tss@iki.fi>
parents: 2538
diff changeset
501 if test "$have_ioloop" = "no"; then
554f1324a435 Added epoll support if --with-ioloop=epoll is given. Patch by Andrey Panin.
Timo Sirainen <tss@iki.fi>
parents: 2538
diff changeset
502 AC_DEFINE(IOLOOP_SELECT,, Implement I/O loop with select())
554f1324a435 Added epoll support if --with-ioloop=epoll is given. Patch by Andrey Panin.
Timo Sirainen <tss@iki.fi>
parents: 2538
diff changeset
503 ioloop="select"
554f1324a435 Added epoll support if --with-ioloop=epoll is given. Patch by Andrey Panin.
Timo Sirainen <tss@iki.fi>
parents: 2538
diff changeset
504 fi
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
505
3745
840cc63e439b Don't allow giving invalid notify methods in --with-notify
Timo Sirainen <tss@iki.fi>
parents: 3744
diff changeset
506 have_notify=none
3482
465c465c66be Added inotify patch by Johannes Berg and did some restructuring to
Timo Sirainen <tss@iki.fi>
parents: 3452
diff changeset
507
4386
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
508 if test "$notify" = "" || test "$notify" = "inotify" ; then
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
509 dnl * inotify?
7555
47c5e52c1181 Prefix AC_CACHE_CHECK variables with i_cv_.
Timo Sirainen <tss@iki.fi>
parents: 7554
diff changeset
510 AC_CACHE_CHECK([whether we can use inotify],i_cv_inotify_works,[
5165
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
511 AC_TRY_RUN([
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
512 #define _GNU_SOURCE
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
513 #include <sys/ioctl.h>
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
514 #include <fcntl.h>
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
515 #include <sys/inotify.h>
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
516 #include <stdio.h>
4386
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
517
5165
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
518 int main()
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
519 {
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
520 int wd, fd;
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
521 char * fn = "/tmp";
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
522
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
523 fd = inotify_init ();
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
524 if (fd < 0)
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
525 {
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
526 perror ("inotify_init");
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
527 return 1;
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
528 }
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
529
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
530 wd = inotify_add_watch (fd, fn, IN_ALL_EVENTS);
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
531
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
532 if (wd < 0)
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
533 {
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
534 perror ("inotify_add_watch");
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
535 return 2;
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
536 }
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
537
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
538 inotify_rm_watch (fd, wd);
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
539
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
540 close (fd);
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
541 return 0;
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
542 }
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
543 ], [
7555
47c5e52c1181 Prefix AC_CACHE_CHECK variables with i_cv_.
Timo Sirainen <tss@iki.fi>
parents: 7554
diff changeset
544 i_cv_inotify_works=yes
5165
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
545 ], [
7555
47c5e52c1181 Prefix AC_CACHE_CHECK variables with i_cv_.
Timo Sirainen <tss@iki.fi>
parents: 7554
diff changeset
546 i_cv_inotify_works=no
5165
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
547 ])
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
548 ])
7555
47c5e52c1181 Prefix AC_CACHE_CHECK variables with i_cv_.
Timo Sirainen <tss@iki.fi>
parents: 7554
diff changeset
549 if test $i_cv_inotify_works = yes; then
4386
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
550 have_notify=inotify
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
551 notify=inotify
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
552 AC_DEFINE(IOLOOP_NOTIFY_INOTIFY,, Use Linux inotify)
5165
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
553 else
4386
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
554 if test "$notify" = "inotify"; then
4478
4b01707d6cbe Don't use epoll/kqueue by default unless --with-ioloop=auto is given.
Timo Sirainen <tss@iki.fi>
parents: 4443
diff changeset
555 AC_MSG_ERROR([inotify requested but not available])
4423
26d18749f718 Fixes to io notify detection. Patch by Marcus Rueckert
Timo Sirainen <tss@iki.fi>
parents: 4422
diff changeset
556 notify=""
4386
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
557 fi
5165
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
558 fi
4386
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
559 fi
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
560
4572
046b985ed767 Use notify=kqueue automatically only if ioloop=kqueue.
Timo Sirainen <tss@iki.fi>
parents: 4571
diff changeset
561 if (test "$notify" = "" && test "$ioloop" = kqueue) || test "$notify" = "kqueue"; then
4386
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
562 dnl * BSD kqueue() notify
10014
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
563 AC_MSG_CHECKING([whether we can use BSD kqueue() notify])
4442
9eee24bf2960 Fix kqueue notify checking.
Timo Sirainen <tss@iki.fi>
parents: 4433
diff changeset
564 if test "$ac_cv_func_kqueue" = yes && test "$ac_cv_func_kevent" = yes ; then
4386
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
565 have_notify=kqueue
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
566 notify=kqueue
4423
26d18749f718 Fixes to io notify detection. Patch by Marcus Rueckert
Timo Sirainen <tss@iki.fi>
parents: 4422
diff changeset
567 AC_MSG_RESULT("yes")
4386
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
568 AC_DEFINE(IOLOOP_NOTIFY_KQUEUE,,
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
569 Use BSD kqueue directory changes notificaton)
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
570 else
4423
26d18749f718 Fixes to io notify detection. Patch by Marcus Rueckert
Timo Sirainen <tss@iki.fi>
parents: 4422
diff changeset
571 AC_MSG_RESULT("no")
10014
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
572 if test "$notify" = "kqueue" ; then
4478
4b01707d6cbe Don't use epoll/kqueue by default unless --with-ioloop=auto is given.
Timo Sirainen <tss@iki.fi>
parents: 4443
diff changeset
573 AC_MSG_ERROR([kqueue notify requested but kqueue() is not available])
4423
26d18749f718 Fixes to io notify detection. Patch by Marcus Rueckert
Timo Sirainen <tss@iki.fi>
parents: 4422
diff changeset
574 notify=""
4386
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
575 fi
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
576 fi
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
577 fi
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
578
3482
465c465c66be Added inotify patch by Johannes Berg and did some restructuring to
Timo Sirainen <tss@iki.fi>
parents: 3452
diff changeset
579 if test "$notify" = "" || test "$notify" = "dnotify"; then
465c465c66be Added inotify patch by Johannes Berg and did some restructuring to
Timo Sirainen <tss@iki.fi>
parents: 3452
diff changeset
580 dnl * dnotify?
10014
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
581 AC_CACHE_CHECK([whether we can use dnotify],i_cv_have_dnotify,[
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
582 AC_TRY_COMPILE([
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
583 #define _GNU_SOURCE
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
584 #include <fcntl.h>
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
585 #include <signal.h>
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
586 #include <unistd.h>
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
587 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
588 fcntl(0, F_SETSIG, SIGRTMIN);
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
589 fcntl(0, F_NOTIFY, DN_CREATE | DN_DELETE | DN_RENAME | DN_MULTISHOT);
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
590 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
591 i_cv_have_dnotify=yes
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
592 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
593 i_cv_have_dnotify=no
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
594 ])
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
595 ])
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
596 if test $i_cv_have_dnotify = yes; then
3482
465c465c66be Added inotify patch by Johannes Berg and did some restructuring to
Timo Sirainen <tss@iki.fi>
parents: 3452
diff changeset
597 AC_DEFINE(IOLOOP_NOTIFY_DNOTIFY,, Use Linux dnotify)
3745
840cc63e439b Don't allow giving invalid notify methods in --with-notify
Timo Sirainen <tss@iki.fi>
parents: 3744
diff changeset
598 have_notify=dnotify
4386
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
599 notify=dnotify
10014
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
600 else
3482
465c465c66be Added inotify patch by Johannes Berg and did some restructuring to
Timo Sirainen <tss@iki.fi>
parents: 3452
diff changeset
601 if test "$notify" = "dnotify"; then
4478
4b01707d6cbe Don't use epoll/kqueue by default unless --with-ioloop=auto is given.
Timo Sirainen <tss@iki.fi>
parents: 4443
diff changeset
602 AC_MSG_ERROR([dnotify requested but not available])
3482
465c465c66be Added inotify patch by Johannes Berg and did some restructuring to
Timo Sirainen <tss@iki.fi>
parents: 3452
diff changeset
603 fi
10014
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
604 fi
3745
840cc63e439b Don't allow giving invalid notify methods in --with-notify
Timo Sirainen <tss@iki.fi>
parents: 3744
diff changeset
605 fi
840cc63e439b Don't allow giving invalid notify methods in --with-notify
Timo Sirainen <tss@iki.fi>
parents: 3744
diff changeset
606
840cc63e439b Don't allow giving invalid notify methods in --with-notify
Timo Sirainen <tss@iki.fi>
parents: 3744
diff changeset
607 if test "$have_notify" = "none"; then
840cc63e439b Don't allow giving invalid notify methods in --with-notify
Timo Sirainen <tss@iki.fi>
parents: 3744
diff changeset
608 AC_DEFINE(IOLOOP_NOTIFY_NONE,, No special notify support)
3482
465c465c66be Added inotify patch by Johannes Berg and did some restructuring to
Timo Sirainen <tss@iki.fi>
parents: 3452
diff changeset
609 fi
1729
5bf22d6bb65e Added IO_DIR_NOTIFY and IO_FILE_NOTIFY conditions to io_add(). IO_DIR_NOTIFY
Timo Sirainen <tss@iki.fi>
parents: 1720
diff changeset
610
10014
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
611 AC_CACHE_CHECK([whether we have glibc],i_cv_have_glibc,[
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
612 AC_TRY_COMPILE([
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
613 #include <stdlib.h>
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
614 #ifdef __GLIBC__
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
615 we have glibc
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
616 #endif
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
617 ],, [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
618 i_cv_have_glibc=no
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
619 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
620 i_cv_have_glibc=yes
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
621 ])
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
622 ])
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
623 if test "$i_cv_have_glibc" = "yes"; then
1989
a2b009c65e02 Define PREAD_WRAPPERS if we're using GLIBC, not if we're using Linux.
Timo Sirainen <tss@iki.fi>
parents: 1978
diff changeset
624 AC_DEFINE(PREAD_WRAPPERS,, Define if pread/pwrite needs _XOPEN_SOURCE 500)
10014
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
625 fi
1989
a2b009c65e02 Define PREAD_WRAPPERS if we're using GLIBC, not if we're using Linux.
Timo Sirainen <tss@iki.fi>
parents: 1978
diff changeset
626
7164
d349cdeddc7d Don't use posix_fallocate() with GLIBC versions older than 2.7. It probably
Timo Sirainen <tss@iki.fi>
parents: 7094
diff changeset
627 dnl * Old glibcs have broken posix_fallocate(). Make sure not to use it.
8227
9886bf0a4c40 Test if posix_fallocate() works already in configure.
Timo Sirainen <tss@iki.fi>
parents: 8226
diff changeset
628 dnl * It may also be broken in AIX.
9886bf0a4c40 Test if posix_fallocate() works already in configure.
Timo Sirainen <tss@iki.fi>
parents: 8226
diff changeset
629 AC_CACHE_CHECK([whether posix_fallocate() works],i_cv_posix_fallocate_works,[
9886bf0a4c40 Test if posix_fallocate() works already in configure.
Timo Sirainen <tss@iki.fi>
parents: 8226
diff changeset
630 AC_TRY_RUN([
9886bf0a4c40 Test if posix_fallocate() works already in configure.
Timo Sirainen <tss@iki.fi>
parents: 8226
diff changeset
631 #define _XOPEN_SOURCE 600
9886bf0a4c40 Test if posix_fallocate() works already in configure.
Timo Sirainen <tss@iki.fi>
parents: 8226
diff changeset
632 #include <stdio.h>
9886bf0a4c40 Test if posix_fallocate() works already in configure.
Timo Sirainen <tss@iki.fi>
parents: 8226
diff changeset
633 #include <stdlib.h>
9886bf0a4c40 Test if posix_fallocate() works already in configure.
Timo Sirainen <tss@iki.fi>
parents: 8226
diff changeset
634 #include <fcntl.h>
9886bf0a4c40 Test if posix_fallocate() works already in configure.
Timo Sirainen <tss@iki.fi>
parents: 8226
diff changeset
635 #include <unistd.h>
9886bf0a4c40 Test if posix_fallocate() works already in configure.
Timo Sirainen <tss@iki.fi>
parents: 8226
diff changeset
636 #if defined(__GLIBC__) && (__GLIBC__ < 2 || __GLIBC_MINOR__ < 7)
9886bf0a4c40 Test if posix_fallocate() works already in configure.
Timo Sirainen <tss@iki.fi>
parents: 8226
diff changeset
637 possibly broken posix_fallocate
9886bf0a4c40 Test if posix_fallocate() works already in configure.
Timo Sirainen <tss@iki.fi>
parents: 8226
diff changeset
638 #endif
9886bf0a4c40 Test if posix_fallocate() works already in configure.
Timo Sirainen <tss@iki.fi>
parents: 8226
diff changeset
639 int main() {
9886bf0a4c40 Test if posix_fallocate() works already in configure.
Timo Sirainen <tss@iki.fi>
parents: 8226
diff changeset
640 int fd = creat("conftest.temp", 0600);
9886bf0a4c40 Test if posix_fallocate() works already in configure.
Timo Sirainen <tss@iki.fi>
parents: 8226
diff changeset
641 int ret;
9886bf0a4c40 Test if posix_fallocate() works already in configure.
Timo Sirainen <tss@iki.fi>
parents: 8226
diff changeset
642 if (fd == -1) {
9886bf0a4c40 Test if posix_fallocate() works already in configure.
Timo Sirainen <tss@iki.fi>
parents: 8226
diff changeset
643 perror("creat()");
9886bf0a4c40 Test if posix_fallocate() works already in configure.
Timo Sirainen <tss@iki.fi>
parents: 8226
diff changeset
644 return 2;
9886bf0a4c40 Test if posix_fallocate() works already in configure.
Timo Sirainen <tss@iki.fi>
parents: 8226
diff changeset
645 }
9886bf0a4c40 Test if posix_fallocate() works already in configure.
Timo Sirainen <tss@iki.fi>
parents: 8226
diff changeset
646 ret = posix_fallocate(fd, 1024, 1024) < 0 ? 1 : 0;
9886bf0a4c40 Test if posix_fallocate() works already in configure.
Timo Sirainen <tss@iki.fi>
parents: 8226
diff changeset
647 unlink("conftest.temp");
9886bf0a4c40 Test if posix_fallocate() works already in configure.
Timo Sirainen <tss@iki.fi>
parents: 8226
diff changeset
648 return ret;
9886bf0a4c40 Test if posix_fallocate() works already in configure.
Timo Sirainen <tss@iki.fi>
parents: 8226
diff changeset
649 }
9886bf0a4c40 Test if posix_fallocate() works already in configure.
Timo Sirainen <tss@iki.fi>
parents: 8226
diff changeset
650 ], [
9886bf0a4c40 Test if posix_fallocate() works already in configure.
Timo Sirainen <tss@iki.fi>
parents: 8226
diff changeset
651 i_cv_posix_fallocate_works=yes
9886bf0a4c40 Test if posix_fallocate() works already in configure.
Timo Sirainen <tss@iki.fi>
parents: 8226
diff changeset
652 ], [
9886bf0a4c40 Test if posix_fallocate() works already in configure.
Timo Sirainen <tss@iki.fi>
parents: 8226
diff changeset
653 i_cv_posix_fallocate_works=no
9886bf0a4c40 Test if posix_fallocate() works already in configure.
Timo Sirainen <tss@iki.fi>
parents: 8226
diff changeset
654 ])
9886bf0a4c40 Test if posix_fallocate() works already in configure.
Timo Sirainen <tss@iki.fi>
parents: 8226
diff changeset
655 ])
9886bf0a4c40 Test if posix_fallocate() works already in configure.
Timo Sirainen <tss@iki.fi>
parents: 8226
diff changeset
656 if test $i_cv_posix_fallocate_works = yes; then
7164
d349cdeddc7d Don't use posix_fallocate() with GLIBC versions older than 2.7. It probably
Timo Sirainen <tss@iki.fi>
parents: 7094
diff changeset
657 AC_DEFINE(HAVE_POSIX_FALLOCATE,, Define if you have a working posix_fallocate())
8227
9886bf0a4c40 Test if posix_fallocate() works already in configure.
Timo Sirainen <tss@iki.fi>
parents: 8226
diff changeset
658 fi
7164
d349cdeddc7d Don't use posix_fallocate() with GLIBC versions older than 2.7. It probably
Timo Sirainen <tss@iki.fi>
parents: 7094
diff changeset
659
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
660 dnl * OS specific options
10753
80a11f8650a4 Added dovecot.m4 file that external plugins can use.
Timo Sirainen <tss@iki.fi>
parents: 10702
diff changeset
661 DC_PLUGIN_DEPS
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
662 case "$host_os" in
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
663 hpux*)
7823
b13dca205eaa HP-UX: Fixed fd passing.
Timo Sirainen <tss@iki.fi>
parents: 7822
diff changeset
664 CFLAGS="$CFLAGS -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED"
b13dca205eaa HP-UX: Fixed fd passing.
Timo Sirainen <tss@iki.fi>
parents: 7822
diff changeset
665 # for getting fd_send/fd_recv working:
b13dca205eaa HP-UX: Fixed fd passing.
Timo Sirainen <tss@iki.fi>
parents: 7822
diff changeset
666 LDFLAGS="$LDFLAGS -Wl,+b,:"
b13dca205eaa HP-UX: Fixed fd passing.
Timo Sirainen <tss@iki.fi>
parents: 7822
diff changeset
667 LIBS="-lxnet $LIBS"
7822
5abe05d7d093 HP-UX: pread() and pwrite() are broken, use our own implementation.
Timo Sirainen <tss@iki.fi>
parents: 7804
diff changeset
668 AC_DEFINE(PREAD_BROKEN,, Defint if pread/pwrite implementation is broken)
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
669 ;;
11356
348eb4754085 Added process title hack support for OS X.
Timo Sirainen <tss@iki.fi>
parents: 11321
diff changeset
670 linux*|darwin*)
10188
affb52c62add Fixed Linux proctitle hack and enabled it by default now.
Timo Sirainen <tss@iki.fi>
parents: 10163
diff changeset
671 AC_DEFINE(PROCTITLE_HACK,, Define if process title can be changed by modifying argv)
affb52c62add Fixed Linux proctitle hack and enabled it by default now.
Timo Sirainen <tss@iki.fi>
parents: 10163
diff changeset
672 ;;
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
673 *)
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
674 ;;
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
675 esac
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
676
55
db8ea2c11ab7 whops, 64bit support was disabled.
Timo Sirainen <tss@iki.fi>
parents: 50
diff changeset
677 AC_CHECK_SIZEOF(int)
db8ea2c11ab7 whops, 64bit support was disabled.
Timo Sirainen <tss@iki.fi>
parents: 50
diff changeset
678 AC_CHECK_SIZEOF(long)
464
c634b705f24b Removed several useless handers of printf_string_upper_bound(), and added a
Timo Sirainen <tss@iki.fi>
parents: 439
diff changeset
679 AC_CHECK_SIZEOF(void *)
55
db8ea2c11ab7 whops, 64bit support was disabled.
Timo Sirainen <tss@iki.fi>
parents: 50
diff changeset
680 AC_CHECK_SIZEOF(long long)
185
60925d3e2c4d fixed ssize_t and off_t checks.
Timo Sirainen <tss@iki.fi>
parents: 183
diff changeset
681
2036
b3a56463c812 AC_DEFUN warning fixes for aclocal 1.8..
Timo Sirainen <tss@iki.fi>
parents: 2035
diff changeset
682 AC_DEFUN([AC_TYPEOF], [
677
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
683 dnl * first check if we can get the size with redefining typedefs
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
684
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
685 order="$2"
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
686 if test "$2" = ""; then
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
687 order="int long long-long"
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
688 fi
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
689
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
690 result=""
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
691 visible="unknown"
733
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
692 AC_MSG_CHECKING([type of $1])
10014
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
693 AC_CACHE_VAL(i_cv_typeof_$1,[
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
694 if test "x$ac_cv_c_compiler_gnu" = "xyes"; then
733
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
695 dnl * try with printf() + -Werror
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
696 old_CFLAGS="$CFLAGS"
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
697 CFLAGS="$CFLAGS -Werror"
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
698
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
699 for type in $order; do
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
700 case "$type" in
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
701 int)
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
702 fmt="%d"
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
703 ;;
1630
e9e533b323fb size_t checking fixes
Timo Sirainen <tss@iki.fi>
parents: 1626
diff changeset
704 unsigned-int)
e9e533b323fb size_t checking fixes
Timo Sirainen <tss@iki.fi>
parents: 1626
diff changeset
705 fmt="%u"
e9e533b323fb size_t checking fixes
Timo Sirainen <tss@iki.fi>
parents: 1626
diff changeset
706 ;;
733
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
707 long)
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
708 fmt="%ld"
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
709 ;;
1630
e9e533b323fb size_t checking fixes
Timo Sirainen <tss@iki.fi>
parents: 1626
diff changeset
710 unsigned-long)
e9e533b323fb size_t checking fixes
Timo Sirainen <tss@iki.fi>
parents: 1626
diff changeset
711 fmt="%lu"
e9e533b323fb size_t checking fixes
Timo Sirainen <tss@iki.fi>
parents: 1626
diff changeset
712 ;;
733
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
713 long-long)
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
714 fmt="%lld"
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
715 ;;
1630
e9e533b323fb size_t checking fixes
Timo Sirainen <tss@iki.fi>
parents: 1626
diff changeset
716 unsigned-long-long)
e9e533b323fb size_t checking fixes
Timo Sirainen <tss@iki.fi>
parents: 1626
diff changeset
717 fmt="%llu"
e9e533b323fb size_t checking fixes
Timo Sirainen <tss@iki.fi>
parents: 1626
diff changeset
718 ;;
733
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
719 *)
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
720 fmt=""
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
721 ;;
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
722 esac
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
723
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
724 if test "$fmt" != ""; then
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
725 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
733
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
726 #include <sys/types.h>
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
727 #include <stdio.h>
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
728 ]], [[
733
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
729 printf("$fmt", ($1)0);
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
730 ]])],[
733
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
731 if test "$result" != ""; then
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
732 dnl * warning check isn't working
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
733 result=""
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
734 visible="unknown"
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
735 break
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
736 fi
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
737 result="`echo $type|sed 's/-/ /g'`"
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
738 visible="$result"
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
739 ],[])
677
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
740 fi
733
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
741 done
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
742 CFLAGS="$old_CFLAGS"
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
743 fi
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
744
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
745 if test "$result" = ""; then
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
746 for type in $order; do
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
747 type="`echo $type|sed 's/-/ /g'`"
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
748 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
733
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
749 #include <sys/types.h>
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
750 typedef $type $1;
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
751 ]], [[]])],[
733
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
752 if test "$result" != ""; then
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
753 dnl * compiler allows redefining to anything
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
754 result=""
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
755 visible="unknown"
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
756 break
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
757 fi
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
758 result="$type"
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
759 visible="$type"
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
760 ],[])
733
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
761 done
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
762 fi
677
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
763
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
764 if test "$result" = ""; then
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
765 dnl * check with sizes
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
766
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
767 dnl * older autoconfs don't include sys/types.h, so do it manually
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
768 AC_RUN_IFELSE([AC_LANG_SOURCE([[
677
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
769 #include <stdio.h>
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
770 #include <sys/types.h>
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
771 int main() {
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
772 FILE *f=fopen("conftestval", "w");
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
773 if (!f) exit(1);
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
774 fprintf(f, "%d\n", sizeof($1));
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
775 exit(0);
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
776 }
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
777 ]])],[
677
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
778 size=`cat conftestval`
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
779 rm -f conftestval
55
db8ea2c11ab7 whops, 64bit support was disabled.
Timo Sirainen <tss@iki.fi>
parents: 50
diff changeset
780
677
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
781 for type in $order; do
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
782 actype="ac_cv_sizeof_`echo $type|sed 's/-/_/g'`"
4567
32f5df3de2d1 eval doesn't need to have its parameters quoted. The previous \" quoting was
Timo Sirainen <tss@iki.fi>
parents: 4565
diff changeset
783 if test "$size" = "`eval echo \\$$actype`"; then
677
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
784 result="`echo $type|sed 's/-/ /g'`"
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
785 visible="`expr $size \* 8`bit (using $result)"
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
786 break
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
787 fi
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
788 done
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
789 if test "$result" = ""; then
4055
f7ff79c3189b If size_t and ssize_t exist but we can't figure out their type, don't
Timo Sirainen <tss@iki.fi>
parents: 4050
diff changeset
790 result=unknown
f7ff79c3189b If size_t and ssize_t exist but we can't figure out their type, don't
Timo Sirainen <tss@iki.fi>
parents: 4050
diff changeset
791 visible="`expr $size \* 8`bit (unknown type)"
677
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
792 fi
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
793 ],[],[])
677
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
794 fi
10014
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
795 i_cv_typeof_$1=$result/$visible
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
796 ])
677
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
797
10014
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
798 typeof_$1=`echo $i_cv_typeof_$1 | sed s,/.*$,,`
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
799 visible=`echo $i_cv_typeof_$1 | sed s,^.*/,,`
677
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
800 AC_MSG_RESULT($visible)
185
60925d3e2c4d fixed ssize_t and off_t checks.
Timo Sirainen <tss@iki.fi>
parents: 183
diff changeset
801 ])
677
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
802
6616
be366eda336e Use AC_SYS_LARGEFILE instead of our own checks. Also removes
Timo Sirainen <tss@iki.fi>
parents: 6610
diff changeset
803 AC_SYS_LARGEFILE
3929
49a1a979959e If uoff_t type already exists, use it (UnixWare has it).
Timo Sirainen <tss@iki.fi>
parents: 3919
diff changeset
804 AC_CHECK_TYPES(_Bool)
49a1a979959e If uoff_t type already exists, use it (UnixWare has it).
Timo Sirainen <tss@iki.fi>
parents: 3919
diff changeset
805
49a1a979959e If uoff_t type already exists, use it (UnixWare has it).
Timo Sirainen <tss@iki.fi>
parents: 3919
diff changeset
806 AC_CHECK_TYPE(uoff_t, [
3931
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
807 have_uoff_t=yes
3929
49a1a979959e If uoff_t type already exists, use it (UnixWare has it).
Timo Sirainen <tss@iki.fi>
parents: 3919
diff changeset
808 AC_DEFINE(HAVE_UOFF_T,, Define if you have a native uoff_t type)
49a1a979959e If uoff_t type already exists, use it (UnixWare has it).
Timo Sirainen <tss@iki.fi>
parents: 3919
diff changeset
809 ], [
3931
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
810 have_uoff_t=no
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
811 ])
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
812
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
813 AC_TYPEOF(off_t, long int long-long)
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
814 case "$typeof_off_t" in
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
815 int)
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
816 offt_max=INT_MAX
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
817 uofft_fmt="u"
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
818 if test "$have_uoff_t" != "yes"; then
3929
49a1a979959e If uoff_t type already exists, use it (UnixWare has it).
Timo Sirainen <tss@iki.fi>
parents: 3919
diff changeset
819 AC_DEFINE(UOFF_T_INT,, Define if off_t is int)
3931
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
820 fi
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
821 offt_bits=`expr 8 \* $ac_cv_sizeof_int`
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
822 ;;
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
823 long)
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
824 offt_max=LONG_MAX
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
825 uofft_fmt="lu"
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
826 if test "$have_uoff_t" != "yes"; then
3929
49a1a979959e If uoff_t type already exists, use it (UnixWare has it).
Timo Sirainen <tss@iki.fi>
parents: 3919
diff changeset
827 AC_DEFINE(UOFF_T_LONG,, Define if off_t is long)
3931
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
828 fi
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
829 offt_bits=`expr 8 \* $ac_cv_sizeof_long`
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
830 ;;
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
831 "long long")
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
832 offt_max=LLONG_MAX
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
833 uofft_fmt="llu"
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
834 if test "$have_uoff_t" != "yes"; then
3929
49a1a979959e If uoff_t type already exists, use it (UnixWare has it).
Timo Sirainen <tss@iki.fi>
parents: 3919
diff changeset
835 AC_DEFINE(UOFF_T_LONG_LONG,, Define if off_t is long long)
3931
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
836 fi
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
837 offt_bits=`expr 8 \* $ac_cv_sizeof_long_long`
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
838 ;;
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
839 *)
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
840 AC_MSG_ERROR([Unsupported off_t type])
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
841 ;;
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
842 esac
50
d493b9cc265e Introduced uoff_t which is the unsigned-equilevant of off_t. This was needed
Timo Sirainen <tss@iki.fi>
parents: 5
diff changeset
843
2078
b3daf55df932 Added maildir_stat_dirs option.
Timo Sirainen <tss@iki.fi>
parents: 2070
diff changeset
844 dnl * Do we have struct dirent->d_type
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
845 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
2078
b3daf55df932 Added maildir_stat_dirs option.
Timo Sirainen <tss@iki.fi>
parents: 2070
diff changeset
846 #include <dirent.h>
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
847 ]], [[
2078
b3daf55df932 Added maildir_stat_dirs option.
Timo Sirainen <tss@iki.fi>
parents: 2070
diff changeset
848 struct dirent d;
b3daf55df932 Added maildir_stat_dirs option.
Timo Sirainen <tss@iki.fi>
parents: 2070
diff changeset
849 d.d_type = DT_DIR;
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
850 ]])],[
2078
b3daf55df932 Added maildir_stat_dirs option.
Timo Sirainen <tss@iki.fi>
parents: 2070
diff changeset
851 AC_DEFINE(HAVE_DIRENT_D_TYPE,, Define if you have struct dirent->d_type)
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
852 ],[])
2078
b3daf55df932 Added maildir_stat_dirs option.
Timo Sirainen <tss@iki.fi>
parents: 2070
diff changeset
853
1382
c4d519a6395d Don't define OFF_T_MAX if it's already defined
Timo Sirainen <tss@iki.fi>
parents: 1341
diff changeset
854 dnl * Do we have OFF_T_MAX?
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
855 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
1382
c4d519a6395d Don't define OFF_T_MAX if it's already defined
Timo Sirainen <tss@iki.fi>
parents: 1341
diff changeset
856 #include <limits.h>
c4d519a6395d Don't define OFF_T_MAX if it's already defined
Timo Sirainen <tss@iki.fi>
parents: 1341
diff changeset
857 #include <sys/types.h>
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
858 ]], [[
1382
c4d519a6395d Don't define OFF_T_MAX if it's already defined
Timo Sirainen <tss@iki.fi>
parents: 1341
diff changeset
859 off_t i = OFF_T_MAX;
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
860 ]])],[
1403
Timo Sirainen <tss@iki.fi>
parents: 1394
diff changeset
861 :
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
862 ],[
1382
c4d519a6395d Don't define OFF_T_MAX if it's already defined
Timo Sirainen <tss@iki.fi>
parents: 1341
diff changeset
863 AC_DEFINE_UNQUOTED(OFF_T_MAX, $offt_max, Maximum value of off_t)
c4d519a6395d Don't define OFF_T_MAX if it's already defined
Timo Sirainen <tss@iki.fi>
parents: 1341
diff changeset
864 ])
c4d519a6395d Don't define OFF_T_MAX if it's already defined
Timo Sirainen <tss@iki.fi>
parents: 1341
diff changeset
865
742
b3dd87844fff acconfig.h is deprecated with autoconf 2.5, changed configure to contain
Timo Sirainen <tss@iki.fi>
parents: 739
diff changeset
866 AC_DEFINE_UNQUOTED(PRIuUOFF_T, "$uofft_fmt", printf() format for uoff_t)
b3dd87844fff acconfig.h is deprecated with autoconf 2.5, changed configure to contain
Timo Sirainen <tss@iki.fi>
parents: 739
diff changeset
867
750
b97c8964d7c1 Give a hard warning if size_t is signed.
Timo Sirainen <tss@iki.fi>
parents: 745
diff changeset
868 dnl * make sure size_t isn't signed. we'd probably work fine with it, but
b97c8964d7c1 Give a hard warning if size_t is signed.
Timo Sirainen <tss@iki.fi>
parents: 745
diff changeset
869 dnl * it's more likely vulnerable to buffer overflows. Anyway, C99 specifies
b97c8964d7c1 Give a hard warning if size_t is signed.
Timo Sirainen <tss@iki.fi>
parents: 745
diff changeset
870 dnl * that it's unsigned and only some old systems define it as signed.
7555
47c5e52c1181 Prefix AC_CACHE_CHECK variables with i_cv_.
Timo Sirainen <tss@iki.fi>
parents: 7554
diff changeset
871 AC_CACHE_CHECK([whether size_t is signed],i_cv_signed_size_t,[
5165
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
872 AC_RUN_IFELSE([AC_LANG_SOURCE([[
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
873 #include <sys/types.h>
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
874 int main() {
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
875 /* return 0 if we're signed */
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
876 exit((size_t)(int)-1 <= 0 ? 0 : 1);
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
877 }
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
878 ]])],[
7555
47c5e52c1181 Prefix AC_CACHE_CHECK variables with i_cv_.
Timo Sirainen <tss@iki.fi>
parents: 7554
diff changeset
879 i_cv_signed_size_t=yes
750
b97c8964d7c1 Give a hard warning if size_t is signed.
Timo Sirainen <tss@iki.fi>
parents: 745
diff changeset
880
5165
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
881 echo
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
882 echo "Your system's size_t is a signed integer, Dovecot isn't designed to"
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
883 echo "support it. It probably works just fine, but it's less resistant to"
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
884 echo "buffer overflows. If you're not worried about this and still want to"
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
885 echo "compile Dovecot, set ignore_signed_size=1 environment."
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
886
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
887 if test "$ignore_signed_size" = ""; then
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
888 AC_MSG_ERROR([aborting])
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
889 fi
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
890 echo "..ignoring as requested.."
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
891 ],[
7555
47c5e52c1181 Prefix AC_CACHE_CHECK variables with i_cv_.
Timo Sirainen <tss@iki.fi>
parents: 7554
diff changeset
892 i_cv_signed_size_t=no
5165
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
893 ],[])
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
894 ])
1626
08b73ec005f8 Get the size_t type properly in OSX
Timo Sirainen <tss@iki.fi>
parents: 1625
diff changeset
895 dnl Note: we check size_t rather than ssize_t here, because on OSX 10.2
08b73ec005f8 Get the size_t type properly in OSX
Timo Sirainen <tss@iki.fi>
parents: 1625
diff changeset
896 dnl ssize_t = int and size_t = unsigned long. We're mostly concerned about
08b73ec005f8 Get the size_t type properly in OSX
Timo Sirainen <tss@iki.fi>
parents: 1625
diff changeset
897 dnl printf format here, so check the size_t one.
08b73ec005f8 Get the size_t type properly in OSX
Timo Sirainen <tss@iki.fi>
parents: 1625
diff changeset
898 AC_TYPEOF(size_t, unsigned-int unsigned-long unsigned-long-long)
08b73ec005f8 Get the size_t type properly in OSX
Timo Sirainen <tss@iki.fi>
parents: 1625
diff changeset
899 case "$typeof_size_t" in
08b73ec005f8 Get the size_t type properly in OSX
Timo Sirainen <tss@iki.fi>
parents: 1625
diff changeset
900 "unsigned long")
742
b3dd87844fff acconfig.h is deprecated with autoconf 2.5, changed configure to contain
Timo Sirainen <tss@iki.fi>
parents: 739
diff changeset
901 ssizet_max=LONG_MAX
b3dd87844fff acconfig.h is deprecated with autoconf 2.5, changed configure to contain
Timo Sirainen <tss@iki.fi>
parents: 739
diff changeset
902 sizet_fmt="lu"
677
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
903 ;;
1626
08b73ec005f8 Get the size_t type properly in OSX
Timo Sirainen <tss@iki.fi>
parents: 1625
diff changeset
904 "unsigned long long")
742
b3dd87844fff acconfig.h is deprecated with autoconf 2.5, changed configure to contain
Timo Sirainen <tss@iki.fi>
parents: 739
diff changeset
905 ssizet_max=LLONG_MAX
b3dd87844fff acconfig.h is deprecated with autoconf 2.5, changed configure to contain
Timo Sirainen <tss@iki.fi>
parents: 739
diff changeset
906 sizet_fmt="llu"
677
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
907 ;;
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
908 *)
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
909 dnl older systems didn't have ssize_t, default to int
742
b3dd87844fff acconfig.h is deprecated with autoconf 2.5, changed configure to contain
Timo Sirainen <tss@iki.fi>
parents: 739
diff changeset
910 ssizet_max=INT_MAX
b3dd87844fff acconfig.h is deprecated with autoconf 2.5, changed configure to contain
Timo Sirainen <tss@iki.fi>
parents: 739
diff changeset
911 sizet_fmt="u"
b3dd87844fff acconfig.h is deprecated with autoconf 2.5, changed configure to contain
Timo Sirainen <tss@iki.fi>
parents: 739
diff changeset
912
1626
08b73ec005f8 Get the size_t type properly in OSX
Timo Sirainen <tss@iki.fi>
parents: 1625
diff changeset
913 if test "$typeof_size_t" = ""; then
742
b3dd87844fff acconfig.h is deprecated with autoconf 2.5, changed configure to contain
Timo Sirainen <tss@iki.fi>
parents: 739
diff changeset
914 AC_DEFINE(size_t, unsigned int, Define to 'unsigned int' if you don't have it)
b3dd87844fff acconfig.h is deprecated with autoconf 2.5, changed configure to contain
Timo Sirainen <tss@iki.fi>
parents: 739
diff changeset
915 AC_DEFINE(ssize_t, int, Define to 'int' if you don't have it)
b3dd87844fff acconfig.h is deprecated with autoconf 2.5, changed configure to contain
Timo Sirainen <tss@iki.fi>
parents: 739
diff changeset
916 fi
677
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
917 ;;
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
918 esac
183
4a7ab9e94f25 size_t fixes for lib/. Changed OFF_T_FORMAT to PRIuOFF_T which is more
Timo Sirainen <tss@iki.fi>
parents: 179
diff changeset
919
742
b3dd87844fff acconfig.h is deprecated with autoconf 2.5, changed configure to contain
Timo Sirainen <tss@iki.fi>
parents: 739
diff changeset
920 AC_DEFINE_UNQUOTED(SSIZE_T_MAX, $ssizet_max, Maximum value of ssize_t)
b3dd87844fff acconfig.h is deprecated with autoconf 2.5, changed configure to contain
Timo Sirainen <tss@iki.fi>
parents: 739
diff changeset
921 AC_DEFINE_UNQUOTED(PRIuSIZE_T, "$sizet_fmt", printf() format for size_t)
b3dd87844fff acconfig.h is deprecated with autoconf 2.5, changed configure to contain
Timo Sirainen <tss@iki.fi>
parents: 739
diff changeset
922
2036
b3a56463c812 AC_DEFUN warning fixes for aclocal 1.8..
Timo Sirainen <tss@iki.fi>
parents: 2035
diff changeset
923 AC_DEFUN([AC_CHECKTYPE2], [
678
1e5c655bad25 Renamed largest_t to uintmax_t which already exists in C99.
Timo Sirainen <tss@iki.fi>
parents: 677
diff changeset
924 AC_MSG_CHECKING([for $1])
1e5c655bad25 Renamed largest_t to uintmax_t which already exists in C99.
Timo Sirainen <tss@iki.fi>
parents: 677
diff changeset
925 AC_CACHE_VAL(i_cv_type_$1,
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
926 [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
678
1e5c655bad25 Renamed largest_t to uintmax_t which already exists in C99.
Timo Sirainen <tss@iki.fi>
parents: 677
diff changeset
927 #include <sys/types.h>
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
928 $2]], [[$1 t;]])],[i_cv_type_$1=yes],[i_cv_type_$1=no])])
678
1e5c655bad25 Renamed largest_t to uintmax_t which already exists in C99.
Timo Sirainen <tss@iki.fi>
parents: 677
diff changeset
929 AC_MSG_RESULT($i_cv_type_$1)
1e5c655bad25 Renamed largest_t to uintmax_t which already exists in C99.
Timo Sirainen <tss@iki.fi>
parents: 677
diff changeset
930 ])
1e5c655bad25 Renamed largest_t to uintmax_t which already exists in C99.
Timo Sirainen <tss@iki.fi>
parents: 677
diff changeset
931
1660
4076387f7ccb We should be checking C99 types using stdint.h, not inttypes.h
Timo Sirainen <tss@iki.fi>
parents: 1658
diff changeset
932 dnl some systems don't have stdint.h, but still have some of the types
4076387f7ccb We should be checking C99 types using stdint.h, not inttypes.h
Timo Sirainen <tss@iki.fi>
parents: 1658
diff changeset
933 dnl defined elsewhere
4076387f7ccb We should be checking C99 types using stdint.h, not inttypes.h
Timo Sirainen <tss@iki.fi>
parents: 1658
diff changeset
934 AC_CHECK_HEADER(stdint.h, [
4076387f7ccb We should be checking C99 types using stdint.h, not inttypes.h
Timo Sirainen <tss@iki.fi>
parents: 1658
diff changeset
935 stdint_include="#include <stdint.h>"
4076387f7ccb We should be checking C99 types using stdint.h, not inttypes.h
Timo Sirainen <tss@iki.fi>
parents: 1658
diff changeset
936 ])
4076387f7ccb We should be checking C99 types using stdint.h, not inttypes.h
Timo Sirainen <tss@iki.fi>
parents: 1658
diff changeset
937
4076387f7ccb We should be checking C99 types using stdint.h, not inttypes.h
Timo Sirainen <tss@iki.fi>
parents: 1658
diff changeset
938 AC_CHECKTYPE2(uintmax_t, [$stdint_include])
678
1e5c655bad25 Renamed largest_t to uintmax_t which already exists in C99.
Timo Sirainen <tss@iki.fi>
parents: 677
diff changeset
939 if test $i_cv_type_uintmax_t = yes; then
742
b3dd87844fff acconfig.h is deprecated with autoconf 2.5, changed configure to contain
Timo Sirainen <tss@iki.fi>
parents: 739
diff changeset
940 AC_DEFINE(HAVE_UINTMAX_T,, Define if you have uintmax_t (C99 type))
179
0ffecd4e7e1a added dec2str() function and largest_t type, removed itoa() and ltoa()
Timo Sirainen <tss@iki.fi>
parents: 175
diff changeset
941 fi
0ffecd4e7e1a added dec2str() function and largest_t type, removed itoa() and ltoa()
Timo Sirainen <tss@iki.fi>
parents: 175
diff changeset
942
908
bc55266563cd Use separate check for uint_fast32_t.
Timo Sirainen <tss@iki.fi>
parents: 907
diff changeset
943 dnl use separate check, eg. Solaris 8 has uintmax_t but not uint_fast32_t
1660
4076387f7ccb We should be checking C99 types using stdint.h, not inttypes.h
Timo Sirainen <tss@iki.fi>
parents: 1658
diff changeset
944 AC_CHECKTYPE2(uint_fast32_t, [$stdint_include])
908
bc55266563cd Use separate check for uint_fast32_t.
Timo Sirainen <tss@iki.fi>
parents: 907
diff changeset
945 if test $i_cv_type_uint_fast32_t = yes; then
bc55266563cd Use separate check for uint_fast32_t.
Timo Sirainen <tss@iki.fi>
parents: 907
diff changeset
946 AC_DEFINE(HAVE_UINT_FAST32_T,, Define if you have uint_fast32_t (C99 type))
bc55266563cd Use separate check for uint_fast32_t.
Timo Sirainen <tss@iki.fi>
parents: 907
diff changeset
947 fi
bc55266563cd Use separate check for uint_fast32_t.
Timo Sirainen <tss@iki.fi>
parents: 907
diff changeset
948
678
1e5c655bad25 Renamed largest_t to uintmax_t which already exists in C99.
Timo Sirainen <tss@iki.fi>
parents: 677
diff changeset
949 AC_CHECKTYPE2(socklen_t, [#include <sys/socket.h>])
1e5c655bad25 Renamed largest_t to uintmax_t which already exists in C99.
Timo Sirainen <tss@iki.fi>
parents: 677
diff changeset
950 if test $i_cv_type_socklen_t = yes; then
742
b3dd87844fff acconfig.h is deprecated with autoconf 2.5, changed configure to contain
Timo Sirainen <tss@iki.fi>
parents: 739
diff changeset
951 AC_DEFINE(HAVE_SOCKLEN_T,, Define to 'int' if you don't have socklen_t)
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
952 fi
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
953
1394
059f13d577bb Use separate index alignment from memory alignment. We don't use pointers in
Timo Sirainen <tss@iki.fi>
parents: 1389
diff changeset
954 AC_DEFINE_UNQUOTED(MEM_ALIGN_SIZE, $mem_align, Required memory alignment)
059f13d577bb Use separate index alignment from memory alignment. We don't use pointers in
Timo Sirainen <tss@iki.fi>
parents: 1389
diff changeset
955
1335
5ad84c54eb7e Support using OpenSSL's pseudo-random generator instead of /dev/urandom. If
Timo Sirainen <tss@iki.fi>
parents: 1300
diff changeset
956 dnl * find random source
14989
3765e8948f1c configure: Removed OpenBSD /dev/arandom checking.
Timo Sirainen <tss@iki.fi>
parents: 14935
diff changeset
957 AC_MSG_CHECKING([for /dev/urandom])
3765e8948f1c configure: Removed OpenBSD /dev/arandom checking.
Timo Sirainen <tss@iki.fi>
parents: 14935
diff changeset
958 if test -c /dev/urandom || test -s /dev/urandom; then
1335
5ad84c54eb7e Support using OpenSSL's pseudo-random generator instead of /dev/urandom. If
Timo Sirainen <tss@iki.fi>
parents: 1300
diff changeset
959 AC_MSG_RESULT(yes)
14989
3765e8948f1c configure: Removed OpenBSD /dev/arandom checking.
Timo Sirainen <tss@iki.fi>
parents: 14935
diff changeset
960 AC_DEFINE(DEV_URANDOM_PATH, "/dev/urandom", Path to /dev/urandom)
1335
5ad84c54eb7e Support using OpenSSL's pseudo-random generator instead of /dev/urandom. If
Timo Sirainen <tss@iki.fi>
parents: 1300
diff changeset
961 have_random_source=yes
5ad84c54eb7e Support using OpenSSL's pseudo-random generator instead of /dev/urandom. If
Timo Sirainen <tss@iki.fi>
parents: 1300
diff changeset
962 else
5ad84c54eb7e Support using OpenSSL's pseudo-random generator instead of /dev/urandom. If
Timo Sirainen <tss@iki.fi>
parents: 1300
diff changeset
963 AC_MSG_RESULT(no)
9204
1849c4269ad8 If /dev/arandom exists (OpenBSD), use it instead of /dev/urandom.
Timo Sirainen <tss@iki.fi>
parents: 9159
diff changeset
964 fi
1335
5ad84c54eb7e Support using OpenSSL's pseudo-random generator instead of /dev/urandom. If
Timo Sirainen <tss@iki.fi>
parents: 1300
diff changeset
965
9204
1849c4269ad8 If /dev/arandom exists (OpenBSD), use it instead of /dev/urandom.
Timo Sirainen <tss@iki.fi>
parents: 9159
diff changeset
966 if test "$have_random_source" != "yes"; then
1335
5ad84c54eb7e Support using OpenSSL's pseudo-random generator instead of /dev/urandom. If
Timo Sirainen <tss@iki.fi>
parents: 1300
diff changeset
967 AC_CHECK_HEADER(openssl/rand.h, [
5ad84c54eb7e Support using OpenSSL's pseudo-random generator instead of /dev/urandom. If
Timo Sirainen <tss@iki.fi>
parents: 1300
diff changeset
968 AC_DEFINE(HAVE_OPENSSL_RAND_H,, Define if you have openssl/rand.h)
7844
7b39370dae6b If we need -lcrypto for randomness, put it to $LIBS instead of $RAND_LIBS
Timo Sirainen <tss@iki.fi>
parents: 7826
diff changeset
969 LIBS="$LIBS -lcrypto"
1335
5ad84c54eb7e Support using OpenSSL's pseudo-random generator instead of /dev/urandom. If
Timo Sirainen <tss@iki.fi>
parents: 1300
diff changeset
970 ])
5ad84c54eb7e Support using OpenSSL's pseudo-random generator instead of /dev/urandom. If
Timo Sirainen <tss@iki.fi>
parents: 1300
diff changeset
971 fi
5ad84c54eb7e Support using OpenSSL's pseudo-random generator instead of /dev/urandom. If
Timo Sirainen <tss@iki.fi>
parents: 1300
diff changeset
972
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
973 dnl * do we have tm_gmtoff
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
974 AC_MSG_CHECKING([for tm_gmtoff])
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
975 AC_CACHE_VAL(i_cv_field_tm_gmtoff,
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
976 [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
977 #include <time.h>]],
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
978 [[struct tm *tm; return tm->tm_gmtoff;]])],
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
979 [i_cv_field_tm_gmtoff=yes],
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
980 [i_cv_field_tm_gmtoff=no])])
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
981 if test $i_cv_field_tm_gmtoff = yes; then
742
b3dd87844fff acconfig.h is deprecated with autoconf 2.5, changed configure to contain
Timo Sirainen <tss@iki.fi>
parents: 739
diff changeset
982 AC_DEFINE(HAVE_TM_GMTOFF,, Define if you have struct tm->tm_gmtoff)
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
983 fi
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
984 AC_MSG_RESULT($i_cv_field_tm_gmtoff)
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
985
1658
20519e4bca48 utc_mktime() crashed with 64bit time_t if gmtime() didn't like >32bit values
Timo Sirainen <tss@iki.fi>
parents: 1656
diff changeset
986 dnl * how large time_t values does gmtime() accept?
7555
47c5e52c1181 Prefix AC_CACHE_CHECK variables with i_cv_.
Timo Sirainen <tss@iki.fi>
parents: 7554
diff changeset
987 AC_CACHE_CHECK([how large time_t values gmtime() accepts],i_cv_gmtime_max_time_t,[
5165
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
988 AC_RUN_IFELSE([AC_LANG_SOURCE([[
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
989 #include <stdio.h>
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
990 #include <time.h>
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
991 int main() {
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
992 FILE *f;
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
993 int bits;
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
994
6522
6c46542a5ce5 With 32bit time_t we were checking it up to 64 bits, which overflowed the
Timo Sirainen <tss@iki.fi>
parents: 6501
diff changeset
995 for (bits = 1; bits < sizeof(time_t)*8; bits++) {
6483
6d15946eccb5 Rewrote utc_mktime() so it's now MIT licensed. This also fixes handling
Timo Sirainen <tss@iki.fi>
parents: 6403
diff changeset
996 time_t t = ((time_t)1 << bits) - 1;
5165
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
997 if (gmtime(&t) == NULL) {
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
998 bits--;
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
999 break;
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1000 }
1658
20519e4bca48 utc_mktime() crashed with 64bit time_t if gmtime() didn't like >32bit values
Timo Sirainen <tss@iki.fi>
parents: 1656
diff changeset
1001 }
5165
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1002 if (bits > 40) {
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1003 /* Solaris 9 breaks after 55 bits. Perhaps other systems break earlier.
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1004 Let's just do the same as Cyrus folks and limit it to 40 bits. */
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1005 bits = 40;
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1006 }
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1007
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1008 f = fopen("conftest.temp", "w");
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1009 if (f == NULL) {
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1010 perror("fopen()");
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1011 return 1;
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1012 }
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1013 fprintf(f, "%d", bits);
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1014 fclose(f);
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1015 return 0;
3206
6400a517f087 Limit TIME_T_MAX_BITS to 40.
Timo Sirainen <tss@iki.fi>
parents: 3199
diff changeset
1016 }
5165
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1017 ]])],[
7555
47c5e52c1181 Prefix AC_CACHE_CHECK variables with i_cv_.
Timo Sirainen <tss@iki.fi>
parents: 7554
diff changeset
1018 i_cv_gmtime_max_time_t=`cat conftest.temp`
5165
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1019 rm -f conftest.temp
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1020 ], [
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1021 printf "check failed, assuming "
7555
47c5e52c1181 Prefix AC_CACHE_CHECK variables with i_cv_.
Timo Sirainen <tss@iki.fi>
parents: 7554
diff changeset
1022 i_cv_gmtime_max_time_t=31
5165
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1023 ],[])
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1024 ])
7555
47c5e52c1181 Prefix AC_CACHE_CHECK variables with i_cv_.
Timo Sirainen <tss@iki.fi>
parents: 7554
diff changeset
1025 AC_DEFINE_UNQUOTED(TIME_T_MAX_BITS, $i_cv_gmtime_max_time_t, max. time_t bits gmtime() can handle)
1658
20519e4bca48 utc_mktime() crashed with 64bit time_t if gmtime() didn't like >32bit values
Timo Sirainen <tss@iki.fi>
parents: 1656
diff changeset
1026
7555
47c5e52c1181 Prefix AC_CACHE_CHECK variables with i_cv_.
Timo Sirainen <tss@iki.fi>
parents: 7554
diff changeset
1027 AC_CACHE_CHECK([whether time_t is signed],i_cv_signed_time_t,[
6483
6d15946eccb5 Rewrote utc_mktime() so it's now MIT licensed. This also fixes handling
Timo Sirainen <tss@iki.fi>
parents: 6403
diff changeset
1028 AC_RUN_IFELSE([AC_LANG_SOURCE([[
6d15946eccb5 Rewrote utc_mktime() so it's now MIT licensed. This also fixes handling
Timo Sirainen <tss@iki.fi>
parents: 6403
diff changeset
1029 #include <sys/types.h>
6d15946eccb5 Rewrote utc_mktime() so it's now MIT licensed. This also fixes handling
Timo Sirainen <tss@iki.fi>
parents: 6403
diff changeset
1030 int main() {
6d15946eccb5 Rewrote utc_mktime() so it's now MIT licensed. This also fixes handling
Timo Sirainen <tss@iki.fi>
parents: 6403
diff changeset
1031 /* return 0 if we're signed */
6d15946eccb5 Rewrote utc_mktime() so it's now MIT licensed. This also fixes handling
Timo Sirainen <tss@iki.fi>
parents: 6403
diff changeset
1032 exit((time_t)(int)-1 <= 0 ? 0 : 1);
6d15946eccb5 Rewrote utc_mktime() so it's now MIT licensed. This also fixes handling
Timo Sirainen <tss@iki.fi>
parents: 6403
diff changeset
1033 }
6d15946eccb5 Rewrote utc_mktime() so it's now MIT licensed. This also fixes handling
Timo Sirainen <tss@iki.fi>
parents: 6403
diff changeset
1034 ]])],[
7555
47c5e52c1181 Prefix AC_CACHE_CHECK variables with i_cv_.
Timo Sirainen <tss@iki.fi>
parents: 7554
diff changeset
1035 i_cv_signed_time_t=yes
6483
6d15946eccb5 Rewrote utc_mktime() so it's now MIT licensed. This also fixes handling
Timo Sirainen <tss@iki.fi>
parents: 6403
diff changeset
1036 ], [
7555
47c5e52c1181 Prefix AC_CACHE_CHECK variables with i_cv_.
Timo Sirainen <tss@iki.fi>
parents: 7554
diff changeset
1037 i_cv_signed_time_t=no
6483
6d15946eccb5 Rewrote utc_mktime() so it's now MIT licensed. This also fixes handling
Timo Sirainen <tss@iki.fi>
parents: 6403
diff changeset
1038 ])
6d15946eccb5 Rewrote utc_mktime() so it's now MIT licensed. This also fixes handling
Timo Sirainen <tss@iki.fi>
parents: 6403
diff changeset
1039 ])
7555
47c5e52c1181 Prefix AC_CACHE_CHECK variables with i_cv_.
Timo Sirainen <tss@iki.fi>
parents: 7554
diff changeset
1040 if test $i_cv_signed_time_t = yes; then
6483
6d15946eccb5 Rewrote utc_mktime() so it's now MIT licensed. This also fixes handling
Timo Sirainen <tss@iki.fi>
parents: 6403
diff changeset
1041 AC_DEFINE(TIME_T_SIGNED,, Define if your time_t is signed)
6d15946eccb5 Rewrote utc_mktime() so it's now MIT licensed. This also fixes handling
Timo Sirainen <tss@iki.fi>
parents: 6403
diff changeset
1042 fi
6d15946eccb5 Rewrote utc_mktime() so it's now MIT licensed. This also fixes handling
Timo Sirainen <tss@iki.fi>
parents: 6403
diff changeset
1043
7997
0d66b44689ee Fixed compiling on some older pre-C99 compilers.
Timo Sirainen <tss@iki.fi>
parents: 7990
diff changeset
1044 dnl Our implementation of AC_C_FLEXIBLE_ARRAY_MEMBER.
0d66b44689ee Fixed compiling on some older pre-C99 compilers.
Timo Sirainen <tss@iki.fi>
parents: 7990
diff changeset
1045 dnl Use it until autoconf 2.61+ becomes more widely used
10014
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1046 AC_CACHE_CHECK([if we can use C99-like flexible array members],i_cv_c99_flex_arrays,[
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1047 AC_TRY_COMPILE([
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1048 struct foo {
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1049 int x;
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1050 char y[];
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1051 };
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1052 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1053 struct foo foo;
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1054 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1055 i_cv_c99_flex_arrays=yes
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1056 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1057 i_cv_c99_flex_arrays=no
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1058 ])
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1059 ])
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1060
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1061 if test $i_cv_c99_flex_arrays = yes; then
10094
634588d51ae6 configure: FLEXIBLE_ARRAY_MEMBER value was reversed.
Timo Sirainen <tss@iki.fi>
parents: 10091
diff changeset
1062 flexible_value=
10014
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1063 else
10094
634588d51ae6 configure: FLEXIBLE_ARRAY_MEMBER value was reversed.
Timo Sirainen <tss@iki.fi>
parents: 10091
diff changeset
1064 flexible_value=1
10014
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1065 fi
7997
0d66b44689ee Fixed compiling on some older pre-C99 compilers.
Timo Sirainen <tss@iki.fi>
parents: 7990
diff changeset
1066 AC_DEFINE_UNQUOTED(FLEXIBLE_ARRAY_MEMBER, $flexible_value, How to define flexible array members in structs)
0d66b44689ee Fixed compiling on some older pre-C99 compilers.
Timo Sirainen <tss@iki.fi>
parents: 7990
diff changeset
1067
411
c2fdc076ae7f checks for writev()
Timo Sirainen <tss@iki.fi>
parents: 353
diff changeset
1068 dnl * do we have struct iovec
c2fdc076ae7f checks for writev()
Timo Sirainen <tss@iki.fi>
parents: 353
diff changeset
1069 AC_MSG_CHECKING([for struct iovec])
c2fdc076ae7f checks for writev()
Timo Sirainen <tss@iki.fi>
parents: 353
diff changeset
1070 AC_CACHE_VAL(i_cv_struct_iovec,
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
1071 [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
411
c2fdc076ae7f checks for writev()
Timo Sirainen <tss@iki.fi>
parents: 353
diff changeset
1072 #include <sys/types.h>
c2fdc076ae7f checks for writev()
Timo Sirainen <tss@iki.fi>
parents: 353
diff changeset
1073 #include <sys/uio.h>
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
1074 #include <unistd.h>]],
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
1075 [[struct iovec *iovec;]])],
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
1076 [i_cv_struct_iovec=yes],
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
1077 [i_cv_struct_iovec=no])])
411
c2fdc076ae7f checks for writev()
Timo Sirainen <tss@iki.fi>
parents: 353
diff changeset
1078
c2fdc076ae7f checks for writev()
Timo Sirainen <tss@iki.fi>
parents: 353
diff changeset
1079 if test $i_cv_struct_iovec = yes; then
742
b3dd87844fff acconfig.h is deprecated with autoconf 2.5, changed configure to contain
Timo Sirainen <tss@iki.fi>
parents: 739
diff changeset
1080 AC_DEFINE(HAVE_STRUCT_IOVEC,, Define if you have struct iovec)
411
c2fdc076ae7f checks for writev()
Timo Sirainen <tss@iki.fi>
parents: 353
diff changeset
1081 fi
c2fdc076ae7f checks for writev()
Timo Sirainen <tss@iki.fi>
parents: 353
diff changeset
1082 AC_MSG_RESULT($i_cv_struct_iovec)
c2fdc076ae7f checks for writev()
Timo Sirainen <tss@iki.fi>
parents: 353
diff changeset
1083
691
567f5e66c7b8 We compile now if dev_t is a structure (eg. glibc+tcc).
Timo Sirainen <tss@iki.fi>
parents: 679
diff changeset
1084 dnl * is dev_t an integer or something else?
10014
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1085 AC_CACHE_CHECK([whether dev_t is struct],i_cv_dev_t_struct,[
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1086 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1087 #include <sys/types.h>
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1088 struct test { dev_t a; };
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1089 static struct test t = { 0 };
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1090 ]],
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1091 [[ ]])], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1092 i_cv_dev_t_struct=no
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1093 ],[
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1094 i_cv_dev_t_struct=yes
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1095 ])
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1096 ])
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1097 if test $i_cv_dev_t_struct = yes; then
742
b3dd87844fff acconfig.h is deprecated with autoconf 2.5, changed configure to contain
Timo Sirainen <tss@iki.fi>
parents: 739
diff changeset
1098 AC_DEFINE(DEV_T_STRUCT,, Define if your dev_t is a structure instead of integer type)
10014
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1099 fi
691
567f5e66c7b8 We compile now if dev_t is a structure (eg. glibc+tcc).
Timo Sirainen <tss@iki.fi>
parents: 679
diff changeset
1100
739
f50714973d0b RLIMIT_AS isn't supported everywhere - use it if it exists, but also use
Timo Sirainen <tss@iki.fi>
parents: 733
diff changeset
1101 dnl * Do we have RLIMIT_AS?
10014
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1102 AC_CACHE_CHECK([whether RLIMIT_AS exists],i_cv_have_rlimit_as,[
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1103 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1104 #include <sys/types.h>
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1105 #include <sys/time.h>
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1106 #include <sys/resource.h>
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1107 ]], [[
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1108 struct rlimit r;
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1109 getrlimit(RLIMIT_AS, &r);
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1110 ]])],[
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1111 i_cv_have_rlimit_as=yes
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1112 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1113 i_cv_have_rlimit_as=no
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1114 ])
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1115 ])
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1116
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1117 if test $i_cv_have_rlimit_as = yes; then
742
b3dd87844fff acconfig.h is deprecated with autoconf 2.5, changed configure to contain
Timo Sirainen <tss@iki.fi>
parents: 739
diff changeset
1118 AC_DEFINE(HAVE_RLIMIT_AS,, Define if you have RLIMIT_AS for setrlimit())
10014
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1119 fi
739
f50714973d0b RLIMIT_AS isn't supported everywhere - use it if it exists, but also use
Timo Sirainen <tss@iki.fi>
parents: 733
diff changeset
1120
1065
6cb5b50aea71 Don't let login process fork()
Timo Sirainen <tss@iki.fi>
parents: 1058
diff changeset
1121 dnl * Do we have RLIMIT_NPROC?
10014
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1122 AC_CACHE_CHECK([whether RLIMIT_NPROC exists],i_cv_have_rlimit_nproc,[
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1123 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1124 #include <sys/types.h>
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1125 #include <sys/time.h>
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1126 #include <sys/resource.h>
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1127 ]], [[
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1128 struct rlimit r;
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1129 getrlimit(RLIMIT_NPROC, &r);
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1130 ]])],[
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1131 i_cv_have_rlimit_nproc=yes
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1132 ],[
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1133 i_cv_have_rlimit_nproc=no
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1134 ])
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1135 ])
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1136
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1137 if test $i_cv_have_rlimit_nproc = yes; then
1065
6cb5b50aea71 Don't let login process fork()
Timo Sirainen <tss@iki.fi>
parents: 1058
diff changeset
1138 AC_DEFINE(HAVE_RLIMIT_NPROC,, Define if you have RLIMIT_NPROC for setrlimit())
10014
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1139 fi
1065
6cb5b50aea71 Don't let login process fork()
Timo Sirainen <tss@iki.fi>
parents: 1058
diff changeset
1140
7946
aad49536db41 If core dump limit is 0, add "core dumps disabled" to startup log line.
Timo Sirainen <tss@iki.fi>
parents: 7929
diff changeset
1141 dnl * Do we have RLIMIT_CORE?
10014
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1142 AC_CACHE_CHECK([whether RLIMIT_CORE exists],i_cv_have_rlimit_core,[
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1143 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1144 #include <sys/types.h>
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1145 #include <sys/time.h>
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1146 #include <sys/resource.h>
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1147 ]], [[
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1148 struct rlimit r;
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1149 getrlimit(RLIMIT_CORE, &r);
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1150 ]])],[
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1151 i_cv_have_rlimit_core=yes
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1152 ],[
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1153 i_cv_have_rlimit_core=no
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1154 ])
8798
c9381a0fdc5e Improved logging for core dumping. With Linux use PR_SET_DUMPABLE for imap/pop3.
Timo Sirainen <tss@iki.fi>
parents: 8743
diff changeset
1155 ])
c9381a0fdc5e Improved logging for core dumping. With Linux use PR_SET_DUMPABLE for imap/pop3.
Timo Sirainen <tss@iki.fi>
parents: 8743
diff changeset
1156
10014
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1157 if test $i_cv_have_rlimit_core = yes; then
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1158 AC_DEFINE(HAVE_RLIMIT_CORE,, Define if you have RLIMIT_CORE for getrlimit())
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1159 fi
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1160
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1161 AC_CACHE_CHECK([whether PR_SET_DUMPABLE exists],i_cv_have_pr_set_dumpable,[
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1162 AC_TRY_LINK([
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1163 #include <sys/prctl.h>
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1164 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1165 prctl(PR_SET_DUMPABLE, 1, 0, 0, 0);
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1166 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1167 i_cv_have_pr_set_dumpable=yes
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1168 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1169 i_cv_have_pr_set_dumpable=no
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1170 ])
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1171 ])
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1172 if test $i_cv_have_pr_set_dumpable = yes; then
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1173 AC_DEFINE(HAVE_PR_SET_DUMPABLE,, Define if you have prctl(PR_SET_DUMPABLE))
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1174 fi
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1175
528
a95b1ccff82e Support FreeBSD-compatible sendfile(). Completely untested.
Timo Sirainen <tss@iki.fi>
parents: 494
diff changeset
1176 dnl * Linux compatible mremap()
10014
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1177 AC_CACHE_CHECK([Linux compatible mremap()],i_cv_have_linux_mremap,[
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1178 AC_TRY_LINK([
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1179 #include <unistd.h>
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1180 #define __USE_GNU
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1181 #include <sys/mman.h>
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1182 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1183 mremap(0, 0, 0, MREMAP_MAYMOVE);
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1184 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1185 i_cv_have_linux_mremap=yes
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1186 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1187 i_cv_have_linux_mremap=no
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1188 ])
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1189 ])
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1190 if test $i_cv_have_linux_mremap = yes; then
742
b3dd87844fff acconfig.h is deprecated with autoconf 2.5, changed configure to contain
Timo Sirainen <tss@iki.fi>
parents: 739
diff changeset
1191 AC_DEFINE(HAVE_LINUX_MREMAP,, Define if you have Linux-compatible mremap())
10014
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1192 fi
224
e8863d6088fe mremap() check
Timo Sirainen <tss@iki.fi>
parents: 191
diff changeset
1193
1622
d22e03714d36 index_mmap_invalidate = yes now invalidate memory maps before accessing
Timo Sirainen <tss@iki.fi>
parents: 1611
diff changeset
1194 dnl * If mmap() plays nicely with write()
7555
47c5e52c1181 Prefix AC_CACHE_CHECK variables with i_cv_.
Timo Sirainen <tss@iki.fi>
parents: 7554
diff changeset
1195 AC_CACHE_CHECK([whether shared mmaps get updated by write()s],i_cv_mmap_plays_with_write,[
2349
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
1196 AC_TRY_RUN([
5165
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1197 #include <stdio.h>
2349
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
1198 #include <sys/types.h>
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
1199 #include <sys/stat.h>
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
1200 #include <unistd.h>
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
1201 #include <fcntl.h>
5165
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1202 #include <sys/mman.h>
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1203 int main() {
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1204 /* return 0 if we're signed */
8226
3e493fd3a9fa configure: create test files with mode 0600.
Timo Sirainen <tss@iki.fi>
parents: 8173
diff changeset
1205 int f = open("conftest.mmap", O_RDWR|O_CREAT|O_TRUNC, 0600);
5165
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1206 void *mem;
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1207 if (f == -1) {
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1208 perror("open()");
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1209 return 1;
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1210 }
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1211 unlink("conftest.mmap");
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1212
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1213 write(f, "1", 2);
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1214 mem = mmap(NULL, 2, PROT_READ|PROT_WRITE, MAP_SHARED, f, 0);
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1215 if (mem == MAP_FAILED) {
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1216 perror("mmap()");
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1217 return 1;
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1218 }
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1219 strcpy(mem, "2");
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1220 msync(mem, 2, MS_SYNC);
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1221 lseek(f, 0, SEEK_SET);
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1222 write(f, "3", 2);
2349
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
1223
5165
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1224 return strcmp(mem, "3") == 0 ? 0 : 1;
2349
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
1225 }
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
1226 ], [
7555
47c5e52c1181 Prefix AC_CACHE_CHECK variables with i_cv_.
Timo Sirainen <tss@iki.fi>
parents: 7554
diff changeset
1227 i_cv_mmap_plays_with_write=yes
2349
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
1228 ], [
7555
47c5e52c1181 Prefix AC_CACHE_CHECK variables with i_cv_.
Timo Sirainen <tss@iki.fi>
parents: 7554
diff changeset
1229 i_cv_mmap_plays_with_write=no
5165
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1230 ])
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1231 ])
7555
47c5e52c1181 Prefix AC_CACHE_CHECK variables with i_cv_.
Timo Sirainen <tss@iki.fi>
parents: 7554
diff changeset
1232 if test $i_cv_mmap_plays_with_write = no; then
5165
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1233 AC_DEFINE(MMAP_CONFLICTS_WRITE,, [Define if shared mmaps don't get updated by write()s])
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1234 fi
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1235
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1236 dnl * see if fd passing works
7555
47c5e52c1181 Prefix AC_CACHE_CHECK variables with i_cv_.
Timo Sirainen <tss@iki.fi>
parents: 7554
diff changeset
1237 AC_CACHE_CHECK([whether fd passing works],i_cv_fd_passing,[
5165
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1238 for i in 1 2; do
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1239 old_cflags="$CFLAGS"
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1240 CFLAGS="$CFLAGS -I$srcdir/src/lib $srcdir/src/lib/fdpass.c"
2349
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
1241 if test $i = 2; then
5165
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1242 CFLAGS="$CFLAGS -DBUGGY_CMSG_MACROS"
2349
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
1243 fi
5165
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1244
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1245 AC_TRY_RUN([
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1246 #include <sys/types.h>
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1247 #include <sys/socket.h>
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1248 #include <sys/wait.h>
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1249 #include <sys/stat.h>
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1250 #include <unistd.h>
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1251 #include <fcntl.h>
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1252 #include "fdpass.h"
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1253
8578
729576bb91d8 Some versions of Mac OS X have buggy CMSG_* macros, avoid using them.
Timo Sirainen <tss@iki.fi>
parents: 8572
diff changeset
1254 int nopen(void)
729576bb91d8 Some versions of Mac OS X have buggy CMSG_* macros, avoid using them.
Timo Sirainen <tss@iki.fi>
parents: 8572
diff changeset
1255 {
729576bb91d8 Some versions of Mac OS X have buggy CMSG_* macros, avoid using them.
Timo Sirainen <tss@iki.fi>
parents: 8572
diff changeset
1256 int i, n;
729576bb91d8 Some versions of Mac OS X have buggy CMSG_* macros, avoid using them.
Timo Sirainen <tss@iki.fi>
parents: 8572
diff changeset
1257 struct stat sb;
729576bb91d8 Some versions of Mac OS X have buggy CMSG_* macros, avoid using them.
Timo Sirainen <tss@iki.fi>
parents: 8572
diff changeset
1258 for (i = n = 0; i < 256; i++)
729576bb91d8 Some versions of Mac OS X have buggy CMSG_* macros, avoid using them.
Timo Sirainen <tss@iki.fi>
parents: 8572
diff changeset
1259 if (fstat(i, &sb) == 0) n++;
729576bb91d8 Some versions of Mac OS X have buggy CMSG_* macros, avoid using them.
Timo Sirainen <tss@iki.fi>
parents: 8572
diff changeset
1260 return n;
729576bb91d8 Some versions of Mac OS X have buggy CMSG_* macros, avoid using them.
Timo Sirainen <tss@iki.fi>
parents: 8572
diff changeset
1261 }
5165
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1262 int main(void)
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1263 {
8578
729576bb91d8 Some versions of Mac OS X have buggy CMSG_* macros, avoid using them.
Timo Sirainen <tss@iki.fi>
parents: 8572
diff changeset
1264 int fd[2], send_fd, recv_fd, status, n1, n2;
5165
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1265 struct stat st, st2;
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1266 char data;
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1267
8226
3e493fd3a9fa configure: create test files with mode 0600.
Timo Sirainen <tss@iki.fi>
parents: 8173
diff changeset
1268 send_fd = creat("conftest.fdpass", 0600);
5165
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1269 if (send_fd == -1) return 2;
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1270 unlink("conftest.fdpass");
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1271 if (fstat(send_fd, &st) < 0) return 2;
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1272 if (socketpair(AF_UNIX, SOCK_STREAM, 0, fd) < 0) return 2;
8578
729576bb91d8 Some versions of Mac OS X have buggy CMSG_* macros, avoid using them.
Timo Sirainen <tss@iki.fi>
parents: 8572
diff changeset
1273 n1 = nopen();
5165
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1274
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1275 switch (fork()) {
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1276 case -1:
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1277 return 2;
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1278 case 0:
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1279 alarm(1);
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1280 if (fd_send(fd[0], send_fd, &data, 1) != 1) return 2;
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1281 return 0;
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1282 default:
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1283 alarm(2);
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1284 if (wait(&status) == -1)
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1285 return 2;
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1286 if (status != 0)
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1287 return status;
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1288 if (fd_read(fd[1], &data, 1, &recv_fd) != 1) return 1;
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1289 if (fstat(recv_fd, &st2) < 0) return 2;
8578
729576bb91d8 Some versions of Mac OS X have buggy CMSG_* macros, avoid using them.
Timo Sirainen <tss@iki.fi>
parents: 8572
diff changeset
1290 /* nopen check is for making sure that only a single fd
729576bb91d8 Some versions of Mac OS X have buggy CMSG_* macros, avoid using them.
Timo Sirainen <tss@iki.fi>
parents: 8572
diff changeset
1291 was received */
729576bb91d8 Some versions of Mac OS X have buggy CMSG_* macros, avoid using them.
Timo Sirainen <tss@iki.fi>
parents: 8572
diff changeset
1292 n2 = nopen();
729576bb91d8 Some versions of Mac OS X have buggy CMSG_* macros, avoid using them.
Timo Sirainen <tss@iki.fi>
parents: 8572
diff changeset
1293 return st.st_ino == st2.st_ino && n2 == n1 + 1 ? 0 : 1;
5165
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1294 }
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1295 }
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1296 ], [
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1297 CFLAGS=$old_cflags
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1298 if test $i = 2; then
7555
47c5e52c1181 Prefix AC_CACHE_CHECK variables with i_cv_.
Timo Sirainen <tss@iki.fi>
parents: 7554
diff changeset
1299 i_cv_fd_passing=buggy_cmsg_macros
5165
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1300 else
7555
47c5e52c1181 Prefix AC_CACHE_CHECK variables with i_cv_.
Timo Sirainen <tss@iki.fi>
parents: 7554
diff changeset
1301 i_cv_fd_passing=yes
5165
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1302 fi
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1303 break
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1304 ], [
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1305 dnl no, try with BUGGY_CMSG_MACROS
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1306 CFLAGS=$old_cflags
7555
47c5e52c1181 Prefix AC_CACHE_CHECK variables with i_cv_.
Timo Sirainen <tss@iki.fi>
parents: 7554
diff changeset
1307 i_cv_fd_passing=no
5165
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1308 ])
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1309 done
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1310 ]);
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1311
8578
729576bb91d8 Some versions of Mac OS X have buggy CMSG_* macros, avoid using them.
Timo Sirainen <tss@iki.fi>
parents: 8572
diff changeset
1312 case "$host_os" in
729576bb91d8 Some versions of Mac OS X have buggy CMSG_* macros, avoid using them.
Timo Sirainen <tss@iki.fi>
parents: 8572
diff changeset
1313 darwin[[1-9]].*)
729576bb91d8 Some versions of Mac OS X have buggy CMSG_* macros, avoid using them.
Timo Sirainen <tss@iki.fi>
parents: 8572
diff changeset
1314 if test "$i_cv_fd_passing" = "yes"; then
729576bb91d8 Some versions of Mac OS X have buggy CMSG_* macros, avoid using them.
Timo Sirainen <tss@iki.fi>
parents: 8572
diff changeset
1315 i_cv_fd_passing=buggy_cmsg_macros
729576bb91d8 Some versions of Mac OS X have buggy CMSG_* macros, avoid using them.
Timo Sirainen <tss@iki.fi>
parents: 8572
diff changeset
1316 fi
729576bb91d8 Some versions of Mac OS X have buggy CMSG_* macros, avoid using them.
Timo Sirainen <tss@iki.fi>
parents: 8572
diff changeset
1317 ;;
729576bb91d8 Some versions of Mac OS X have buggy CMSG_* macros, avoid using them.
Timo Sirainen <tss@iki.fi>
parents: 8572
diff changeset
1318 esac
729576bb91d8 Some versions of Mac OS X have buggy CMSG_* macros, avoid using them.
Timo Sirainen <tss@iki.fi>
parents: 8572
diff changeset
1319
7555
47c5e52c1181 Prefix AC_CACHE_CHECK variables with i_cv_.
Timo Sirainen <tss@iki.fi>
parents: 7554
diff changeset
1320 if test $i_cv_fd_passing = buggy_cmsg_macros; then
5165
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1321 AC_DEFINE(BUGGY_CMSG_MACROS,, Define if you have buggy CMSG macros)
04bdc7c83854 Added AC_CACHE_CHECK()s to all AC_TRY_RUN and AC_RUN_IFELSE checks so that
Timo Sirainen <tss@iki.fi>
parents: 5103
diff changeset
1322 fi
11839
8cf47a359213 configure: If fd passing check fails, abort
Timo Sirainen <tss@iki.fi>
parents: 11820
diff changeset
1323 if test $i_cv_fd_passing = no; then
8cf47a359213 configure: If fd passing check fails, abort
Timo Sirainen <tss@iki.fi>
parents: 11820
diff changeset
1324 AC_ERROR([fd passing is required for Dovecot to work])
8cf47a359213 configure: If fd passing check fails, abort
Timo Sirainen <tss@iki.fi>
parents: 11820
diff changeset
1325 fi
1622
d22e03714d36 index_mmap_invalidate = yes now invalidate memory maps before accessing
Timo Sirainen <tss@iki.fi>
parents: 1611
diff changeset
1326
2035
0e65efd14eda Solaris: Move from sendfilev() to sendfile() (was it always there?). Make
Timo Sirainen <tss@iki.fi>
parents: 2028
diff changeset
1327 dnl * Solaris compatible sendfile()
0e65efd14eda Solaris: Move from sendfilev() to sendfile() (was it always there?). Make
Timo Sirainen <tss@iki.fi>
parents: 2028
diff changeset
1328 AC_CHECK_LIB(sendfile, sendfile, [
976
b3e0f857981c Support for Solaris sendfilev(). Entirely untested, hope it works.
Timo Sirainen <tss@iki.fi>
parents: 975
diff changeset
1329 LIBS="$LIBS -lsendfile"
2035
0e65efd14eda Solaris: Move from sendfilev() to sendfile() (was it always there?). Make
Timo Sirainen <tss@iki.fi>
parents: 2028
diff changeset
1330 AC_DEFINE(HAVE_SOLARIS_SENDFILE,, Define if you have Solaris-compatible sendfile())
976
b3e0f857981c Support for Solaris sendfilev(). Entirely untested, hope it works.
Timo Sirainen <tss@iki.fi>
parents: 975
diff changeset
1331 ], [
981
7e9b90bfe78c If Solaris sendfilev() is found, don't try checking for Linux one. Linux
Timo Sirainen <tss@iki.fi>
parents: 976
diff changeset
1332 dnl * Linux compatible sendfile() - don't check if Solaris one was found.
7e9b90bfe78c If Solaris sendfilev() is found, don't try checking for Linux one. Linux
Timo Sirainen <tss@iki.fi>
parents: 976
diff changeset
1333 dnl * This seems to pass with Solaris for some reason..
10014
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1334 AC_CACHE_CHECK([Linux compatible sendfile()],i_cv_have_linux_sendfile,[
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1335 AC_TRY_LINK([
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1336 #undef _FILE_OFFSET_BITS
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1337 #include <sys/types.h>
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1338 #include <sys/socket.h>
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1339 #include <sys/sendfile.h>
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1340 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1341 sendfile(0, 0, (void *) 0, 0);
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1342 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1343 i_cv_have_linux_sendfile=yes
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1344 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1345 i_cv_have_linux_sendfile=no
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1346 ])
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1347 ])
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1348 if test $i_cv_have_linux_sendfile = yes; then
981
7e9b90bfe78c If Solaris sendfilev() is found, don't try checking for Linux one. Linux
Timo Sirainen <tss@iki.fi>
parents: 976
diff changeset
1349 AC_DEFINE(HAVE_LINUX_SENDFILE,, Define if you have Linux-compatible sendfile())
10014
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1350 fi
981
7e9b90bfe78c If Solaris sendfilev() is found, don't try checking for Linux one. Linux
Timo Sirainen <tss@iki.fi>
parents: 976
diff changeset
1351
7e9b90bfe78c If Solaris sendfilev() is found, don't try checking for Linux one. Linux
Timo Sirainen <tss@iki.fi>
parents: 976
diff changeset
1352 dnl * FreeBSD compatible sendfile()
10014
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1353 AC_CACHE_CHECK([FreeBSD compatible sendfile()],i_cv_have_freebsd_sendfile,[
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1354 AC_TRY_LINK([
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1355 #include <sys/types.h>
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1356 #include <sys/socket.h>
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1357 #include <sys/uio.h>
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1358 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1359 struct sf_hdtr hdtr;
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1360 sendfile(0, 0, 0, 0, &hdtr, (void *) 0, 0);
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1361 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1362 i_cv_have_freebsd_sendfile=yes
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1363 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1364 i_cv_have_freebsd_sendfile=no
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1365 ])
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1366 ])
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1367 if test $i_cv_have_freebsd_sendfile = yes; then
981
7e9b90bfe78c If Solaris sendfilev() is found, don't try checking for Linux one. Linux
Timo Sirainen <tss@iki.fi>
parents: 976
diff changeset
1368 AC_DEFINE(HAVE_FREEBSD_SENDFILE,, Define if you have FreeBSD-compatible sendfile())
10014
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1369 fi
976
b3e0f857981c Support for Solaris sendfilev(). Entirely untested, hope it works.
Timo Sirainen <tss@iki.fi>
parents: 975
diff changeset
1370 ])
b3e0f857981c Support for Solaris sendfilev(). Entirely untested, hope it works.
Timo Sirainen <tss@iki.fi>
parents: 975
diff changeset
1371
10491
617fa0739538 Compile fix for systems where unsetenv() returns void.
Timo Sirainen <tss@iki.fi>
parents: 10489
diff changeset
1372 AC_CACHE_CHECK([if unsetenv returns int],i_cv_unsetenv_ret_int,[
617fa0739538 Compile fix for systems where unsetenv() returns void.
Timo Sirainen <tss@iki.fi>
parents: 10489
diff changeset
1373 AC_TRY_COMPILE([
617fa0739538 Compile fix for systems where unsetenv() returns void.
Timo Sirainen <tss@iki.fi>
parents: 10489
diff changeset
1374 #include <stdlib.h>
617fa0739538 Compile fix for systems where unsetenv() returns void.
Timo Sirainen <tss@iki.fi>
parents: 10489
diff changeset
1375 ], [
617fa0739538 Compile fix for systems where unsetenv() returns void.
Timo Sirainen <tss@iki.fi>
parents: 10489
diff changeset
1376 if (unsetenv("env") < 0) ;
617fa0739538 Compile fix for systems where unsetenv() returns void.
Timo Sirainen <tss@iki.fi>
parents: 10489
diff changeset
1377 ], [
617fa0739538 Compile fix for systems where unsetenv() returns void.
Timo Sirainen <tss@iki.fi>
parents: 10489
diff changeset
1378 i_cv_unsetenv_ret_int=yes
617fa0739538 Compile fix for systems where unsetenv() returns void.
Timo Sirainen <tss@iki.fi>
parents: 10489
diff changeset
1379 ], [
617fa0739538 Compile fix for systems where unsetenv() returns void.
Timo Sirainen <tss@iki.fi>
parents: 10489
diff changeset
1380 i_cv_unsetenv_ret_int=no
617fa0739538 Compile fix for systems where unsetenv() returns void.
Timo Sirainen <tss@iki.fi>
parents: 10489
diff changeset
1381 ])
617fa0739538 Compile fix for systems where unsetenv() returns void.
Timo Sirainen <tss@iki.fi>
parents: 10489
diff changeset
1382 ])
617fa0739538 Compile fix for systems where unsetenv() returns void.
Timo Sirainen <tss@iki.fi>
parents: 10489
diff changeset
1383 if test $i_cv_unsetenv_ret_int = yes; then
617fa0739538 Compile fix for systems where unsetenv() returns void.
Timo Sirainen <tss@iki.fi>
parents: 10489
diff changeset
1384 AC_DEFINE(UNSETENV_RET_INT,, Define if unsetenv() returns int)
617fa0739538 Compile fix for systems where unsetenv() returns void.
Timo Sirainen <tss@iki.fi>
parents: 10489
diff changeset
1385 fi
617fa0739538 Compile fix for systems where unsetenv() returns void.
Timo Sirainen <tss@iki.fi>
parents: 10489
diff changeset
1386
3590
340e1b87c27b Added check for _XPG6 macro for crypt().
Timo Sirainen <tss@iki.fi>
parents: 3575
diff changeset
1387 dnl * Check for crypt() if unistd.h compiles with _XOPEN_SOURCE + _XPG6
340e1b87c27b Added check for _XPG6 macro for crypt().
Timo Sirainen <tss@iki.fi>
parents: 3575
diff changeset
1388 dnl * Add other macros there too "just in case".
10014
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1389 AC_CACHE_CHECK([if we should use _XPG6 macro for crypt()],i_cv_use_xpg6_crypt,[
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1390 AC_TRY_COMPILE([
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1391 #define _XOPEN_SOURCE 4
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1392 #define _XOPEN_SOURCE_EXTENDED 1
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1393 #define _XOPEN_VERSION 4
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1394 #define _XPG4_2
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1395 #define _XPG6
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1396 #include <unistd.h>
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1397 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1398 crypt("a", "b");
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1399 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1400 i_cv_use_xpg6_crypt=yes
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1401 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1402 i_cv_use_xpg6_crypt=no
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1403 ])
3590
340e1b87c27b Added check for _XPG6 macro for crypt().
Timo Sirainen <tss@iki.fi>
parents: 3575
diff changeset
1404 ])
10014
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1405 if test $i_cv_use_xpg6_crypt = yes; then
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1406 AC_DEFINE(CRYPT_USE_XPG6,, Define if _XPG6 macro is needed for crypt())
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1407 fi
7526
a957567706ec Replaced HAVE_ST_NSEC macro checks with more generic ST_?TIME_NSEC() macros
Timo Sirainen <tss@iki.fi>
parents: 7502
diff changeset
1408
10014
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1409 AC_CACHE_CHECK([if struct stat has st_?tim timespec fields],i_cv_have_st_tim_timespec,[
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1410 AC_TRY_COMPILE([
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1411 #include <sys/types.h>
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1412 #include <sys/stat.h>
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1413 #include <unistd.h>
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1414 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1415 struct stat st;
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1416 unsigned long x = st.st_mtim.tv_nsec;
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1417
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1418 return 0;
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1419 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1420 i_cv_have_st_tim_timespec=yes
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1421 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1422 i_cv_have_st_tim_timespec=no
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1423 ])
5375
94f043494a12 Check if struct stat has tv_nsec fields
Timo Sirainen <tss@iki.fi>
parents: 5359
diff changeset
1424 ])
10014
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1425 if test $i_cv_have_st_tim_timespec = yes; then
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1426 AC_DEFINE(HAVE_STAT_XTIM,, Define if you have st_?tim timespec fields in struct stat)
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1427 fi
5375
94f043494a12 Check if struct stat has tv_nsec fields
Timo Sirainen <tss@iki.fi>
parents: 5359
diff changeset
1428
10014
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1429 AC_CACHE_CHECK([if struct stat has st_?timespec fields],i_cv_have_st_timespec,[
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1430 AC_TRY_COMPILE([
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1431 #include <sys/types.h>
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1432 #include <sys/stat.h>
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1433 #include <unistd.h>
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1434 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1435 struct stat st;
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1436 unsigned long x = st.st_mtimespec.tv_nsec;
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1437
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1438 return 0;
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1439 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1440 i_cv_have_st_timespec=yes
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1441 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1442 i_cv_have_st_timespec=no
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1443 ])
4736
6789961fe02e Added support for statvfs(), which is what the newer BSDs use.
Timo Sirainen <tss@iki.fi>
parents: 4645
diff changeset
1444 ])
10014
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1445 if test $i_cv_have_st_timespec = yes; then
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1446 AC_DEFINE(HAVE_STAT_XTIMESPEC,, Define if you have st_?timespec fields in struct stat)
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1447 fi
4736
6789961fe02e Added support for statvfs(), which is what the newer BSDs use.
Timo Sirainen <tss@iki.fi>
parents: 4645
diff changeset
1448
6789961fe02e Added support for statvfs(), which is what the newer BSDs use.
Timo Sirainen <tss@iki.fi>
parents: 4645
diff changeset
1449 dnl * Check if statvfs() can be used to find out block device for files
10014
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1450 AC_CACHE_CHECK([if statvfs.f_mntfromname exists],i_cv_have_statvfs_f_mntfromname,[
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1451 AC_TRY_COMPILE([
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1452 #include <sys/types.h>
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1453 #include <sys/statvfs.h>
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1454 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1455 struct statvfs buf;
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1456 char *p = buf.f_mntfromname;
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1457
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1458 statvfs(".", &buf);
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1459 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1460 i_cv_have_statvfs_f_mntfromname=yes
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1461 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1462 i_cv_have_statvfs_f_mntfromname=no
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1463 ])
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1464 ])
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1465 if test $i_cv_have_statvfs_f_mntfromname = yes; then
4736
6789961fe02e Added support for statvfs(), which is what the newer BSDs use.
Timo Sirainen <tss@iki.fi>
parents: 4645
diff changeset
1466 AC_DEFINE(HAVE_STATVFS_MNTFROMNAME,, Define if you have statvfs.f_mntfromname)
10014
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1467 fi
4736
6789961fe02e Added support for statvfs(), which is what the newer BSDs use.
Timo Sirainen <tss@iki.fi>
parents: 4645
diff changeset
1468
3745
840cc63e439b Don't allow giving invalid notify methods in --with-notify
Timo Sirainen <tss@iki.fi>
parents: 3744
diff changeset
1469 dnl * Check if statfs() can be used to find out block device for files
10014
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1470 AC_CACHE_CHECK([if statfs.f_mntfromname exists],i_cv_have_statfs_f_mntfromname,[
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1471 AC_TRY_COMPILE([
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1472 #include <sys/param.h>
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1473 #include <sys/mount.h>
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1474 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1475 struct statfs buf;
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1476 char *p = buf.f_mntfromname;
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1477
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1478 statfs(".", &buf);
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1479 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1480 i_cv_have_statfs_f_mntfromname=yes
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1481 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1482 i_cv_have_statfs_f_mntfromname=no
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1483 ])
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1484 ])
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1485 if test $i_cv_have_statfs_f_mntfromname = yes; then
3745
840cc63e439b Don't allow giving invalid notify methods in --with-notify
Timo Sirainen <tss@iki.fi>
parents: 3744
diff changeset
1486 AC_DEFINE(HAVE_STATFS_MNTFROMNAME,, Define if you have statfs.f_mntfromname)
10014
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1487 fi
3745
840cc63e439b Don't allow giving invalid notify methods in --with-notify
Timo Sirainen <tss@iki.fi>
parents: 3744
diff changeset
1488
4552
ef71b2fdd433 Put back specific checks for struct dqblk.dqb_curblocks vs curspace. The
Timo Sirainen <tss@iki.fi>
parents: 4551
diff changeset
1489 dnl * Check if we have struct dqblk.dqb_curblocks
10014
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1490 AC_CACHE_CHECK([if struct dqblk.dqb_curblocks exists],i_cv_have_dqblk_dqb_curblocks,[
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1491 AC_TRY_COMPILE([
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1492 #include <sys/types.h>
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1493 #include "$srcdir/src/plugins/quota/quota-fs.h"
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1494 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1495 struct dqblk dqblk;
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1496 unsigned int x = dqblk.dqb_curblocks;
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1497 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1498 i_cv_have_dqblk_dqb_curblocks=yes
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1499 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1500 i_cv_have_dqblk_dqb_curblocks=no
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1501 ])
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1502 ])
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1503 if test $i_cv_have_dqblk_dqb_curblocks = yes; then
4552
ef71b2fdd433 Put back specific checks for struct dqblk.dqb_curblocks vs curspace. The
Timo Sirainen <tss@iki.fi>
parents: 4551
diff changeset
1504 AC_DEFINE(HAVE_STRUCT_DQBLK_CURBLOCKS,, Define if struct sqblk.dqb_curblocks exists)
10014
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1505 fi
4552
ef71b2fdd433 Put back specific checks for struct dqblk.dqb_curblocks vs curspace. The
Timo Sirainen <tss@iki.fi>
parents: 4551
diff changeset
1506
ef71b2fdd433 Put back specific checks for struct dqblk.dqb_curblocks vs curspace. The
Timo Sirainen <tss@iki.fi>
parents: 4551
diff changeset
1507 dnl * Check if we have struct dqblk.dqb_curspace
10014
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1508 AC_CACHE_CHECK([if struct dqblk.dqb_curspace exists],i_cv_have_dqblk_dqb_curspace,[
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1509 AC_TRY_COMPILE([
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1510 #include <sys/types.h>
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1511 #include "$srcdir/src/plugins/quota/quota-fs.h"
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1512 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1513 struct dqblk dqblk;
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1514 unsigned int x = dqblk.dqb_curspace;
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1515 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1516 i_cv_have_dqblk_dqb_curspace=yes
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1517 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1518 i_cv_have_dqblk_dqb_curspace=no
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1519 ])
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1520 ])
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1521 if test $i_cv_have_dqblk_dqb_curspace = yes; then
4552
ef71b2fdd433 Put back specific checks for struct dqblk.dqb_curblocks vs curspace. The
Timo Sirainen <tss@iki.fi>
parents: 4551
diff changeset
1522 AC_DEFINE(HAVE_STRUCT_DQBLK_CURSPACE,, Define if struct sqblk.dqb_curspace exists)
10014
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1523 fi
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1524
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1525 dnl * Check if we have Q_QUOTACTL ioctl (Solaris)
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1526 AC_CACHE_CHECK([if Q_QUOTACTL ioctl exists],i_cv_have_ioctl_q_quotactl,[
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1527 AC_TRY_COMPILE([
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1528 #include <sys/types.h>
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1529 #include <sys/fs/ufs_quota.h>
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1530 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1531 struct quotctl ctl;
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1532 ioctl(0, Q_QUOTACTL, &ctl);
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1533 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1534 i_cv_have_ioctl_q_quotactl=yes
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1535 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1536 i_cv_have_ioctl_q_quotactl=no
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1537 ])
4552
ef71b2fdd433 Put back specific checks for struct dqblk.dqb_curblocks vs curspace. The
Timo Sirainen <tss@iki.fi>
parents: 4551
diff changeset
1538 ])
ef71b2fdd433 Put back specific checks for struct dqblk.dqb_curblocks vs curspace. The
Timo Sirainen <tss@iki.fi>
parents: 4551
diff changeset
1539
10014
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1540 if test $i_cv_have_ioctl_q_quotactl = yes; then
4063
f60237ad2edd Support Solaris's ioctl(Q_QUOTACTL).
Timo Sirainen <tss@iki.fi>
parents: 4057
diff changeset
1541 AC_DEFINE(HAVE_Q_QUOTACTL,, Define if Q_QUOTACTL exists)
10014
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
1542 fi
4063
f60237ad2edd Support Solaris's ioctl(Q_QUOTACTL).
Timo Sirainen <tss@iki.fi>
parents: 4057
diff changeset
1543
859
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1544 dnl ***
5681
09415e6a0892 Require C99 compatible vsnprintf(). Removed printf_string_upper_bound() and
Timo Sirainen <tss@iki.fi>
parents: 5633
diff changeset
1545 dnl *** C99 vsnprintf()?
09415e6a0892 Require C99 compatible vsnprintf(). Removed printf_string_upper_bound() and
Timo Sirainen <tss@iki.fi>
parents: 5633
diff changeset
1546 dnl ***
09415e6a0892 Require C99 compatible vsnprintf(). Removed printf_string_upper_bound() and
Timo Sirainen <tss@iki.fi>
parents: 5633
diff changeset
1547
7555
47c5e52c1181 Prefix AC_CACHE_CHECK variables with i_cv_.
Timo Sirainen <tss@iki.fi>
parents: 7554
diff changeset
1548 AC_CACHE_CHECK([for C99 vsnprintf()],i_cv_c99_vsnprintf,[
5681
09415e6a0892 Require C99 compatible vsnprintf(). Removed printf_string_upper_bound() and
Timo Sirainen <tss@iki.fi>
parents: 5633
diff changeset
1549 AC_RUN_IFELSE([AC_LANG_SOURCE([[
09415e6a0892 Require C99 compatible vsnprintf(). Removed printf_string_upper_bound() and
Timo Sirainen <tss@iki.fi>
parents: 5633
diff changeset
1550 #include <stdio.h>
09415e6a0892 Require C99 compatible vsnprintf(). Removed printf_string_upper_bound() and
Timo Sirainen <tss@iki.fi>
parents: 5633
diff changeset
1551 #include <stdarg.h>
09415e6a0892 Require C99 compatible vsnprintf(). Removed printf_string_upper_bound() and
Timo Sirainen <tss@iki.fi>
parents: 5633
diff changeset
1552 static int f(const char *fmt, ...) {
09415e6a0892 Require C99 compatible vsnprintf(). Removed printf_string_upper_bound() and
Timo Sirainen <tss@iki.fi>
parents: 5633
diff changeset
1553 va_list args;
09415e6a0892 Require C99 compatible vsnprintf(). Removed printf_string_upper_bound() and
Timo Sirainen <tss@iki.fi>
parents: 5633
diff changeset
1554 char buf[13];
09415e6a0892 Require C99 compatible vsnprintf(). Removed printf_string_upper_bound() and
Timo Sirainen <tss@iki.fi>
parents: 5633
diff changeset
1555 int ret;
09415e6a0892 Require C99 compatible vsnprintf(). Removed printf_string_upper_bound() and
Timo Sirainen <tss@iki.fi>
parents: 5633
diff changeset
1556
09415e6a0892 Require C99 compatible vsnprintf(). Removed printf_string_upper_bound() and
Timo Sirainen <tss@iki.fi>
parents: 5633
diff changeset
1557 va_start(args, fmt);
09415e6a0892 Require C99 compatible vsnprintf(). Removed printf_string_upper_bound() and
Timo Sirainen <tss@iki.fi>
parents: 5633
diff changeset
1558 ret = vsnprintf(buf, 11, fmt, args) != 12 || buf[11-1] != '\0';
09415e6a0892 Require C99 compatible vsnprintf(). Removed printf_string_upper_bound() and
Timo Sirainen <tss@iki.fi>
parents: 5633
diff changeset
1559 va_end(args);
09415e6a0892 Require C99 compatible vsnprintf(). Removed printf_string_upper_bound() and
Timo Sirainen <tss@iki.fi>
parents: 5633
diff changeset
1560 return ret;
09415e6a0892 Require C99 compatible vsnprintf(). Removed printf_string_upper_bound() and
Timo Sirainen <tss@iki.fi>
parents: 5633
diff changeset
1561 }
09415e6a0892 Require C99 compatible vsnprintf(). Removed printf_string_upper_bound() and
Timo Sirainen <tss@iki.fi>
parents: 5633
diff changeset
1562 int main() {
09415e6a0892 Require C99 compatible vsnprintf(). Removed printf_string_upper_bound() and
Timo Sirainen <tss@iki.fi>
parents: 5633
diff changeset
1563 return f("hello %s%d", "world", 1);
09415e6a0892 Require C99 compatible vsnprintf(). Removed printf_string_upper_bound() and
Timo Sirainen <tss@iki.fi>
parents: 5633
diff changeset
1564 }]])],
7555
47c5e52c1181 Prefix AC_CACHE_CHECK variables with i_cv_.
Timo Sirainen <tss@iki.fi>
parents: 7554
diff changeset
1565 [i_cv_c99_vsnprintf=yes],
7850
7f9f7fc02359 Support systems with non-C99 vsnprintf().
Timo Sirainen <tss@iki.fi>
parents: 7847
diff changeset
1566 [i_cv_c99_vsnprintf=no])
5681
09415e6a0892 Require C99 compatible vsnprintf(). Removed printf_string_upper_bound() and
Timo Sirainen <tss@iki.fi>
parents: 5633
diff changeset
1567 ])
7555
47c5e52c1181 Prefix AC_CACHE_CHECK variables with i_cv_.
Timo Sirainen <tss@iki.fi>
parents: 7554
diff changeset
1568 if test $i_cv_c99_vsnprintf = no; then
7850
7f9f7fc02359 Support systems with non-C99 vsnprintf().
Timo Sirainen <tss@iki.fi>
parents: 7847
diff changeset
1569 AC_DEFINE(HAVE_OLD_VSNPRINTF,, Define if you don't have C99 compatible vsnprintf() call)
5681
09415e6a0892 Require C99 compatible vsnprintf(). Removed printf_string_upper_bound() and
Timo Sirainen <tss@iki.fi>
parents: 5633
diff changeset
1570 fi
09415e6a0892 Require C99 compatible vsnprintf(). Removed printf_string_upper_bound() and
Timo Sirainen <tss@iki.fi>
parents: 5633
diff changeset
1571
09415e6a0892 Require C99 compatible vsnprintf(). Removed printf_string_upper_bound() and
Timo Sirainen <tss@iki.fi>
parents: 5633
diff changeset
1572 dnl ***
859
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1573 dnl *** va_copy checks (from GLIB)
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1574 dnl ***
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1575
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1576 AC_CACHE_CHECK([for an implementation of va_copy()],lib_cv_va_copy,[
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
1577 AC_RUN_IFELSE([AC_LANG_SOURCE([[
859
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1578 #include <stdarg.h>
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1579 void f (int i, ...) {
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1580 va_list args1, args2;
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1581 va_start (args1, i);
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1582 va_copy (args2, args1);
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1583 if (va_arg (args2, int) != 42 || va_arg (args1, int) != 42)
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1584 exit (1);
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1585 va_end (args1); va_end (args2);
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1586 }
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1587 int main() {
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1588 f (0, 42);
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1589 return 0;
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
1590 }]])],
859
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1591 [lib_cv_va_copy=yes],
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
1592 [lib_cv_va_copy=no],[])
859
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1593 ])
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1594 AC_CACHE_CHECK([for an implementation of __va_copy()],lib_cv___va_copy,[
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
1595 AC_RUN_IFELSE([AC_LANG_SOURCE([[
859
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1596 #include <stdarg.h>
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1597 void f (int i, ...) {
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1598 va_list args1, args2;
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1599 va_start (args1, i);
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1600 __va_copy (args2, args1);
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1601 if (va_arg (args2, int) != 42 || va_arg (args1, int) != 42)
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1602 exit (1);
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1603 va_end (args1); va_end (args2);
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1604 }
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1605 int main() {
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1606 f (0, 42);
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1607 return 0;
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
1608 }]])],
859
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1609 [lib_cv___va_copy=yes],
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
1610 [lib_cv___va_copy=no],[])
859
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1611 ])
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1612
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1613 if test "x$lib_cv_va_copy" = "xyes"; then
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1614 va_copy_func=va_copy
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1615 else if test "x$lib_cv___va_copy" = "xyes"; then
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1616 va_copy_func=__va_copy
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1617 fi
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1618 fi
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1619
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1620 if test -n "$va_copy_func"; then
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1621 AC_DEFINE_UNQUOTED(VA_COPY,$va_copy_func,[A 'va_copy' style function])
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1622 fi
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1623
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1624 AC_CACHE_CHECK([whether va_lists can be copied by value],lib_cv_va_val_copy,[
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
1625 AC_RUN_IFELSE([AC_LANG_SOURCE([[
859
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1626 #include <stdarg.h>
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1627 void f (int i, ...) {
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1628 va_list args1, args2;
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1629 va_start (args1, i);
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1630 args2 = args1;
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1631 if (va_arg (args2, int) != 42 || va_arg (args1, int) != 42)
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1632 exit (1);
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1633 va_end (args1); va_end (args2);
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1634 }
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1635 int main() {
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1636 f (0, 42);
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1637 return 0;
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
1638 }]])],
859
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1639 [lib_cv_va_val_copy=yes],
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
1640 [lib_cv_va_val_copy=no],[])
859
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1641 ])
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1642
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1643 if test "x$lib_cv_va_val_copy" = "xno"; then
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1644 AC_DEFINE(VA_COPY_AS_ARRAY,1, ['va_lists' cannot be copies as values])
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1645 fi
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1646
7958
adb7d13d7d97 When checking for -lssl, include -ldl if it exists. OpenSSL 0.9.8 uses it.
Timo Sirainen <tss@iki.fi>
parents: 7946
diff changeset
1647 dnl * dynamic modules?
adb7d13d7d97 When checking for -lssl, include -ldl if it exists. OpenSSL 0.9.8 uses it.
Timo Sirainen <tss@iki.fi>
parents: 7946
diff changeset
1648 have_modules=no
adb7d13d7d97 When checking for -lssl, include -ldl if it exists. OpenSSL 0.9.8 uses it.
Timo Sirainen <tss@iki.fi>
parents: 7946
diff changeset
1649 AC_CHECK_FUNC(dlopen, [
adb7d13d7d97 When checking for -lssl, include -ldl if it exists. OpenSSL 0.9.8 uses it.
Timo Sirainen <tss@iki.fi>
parents: 7946
diff changeset
1650 have_modules=yes
adb7d13d7d97 When checking for -lssl, include -ldl if it exists. OpenSSL 0.9.8 uses it.
Timo Sirainen <tss@iki.fi>
parents: 7946
diff changeset
1651 MODULE_LIBS="-export-dynamic"
adb7d13d7d97 When checking for -lssl, include -ldl if it exists. OpenSSL 0.9.8 uses it.
Timo Sirainen <tss@iki.fi>
parents: 7946
diff changeset
1652 ], [
adb7d13d7d97 When checking for -lssl, include -ldl if it exists. OpenSSL 0.9.8 uses it.
Timo Sirainen <tss@iki.fi>
parents: 7946
diff changeset
1653 AC_CHECK_LIB(dl, dlopen, [
adb7d13d7d97 When checking for -lssl, include -ldl if it exists. OpenSSL 0.9.8 uses it.
Timo Sirainen <tss@iki.fi>
parents: 7946
diff changeset
1654 have_modules=yes
adb7d13d7d97 When checking for -lssl, include -ldl if it exists. OpenSSL 0.9.8 uses it.
Timo Sirainen <tss@iki.fi>
parents: 7946
diff changeset
1655 MODULE_LIBS="-export-dynamic -ldl"
adb7d13d7d97 When checking for -lssl, include -ldl if it exists. OpenSSL 0.9.8 uses it.
Timo Sirainen <tss@iki.fi>
parents: 7946
diff changeset
1656 DLLIB=-ldl
adb7d13d7d97 When checking for -lssl, include -ldl if it exists. OpenSSL 0.9.8 uses it.
Timo Sirainen <tss@iki.fi>
parents: 7946
diff changeset
1657 ])
adb7d13d7d97 When checking for -lssl, include -ldl if it exists. OpenSSL 0.9.8 uses it.
Timo Sirainen <tss@iki.fi>
parents: 7946
diff changeset
1658 ])
adb7d13d7d97 When checking for -lssl, include -ldl if it exists. OpenSSL 0.9.8 uses it.
Timo Sirainen <tss@iki.fi>
parents: 7946
diff changeset
1659
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1660 dnl **
8022
d1da922a437d mountpoint_get(): Added support for AIX support with mntctl().
Timo Sirainen <tss@iki.fi>
parents: 8008
diff changeset
1661 dnl ** AIX mntctl
d1da922a437d mountpoint_get(): Added support for AIX support with mntctl().
Timo Sirainen <tss@iki.fi>
parents: 8008
diff changeset
1662 dnl **
d1da922a437d mountpoint_get(): Added support for AIX support with mntctl().
Timo Sirainen <tss@iki.fi>
parents: 8008
diff changeset
1663
d1da922a437d mountpoint_get(): Added support for AIX support with mntctl().
Timo Sirainen <tss@iki.fi>
parents: 8008
diff changeset
1664 if test $ac_cv_header_sys_vmount_h = yes; then
d1da922a437d mountpoint_get(): Added support for AIX support with mntctl().
Timo Sirainen <tss@iki.fi>
parents: 8008
diff changeset
1665 AC_MSG_CHECKING([for reasonable mntctl buffer size])
d1da922a437d mountpoint_get(): Added support for AIX support with mntctl().
Timo Sirainen <tss@iki.fi>
parents: 8008
diff changeset
1666 AC_RUN_IFELSE([AC_LANG_SOURCE([[
d1da922a437d mountpoint_get(): Added support for AIX support with mntctl().
Timo Sirainen <tss@iki.fi>
parents: 8008
diff changeset
1667 #include <stdio.h>
d1da922a437d mountpoint_get(): Added support for AIX support with mntctl().
Timo Sirainen <tss@iki.fi>
parents: 8008
diff changeset
1668 #include <stdlib.h>
d1da922a437d mountpoint_get(): Added support for AIX support with mntctl().
Timo Sirainen <tss@iki.fi>
parents: 8008
diff changeset
1669 #include <sys/vmount.h>
d1da922a437d mountpoint_get(): Added support for AIX support with mntctl().
Timo Sirainen <tss@iki.fi>
parents: 8008
diff changeset
1670 int main() {
d1da922a437d mountpoint_get(): Added support for AIX support with mntctl().
Timo Sirainen <tss@iki.fi>
parents: 8008
diff changeset
1671 int size,count; char *m;
d1da922a437d mountpoint_get(): Added support for AIX support with mntctl().
Timo Sirainen <tss@iki.fi>
parents: 8008
diff changeset
1672 FILE *f=fopen("conftestval", "w");
d1da922a437d mountpoint_get(): Added support for AIX support with mntctl().
Timo Sirainen <tss@iki.fi>
parents: 8008
diff changeset
1673 if (!f) exit(1);
d1da922a437d mountpoint_get(): Added support for AIX support with mntctl().
Timo Sirainen <tss@iki.fi>
parents: 8008
diff changeset
1674 if ((count=mntctl(MCTL_QUERY,sizeof(size),&size))!=0 || !(m=malloc(size)) ||
d1da922a437d mountpoint_get(): Added support for AIX support with mntctl().
Timo Sirainen <tss@iki.fi>
parents: 8008
diff changeset
1675 (count=mntctl(MCTL_QUERY,size,m))<=0) exit(1);
d1da922a437d mountpoint_get(): Added support for AIX support with mntctl().
Timo Sirainen <tss@iki.fi>
parents: 8008
diff changeset
1676 fprintf(f, "%d\n",(size * (count + 5))/count & ~1); /* 5 mounts more */
d1da922a437d mountpoint_get(): Added support for AIX support with mntctl().
Timo Sirainen <tss@iki.fi>
parents: 8008
diff changeset
1677 exit(0);
d1da922a437d mountpoint_get(): Added support for AIX support with mntctl().
Timo Sirainen <tss@iki.fi>
parents: 8008
diff changeset
1678 }
d1da922a437d mountpoint_get(): Added support for AIX support with mntctl().
Timo Sirainen <tss@iki.fi>
parents: 8008
diff changeset
1679 ]])],[
d1da922a437d mountpoint_get(): Added support for AIX support with mntctl().
Timo Sirainen <tss@iki.fi>
parents: 8008
diff changeset
1680 size=`cat conftestval`
d1da922a437d mountpoint_get(): Added support for AIX support with mntctl().
Timo Sirainen <tss@iki.fi>
parents: 8008
diff changeset
1681 rm -f conftestval
d1da922a437d mountpoint_get(): Added support for AIX support with mntctl().
Timo Sirainen <tss@iki.fi>
parents: 8008
diff changeset
1682 AC_DEFINE_UNQUOTED(STATIC_MTAB_SIZE,$size, reasonable mntctl buffer size)
d1da922a437d mountpoint_get(): Added support for AIX support with mntctl().
Timo Sirainen <tss@iki.fi>
parents: 8008
diff changeset
1683 AC_MSG_RESULT($size)
d1da922a437d mountpoint_get(): Added support for AIX support with mntctl().
Timo Sirainen <tss@iki.fi>
parents: 8008
diff changeset
1684 ],[
d1da922a437d mountpoint_get(): Added support for AIX support with mntctl().
Timo Sirainen <tss@iki.fi>
parents: 8008
diff changeset
1685 AC_MSG_RESULT(default)
d1da922a437d mountpoint_get(): Added support for AIX support with mntctl().
Timo Sirainen <tss@iki.fi>
parents: 8008
diff changeset
1686 ])
d1da922a437d mountpoint_get(): Added support for AIX support with mntctl().
Timo Sirainen <tss@iki.fi>
parents: 8008
diff changeset
1687 fi
d1da922a437d mountpoint_get(): Added support for AIX support with mntctl().
Timo Sirainen <tss@iki.fi>
parents: 8008
diff changeset
1688
d1da922a437d mountpoint_get(): Added support for AIX support with mntctl().
Timo Sirainen <tss@iki.fi>
parents: 8008
diff changeset
1689
d1da922a437d mountpoint_get(): Added support for AIX support with mntctl().
Timo Sirainen <tss@iki.fi>
parents: 8008
diff changeset
1690 dnl **
622
235188ee7a05 Support for OpenSSL.
Timo Sirainen <tss@iki.fi>
parents: 576
diff changeset
1691 dnl ** SSL
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1692 dnl **
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1693
623
3fa9e363cd3d SSL fixes and doc updates.
Timo Sirainen <tss@iki.fi>
parents: 622
diff changeset
1694 have_ssl=no
3fa9e363cd3d SSL fixes and doc updates.
Timo Sirainen <tss@iki.fi>
parents: 622
diff changeset
1695
6974
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1696 if test $want_openssl != no && test $have_ssl = no; then
12438
c1d8fb31c1ad configure: Use PKG_PROG_PKG_CONFIG to find pkg-config binary.
Timo Sirainen <tss@iki.fi>
parents: 12400
diff changeset
1697 if test "$PKG_CONFIG" != "" && $PKG_CONFIG --exists openssl 2>/dev/null; then
1565
97572a77243a Check OpenSSL using pkg-config which at least redhat uses nowadays.
Timo Sirainen <tss@iki.fi>
parents: 1539
diff changeset
1698 PKG_CHECK_MODULES(SSL, openssl)
97572a77243a Check OpenSSL using pkg-config which at least redhat uses nowadays.
Timo Sirainen <tss@iki.fi>
parents: 1539
diff changeset
1699 CFLAGS="$CFLAGS $SSL_CFLAGS"
97572a77243a Check OpenSSL using pkg-config which at least redhat uses nowadays.
Timo Sirainen <tss@iki.fi>
parents: 1539
diff changeset
1700 have_openssl=yes
97572a77243a Check OpenSSL using pkg-config which at least redhat uses nowadays.
Timo Sirainen <tss@iki.fi>
parents: 1539
diff changeset
1701 else
7958
adb7d13d7d97 When checking for -lssl, include -ldl if it exists. OpenSSL 0.9.8 uses it.
Timo Sirainen <tss@iki.fi>
parents: 7946
diff changeset
1702 # openssl 0.9.8 wants -ldl and it's required if there's only .a lib
1565
97572a77243a Check OpenSSL using pkg-config which at least redhat uses nowadays.
Timo Sirainen <tss@iki.fi>
parents: 1539
diff changeset
1703 AC_CHECK_LIB(ssl, SSL_read, [
97572a77243a Check OpenSSL using pkg-config which at least redhat uses nowadays.
Timo Sirainen <tss@iki.fi>
parents: 1539
diff changeset
1704 AC_CHECK_HEADERS(openssl/ssl.h openssl/err.h, [
7958
adb7d13d7d97 When checking for -lssl, include -ldl if it exists. OpenSSL 0.9.8 uses it.
Timo Sirainen <tss@iki.fi>
parents: 7946
diff changeset
1705 SSL_LIBS="-lssl -lcrypto $DLLIB"
1565
97572a77243a Check OpenSSL using pkg-config which at least redhat uses nowadays.
Timo Sirainen <tss@iki.fi>
parents: 1539
diff changeset
1706 AC_SUBST(SSL_LIBS)
97572a77243a Check OpenSSL using pkg-config which at least redhat uses nowadays.
Timo Sirainen <tss@iki.fi>
parents: 1539
diff changeset
1707 have_openssl=yes
6974
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1708 ], [
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1709 if test $want_openssl = yes; then
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1710 AC_ERROR([Can't build with OpenSSL: openssl/ssl.h or openssl/err.h not found])
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1711 fi
1565
97572a77243a Check OpenSSL using pkg-config which at least redhat uses nowadays.
Timo Sirainen <tss@iki.fi>
parents: 1539
diff changeset
1712 ])
6974
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1713 ], [
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1714 if test $want_openssl = yes; then
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1715 AC_ERROR([Can't build with OpenSSL: libssl not found])
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1716 fi
7958
adb7d13d7d97 When checking for -lssl, include -ldl if it exists. OpenSSL 0.9.8 uses it.
Timo Sirainen <tss@iki.fi>
parents: 7946
diff changeset
1717 ], -lcrypto $DLLIB)
1565
97572a77243a Check OpenSSL using pkg-config which at least redhat uses nowadays.
Timo Sirainen <tss@iki.fi>
parents: 1539
diff changeset
1718 fi
1566
919f5aafbc6c fix for openssl detection
Timo Sirainen <tss@iki.fi>
parents: 1565
diff changeset
1719 if test "$have_openssl" = "yes"; then
919f5aafbc6c fix for openssl detection
Timo Sirainen <tss@iki.fi>
parents: 1565
diff changeset
1720 AC_DEFINE(HAVE_OPENSSL,, Build with OpenSSL support)
919f5aafbc6c fix for openssl detection
Timo Sirainen <tss@iki.fi>
parents: 1565
diff changeset
1721 have_ssl="yes (OpenSSL)"
9973
ba12a404d3b3 Compiling fix for OpenSSL 0.9.7 and older.
Timo Sirainen <tss@iki.fi>
parents: 9942
diff changeset
1722
ba12a404d3b3 Compiling fix for OpenSSL 0.9.7 and older.
Timo Sirainen <tss@iki.fi>
parents: 9942
diff changeset
1723 AC_CHECK_LIB(ssl, SSL_get_current_compression, [
ba12a404d3b3 Compiling fix for OpenSSL 0.9.7 and older.
Timo Sirainen <tss@iki.fi>
parents: 9942
diff changeset
1724 AC_DEFINE(HAVE_SSL_COMPRESSION,, Build with OpenSSL compression)
ba12a404d3b3 Compiling fix for OpenSSL 0.9.7 and older.
Timo Sirainen <tss@iki.fi>
parents: 9942
diff changeset
1725 ],, $SSL_LIBS)
11995
53147e8bdaf9 Compile fix for some OpenSSL version.
Timo Sirainen <tss@iki.fi>
parents: 11974
diff changeset
1726 AC_CHECK_LIB(ssl, SSL_get_servername, [
53147e8bdaf9 Compile fix for some OpenSSL version.
Timo Sirainen <tss@iki.fi>
parents: 11974
diff changeset
1727 AC_DEFINE(HAVE_SSL_GET_SERVERNAME,, Build with TLS hostname support)
53147e8bdaf9 Compile fix for some OpenSSL version.
Timo Sirainen <tss@iki.fi>
parents: 11974
diff changeset
1728 ],, $SSL_LIBS)
1566
919f5aafbc6c fix for openssl detection
Timo Sirainen <tss@iki.fi>
parents: 1565
diff changeset
1729 fi
622
235188ee7a05 Support for OpenSSL.
Timo Sirainen <tss@iki.fi>
parents: 576
diff changeset
1730 fi
13211
eb6d2fcca15b Fixed compiling without OpenSSL.
Timo Sirainen <tss@iki.fi>
parents: 13186
diff changeset
1731 AM_CONDITIONAL(BUILD_OPENSSL, test "$have_openssl" = "yes")
622
235188ee7a05 Support for OpenSSL.
Timo Sirainen <tss@iki.fi>
parents: 576
diff changeset
1732
6974
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1733 if test $want_gnutls != no && test $have_ssl = no; then
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1734 AC_CHECK_LIB(gnutls, gnutls_global_init, [
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1735 AC_CHECK_HEADER(gnutls/gnutls.h, [
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1736 AC_DEFINE(HAVE_GNUTLS,, Build with GNUTLS support)
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1737 SSL_LIBS="-lgnutls -lgcrypt"
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1738 AC_SUBST(SSL_LIBS)
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1739 have_ssl="yes (GNUTLS)"
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1740 have_gnutls=yes
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1741 ], [
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1742 if test $want_gnutls = yes; then
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1743 AC_ERROR([Can't build with GNUTLS: gnutls/gnutls.h not found])
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1744 fi
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1745 ])
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1746 ], [
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1747 if test $want_gnutls = yes; then
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1748 AC_ERROR([Can't build with GNUTLS: libgnutls not found])
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1749 fi
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1750 ], -lgcrypt)
1948
7fa8697bc2a9 Default to OpenSSL
Timo Sirainen <tss@iki.fi>
parents: 1924
diff changeset
1751 fi
7fa8697bc2a9 Default to OpenSSL
Timo Sirainen <tss@iki.fi>
parents: 1924
diff changeset
1752
742
b3dd87844fff acconfig.h is deprecated with autoconf 2.5, changed configure to contain
Timo Sirainen <tss@iki.fi>
parents: 739
diff changeset
1753 if test "$have_ssl" != "no"; then
b3dd87844fff acconfig.h is deprecated with autoconf 2.5, changed configure to contain
Timo Sirainen <tss@iki.fi>
parents: 739
diff changeset
1754 AC_DEFINE(HAVE_SSL,, Build with SSL/TLS support)
b3dd87844fff acconfig.h is deprecated with autoconf 2.5, changed configure to contain
Timo Sirainen <tss@iki.fi>
parents: 739
diff changeset
1755 fi
b3dd87844fff acconfig.h is deprecated with autoconf 2.5, changed configure to contain
Timo Sirainen <tss@iki.fi>
parents: 739
diff changeset
1756
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1757 dnl **
1786
49b6103dd2e0 Added support for Boehm GC. However it seems to be crashing for some reason
Timo Sirainen <tss@iki.fi>
parents: 1729
diff changeset
1758 dnl ** Garbage Collector
49b6103dd2e0 Added support for Boehm GC. However it seems to be crashing for some reason
Timo Sirainen <tss@iki.fi>
parents: 1729
diff changeset
1759 dnl **
49b6103dd2e0 Added support for Boehm GC. However it seems to be crashing for some reason
Timo Sirainen <tss@iki.fi>
parents: 1729
diff changeset
1760
6974
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1761 if test $want_gc != no; then
1786
49b6103dd2e0 Added support for Boehm GC. However it seems to be crashing for some reason
Timo Sirainen <tss@iki.fi>
parents: 1729
diff changeset
1762 AC_CHECK_LIB(gc, GC_malloc, [
49b6103dd2e0 Added support for Boehm GC. However it seems to be crashing for some reason
Timo Sirainen <tss@iki.fi>
parents: 1729
diff changeset
1763 AC_CHECK_HEADERS(gc/gc.h gc.h)
49b6103dd2e0 Added support for Boehm GC. However it seems to be crashing for some reason
Timo Sirainen <tss@iki.fi>
parents: 1729
diff changeset
1764 AC_DEFINE(USE_GC,, Define if you want to use Boehm GC)
49b6103dd2e0 Added support for Boehm GC. However it seems to be crashing for some reason
Timo Sirainen <tss@iki.fi>
parents: 1729
diff changeset
1765 LIBS="$LIBS -lgc"
49b6103dd2e0 Added support for Boehm GC. However it seems to be crashing for some reason
Timo Sirainen <tss@iki.fi>
parents: 1729
diff changeset
1766 ], [
6974
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1767 if test $want_gc = yes; then
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1768 AC_ERROR([Can't build with GC: libgc not found])
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1769 fi
1786
49b6103dd2e0 Added support for Boehm GC. However it seems to be crashing for some reason
Timo Sirainen <tss@iki.fi>
parents: 1729
diff changeset
1770 ])
49b6103dd2e0 Added support for Boehm GC. However it seems to be crashing for some reason
Timo Sirainen <tss@iki.fi>
parents: 1729
diff changeset
1771 fi
49b6103dd2e0 Added support for Boehm GC. However it seems to be crashing for some reason
Timo Sirainen <tss@iki.fi>
parents: 1729
diff changeset
1772
49b6103dd2e0 Added support for Boehm GC. However it seems to be crashing for some reason
Timo Sirainen <tss@iki.fi>
parents: 1729
diff changeset
1773 dnl **
1043
cacabd33c68a Initial code for POP3 server. RETR isn't working right yet, there's some
Timo Sirainen <tss@iki.fi>
parents: 1022
diff changeset
1774 dnl ** userdb and passdb checks
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1775 dnl **
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1776
1043
cacabd33c68a Initial code for POP3 server. RETR isn't working right yet, there's some
Timo Sirainen <tss@iki.fi>
parents: 1022
diff changeset
1777 userdb=""
cacabd33c68a Initial code for POP3 server. RETR isn't working right yet, there's some
Timo Sirainen <tss@iki.fi>
parents: 1022
diff changeset
1778 passdb=""
9246
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
1779 not_userdb=""
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
1780 not_passdb=""
1043
cacabd33c68a Initial code for POP3 server. RETR isn't working right yet, there's some
Timo Sirainen <tss@iki.fi>
parents: 1022
diff changeset
1781
11454
df93f0c290ea auth: Added passdb static.
Timo Sirainen <tss@iki.fi>
parents: 11453
diff changeset
1782 passdb="$passdb static"
11453
d8a801d2d3f1 auth: Removed USERDB_STATIC macro. It's always built anyway.
Timo Sirainen <tss@iki.fi>
parents: 11446
diff changeset
1783 userdb="$userdb static"
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1784
6974
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1785 if test $want_prefetch_userdb != no; then
3667
b7569a6a4ada Renamed userdb passdb to prefetch.
Timo Sirainen <tss@iki.fi>
parents: 3600
diff changeset
1786 AC_DEFINE(USERDB_PREFETCH,, Build with prefetch userdb support)
b7569a6a4ada Renamed userdb passdb to prefetch.
Timo Sirainen <tss@iki.fi>
parents: 3600
diff changeset
1787 userdb="$userdb prefetch"
9246
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
1788 else
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
1789 not_userdb="$not_userdb prefetch"
3062
5e2e4cdbfe2e Added "passdb" userdb. It works only if passdb gives all the information
Timo Sirainen <tss@iki.fi>
parents: 3004
diff changeset
1790 fi
5e2e4cdbfe2e Added "passdb" userdb. It works only if passdb gives all the information
Timo Sirainen <tss@iki.fi>
parents: 3004
diff changeset
1791
6974
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1792 if test $want_passwd != no; then
1043
cacabd33c68a Initial code for POP3 server. RETR isn't working right yet, there's some
Timo Sirainen <tss@iki.fi>
parents: 1022
diff changeset
1793 AC_DEFINE(USERDB_PASSWD,, Build with passwd support)
cacabd33c68a Initial code for POP3 server. RETR isn't working right yet, there's some
Timo Sirainen <tss@iki.fi>
parents: 1022
diff changeset
1794 AC_DEFINE(PASSDB_PASSWD,, Build with passwd support)
cacabd33c68a Initial code for POP3 server. RETR isn't working right yet, there's some
Timo Sirainen <tss@iki.fi>
parents: 1022
diff changeset
1795 userdb="$userdb passwd"
cacabd33c68a Initial code for POP3 server. RETR isn't working right yet, there's some
Timo Sirainen <tss@iki.fi>
parents: 1022
diff changeset
1796 passdb="$passdb passwd"
9246
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
1797 else
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
1798 not_passdb="$not_passdb passwd"
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
1799 not_userdb="$not_userdb passwd"
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1800 fi
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1801
6974
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1802 if test $want_passwd_file != no; then
1043
cacabd33c68a Initial code for POP3 server. RETR isn't working right yet, there's some
Timo Sirainen <tss@iki.fi>
parents: 1022
diff changeset
1803 AC_DEFINE(USERDB_PASSWD_FILE,, Build with passwd-file support)
cacabd33c68a Initial code for POP3 server. RETR isn't working right yet, there's some
Timo Sirainen <tss@iki.fi>
parents: 1022
diff changeset
1804 AC_DEFINE(PASSDB_PASSWD_FILE,, Build with passwd-file support)
cacabd33c68a Initial code for POP3 server. RETR isn't working right yet, there's some
Timo Sirainen <tss@iki.fi>
parents: 1022
diff changeset
1805 userdb="$userdb passwd-file"
cacabd33c68a Initial code for POP3 server. RETR isn't working right yet, there's some
Timo Sirainen <tss@iki.fi>
parents: 1022
diff changeset
1806 passdb="$passdb passwd-file"
9246
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
1807 else
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
1808 not_passdb="$not_passdb passwd-file"
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
1809 not_userdb="$not_userdb passwd-file"
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1810 fi
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1811
9246
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
1812 have_shadow=no
6974
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1813 if test $want_shadow != no; then
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1814 AC_CHECK_FUNC(getspnam, [
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1815 AC_CHECK_HEADER(shadow.h, [
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1816 AC_DEFINE(PASSDB_SHADOW,, Build with shadow support)
9246
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
1817 have_shadow=yes
6974
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1818 ], [
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1819 if test $want_shadow = yes; then
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1820 AC_ERROR([Can't build with shadow support: shadow.h not found])
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1821 fi
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1822 ])
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1823 ], [
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1824 if test $want_shadow = yes; then
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1825 AC_ERROR([Can't build with shadow support: getspnam() not found])
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1826 fi
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1827 ])
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1828 fi
9246
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
1829 if test $have_shadow = no; then
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
1830 not_passdb="$not_passdb shadow"
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
1831 else
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
1832 passdb="$passdb shadow"
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
1833 fi
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1834
6974
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1835 if test $want_pam != no; then
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1836 AC_CHECK_LIB(pam, pam_start, [
706
df5bf4ee669f OSX puts PAM includes into pam/ directory instead of security. Detect that.
Timo Sirainen <tss@iki.fi>
parents: 702
diff changeset
1837 have_pam=no
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1838 AC_CHECK_HEADER(security/pam_appl.h, [
742
b3dd87844fff acconfig.h is deprecated with autoconf 2.5, changed configure to contain
Timo Sirainen <tss@iki.fi>
parents: 739
diff changeset
1839 AC_DEFINE(HAVE_SECURITY_PAM_APPL_H,,
b3dd87844fff acconfig.h is deprecated with autoconf 2.5, changed configure to contain
Timo Sirainen <tss@iki.fi>
parents: 739
diff changeset
1840 Define if you have security/pam_appl.h)
706
df5bf4ee669f OSX puts PAM includes into pam/ directory instead of security. Detect that.
Timo Sirainen <tss@iki.fi>
parents: 702
diff changeset
1841 have_pam=yes
df5bf4ee669f OSX puts PAM includes into pam/ directory instead of security. Detect that.
Timo Sirainen <tss@iki.fi>
parents: 702
diff changeset
1842 ])
df5bf4ee669f OSX puts PAM includes into pam/ directory instead of security. Detect that.
Timo Sirainen <tss@iki.fi>
parents: 702
diff changeset
1843
df5bf4ee669f OSX puts PAM includes into pam/ directory instead of security. Detect that.
Timo Sirainen <tss@iki.fi>
parents: 702
diff changeset
1844 AC_CHECK_HEADER(pam/pam_appl.h, [
742
b3dd87844fff acconfig.h is deprecated with autoconf 2.5, changed configure to contain
Timo Sirainen <tss@iki.fi>
parents: 739
diff changeset
1845 AC_DEFINE(HAVE_PAM_PAM_APPL_H,,
b3dd87844fff acconfig.h is deprecated with autoconf 2.5, changed configure to contain
Timo Sirainen <tss@iki.fi>
parents: 739
diff changeset
1846 Define if you have pam/pam_appl.h)
706
df5bf4ee669f OSX puts PAM includes into pam/ directory instead of security. Detect that.
Timo Sirainen <tss@iki.fi>
parents: 702
diff changeset
1847 have_pam=yes
df5bf4ee669f OSX puts PAM includes into pam/ directory instead of security. Detect that.
Timo Sirainen <tss@iki.fi>
parents: 702
diff changeset
1848 ])
6974
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1849 ], [
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1850 if test $want_pam = yes; then
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1851 AC_ERROR([Can't build with PAM support: libpam not found])
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1852 fi
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1853 ])
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1854 fi
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1855
9246
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
1856 if test "$have_pam" = "yes"; then
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
1857 AUTH_LIBS="$AUTH_LIBS -lpam"
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
1858 AC_DEFINE(PASSDB_PAM,, Build with PAM support)
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
1859 passdb="$passdb pam"
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
1860
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
1861 AC_CHECK_LIB(pam, pam_setcred, [
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
1862 AC_DEFINE(HAVE_PAM_SETCRED,, Define if you have pam_setcred())
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
1863 ])
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
1864 elif test $want_pam = yes; then
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
1865 AC_ERROR([Can't build with PAM support: pam_appl.h not found])
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
1866 else
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
1867 not_passdb="$not_passdb pam"
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
1868 fi
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
1869
6974
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1870 if test $want_checkpassword != no; then
2162
95b2a6abc01e Added checkpassword passdb. userdb has only beginnings.
Timo Sirainen <tss@iki.fi>
parents: 2103
diff changeset
1871 AC_DEFINE(PASSDB_CHECKPASSWORD,, Build with checkpassword passdb support)
8307
33eae1ca0be0 Added support for userdb checkpassword. Patch by Sascha Wilde.
Timo Sirainen <tss@iki.fi>
parents: 8297
diff changeset
1872 AC_DEFINE(USERDB_CHECKPASSWORD,, Build with checkpassword userdb support)
2162
95b2a6abc01e Added checkpassword passdb. userdb has only beginnings.
Timo Sirainen <tss@iki.fi>
parents: 2103
diff changeset
1873 passdb="$passdb checkpassword"
8307
33eae1ca0be0 Added support for userdb checkpassword. Patch by Sascha Wilde.
Timo Sirainen <tss@iki.fi>
parents: 8297
diff changeset
1874 userdb="$userdb checkpassword"
9246
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
1875 else
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
1876 not_passdb="$not_passdb checkpassword"
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
1877 not_userdb="$not_userdb checkpassword"
2162
95b2a6abc01e Added checkpassword passdb. userdb has only beginnings.
Timo Sirainen <tss@iki.fi>
parents: 2103
diff changeset
1878 fi
95b2a6abc01e Added checkpassword passdb. userdb has only beginnings.
Timo Sirainen <tss@iki.fi>
parents: 2103
diff changeset
1879
9246
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
1880 have_bsdauth=no
6974
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1881 if test $want_bsdauth != no; then
1851
d66d53f57e43 Added bsdauth support, patch by Dan Cross
Timo Sirainen <tss@iki.fi>
parents: 1849
diff changeset
1882 AC_CHECK_FUNC(auth_userokay, [
d66d53f57e43 Added bsdauth support, patch by Dan Cross
Timo Sirainen <tss@iki.fi>
parents: 1849
diff changeset
1883 AC_DEFINE(PASSDB_BSDAUTH,, Build with BSD authentication support)
9246
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
1884 have_bsdauth=yes
6974
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1885 ], [
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1886 if test $want_bsdauth = yes; then
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1887 AC_ERROR([Can't build with BSD authentication support: auth_userokay() not found])
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1888 fi
1851
d66d53f57e43 Added bsdauth support, patch by Dan Cross
Timo Sirainen <tss@iki.fi>
parents: 1849
diff changeset
1889 ])
d66d53f57e43 Added bsdauth support, patch by Dan Cross
Timo Sirainen <tss@iki.fi>
parents: 1849
diff changeset
1890 fi
9246
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
1891 if test $have_bsdauth = no; then
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
1892 not_passdb="$not_passdb bsdauth"
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
1893 else
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
1894 passdb="$passdb bsdauth"
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
1895 fi
1851
d66d53f57e43 Added bsdauth support, patch by Dan Cross
Timo Sirainen <tss@iki.fi>
parents: 1849
diff changeset
1896
3683
28cca6317829 Added GSSAPI support. Patch by Jelmer Vernooij and some fixes by
Timo Sirainen <tss@iki.fi>
parents: 3671
diff changeset
1897 have_gssapi=no
6974
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1898 if test $want_gssapi != no; then
11948
ebb4362b6d0d configure: AC_CHECK_PROG() calls now allow specifying full path to prog via environment.
Timo Sirainen <tss@iki.fi>
parents: 11939
diff changeset
1899 AC_CHECK_PROG(KRB5CONFIG, krb5-config, krb5-config, NO)
ebb4362b6d0d configure: AC_CHECK_PROG() calls now allow specifying full path to prog via environment.
Timo Sirainen <tss@iki.fi>
parents: 11939
diff changeset
1900 if test $KRB5CONFIG != NO; then
ebb4362b6d0d configure: AC_CHECK_PROG() calls now allow specifying full path to prog via environment.
Timo Sirainen <tss@iki.fi>
parents: 11939
diff changeset
1901 if ! $KRB5CONFIG --version gssapi 2>/dev/null > /dev/null; then
7548
e6187b556b65 Fixed GSSAPI checks. Perhaps it works now with Solaris krb5-config also.
Timo Sirainen <tss@iki.fi>
parents: 7526
diff changeset
1902 # krb5-config doesn't support gssapi.
11948
ebb4362b6d0d configure: AC_CHECK_PROG() calls now allow specifying full path to prog via environment.
Timo Sirainen <tss@iki.fi>
parents: 11939
diff changeset
1903 KRB5_LIBS="`$KRB5CONFIG --libs`"
ebb4362b6d0d configure: AC_CHECK_PROG() calls now allow specifying full path to prog via environment.
Timo Sirainen <tss@iki.fi>
parents: 11939
diff changeset
1904 KRB5_CFLAGS=`$KRB5CONFIG --cflags`
7548
e6187b556b65 Fixed GSSAPI checks. Perhaps it works now with Solaris krb5-config also.
Timo Sirainen <tss@iki.fi>
parents: 7526
diff changeset
1905 AC_CHECK_LIB(gss, gss_acquire_cred, [
e6187b556b65 Fixed GSSAPI checks. Perhaps it works now with Solaris krb5-config also.
Timo Sirainen <tss@iki.fi>
parents: 7526
diff changeset
1906 # Solaris
e6187b556b65 Fixed GSSAPI checks. Perhaps it works now with Solaris krb5-config also.
Timo Sirainen <tss@iki.fi>
parents: 7526
diff changeset
1907 KRB5_LIBS="$KRB5_LIBS -lgss"
e6187b556b65 Fixed GSSAPI checks. Perhaps it works now with Solaris krb5-config also.
Timo Sirainen <tss@iki.fi>
parents: 7526
diff changeset
1908 ], [
e6187b556b65 Fixed GSSAPI checks. Perhaps it works now with Solaris krb5-config also.
Timo Sirainen <tss@iki.fi>
parents: 7526
diff changeset
1909 # failed
e6187b556b65 Fixed GSSAPI checks. Perhaps it works now with Solaris krb5-config also.
Timo Sirainen <tss@iki.fi>
parents: 7526
diff changeset
1910 KRB5_LIBS=
e6187b556b65 Fixed GSSAPI checks. Perhaps it works now with Solaris krb5-config also.
Timo Sirainen <tss@iki.fi>
parents: 7526
diff changeset
1911 ], $KRB5_LIBS)
e6187b556b65 Fixed GSSAPI checks. Perhaps it works now with Solaris krb5-config also.
Timo Sirainen <tss@iki.fi>
parents: 7526
diff changeset
1912 else
11948
ebb4362b6d0d configure: AC_CHECK_PROG() calls now allow specifying full path to prog via environment.
Timo Sirainen <tss@iki.fi>
parents: 11939
diff changeset
1913 KRB5_LIBS=`$KRB5CONFIG --libs gssapi`
ebb4362b6d0d configure: AC_CHECK_PROG() calls now allow specifying full path to prog via environment.
Timo Sirainen <tss@iki.fi>
parents: 11939
diff changeset
1914 KRB5_CFLAGS=`$KRB5CONFIG --cflags gssapi`
7548
e6187b556b65 Fixed GSSAPI checks. Perhaps it works now with Solaris krb5-config also.
Timo Sirainen <tss@iki.fi>
parents: 7526
diff changeset
1915 fi
e6187b556b65 Fixed GSSAPI checks. Perhaps it works now with Solaris krb5-config also.
Timo Sirainen <tss@iki.fi>
parents: 7526
diff changeset
1916 if test "$KRB5_LIBS" != ""; then
6199
c1d09af8bdda Added --with-gssapi=plugin
Timo Sirainen <tss@iki.fi>
parents: 6198
diff changeset
1917 AC_SUBST(KRB5_LIBS)
c1d09af8bdda Added --with-gssapi=plugin
Timo Sirainen <tss@iki.fi>
parents: 6198
diff changeset
1918 AC_SUBST(KRB5_CFLAGS)
3780
0128534525d8 Check that gssapi/gssapi.h exists before using it.
Timo Sirainen <tss@iki.fi>
parents: 3779
diff changeset
1919
0128534525d8 Check that gssapi/gssapi.h exists before using it.
Timo Sirainen <tss@iki.fi>
parents: 3779
diff changeset
1920 # Although krb5-config exists, all systems still don't
0128534525d8 Check that gssapi/gssapi.h exists before using it.
Timo Sirainen <tss@iki.fi>
parents: 3779
diff changeset
1921 # have gssapi.h
0128534525d8 Check that gssapi/gssapi.h exists before using it.
Timo Sirainen <tss@iki.fi>
parents: 3779
diff changeset
1922 old_CFLAGS=$CFLAGS
7548
e6187b556b65 Fixed GSSAPI checks. Perhaps it works now with Solaris krb5-config also.
Timo Sirainen <tss@iki.fi>
parents: 7526
diff changeset
1923 CFLAGS="$CFLAGS $KRB5_CFLAGS"
3780
0128534525d8 Check that gssapi/gssapi.h exists before using it.
Timo Sirainen <tss@iki.fi>
parents: 3779
diff changeset
1924 AC_CHECK_HEADER([gssapi/gssapi.h], [
4862
bddfbc560857 Some systems have gssapi elsewhere than gssapi/gssapi.h. So check also plain
Timo Sirainen <tss@iki.fi>
parents: 4855
diff changeset
1925 AC_DEFINE(HAVE_GSSAPI_GSSAPI_H,, GSSAPI headers in gssapi/gssapi.h)
3780
0128534525d8 Check that gssapi/gssapi.h exists before using it.
Timo Sirainen <tss@iki.fi>
parents: 3779
diff changeset
1926 have_gssapi=yes
0128534525d8 Check that gssapi/gssapi.h exists before using it.
Timo Sirainen <tss@iki.fi>
parents: 3779
diff changeset
1927 ])
4862
bddfbc560857 Some systems have gssapi elsewhere than gssapi/gssapi.h. So check also plain
Timo Sirainen <tss@iki.fi>
parents: 4855
diff changeset
1928 AC_CHECK_HEADER([gssapi.h], [
bddfbc560857 Some systems have gssapi elsewhere than gssapi/gssapi.h. So check also plain
Timo Sirainen <tss@iki.fi>
parents: 4855
diff changeset
1929 AC_DEFINE(HAVE_GSSAPI_H,, GSSAPI headers in gssapi.h)
bddfbc560857 Some systems have gssapi elsewhere than gssapi/gssapi.h. So check also plain
Timo Sirainen <tss@iki.fi>
parents: 4855
diff changeset
1930 have_gssapi=yes
bddfbc560857 Some systems have gssapi elsewhere than gssapi/gssapi.h. So check also plain
Timo Sirainen <tss@iki.fi>
parents: 4855
diff changeset
1931 ])
8517
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
1932 if test $have_gssapi != no; then
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
1933 if test $want_gssapi = plugin; then
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
1934 have_gssapi=plugin
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
1935 fi
4862
bddfbc560857 Some systems have gssapi elsewhere than gssapi/gssapi.h. So check also plain
Timo Sirainen <tss@iki.fi>
parents: 4855
diff changeset
1936 AC_DEFINE(HAVE_GSSAPI,, Build with GSSAPI support)
7610
280e570a5ced gssapi: Check for gssapi_krb5.h existence before trying to use it.
Timo Sirainen <tss@iki.fi>
parents: 7603
diff changeset
1937 AC_CHECK_HEADERS(gssapi/gssapi_ext.h gssapi_krb5.h gssapi/gssapi_krb5.h)
5859
dfdedb187b26 If __gss_userok() exists, use it to verify username. Patch by Peter Eriksson.
Timo Sirainen <tss@iki.fi>
parents: 5692
diff changeset
1938 AC_CHECK_LIB(gss, __gss_userok, [
dfdedb187b26 If __gss_userok() exists, use it to verify username. Patch by Peter Eriksson.
Timo Sirainen <tss@iki.fi>
parents: 5692
diff changeset
1939 AC_DEFINE(HAVE___GSS_USEROK,,
dfdedb187b26 If __gss_userok() exists, use it to verify username. Patch by Peter Eriksson.
Timo Sirainen <tss@iki.fi>
parents: 5692
diff changeset
1940 Define if you have __gss_userok())
7261
e665ef583668 If __gss_userok() is found from -lgss, make sure we link with -lgss.
Timo Sirainen <tss@iki.fi>
parents: 7259
diff changeset
1941 KRB5_LIBS="$KRB5_LIBS -lgss"
6199
c1d09af8bdda Added --with-gssapi=plugin
Timo Sirainen <tss@iki.fi>
parents: 6198
diff changeset
1942 ],, $KRB5_LIBS)
6501
dee85392c5c1 Make sure we don't define BUILTIN_GSSAPI unless HAVE_GSSAPI is also defined.
Timo Sirainen <tss@iki.fi>
parents: 6489
diff changeset
1943
8068
9569038e0816 gssapi: Make auth_krb5_keytab work by calling _register_acceptor_identity()
Timo Sirainen <tss@iki.fi>
parents: 8055
diff changeset
1944 # MIT has a #define for Heimdal acceptor_identity, but it's way too
9569038e0816 gssapi: Make auth_krb5_keytab work by calling _register_acceptor_identity()
Timo Sirainen <tss@iki.fi>
parents: 8055
diff changeset
1945 # difficult to test for it..
9569038e0816 gssapi: Make auth_krb5_keytab work by calling _register_acceptor_identity()
Timo Sirainen <tss@iki.fi>
parents: 8055
diff changeset
1946 old_LIBS=$LIBS
9569038e0816 gssapi: Make auth_krb5_keytab work by calling _register_acceptor_identity()
Timo Sirainen <tss@iki.fi>
parents: 8055
diff changeset
1947 LIBS="$LIBS $KRB5_LIBS"
9569038e0816 gssapi: Make auth_krb5_keytab work by calling _register_acceptor_identity()
Timo Sirainen <tss@iki.fi>
parents: 8055
diff changeset
1948 AC_CHECK_FUNCS(gsskrb5_register_acceptor_identity krb5_gss_register_acceptor_identity)
8094
641d761219a6 Support GSS-SPNEGO mechanism if GSSAPI library supports it.
Timo Sirainen <tss@iki.fi>
parents: 8090
diff changeset
1949
641d761219a6 Support GSS-SPNEGO mechanism if GSSAPI library supports it.
Timo Sirainen <tss@iki.fi>
parents: 8090
diff changeset
1950 # does the kerberos library support SPNEGO?
641d761219a6 Support GSS-SPNEGO mechanism if GSSAPI library supports it.
Timo Sirainen <tss@iki.fi>
parents: 8090
diff changeset
1951 AC_CACHE_CHECK([whether GSSAPI supports SPNEGO],i_cv_gssapi_spnego,[
641d761219a6 Support GSS-SPNEGO mechanism if GSSAPI library supports it.
Timo Sirainen <tss@iki.fi>
parents: 8090
diff changeset
1952 AC_TRY_RUN([
641d761219a6 Support GSS-SPNEGO mechanism if GSSAPI library supports it.
Timo Sirainen <tss@iki.fi>
parents: 8090
diff changeset
1953 #ifdef HAVE_GSSAPI_H
641d761219a6 Support GSS-SPNEGO mechanism if GSSAPI library supports it.
Timo Sirainen <tss@iki.fi>
parents: 8090
diff changeset
1954 # include <gssapi.h>
641d761219a6 Support GSS-SPNEGO mechanism if GSSAPI library supports it.
Timo Sirainen <tss@iki.fi>
parents: 8090
diff changeset
1955 #else
641d761219a6 Support GSS-SPNEGO mechanism if GSSAPI library supports it.
Timo Sirainen <tss@iki.fi>
parents: 8090
diff changeset
1956 # include <gssapi/gssapi.h>
641d761219a6 Support GSS-SPNEGO mechanism if GSSAPI library supports it.
Timo Sirainen <tss@iki.fi>
parents: 8090
diff changeset
1957 #endif
641d761219a6 Support GSS-SPNEGO mechanism if GSSAPI library supports it.
Timo Sirainen <tss@iki.fi>
parents: 8090
diff changeset
1958 #include <krb5.h>
641d761219a6 Support GSS-SPNEGO mechanism if GSSAPI library supports it.
Timo Sirainen <tss@iki.fi>
parents: 8090
diff changeset
1959 #include <string.h>
641d761219a6 Support GSS-SPNEGO mechanism if GSSAPI library supports it.
Timo Sirainen <tss@iki.fi>
parents: 8090
diff changeset
1960 int main(void) {
641d761219a6 Support GSS-SPNEGO mechanism if GSSAPI library supports it.
Timo Sirainen <tss@iki.fi>
parents: 8090
diff changeset
1961 OM_uint32 minor_status;
641d761219a6 Support GSS-SPNEGO mechanism if GSSAPI library supports it.
Timo Sirainen <tss@iki.fi>
parents: 8090
diff changeset
1962 gss_OID_set mech_set;
641d761219a6 Support GSS-SPNEGO mechanism if GSSAPI library supports it.
Timo Sirainen <tss@iki.fi>
parents: 8090
diff changeset
1963 unsigned char spnego_oid[] = { 0x2b, 0x06, 0x01, 0x05, 0x05, 0x02 };
641d761219a6 Support GSS-SPNEGO mechanism if GSSAPI library supports it.
Timo Sirainen <tss@iki.fi>
parents: 8090
diff changeset
1964 unsigned int i;
641d761219a6 Support GSS-SPNEGO mechanism if GSSAPI library supports it.
Timo Sirainen <tss@iki.fi>
parents: 8090
diff changeset
1965
641d761219a6 Support GSS-SPNEGO mechanism if GSSAPI library supports it.
Timo Sirainen <tss@iki.fi>
parents: 8090
diff changeset
1966 gss_indicate_mechs(&minor_status, &mech_set);
641d761219a6 Support GSS-SPNEGO mechanism if GSSAPI library supports it.
Timo Sirainen <tss@iki.fi>
parents: 8090
diff changeset
1967 for (i = 0; i < mech_set->count; i++) {
641d761219a6 Support GSS-SPNEGO mechanism if GSSAPI library supports it.
Timo Sirainen <tss@iki.fi>
parents: 8090
diff changeset
1968 if (mech_set->elements[i].length == 6 &&
641d761219a6 Support GSS-SPNEGO mechanism if GSSAPI library supports it.
Timo Sirainen <tss@iki.fi>
parents: 8090
diff changeset
1969 memcmp(mech_set->elements[i].elements,
641d761219a6 Support GSS-SPNEGO mechanism if GSSAPI library supports it.
Timo Sirainen <tss@iki.fi>
parents: 8090
diff changeset
1970 spnego_oid, 6) == 0)
641d761219a6 Support GSS-SPNEGO mechanism if GSSAPI library supports it.
Timo Sirainen <tss@iki.fi>
parents: 8090
diff changeset
1971 return 0;
641d761219a6 Support GSS-SPNEGO mechanism if GSSAPI library supports it.
Timo Sirainen <tss@iki.fi>
parents: 8090
diff changeset
1972 }
641d761219a6 Support GSS-SPNEGO mechanism if GSSAPI library supports it.
Timo Sirainen <tss@iki.fi>
parents: 8090
diff changeset
1973 return 1;
641d761219a6 Support GSS-SPNEGO mechanism if GSSAPI library supports it.
Timo Sirainen <tss@iki.fi>
parents: 8090
diff changeset
1974 }
641d761219a6 Support GSS-SPNEGO mechanism if GSSAPI library supports it.
Timo Sirainen <tss@iki.fi>
parents: 8090
diff changeset
1975 ], [
641d761219a6 Support GSS-SPNEGO mechanism if GSSAPI library supports it.
Timo Sirainen <tss@iki.fi>
parents: 8090
diff changeset
1976 i_cv_gssapi_spnego=yes
641d761219a6 Support GSS-SPNEGO mechanism if GSSAPI library supports it.
Timo Sirainen <tss@iki.fi>
parents: 8090
diff changeset
1977 ], [
641d761219a6 Support GSS-SPNEGO mechanism if GSSAPI library supports it.
Timo Sirainen <tss@iki.fi>
parents: 8090
diff changeset
1978 i_cv_gssapi_spnego=no
641d761219a6 Support GSS-SPNEGO mechanism if GSSAPI library supports it.
Timo Sirainen <tss@iki.fi>
parents: 8090
diff changeset
1979 ])
641d761219a6 Support GSS-SPNEGO mechanism if GSSAPI library supports it.
Timo Sirainen <tss@iki.fi>
parents: 8090
diff changeset
1980 ])
641d761219a6 Support GSS-SPNEGO mechanism if GSSAPI library supports it.
Timo Sirainen <tss@iki.fi>
parents: 8090
diff changeset
1981 if test "$i_cv_gssapi_spnego" = "yes"; then
641d761219a6 Support GSS-SPNEGO mechanism if GSSAPI library supports it.
Timo Sirainen <tss@iki.fi>
parents: 8090
diff changeset
1982 AC_DEFINE(HAVE_GSSAPI_SPNEGO,, GSSAPI supports SPNEGO)
641d761219a6 Support GSS-SPNEGO mechanism if GSSAPI library supports it.
Timo Sirainen <tss@iki.fi>
parents: 8090
diff changeset
1983 fi
8068
9569038e0816 gssapi: Make auth_krb5_keytab work by calling _register_acceptor_identity()
Timo Sirainen <tss@iki.fi>
parents: 8055
diff changeset
1984 LIBS=$old_LIBS
9569038e0816 gssapi: Make auth_krb5_keytab work by calling _register_acceptor_identity()
Timo Sirainen <tss@iki.fi>
parents: 8055
diff changeset
1985
8517
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
1986 if test $want_gssapi != plugin; then
6501
dee85392c5c1 Make sure we don't define BUILTIN_GSSAPI unless HAVE_GSSAPI is also defined.
Timo Sirainen <tss@iki.fi>
parents: 6489
diff changeset
1987 AUTH_LIBS="$AUTH_LIBS $KRB5_LIBS"
7554
419b7cfc954c Once $KRB5_CFLAGS is set, use it instead of calling krb5-config again.
Timo Sirainen <tss@iki.fi>
parents: 7548
diff changeset
1988 AUTH_CFLAGS="$AUTH_CFLAGS $KRB5_CFLAGS"
6501
dee85392c5c1 Make sure we don't define BUILTIN_GSSAPI unless HAVE_GSSAPI is also defined.
Timo Sirainen <tss@iki.fi>
parents: 6489
diff changeset
1989 AC_DEFINE(BUILTIN_GSSAPI,, GSSAPI support is built in)
dee85392c5c1 Make sure we don't define BUILTIN_GSSAPI unless HAVE_GSSAPI is also defined.
Timo Sirainen <tss@iki.fi>
parents: 6489
diff changeset
1990 else
dee85392c5c1 Make sure we don't define BUILTIN_GSSAPI unless HAVE_GSSAPI is also defined.
Timo Sirainen <tss@iki.fi>
parents: 6489
diff changeset
1991 have_gssapi_plugin=yes
dee85392c5c1 Make sure we don't define BUILTIN_GSSAPI unless HAVE_GSSAPI is also defined.
Timo Sirainen <tss@iki.fi>
parents: 6489
diff changeset
1992 fi
6974
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1993 else
8517
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
1994 if test $want_gssapi != auto; then
6974
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1995 AC_ERROR([Can't build with GSSAPI support: gssapi.h not found])
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
1996 fi
4862
bddfbc560857 Some systems have gssapi elsewhere than gssapi/gssapi.h. So check also plain
Timo Sirainen <tss@iki.fi>
parents: 4855
diff changeset
1997 fi
3780
0128534525d8 Check that gssapi/gssapi.h exists before using it.
Timo Sirainen <tss@iki.fi>
parents: 3779
diff changeset
1998 CFLAGS=$old_CFLAGS
3705
561e81dfa20b MIT kerberos v1.2 (and older) doesn't work with us.
Timo Sirainen <tss@iki.fi>
parents: 3686
diff changeset
1999 fi
6974
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
2000 else
8517
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
2001 if test $want_gssapi != auto; then
6974
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
2002 AC_ERROR([Can't build with GSSAPI support: krb5-config not found])
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
2003 fi
3683
28cca6317829 Added GSSAPI support. Patch by Jelmer Vernooij and some fixes by
Timo Sirainen <tss@iki.fi>
parents: 3671
diff changeset
2004 fi
28cca6317829 Added GSSAPI support. Patch by Jelmer Vernooij and some fixes by
Timo Sirainen <tss@iki.fi>
parents: 3671
diff changeset
2005 fi
6199
c1d09af8bdda Added --with-gssapi=plugin
Timo Sirainen <tss@iki.fi>
parents: 6198
diff changeset
2006 AM_CONDITIONAL(GSSAPI_PLUGIN, test "$have_gssapi_plugin" = "yes")
3683
28cca6317829 Added GSSAPI support. Patch by Jelmer Vernooij and some fixes by
Timo Sirainen <tss@iki.fi>
parents: 3671
diff changeset
2007
9246
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
2008 have_sia=no
6974
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
2009 if test $want_sia != no; then
4638
689a02ca02d3 Tru64 SIA authentication support. Patch by Simon L Jackson
Timo Sirainen <tss@iki.fi>
parents: 4621
diff changeset
2010 AC_CHECK_FUNC(sia_validate_user, [
689a02ca02d3 Tru64 SIA authentication support. Patch by Simon L Jackson
Timo Sirainen <tss@iki.fi>
parents: 4621
diff changeset
2011 AC_DEFINE(PASSDB_SIA,, Build with Tru64 SIA support)
689a02ca02d3 Tru64 SIA authentication support. Patch by Simon L Jackson
Timo Sirainen <tss@iki.fi>
parents: 4621
diff changeset
2012 AUTH_LIBS="$AUTH_LIBS -depth_ring_search"
9246
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
2013 have_sia=yes
6974
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
2014 ], [
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
2015 if test $want_sia = yes; then
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
2016 AC_ERROR([Can't build with SIA support: sia_validate_user() not found])
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
2017 fi
4638
689a02ca02d3 Tru64 SIA authentication support. Patch by Simon L Jackson
Timo Sirainen <tss@iki.fi>
parents: 4621
diff changeset
2018 ])
689a02ca02d3 Tru64 SIA authentication support. Patch by Simon L Jackson
Timo Sirainen <tss@iki.fi>
parents: 4621
diff changeset
2019 fi
689a02ca02d3 Tru64 SIA authentication support. Patch by Simon L Jackson
Timo Sirainen <tss@iki.fi>
parents: 4621
diff changeset
2020
9246
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
2021 if test $have_sia = no; then
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
2022 not_passdb="$not_passdb sia"
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
2023 else
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
2024 passdb="$passdb sia"
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
2025 fi
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
2026
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
2027 have_ldap=no
6974
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
2028 if test $want_ldap != no; then
1057
c5ab972db48c libldap checks, --without-pop3 disables pop3 server
Timo Sirainen <tss@iki.fi>
parents: 1049
diff changeset
2029 AC_CHECK_LIB(ldap, ldap_init, [
c5ab972db48c libldap checks, --without-pop3 disables pop3 server
Timo Sirainen <tss@iki.fi>
parents: 1049
diff changeset
2030 AC_CHECK_HEADER(ldap.h, [
2325
7613e0f68513 Fixed to compile with Solaris LDAP library
Timo Sirainen <tss@iki.fi>
parents: 2222
diff changeset
2031 AC_CHECK_LIB(ldap, ldap_initialize, [
7613e0f68513 Fixed to compile with Solaris LDAP library
Timo Sirainen <tss@iki.fi>
parents: 2222
diff changeset
2032 AC_DEFINE(LDAP_HAVE_INITIALIZE,, Define if you have ldap_initialize)
7613e0f68513 Fixed to compile with Solaris LDAP library
Timo Sirainen <tss@iki.fi>
parents: 2222
diff changeset
2033 ])
4415
b91816cd1d16 Added TLS support for LDAP if the library supports it.
Timo Sirainen <tss@iki.fi>
parents: 4411
diff changeset
2034 AC_CHECK_LIB(ldap, ldap_start_tls_s, [
b91816cd1d16 Added TLS support for LDAP if the library supports it.
Timo Sirainen <tss@iki.fi>
parents: 4411
diff changeset
2035 AC_DEFINE(LDAP_HAVE_START_TLS_S,, Define if you have ldap_start_tls_s)
b91816cd1d16 Added TLS support for LDAP if the library supports it.
Timo Sirainen <tss@iki.fi>
parents: 4411
diff changeset
2036 ])
10551
2882650531e0 configure: Use -llber for ldap only if necessary.
Timo Sirainen <tss@iki.fi>
parents: 10491
diff changeset
2037 LDAP_LIBS="-lldap"
11117
eee1e2a1c25b configure: Removed --enable-header-install. It's now always enabled.
Timo Sirainen <tss@iki.fi>
parents: 11008
diff changeset
2038 AC_CHECK_LIB(ldap, ber_free, [
eee1e2a1c25b configure: Removed --enable-header-install. It's now always enabled.
Timo Sirainen <tss@iki.fi>
parents: 11008
diff changeset
2039 # do nothing, default is to add -lldap to LIBS
11120
829cc91ed831 configure: Fix to older autoconfs
Timo Sirainen <tss@iki.fi>
parents: 11117
diff changeset
2040 :
11117
eee1e2a1c25b configure: Removed --enable-header-install. It's now always enabled.
Timo Sirainen <tss@iki.fi>
parents: 11008
diff changeset
2041 ], [
10551
2882650531e0 configure: Use -llber for ldap only if necessary.
Timo Sirainen <tss@iki.fi>
parents: 10491
diff changeset
2042 AC_CHECK_LIB(lber, ber_free, [
2882650531e0 configure: Use -llber for ldap only if necessary.
Timo Sirainen <tss@iki.fi>
parents: 10491
diff changeset
2043 LDAP_LIBS="$LDAP_LIBS -llber"
2882650531e0 configure: Use -llber for ldap only if necessary.
Timo Sirainen <tss@iki.fi>
parents: 10491
diff changeset
2044 ])
2882650531e0 configure: Use -llber for ldap only if necessary.
Timo Sirainen <tss@iki.fi>
parents: 10491
diff changeset
2045 ])
6198
4f6c4aeafafb --with-ldap=plugin builds LDAP passdb and userdb support as a plugin.
Timo Sirainen <tss@iki.fi>
parents: 6196
diff changeset
2046 AC_SUBST(LDAP_LIBS)
8517
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
2047 if test $want_ldap != plugin; then
6198
4f6c4aeafafb --with-ldap=plugin builds LDAP passdb and userdb support as a plugin.
Timo Sirainen <tss@iki.fi>
parents: 6196
diff changeset
2048 AUTH_LIBS="$AUTH_LIBS $LDAP_LIBS"
4f6c4aeafafb --with-ldap=plugin builds LDAP passdb and userdb support as a plugin.
Timo Sirainen <tss@iki.fi>
parents: 6196
diff changeset
2049 AC_DEFINE(BUILTIN_LDAP,, LDAP support is built in)
4f6c4aeafafb --with-ldap=plugin builds LDAP passdb and userdb support as a plugin.
Timo Sirainen <tss@iki.fi>
parents: 6196
diff changeset
2050 fi
1057
c5ab972db48c libldap checks, --without-pop3 disables pop3 server
Timo Sirainen <tss@iki.fi>
parents: 1049
diff changeset
2051
c5ab972db48c libldap checks, --without-pop3 disables pop3 server
Timo Sirainen <tss@iki.fi>
parents: 1049
diff changeset
2052 AC_DEFINE(USERDB_LDAP,, Build with LDAP support)
c5ab972db48c libldap checks, --without-pop3 disables pop3 server
Timo Sirainen <tss@iki.fi>
parents: 1049
diff changeset
2053 AC_DEFINE(PASSDB_LDAP,, Build with LDAP support)
9656
dc6d35b51b68 configure: Check sasl.h existence only when using --with-ldap.
Timo Sirainen <tss@iki.fi>
parents: 9655
diff changeset
2054 AC_CHECK_HEADERS(sasl.h sasl/sasl.h)
9246
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
2055 have_ldap=yes
6974
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
2056 ], [
8517
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
2057 if test $want_ldap != auto; then
6974
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
2058 AC_ERROR([Can't build with LDAP support: ldap.h not found])
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
2059 fi
1057
c5ab972db48c libldap checks, --without-pop3 disables pop3 server
Timo Sirainen <tss@iki.fi>
parents: 1049
diff changeset
2060 ])
6974
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
2061 ], [
8517
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
2062 if test $want_ldap != auto; then
6974
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
2063 AC_ERROR([Can't build with LDAP support: libldap not found])
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
2064 fi
1057
c5ab972db48c libldap checks, --without-pop3 disables pop3 server
Timo Sirainen <tss@iki.fi>
parents: 1049
diff changeset
2065 ])
c5ab972db48c libldap checks, --without-pop3 disables pop3 server
Timo Sirainen <tss@iki.fi>
parents: 1049
diff changeset
2066 fi
c5ab972db48c libldap checks, --without-pop3 disables pop3 server
Timo Sirainen <tss@iki.fi>
parents: 1049
diff changeset
2067
9246
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
2068 if test $have_ldap = no; then
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
2069 not_passdb="$not_passdb ldap"
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
2070 not_userdb="$not_userdb ldap"
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
2071 else
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
2072 userdb="$userdb ldap"
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
2073 passdb="$passdb ldap"
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
2074 if test $want_ldap = plugin; then
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
2075 have_ldap_plugin=yes
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
2076 userdb="$userdb (plugin)"
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
2077 passdb="$passdb (plugin)"
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
2078 fi
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
2079 fi
9551
49a1e47cb037 Fixed building LDAP support as plugin.
Timo Sirainen <tss@iki.fi>
parents: 9542
diff changeset
2080 AM_CONDITIONAL(LDAP_PLUGIN, test "$have_ldap_plugin" = "yes")
9246
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
2081
12214
e3fbe13c0eab dict: Support file backend also with dict proxy.
Timo Sirainen <tss@iki.fi>
parents: 12181
diff changeset
2082 dict_drivers=
4517
e661182eab75 Berkeley DB dict support is now enabled only when using --with-db configure option.
Timo Sirainen <timo.sirainen@movial.fi>
parents: 4482
diff changeset
2083
10600
20963e8ec560 configure: Another try at fixing Berkeley DB check to not give an error.
Timo Sirainen <tss@iki.fi>
parents: 10598
diff changeset
2084 if test $want_db != no; then
10014
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2085 AC_CACHE_CHECK([db_env_create in -ldb],i_cv_have_db_env_create,[
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2086 old_LIBS=$LIBS
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2087 LIBS="$LIBS -ldb"
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2088 AC_TRY_LINK([
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2089 #include <db.h>
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2090 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2091 db_env_create(0, 0);
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2092 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2093 i_cv_have_db_env_create=yes
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2094 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2095 i_cv_have_db_env_create=no
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2096 ])
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2097 LIBS=$old_LIBS
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2098 ])
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2099 if test $i_cv_have_db_env_create = yes; then
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2100 AC_CHECK_HEADER(db.h, [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2101 DICT_LIBS="$DICT_LIBS -ldb"
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2102 dict_drivers="$dict_drivers db"
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2103 AC_DEFINE(BUILD_DB,, Build with Berkeley DB support)
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2104 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2105 if test $want_db = yes; then
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2106 AC_ERROR([Can't build with db support: db.h not found])
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2107 fi
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2108 ])
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2109 else
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2110 if test $want_db = yes; then
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2111 AC_ERROR([Can't build with db support: libdb not found])
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2112 fi
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2113 fi
4517
e661182eab75 Berkeley DB dict support is now enabled only when using --with-db configure option.
Timo Sirainen <timo.sirainen@movial.fi>
parents: 4482
diff changeset
2114 fi
e661182eab75 Berkeley DB dict support is now enabled only when using --with-db configure option.
Timo Sirainen <timo.sirainen@movial.fi>
parents: 4482
diff changeset
2115
6974
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
2116 if test $want_pgsql != no; then
11948
ebb4362b6d0d configure: AC_CHECK_PROG() calls now allow specifying full path to prog via environment.
Timo Sirainen <tss@iki.fi>
parents: 11939
diff changeset
2117 AC_CHECK_PROG(PG_CONFIG, pg_config, pg_config, NO)
9640
ac52d79b7b94 configure: Use pg_config for figuring out PostgreSQL include/libs paths.
Timo Sirainen <tss@iki.fi>
parents: 9559
diff changeset
2118 if test $PG_CONFIG = NO; then
9654
5714aba539f0 configure: Support finding PostgreSQL without pg_config after all.
Timo Sirainen <tss@iki.fi>
parents: 9640
diff changeset
2119 # based on code from PHP
5714aba539f0 configure: Support finding PostgreSQL without pg_config after all.
Timo Sirainen <tss@iki.fi>
parents: 9640
diff changeset
2120 for i in /usr /usr/local /usr/local/pgsql; do
5714aba539f0 configure: Support finding PostgreSQL without pg_config after all.
Timo Sirainen <tss@iki.fi>
parents: 9640
diff changeset
2121 for j in include include/pgsql include/postgres include/postgresql ""; do
5714aba539f0 configure: Support finding PostgreSQL without pg_config after all.
Timo Sirainen <tss@iki.fi>
parents: 9640
diff changeset
2122 if test -r "$i/$j/libpq-fe.h"; then
5714aba539f0 configure: Support finding PostgreSQL without pg_config after all.
Timo Sirainen <tss@iki.fi>
parents: 9640
diff changeset
2123 PGSQL_INCLUDE=$i/$j
5714aba539f0 configure: Support finding PostgreSQL without pg_config after all.
Timo Sirainen <tss@iki.fi>
parents: 9640
diff changeset
2124 fi
5714aba539f0 configure: Support finding PostgreSQL without pg_config after all.
Timo Sirainen <tss@iki.fi>
parents: 9640
diff changeset
2125 done
5714aba539f0 configure: Support finding PostgreSQL without pg_config after all.
Timo Sirainen <tss@iki.fi>
parents: 9640
diff changeset
2126 for lib in lib lib64; do
5714aba539f0 configure: Support finding PostgreSQL without pg_config after all.
Timo Sirainen <tss@iki.fi>
parents: 9640
diff changeset
2127 for j in $lib $lib/pgsql $lib/postgres $lib/postgresql ""; do
5714aba539f0 configure: Support finding PostgreSQL without pg_config after all.
Timo Sirainen <tss@iki.fi>
parents: 9640
diff changeset
2128 if test -f "$i/$j/libpq.so" || test -f "$i/$j/libpq.a"; then
5714aba539f0 configure: Support finding PostgreSQL without pg_config after all.
Timo Sirainen <tss@iki.fi>
parents: 9640
diff changeset
2129 PGSQL_LIBDIR=$i/$j
9640
ac52d79b7b94 configure: Use pg_config for figuring out PostgreSQL include/libs paths.
Timo Sirainen <tss@iki.fi>
parents: 9559
diff changeset
2130 fi
9654
5714aba539f0 configure: Support finding PostgreSQL without pg_config after all.
Timo Sirainen <tss@iki.fi>
parents: 9640
diff changeset
2131 done
5714aba539f0 configure: Support finding PostgreSQL without pg_config after all.
Timo Sirainen <tss@iki.fi>
parents: 9640
diff changeset
2132 done
5714aba539f0 configure: Support finding PostgreSQL without pg_config after all.
Timo Sirainen <tss@iki.fi>
parents: 9640
diff changeset
2133 done
9640
ac52d79b7b94 configure: Use pg_config for figuring out PostgreSQL include/libs paths.
Timo Sirainen <tss@iki.fi>
parents: 9559
diff changeset
2134 else
11948
ebb4362b6d0d configure: AC_CHECK_PROG() calls now allow specifying full path to prog via environment.
Timo Sirainen <tss@iki.fi>
parents: 11939
diff changeset
2135 PGSQL_INCLUDE="`$PG_CONFIG --includedir`"
ebb4362b6d0d configure: AC_CHECK_PROG() calls now allow specifying full path to prog via environment.
Timo Sirainen <tss@iki.fi>
parents: 11939
diff changeset
2136 PGSQL_LIBDIR="`$PG_CONFIG --libdir`"
9654
5714aba539f0 configure: Support finding PostgreSQL without pg_config after all.
Timo Sirainen <tss@iki.fi>
parents: 9640
diff changeset
2137 fi
1283
2d8af547a8b4 Added PostgreSQL support, patch by Alex Howansky
Timo Sirainen <tss@iki.fi>
parents: 1256
diff changeset
2138
9654
5714aba539f0 configure: Support finding PostgreSQL without pg_config after all.
Timo Sirainen <tss@iki.fi>
parents: 9640
diff changeset
2139 old_LIBS=$LIBS
5714aba539f0 configure: Support finding PostgreSQL without pg_config after all.
Timo Sirainen <tss@iki.fi>
parents: 9640
diff changeset
2140 if test "$PGSQL_LIBDIR" != ""; then
5714aba539f0 configure: Support finding PostgreSQL without pg_config after all.
Timo Sirainen <tss@iki.fi>
parents: 9640
diff changeset
2141 LIBS="$LIBS -L$PGSQL_LIBDIR"
5714aba539f0 configure: Support finding PostgreSQL without pg_config after all.
Timo Sirainen <tss@iki.fi>
parents: 9640
diff changeset
2142 fi
1283
2d8af547a8b4 Added PostgreSQL support, patch by Alex Howansky
Timo Sirainen <tss@iki.fi>
parents: 1256
diff changeset
2143
9654
5714aba539f0 configure: Support finding PostgreSQL without pg_config after all.
Timo Sirainen <tss@iki.fi>
parents: 9640
diff changeset
2144 AC_CHECK_LIB(pq, PQconnectdb, [
5714aba539f0 configure: Support finding PostgreSQL without pg_config after all.
Timo Sirainen <tss@iki.fi>
parents: 9640
diff changeset
2145 AC_CHECK_LIB(pq, PQescapeStringConn, [
5714aba539f0 configure: Support finding PostgreSQL without pg_config after all.
Timo Sirainen <tss@iki.fi>
parents: 9640
diff changeset
2146 AC_DEFINE(HAVE_PQESCAPE_STRING_CONN,, Define if libpq has PQescapeStringConn function)
5714aba539f0 configure: Support finding PostgreSQL without pg_config after all.
Timo Sirainen <tss@iki.fi>
parents: 9640
diff changeset
2147 ])
5714aba539f0 configure: Support finding PostgreSQL without pg_config after all.
Timo Sirainen <tss@iki.fi>
parents: 9640
diff changeset
2148 old_CPPFLAGS=$CPPFLAGS
5714aba539f0 configure: Support finding PostgreSQL without pg_config after all.
Timo Sirainen <tss@iki.fi>
parents: 9640
diff changeset
2149 if test "$PGSQL_INCLUDE" != ""; then
11446
044589aca7c6 configure: Don't use spaces after -I and -L compiler flags.
Timo Sirainen <tss@iki.fi>
parents: 11370
diff changeset
2150 CPPFLAGS="$CPPFLAGS -I$PGSQL_INCLUDE"
9654
5714aba539f0 configure: Support finding PostgreSQL without pg_config after all.
Timo Sirainen <tss@iki.fi>
parents: 9640
diff changeset
2151 fi
5714aba539f0 configure: Support finding PostgreSQL without pg_config after all.
Timo Sirainen <tss@iki.fi>
parents: 9640
diff changeset
2152 AC_CHECK_HEADER(libpq-fe.h, [
5714aba539f0 configure: Support finding PostgreSQL without pg_config after all.
Timo Sirainen <tss@iki.fi>
parents: 9640
diff changeset
2153 if test "$PGSQL_INCLUDE" != ""; then
5714aba539f0 configure: Support finding PostgreSQL without pg_config after all.
Timo Sirainen <tss@iki.fi>
parents: 9640
diff changeset
2154 PGSQL_CFLAGS="$PGSQL_CFLAGS -I$PGSQL_INCLUDE"
5714aba539f0 configure: Support finding PostgreSQL without pg_config after all.
Timo Sirainen <tss@iki.fi>
parents: 9640
diff changeset
2155 fi
5714aba539f0 configure: Support finding PostgreSQL without pg_config after all.
Timo Sirainen <tss@iki.fi>
parents: 9640
diff changeset
2156 if test "$PGSQL_LIBDIR" != ""; then
5714aba539f0 configure: Support finding PostgreSQL without pg_config after all.
Timo Sirainen <tss@iki.fi>
parents: 9640
diff changeset
2157 PGSQL_LIBS="$PGSQL_LIBS -L$PGSQL_LIBDIR"
5714aba539f0 configure: Support finding PostgreSQL without pg_config after all.
Timo Sirainen <tss@iki.fi>
parents: 9640
diff changeset
2158 fi
5714aba539f0 configure: Support finding PostgreSQL without pg_config after all.
Timo Sirainen <tss@iki.fi>
parents: 9640
diff changeset
2159 PGSQL_LIBS="$PGSQL_LIBS -lpq"
5714aba539f0 configure: Support finding PostgreSQL without pg_config after all.
Timo Sirainen <tss@iki.fi>
parents: 9640
diff changeset
2160 AC_DEFINE(HAVE_PGSQL,, Build with PostgreSQL support)
5714aba539f0 configure: Support finding PostgreSQL without pg_config after all.
Timo Sirainen <tss@iki.fi>
parents: 9640
diff changeset
2161 found_sql_drivers="$found_sql_drivers pgsql"
5714aba539f0 configure: Support finding PostgreSQL without pg_config after all.
Timo Sirainen <tss@iki.fi>
parents: 9640
diff changeset
2162 ], [
5714aba539f0 configure: Support finding PostgreSQL without pg_config after all.
Timo Sirainen <tss@iki.fi>
parents: 9640
diff changeset
2163 if test $want_pgsql = yes; then
5714aba539f0 configure: Support finding PostgreSQL without pg_config after all.
Timo Sirainen <tss@iki.fi>
parents: 9640
diff changeset
2164 AC_ERROR([Can't build with PostgreSQL support: libpq-fe.h not found])
5714aba539f0 configure: Support finding PostgreSQL without pg_config after all.
Timo Sirainen <tss@iki.fi>
parents: 9640
diff changeset
2165 fi
5714aba539f0 configure: Support finding PostgreSQL without pg_config after all.
Timo Sirainen <tss@iki.fi>
parents: 9640
diff changeset
2166 ])
5714aba539f0 configure: Support finding PostgreSQL without pg_config after all.
Timo Sirainen <tss@iki.fi>
parents: 9640
diff changeset
2167 CPPFLAGS=$old_CPPFLAGS
5714aba539f0 configure: Support finding PostgreSQL without pg_config after all.
Timo Sirainen <tss@iki.fi>
parents: 9640
diff changeset
2168 ], [
5714aba539f0 configure: Support finding PostgreSQL without pg_config after all.
Timo Sirainen <tss@iki.fi>
parents: 9640
diff changeset
2169 if test $want_pgsql = yes; then
5714aba539f0 configure: Support finding PostgreSQL without pg_config after all.
Timo Sirainen <tss@iki.fi>
parents: 9640
diff changeset
2170 AC_ERROR([Can't build with PostgreSQL support: libpq not found])
5714aba539f0 configure: Support finding PostgreSQL without pg_config after all.
Timo Sirainen <tss@iki.fi>
parents: 9640
diff changeset
2171 fi
5714aba539f0 configure: Support finding PostgreSQL without pg_config after all.
Timo Sirainen <tss@iki.fi>
parents: 9640
diff changeset
2172 ])
5714aba539f0 configure: Support finding PostgreSQL without pg_config after all.
Timo Sirainen <tss@iki.fi>
parents: 9640
diff changeset
2173 LIBS=$old_LIBS
1283
2d8af547a8b4 Added PostgreSQL support, patch by Alex Howansky
Timo Sirainen <tss@iki.fi>
parents: 1256
diff changeset
2174 fi
2d8af547a8b4 Added PostgreSQL support, patch by Alex Howansky
Timo Sirainen <tss@iki.fi>
parents: 1256
diff changeset
2175
11871
45b835e6f59c configure: Make sure mysql libs/cflags aren't used if they don't work.
Timo Sirainen <tss@iki.fi>
parents: 11839
diff changeset
2176 have_mysql=no
6974
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
2177 if test $want_mysql != no; then
11948
ebb4362b6d0d configure: AC_CHECK_PROG() calls now allow specifying full path to prog via environment.
Timo Sirainen <tss@iki.fi>
parents: 11939
diff changeset
2178 AC_CHECK_PROG(MYSQL_CONFIG, mysql_config, mysql_config, NO)
9942
a22c9e8a01ae configure: Use mysql_config to find where mysql exists.
Timo Sirainen <tss@iki.fi>
parents: 9842
diff changeset
2179 if test $MYSQL_CONFIG = NO; then
2384
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
2180 # based on code from PHP
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
2181 for i in /usr /usr/local /usr/local/mysql; do
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
2182 for j in include include/mysql ""; do
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
2183 if test -r "$i/$j/mysql.h"; then
11446
044589aca7c6 configure: Don't use spaces after -I and -L compiler flags.
Timo Sirainen <tss@iki.fi>
parents: 11370
diff changeset
2184 MYSQL_INCLUDE="-I$i/$j"
2384
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
2185 fi
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
2186 done
4142
08aef9a8e22c Added lib64 directory to mysql/pgsql checks. Removed all special lib/include
Timo Sirainen <tss@iki.fi>
parents: 4141
diff changeset
2187 for j in lib lib/mysql lib64 lib64/mysql ""; do
2384
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
2188 if test -f "$i/$j/libmysqlclient.so" || test -f "$i/$j/libmysqlclient.a"; then
11446
044589aca7c6 configure: Don't use spaces after -I and -L compiler flags.
Timo Sirainen <tss@iki.fi>
parents: 11370
diff changeset
2189 MYSQL_LIBS="-L$i/$j -lmysqlclient -lz -lm"
2384
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
2190 fi
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
2191 done
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
2192 done
9942
a22c9e8a01ae configure: Use mysql_config to find where mysql exists.
Timo Sirainen <tss@iki.fi>
parents: 9842
diff changeset
2193 else
11948
ebb4362b6d0d configure: AC_CHECK_PROG() calls now allow specifying full path to prog via environment.
Timo Sirainen <tss@iki.fi>
parents: 11939
diff changeset
2194 MYSQL_INCLUDE="`$MYSQL_CONFIG --include`"
ebb4362b6d0d configure: AC_CHECK_PROG() calls now allow specifying full path to prog via environment.
Timo Sirainen <tss@iki.fi>
parents: 11939
diff changeset
2195 MYSQL_LIBS="`$MYSQL_CONFIG --libs`"
9942
a22c9e8a01ae configure: Use mysql_config to find where mysql exists.
Timo Sirainen <tss@iki.fi>
parents: 9842
diff changeset
2196 fi
2384
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
2197
9942
a22c9e8a01ae configure: Use mysql_config to find where mysql exists.
Timo Sirainen <tss@iki.fi>
parents: 9842
diff changeset
2198 old_LIBS=$LIBS
a22c9e8a01ae configure: Use mysql_config to find where mysql exists.
Timo Sirainen <tss@iki.fi>
parents: 9842
diff changeset
2199 if test "$MYSQL_LIBS" != ""; then
a22c9e8a01ae configure: Use mysql_config to find where mysql exists.
Timo Sirainen <tss@iki.fi>
parents: 9842
diff changeset
2200 LIBS="$LIBS $MYSQL_LIBS"
a22c9e8a01ae configure: Use mysql_config to find where mysql exists.
Timo Sirainen <tss@iki.fi>
parents: 9842
diff changeset
2201 fi
1995
cc64f8bb4716 MySQL authentication patch by Matther Reimer
Timo Sirainen <tss@iki.fi>
parents: 1990
diff changeset
2202
9942
a22c9e8a01ae configure: Use mysql_config to find where mysql exists.
Timo Sirainen <tss@iki.fi>
parents: 9842
diff changeset
2203 mysql_lib=""
a22c9e8a01ae configure: Use mysql_config to find where mysql exists.
Timo Sirainen <tss@iki.fi>
parents: 9842
diff changeset
2204 LIBS="$LIBS -lz -lm"
a22c9e8a01ae configure: Use mysql_config to find where mysql exists.
Timo Sirainen <tss@iki.fi>
parents: 9842
diff changeset
2205 AC_CHECK_LIB(mysqlclient, mysql_init, [
2384
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
2206 old_CPPFLAGS=$CPPFLAGS
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
2207 if test "$MYSQL_INCLUDE" != ""; then
9942
a22c9e8a01ae configure: Use mysql_config to find where mysql exists.
Timo Sirainen <tss@iki.fi>
parents: 9842
diff changeset
2208 CPPFLAGS="$CPPFLAGS $MYSQL_INCLUDE"
2384
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
2209 fi
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
2210 AC_CHECK_HEADER(mysql.h, [
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
2211 if test "$MYSQL_INCLUDE" != ""; then
9942
a22c9e8a01ae configure: Use mysql_config to find where mysql exists.
Timo Sirainen <tss@iki.fi>
parents: 9842
diff changeset
2212 MYSQL_CFLAGS="$MYSQL_CFLAGS $MYSQL_INCLUDE"
2384
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
2213 fi
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
2214
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
2215 AC_CHECK_LIB(mysqlclient, mysql_ssl_set, [
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
2216 AC_DEFINE(HAVE_MYSQL_SSL,, Define if your MySQL library has SSL functions)
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
2217 if test "x$have_openssl" = "yes"; then
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
2218 ssl_define="#define HAVE_OPENSSL"
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
2219 else
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
2220 ssl_define=""
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
2221 fi
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
2222 AC_TRY_COMPILE([
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
2223 $ssl_define
2403
3af28e102a39 Mysql check fix
Timo Sirainen <tss@iki.fi>
parents: 2384
diff changeset
2224 #include <mysql.h>
2384
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
2225 ], [
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
2226 mysql_set_ssl(0, 0, 0, 0, 0, 0);
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
2227 ], [
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
2228 AC_DEFINE(HAVE_MYSQL_SSL_CIPHER,, Define if your MySQL library supports setting cipher)
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
2229 ])
2369
189a6de6b166 Added MySQL SSL support.
Timo Sirainen <tss@iki.fi>
parents: 2367
diff changeset
2230 ])
2384
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
2231
11871
45b835e6f59c configure: Make sure mysql libs/cflags aren't used if they don't work.
Timo Sirainen <tss@iki.fi>
parents: 11839
diff changeset
2232 have_mysql=yes
2754
3c3ac12be307 Created generic asynchronous SQL API and implemented MySQL and PostgreSQL
Timo Sirainen <tss@iki.fi>
parents: 2717
diff changeset
2233 AC_DEFINE(HAVE_MYSQL,, Build with MySQL support)
3943
cbe5c6772e0d Added support for dynamically building SQL drivers.
Timo Sirainen <tss@iki.fi>
parents: 3934
diff changeset
2234 found_sql_drivers="$found_sql_drivers mysql"
6974
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
2235 ], [
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
2236 if test $want_mysql = yes; then
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
2237 AC_ERROR([Can't build with MySQL support: mysql.h not found])
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
2238 fi
2369
189a6de6b166 Added MySQL SSL support.
Timo Sirainen <tss@iki.fi>
parents: 2367
diff changeset
2239 ])
2384
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
2240 CPPFLAGS=$old_CPPFLAGS
9942
a22c9e8a01ae configure: Use mysql_config to find where mysql exists.
Timo Sirainen <tss@iki.fi>
parents: 9842
diff changeset
2241 ], [
a22c9e8a01ae configure: Use mysql_config to find where mysql exists.
Timo Sirainen <tss@iki.fi>
parents: 9842
diff changeset
2242 if test $want_mysql = yes; then
a22c9e8a01ae configure: Use mysql_config to find where mysql exists.
Timo Sirainen <tss@iki.fi>
parents: 9842
diff changeset
2243 AC_ERROR([Can't build with MySQL support: libmysqlclient not found])
a22c9e8a01ae configure: Use mysql_config to find where mysql exists.
Timo Sirainen <tss@iki.fi>
parents: 9842
diff changeset
2244 fi
a22c9e8a01ae configure: Use mysql_config to find where mysql exists.
Timo Sirainen <tss@iki.fi>
parents: 9842
diff changeset
2245 ])
1995
cc64f8bb4716 MySQL authentication patch by Matther Reimer
Timo Sirainen <tss@iki.fi>
parents: 1990
diff changeset
2246
11871
45b835e6f59c configure: Make sure mysql libs/cflags aren't used if they don't work.
Timo Sirainen <tss@iki.fi>
parents: 11839
diff changeset
2247 if test $have_mysql != yes; then
45b835e6f59c configure: Make sure mysql libs/cflags aren't used if they don't work.
Timo Sirainen <tss@iki.fi>
parents: 11839
diff changeset
2248 MYSQL_LIBS=
45b835e6f59c configure: Make sure mysql libs/cflags aren't used if they don't work.
Timo Sirainen <tss@iki.fi>
parents: 11839
diff changeset
2249 MYSQL_CFLAGS=
45b835e6f59c configure: Make sure mysql libs/cflags aren't used if they don't work.
Timo Sirainen <tss@iki.fi>
parents: 11839
diff changeset
2250 fi
9942
a22c9e8a01ae configure: Use mysql_config to find where mysql exists.
Timo Sirainen <tss@iki.fi>
parents: 9842
diff changeset
2251 LIBS=$old_LIBS
1995
cc64f8bb4716 MySQL authentication patch by Matther Reimer
Timo Sirainen <tss@iki.fi>
parents: 1990
diff changeset
2252 fi
cc64f8bb4716 MySQL authentication patch by Matther Reimer
Timo Sirainen <tss@iki.fi>
parents: 1990
diff changeset
2253
6974
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
2254 if test $want_sqlite != no; then
3919
b967ffb7e3a6 SQLite support. Patch by Jakob Hirsch.
Timo Sirainen <tss@iki.fi>
parents: 3904
diff changeset
2255 AC_CHECK_LIB(sqlite3, sqlite3_open, [
b967ffb7e3a6 SQLite support. Patch by Jakob Hirsch.
Timo Sirainen <tss@iki.fi>
parents: 3904
diff changeset
2256 AC_CHECK_HEADER(sqlite3.h, [
6194
0d86bb9cf286 Added --enable-sql-plugins to build SQL drivers as plugins. Based on patch
Timo Sirainen <tss@iki.fi>
parents: 6177
diff changeset
2257 SQLITE_LIBS="$SQLITE_LIBS -lsqlite3 -lz"
3919
b967ffb7e3a6 SQLite support. Patch by Jakob Hirsch.
Timo Sirainen <tss@iki.fi>
parents: 3904
diff changeset
2258
b967ffb7e3a6 SQLite support. Patch by Jakob Hirsch.
Timo Sirainen <tss@iki.fi>
parents: 3904
diff changeset
2259 AC_DEFINE(HAVE_SQLITE,, Build with SQLite3 support)
3943
cbe5c6772e0d Added support for dynamically building SQL drivers.
Timo Sirainen <tss@iki.fi>
parents: 3934
diff changeset
2260 found_sql_drivers="$found_sql_drivers sqlite"
6974
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
2261 ], [
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
2262 if test $want_sqlite = yes; then
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
2263 AC_ERROR([Can't build with SQLite support: sqlite3.h not found])
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
2264 fi
3919
b967ffb7e3a6 SQLite support. Patch by Jakob Hirsch.
Timo Sirainen <tss@iki.fi>
parents: 3904
diff changeset
2265 ])
6974
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
2266 ], [
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
2267 if test $want_sqlite = yes; then
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
2268 AC_ERROR([Can't build with SQLite support: libsqlite3 not found])
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
2269 fi
4144
13665379afa8 Unbreak last sqlite change
Timo Sirainen <tss@iki.fi>
parents: 4143
diff changeset
2270 ])
3919
b967ffb7e3a6 SQLite support. Patch by Jakob Hirsch.
Timo Sirainen <tss@iki.fi>
parents: 3904
diff changeset
2271 fi
6194
0d86bb9cf286 Added --enable-sql-plugins to build SQL drivers as plugins. Based on patch
Timo Sirainen <tss@iki.fi>
parents: 6177
diff changeset
2272
0d86bb9cf286 Added --enable-sql-plugins to build SQL drivers as plugins. Based on patch
Timo Sirainen <tss@iki.fi>
parents: 6177
diff changeset
2273 SQL_CFLAGS="$MYSQL_CFLAGS $PGSQL_CFLAGS $SQLITE_CFLAGS"
8517
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
2274 if test "$want_sql" != "plugin"; then
6194
0d86bb9cf286 Added --enable-sql-plugins to build SQL drivers as plugins. Based on patch
Timo Sirainen <tss@iki.fi>
parents: 6177
diff changeset
2275 SQL_LIBS="$MYSQL_LIBS $PGSQL_LIBS $SQLITE_LIBS"
9329
ed142749ce67 dovecot --build-options: If SQL or LDAP was built as plugins, say it.
Timo Sirainen <tss@iki.fi>
parents: 9258
diff changeset
2276 else
ed142749ce67 dovecot --build-options: If SQL or LDAP was built as plugins, say it.
Timo Sirainen <tss@iki.fi>
parents: 9258
diff changeset
2277 AC_DEFINE(SQL_DRIVER_PLUGINS,, Build SQL drivers as plugins)
6194
0d86bb9cf286 Added --enable-sql-plugins to build SQL drivers as plugins. Based on patch
Timo Sirainen <tss@iki.fi>
parents: 6177
diff changeset
2278 fi
3919
b967ffb7e3a6 SQLite support. Patch by Jakob Hirsch.
Timo Sirainen <tss@iki.fi>
parents: 3904
diff changeset
2279
10155
3a32306aa473 configure: Removed --with-sql-drivers parameter. I'm not sure what it tried to do.
Timo Sirainen <tss@iki.fi>
parents: 10095
diff changeset
2280 sql_drivers=
3a32306aa473 configure: Removed --with-sql-drivers parameter. I'm not sure what it tried to do.
Timo Sirainen <tss@iki.fi>
parents: 10095
diff changeset
2281 not_sql_drivers=
3a32306aa473 configure: Removed --with-sql-drivers parameter. I'm not sure what it tried to do.
Timo Sirainen <tss@iki.fi>
parents: 10095
diff changeset
2282
8517
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
2283 if test "$found_sql_drivers" != "" || test "$want_sql" != "no"; then
10155
3a32306aa473 configure: Removed --with-sql-drivers parameter. I'm not sure what it tried to do.
Timo Sirainen <tss@iki.fi>
parents: 10095
diff changeset
2284 sql_drivers="$found_sql_drivers"
3943
cbe5c6772e0d Added support for dynamically building SQL drivers.
Timo Sirainen <tss@iki.fi>
parents: 3934
diff changeset
2285
2754
3c3ac12be307 Created generic asynchronous SQL API and implemented MySQL and PostgreSQL
Timo Sirainen <tss@iki.fi>
parents: 2717
diff changeset
2286 AC_DEFINE(PASSDB_SQL,, Build with SQL support)
3c3ac12be307 Created generic asynchronous SQL API and implemented MySQL and PostgreSQL
Timo Sirainen <tss@iki.fi>
parents: 2717
diff changeset
2287 AC_DEFINE(USERDB_SQL,, Build with SQL support)
3c3ac12be307 Created generic asynchronous SQL API and implemented MySQL and PostgreSQL
Timo Sirainen <tss@iki.fi>
parents: 2717
diff changeset
2288 AUTH_LIBS="$AUTH_LIBS $SQL_LIBS"
4012
d8c1e641b435 Building with SQL support replaced passdb list with userdbs.
Timo Sirainen <timo.sirainen@movial.fi>
parents: 4005
diff changeset
2289 passdb="$passdb sql"
3943
cbe5c6772e0d Added support for dynamically building SQL drivers.
Timo Sirainen <tss@iki.fi>
parents: 3934
diff changeset
2290 userdb="$userdb sql"
9246
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
2291 else
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
2292 not_passdb="$not_passdb sql"
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
2293 not_userdb="$not_userdb sql"
2754
3c3ac12be307 Created generic asynchronous SQL API and implemented MySQL and PostgreSQL
Timo Sirainen <tss@iki.fi>
parents: 2717
diff changeset
2294 fi
3c3ac12be307 Created generic asynchronous SQL API and implemented MySQL and PostgreSQL
Timo Sirainen <tss@iki.fi>
parents: 2717
diff changeset
2295
9246
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
2296 have_vpopmail=no
6974
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
2297 if test $want_vpopmail != no; then
8828
71f385df3de4 --with-vpopmail=path now also checks path/lib_deps instead of only path/etc/lib_deps.
Timo Sirainen <tss@iki.fi>
parents: 8798
diff changeset
2298 vpop_etc="$vpopmail_home/etc"
71f385df3de4 --with-vpopmail=path now also checks path/lib_deps instead of only path/etc/lib_deps.
Timo Sirainen <tss@iki.fi>
parents: 8798
diff changeset
2299 AC_MSG_CHECKING([for vpopmail configuration at $vpop_etc/lib_deps])
71f385df3de4 --with-vpopmail=path now also checks path/lib_deps instead of only path/etc/lib_deps.
Timo Sirainen <tss@iki.fi>
parents: 8798
diff changeset
2300 if ! test -f $vpop_etc/lib_deps; then
8829
f67a966f2792 --with-vpopmail: Minor fix for previous change.
Timo Sirainen <tss@iki.fi>
parents: 8828
diff changeset
2301 AC_MSG_RESULT(not found)
8828
71f385df3de4 --with-vpopmail=path now also checks path/lib_deps instead of only path/etc/lib_deps.
Timo Sirainen <tss@iki.fi>
parents: 8798
diff changeset
2302 vpop_etc="$vpopmail_home"
71f385df3de4 --with-vpopmail=path now also checks path/lib_deps instead of only path/etc/lib_deps.
Timo Sirainen <tss@iki.fi>
parents: 8798
diff changeset
2303 AC_MSG_CHECKING([for vpopmail configuration at $vpop_etc/lib_deps])
71f385df3de4 --with-vpopmail=path now also checks path/lib_deps instead of only path/etc/lib_deps.
Timo Sirainen <tss@iki.fi>
parents: 8798
diff changeset
2304 fi
71f385df3de4 --with-vpopmail=path now also checks path/lib_deps instead of only path/etc/lib_deps.
Timo Sirainen <tss@iki.fi>
parents: 8798
diff changeset
2305 if test -f $vpop_etc/lib_deps; then
71f385df3de4 --with-vpopmail=path now also checks path/lib_deps instead of only path/etc/lib_deps.
Timo Sirainen <tss@iki.fi>
parents: 8798
diff changeset
2306 AUTH_CFLAGS="$AUTH_CFLAGS `cat $vpop_etc/inc_deps` $CFLAGS"
71f385df3de4 --with-vpopmail=path now also checks path/lib_deps instead of only path/etc/lib_deps.
Timo Sirainen <tss@iki.fi>
parents: 8798
diff changeset
2307 AUTH_LIBS="$AUTH_LIBS `cat $vpop_etc/lib_deps`"
1043
cacabd33c68a Initial code for POP3 server. RETR isn't working right yet, there's some
Timo Sirainen <tss@iki.fi>
parents: 1022
diff changeset
2308 AC_DEFINE(USERDB_VPOPMAIL,, Build with vpopmail support)
cacabd33c68a Initial code for POP3 server. RETR isn't working right yet, there's some
Timo Sirainen <tss@iki.fi>
parents: 1022
diff changeset
2309 AC_DEFINE(PASSDB_VPOPMAIL,, Build with vpopmail support)
281
b7fe6867e549 print "checking vpopmail"
Timo Sirainen <tss@iki.fi>
parents: 280
diff changeset
2310 AC_MSG_RESULT(found)
9246
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
2311 have_vpopmail=yes
280
fa2d1a1d025e vpopmail authentication. compiles, not tested if it really works.
Timo Sirainen <tss@iki.fi>
parents: 247
diff changeset
2312 else
281
b7fe6867e549 print "checking vpopmail"
Timo Sirainen <tss@iki.fi>
parents: 280
diff changeset
2313 AC_MSG_RESULT(not found)
6974
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
2314 if test $want_vpopmail = yes; then
8828
71f385df3de4 --with-vpopmail=path now also checks path/lib_deps instead of only path/etc/lib_deps.
Timo Sirainen <tss@iki.fi>
parents: 8798
diff changeset
2315 AC_ERROR([Can't build with vpopmail support: $vpop_etc/lib_deps not found])
6974
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
2316 fi
280
fa2d1a1d025e vpopmail authentication. compiles, not tested if it really works.
Timo Sirainen <tss@iki.fi>
parents: 247
diff changeset
2317 fi
fa2d1a1d025e vpopmail authentication. compiles, not tested if it really works.
Timo Sirainen <tss@iki.fi>
parents: 247
diff changeset
2318 fi
fa2d1a1d025e vpopmail authentication. compiles, not tested if it really works.
Timo Sirainen <tss@iki.fi>
parents: 247
diff changeset
2319
9246
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
2320 if test $have_vpopmail = no; then
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
2321 not_passdb="$not_passdb vpopmail"
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
2322 not_userdb="$not_userdb vpopmail"
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
2323 else
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
2324 userdb="$userdb vpopmail"
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
2325 passdb="$passdb vpopmail"
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
2326 fi
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
2327
5692
1034fcaffcce If crypt() is in libc, don't link -lcrypt even if it's found.
Timo Sirainen <tss@iki.fi>
parents: 5691
diff changeset
2328 AC_CHECK_FUNC(crypt,, [
1034fcaffcce If crypt() is in libc, don't link -lcrypt even if it's found.
Timo Sirainen <tss@iki.fi>
parents: 5691
diff changeset
2329 AC_CHECK_LIB(crypt, crypt, [
1034fcaffcce If crypt() is in libc, don't link -lcrypt even if it's found.
Timo Sirainen <tss@iki.fi>
parents: 5691
diff changeset
2330 AUTH_LIBS="-lcrypt $AUTH_LIBS"
12876
b93d45b71332 doveadm: Don't link with all AUTH_LIBS, only -lcrypt is needed.
Timo Sirainen <tss@iki.fi>
parents: 12874
diff changeset
2331 CRYPT_LIBS="-lcrypt"
5692
1034fcaffcce If crypt() is in libc, don't link -lcrypt even if it's found.
Timo Sirainen <tss@iki.fi>
parents: 5691
diff changeset
2332 ], [
1034fcaffcce If crypt() is in libc, don't link -lcrypt even if it's found.
Timo Sirainen <tss@iki.fi>
parents: 5691
diff changeset
2333 AC_MSG_ERROR([crypt() wasn't found])
1034fcaffcce If crypt() is in libc, don't link -lcrypt even if it's found.
Timo Sirainen <tss@iki.fi>
parents: 5691
diff changeset
2334 ])
5346
e39ce58a463b Link dovecot-auth always with -lcrypto if it's needed for crypt(). It could
Timo Sirainen <tss@iki.fi>
parents: 5217
diff changeset
2335 ])
12876
b93d45b71332 doveadm: Don't link with all AUTH_LIBS, only -lcrypt is needed.
Timo Sirainen <tss@iki.fi>
parents: 12874
diff changeset
2336 AC_SUBST(CRYPT_LIBS)
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
2337
1511
a4ad03c210af Check if dlopen is in libc too.
Timo Sirainen <tss@iki.fi>
parents: 1467
diff changeset
2338 if test $have_modules = yes; then
1465
03dd87873a81 Added support for dynamically loadable imap/pop3 modules.
Timo Sirainen <tss@iki.fi>
parents: 1462
diff changeset
2339 AC_DEFINE(HAVE_MODULES,, Define if you have dynamic module support)
03dd87873a81 Added support for dynamically loadable imap/pop3 modules.
Timo Sirainen <tss@iki.fi>
parents: 1462
diff changeset
2340 AC_SUBST(MODULE_LIBS)
7826
b63aa0ffe564 Use dynamic module suffix provided by libtool rather than hardcoded ".so".
Timo Sirainen <tss@iki.fi>
parents: 7823
diff changeset
2341
b63aa0ffe564 Use dynamic module suffix provided by libtool rather than hardcoded ".so".
Timo Sirainen <tss@iki.fi>
parents: 7823
diff changeset
2342 # shrext_cmds comes from libtool.m4
7867
3f8282688777 Fixed looking up plugin suffix.
Timo Sirainen <tss@iki.fi>
parents: 7865
diff changeset
2343 module=yes eval MODULE_SUFFIX=$shrext_cmds
7869
fe465f0f86fb If $shrext_cmds isn't set for some reason, fallback to ".so" suffix.
Timo Sirainen <tss@iki.fi>
parents: 7867
diff changeset
2344 if test "$MODULE_SUFFIX" = ""; then
fe465f0f86fb If $shrext_cmds isn't set for some reason, fallback to ".so" suffix.
Timo Sirainen <tss@iki.fi>
parents: 7867
diff changeset
2345 # too old libtool?
fe465f0f86fb If $shrext_cmds isn't set for some reason, fallback to ".so" suffix.
Timo Sirainen <tss@iki.fi>
parents: 7867
diff changeset
2346 MODULE_SUFFIX=.so
fe465f0f86fb If $shrext_cmds isn't set for some reason, fallback to ".so" suffix.
Timo Sirainen <tss@iki.fi>
parents: 7867
diff changeset
2347 fi
7826
b63aa0ffe564 Use dynamic module suffix provided by libtool rather than hardcoded ".so".
Timo Sirainen <tss@iki.fi>
parents: 7823
diff changeset
2348 AC_DEFINE_UNQUOTED(MODULE_SUFFIX,"$MODULE_SUFFIX",Dynamic module suffix)
b63aa0ffe564 Use dynamic module suffix provided by libtool rather than hardcoded ".so".
Timo Sirainen <tss@iki.fi>
parents: 7823
diff changeset
2349 AC_SUBST(MODULE_SUFFIX)
1511
a4ad03c210af Check if dlopen is in libc too.
Timo Sirainen <tss@iki.fi>
parents: 1467
diff changeset
2350 fi
1150
18a2074a4d3d Support for dynamic authentication modules.
Timo Sirainen <tss@iki.fi>
parents: 1096
diff changeset
2351
6974
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
2352 have_nss=no
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
2353 if test $want_nss != no; then
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
2354 if test $have_modules != yes; then
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
2355 if test $want_nss = yes; then
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
2356 AC_ERROR([Can't build with NSS support: Dynamic modules not supported])
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
2357 fi
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
2358 else
10014
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2359 AC_CACHE_CHECK([for NSS support],i_cv_have_nss,[
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2360 AC_TRY_COMPILE([
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2361 #include <nss.h>
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2362 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2363 enum nss_status status = NSS_STATUS_TRYAGAIN;
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2364 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2365 i_cv_have_nss=yes
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2366 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2367 i_cv_have_nss=no
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2368 ])
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2369 ])
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2370 if test $i_cv_have_nss = yes; then
6974
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
2371 AC_DEFINE(USERDB_NSS,, Build with NSS module support)
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
2372 have_nss=yes
10014
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2373 else
6974
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
2374 if test $want_nss = yes; then
10014
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2375 AC_ERROR([Can't build with NSS support: nss.h not found or not usable])
6974
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
2376 fi
10014
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2377 fi
6974
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
2378 fi
5870
c9b49ed99d28 Added userdb nss which currently supports glibc-compatible NSS modules.
Timo Sirainen <tss@iki.fi>
parents: 5859
diff changeset
2379 fi
c9b49ed99d28 Added userdb nss which currently supports glibc-compatible NSS modules.
Timo Sirainen <tss@iki.fi>
parents: 5859
diff changeset
2380
9246
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
2381 if test $have_nss = no; then
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
2382 not_userdb="$not_userdb nss"
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
2383 else
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
2384 userdb="$userdb nss"
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
2385 fi
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
2386
1283
2d8af547a8b4 Added PostgreSQL support, patch by Alex Howansky
Timo Sirainen <tss@iki.fi>
parents: 1256
diff changeset
2387 AC_SUBST(AUTH_CFLAGS)
1284
71f61b6a0f02 cleanups
Timo Sirainen <tss@iki.fi>
parents: 1283
diff changeset
2388 AC_SUBST(AUTH_LIBS)
2754
3c3ac12be307 Created generic asynchronous SQL API and implemented MySQL and PostgreSQL
Timo Sirainen <tss@iki.fi>
parents: 2717
diff changeset
2389 AC_SUBST(SQL_CFLAGS)
3c3ac12be307 Created generic asynchronous SQL API and implemented MySQL and PostgreSQL
Timo Sirainen <tss@iki.fi>
parents: 2717
diff changeset
2390 AC_SUBST(SQL_LIBS)
6194
0d86bb9cf286 Added --enable-sql-plugins to build SQL drivers as plugins. Based on patch
Timo Sirainen <tss@iki.fi>
parents: 6177
diff changeset
2391 AC_SUBST(MYSQL_CFLAGS)
0d86bb9cf286 Added --enable-sql-plugins to build SQL drivers as plugins. Based on patch
Timo Sirainen <tss@iki.fi>
parents: 6177
diff changeset
2392 AC_SUBST(MYSQL_LIBS)
0d86bb9cf286 Added --enable-sql-plugins to build SQL drivers as plugins. Based on patch
Timo Sirainen <tss@iki.fi>
parents: 6177
diff changeset
2393 AC_SUBST(PGSQL_CFLAGS)
0d86bb9cf286 Added --enable-sql-plugins to build SQL drivers as plugins. Based on patch
Timo Sirainen <tss@iki.fi>
parents: 6177
diff changeset
2394 AC_SUBST(PGSQL_LIBS)
0d86bb9cf286 Added --enable-sql-plugins to build SQL drivers as plugins. Based on patch
Timo Sirainen <tss@iki.fi>
parents: 6177
diff changeset
2395 AC_SUBST(SQLITE_CFLAGS)
0d86bb9cf286 Added --enable-sql-plugins to build SQL drivers as plugins. Based on patch
Timo Sirainen <tss@iki.fi>
parents: 6177
diff changeset
2396 AC_SUBST(SQLITE_LIBS)
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
2397
4517
e661182eab75 Berkeley DB dict support is now enabled only when using --with-db configure option.
Timo Sirainen <timo.sirainen@movial.fi>
parents: 4482
diff changeset
2398 AC_SUBST(DICT_LIBS)
e661182eab75 Berkeley DB dict support is now enabled only when using --with-db configure option.
Timo Sirainen <timo.sirainen@movial.fi>
parents: 4482
diff changeset
2399 AC_SUBST(dict_drivers)
e661182eab75 Berkeley DB dict support is now enabled only when using --with-db configure option.
Timo Sirainen <timo.sirainen@movial.fi>
parents: 4482
diff changeset
2400
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
2401 dnl **
8572
9ec2882243a6 Try to use (Apple) gcc's __BIG_ENDIAN__ and __LITTLE_ENDIAN__ macros if possible.
Timo Sirainen <tss@iki.fi>
parents: 8556
diff changeset
2402 dnl ** Endianess
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
2403 dnl **
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
2404
8572
9ec2882243a6 Try to use (Apple) gcc's __BIG_ENDIAN__ and __LITTLE_ENDIAN__ macros if possible.
Timo Sirainen <tss@iki.fi>
parents: 8556
diff changeset
2405 dnl At least Apple's gcc supports __BIG_ENDIAN__ and __LITTLE_ENDIAN__
9ec2882243a6 Try to use (Apple) gcc's __BIG_ENDIAN__ and __LITTLE_ENDIAN__ macros if possible.
Timo Sirainen <tss@iki.fi>
parents: 8556
diff changeset
2406 dnl defines. Use them if possible to allow cross-compiling.
10014
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2407 AC_CACHE_CHECK([if __BIG_ENDIAN__ or __LITTLE_ENDIAN__ is defined],i_cv_have___big_endian__,[
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2408 AC_TRY_COMPILE([
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2409 #if !(__BIG_ENDIAN__ || __LITTLE_ENDIAN__)
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2410 #error nope
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2411 #endif
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2412 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2413 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2414 i_cv_have___big_endian__=yes
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2415 ], [
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2416 i_cv_have___big_endian__=no
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2417 ])
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2418 ])
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2419 if test $i_cv_have___big_endian__ = yes; then
8572
9ec2882243a6 Try to use (Apple) gcc's __BIG_ENDIAN__ and __LITTLE_ENDIAN__ macros if possible.
Timo Sirainen <tss@iki.fi>
parents: 8556
diff changeset
2420 AC_DEFINE(WORDS_BIGENDIAN, __BIG_ENDIAN__, Define if your CPU is big endian)
10014
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2421 else
8572
9ec2882243a6 Try to use (Apple) gcc's __BIG_ENDIAN__ and __LITTLE_ENDIAN__ macros if possible.
Timo Sirainen <tss@iki.fi>
parents: 8556
diff changeset
2422 AC_C_BIGENDIAN
10014
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2423 fi
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
2424
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
2425 dnl **
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
2426 dnl ** IPv6 support
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
2427 dnl **
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
2428
6974
ec6cc297dd82 --with-package=yes now fails if package can't be used. --with-package=auto
Timo Sirainen <tss@iki.fi>
parents: 6919
diff changeset
2429 have_ipv6=no
9157
ee378a4ba6cd configure: Removed --disable-ipv6 parameter. There's really no point having it.
Timo Sirainen <tss@iki.fi>
parents: 9135
diff changeset
2430 AC_MSG_CHECKING([for IPv6])
ee378a4ba6cd configure: Removed --disable-ipv6 parameter. There's really no point having it.
Timo Sirainen <tss@iki.fi>
parents: 9135
diff changeset
2431 AC_CACHE_VAL(i_cv_type_in6_addr,
ee378a4ba6cd configure: Removed --disable-ipv6 parameter. There's really no point having it.
Timo Sirainen <tss@iki.fi>
parents: 9135
diff changeset
2432 [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
ee378a4ba6cd configure: Removed --disable-ipv6 parameter. There's really no point having it.
Timo Sirainen <tss@iki.fi>
parents: 9135
diff changeset
2433 #include <sys/types.h>
ee378a4ba6cd configure: Removed --disable-ipv6 parameter. There's really no point having it.
Timo Sirainen <tss@iki.fi>
parents: 9135
diff changeset
2434 #include <sys/socket.h>
ee378a4ba6cd configure: Removed --disable-ipv6 parameter. There's really no point having it.
Timo Sirainen <tss@iki.fi>
parents: 9135
diff changeset
2435 #include <netinet/in.h>
ee378a4ba6cd configure: Removed --disable-ipv6 parameter. There's really no point having it.
Timo Sirainen <tss@iki.fi>
parents: 9135
diff changeset
2436 #include <netdb.h>
ee378a4ba6cd configure: Removed --disable-ipv6 parameter. There's really no point having it.
Timo Sirainen <tss@iki.fi>
parents: 9135
diff changeset
2437 #include <arpa/inet.h>]],
ee378a4ba6cd configure: Removed --disable-ipv6 parameter. There's really no point having it.
Timo Sirainen <tss@iki.fi>
parents: 9135
diff changeset
2438 [[struct in6_addr i;]])],
ee378a4ba6cd configure: Removed --disable-ipv6 parameter. There's really no point having it.
Timo Sirainen <tss@iki.fi>
parents: 9135
diff changeset
2439 [i_cv_type_in6_addr=yes],
ee378a4ba6cd configure: Removed --disable-ipv6 parameter. There's really no point having it.
Timo Sirainen <tss@iki.fi>
parents: 9135
diff changeset
2440 [i_cv_type_in6_addr=no])])
ee378a4ba6cd configure: Removed --disable-ipv6 parameter. There's really no point having it.
Timo Sirainen <tss@iki.fi>
parents: 9135
diff changeset
2441 if test $i_cv_type_in6_addr = yes; then
ee378a4ba6cd configure: Removed --disable-ipv6 parameter. There's really no point having it.
Timo Sirainen <tss@iki.fi>
parents: 9135
diff changeset
2442 AC_DEFINE(HAVE_IPV6,, Build with IPv6 support)
ee378a4ba6cd configure: Removed --disable-ipv6 parameter. There's really no point having it.
Timo Sirainen <tss@iki.fi>
parents: 9135
diff changeset
2443 have_ipv6=yes
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
2444 fi
9157
ee378a4ba6cd configure: Removed --disable-ipv6 parameter. There's really no point having it.
Timo Sirainen <tss@iki.fi>
parents: 9135
diff changeset
2445 AC_MSG_RESULT($i_cv_type_in6_addr)
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
2446
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
2447 dnl **
1404
54015ae11177 --with-storage=maildir,mbox can now be used to compile in only the wanted
Timo Sirainen <tss@iki.fi>
parents: 1403
diff changeset
2448 dnl ** storage classes
54015ae11177 --with-storage=maildir,mbox can now be used to compile in only the wanted
Timo Sirainen <tss@iki.fi>
parents: 1403
diff changeset
2449 dnl **
54015ae11177 --with-storage=maildir,mbox can now be used to compile in only the wanted
Timo Sirainen <tss@iki.fi>
parents: 1403
diff changeset
2450
9017
1b586a2fee8b Build libdovecot.so and libdovecot-storage.so.
Timo Sirainen <tss@iki.fi>
parents: 9016
diff changeset
2451 maildir_libs='$(top_builddir)/src/lib-storage/index/maildir/libstorage_maildir.la'
1b586a2fee8b Build libdovecot.so and libdovecot-storage.so.
Timo Sirainen <tss@iki.fi>
parents: 9016
diff changeset
2452 mbox_libs='$(top_builddir)/src/lib-storage/index/mbox/libstorage_mbox.la'
9977
0bb321c347ae Split dbox (single-dbox) and mdbox (multi-dbox) into separate storage backends.
Timo Sirainen <tss@iki.fi>
parents: 9973
diff changeset
2453 dbox_common_libs='$(top_builddir)/src/lib-storage/index/dbox-common/libstorage_dbox_common.la'
11820
76ee1fa16012 Renamed "dbox" to "sdbox". Keep also dbox as an alias for it.
Timo Sirainen <tss@iki.fi>
parents: 11768
diff changeset
2454 sdbox_libs='$(top_builddir)/src/lib-storage/index/dbox-single/libstorage_dbox_single.la'
9977
0bb321c347ae Split dbox (single-dbox) and mdbox (multi-dbox) into separate storage backends.
Timo Sirainen <tss@iki.fi>
parents: 9973
diff changeset
2455 mdbox_libs='$(top_builddir)/src/lib-storage/index/dbox-multi/libstorage_dbox_multi.la'
9017
1b586a2fee8b Build libdovecot.so and libdovecot-storage.so.
Timo Sirainen <tss@iki.fi>
parents: 9016
diff changeset
2456 cydir_libs='$(top_builddir)/src/lib-storage/index/cydir/libstorage_cydir.la'
13880
d4c909d2306f lib-storage: Added initial support for pop3c backend.
Timo Sirainen <tss@iki.fi>
parents: 13875
diff changeset
2457 imapc_libs='$(top_builddir)/src/lib-storage/index/imapc/libstorage_imapc.la $(top_builddir)/src/lib-imap-client/libimap_client.la'
d4c909d2306f lib-storage: Added initial support for pop3c backend.
Timo Sirainen <tss@iki.fi>
parents: 13875
diff changeset
2458 pop3c_libs='$(top_builddir)/src/lib-storage/index/pop3c/libstorage_pop3c.la'
9017
1b586a2fee8b Build libdovecot.so and libdovecot-storage.so.
Timo Sirainen <tss@iki.fi>
parents: 9016
diff changeset
2459 raw_libs='$(top_builddir)/src/lib-storage/index/raw/libstorage_raw.la'
1b586a2fee8b Build libdovecot.so and libdovecot-storage.so.
Timo Sirainen <tss@iki.fi>
parents: 9016
diff changeset
2460 shared_libs='$(top_builddir)/src/lib-storage/index/shared/libstorage_shared.la'
8376
2d24b8b46308 $STORAGE_LIBS now contains all the libraries that libstorage needs.
Timo Sirainen <tss@iki.fi>
parents: 8354
diff changeset
2461
9017
1b586a2fee8b Build libdovecot.so and libdovecot-storage.so.
Timo Sirainen <tss@iki.fi>
parents: 9016
diff changeset
2462 CORE_LIBS='$(top_builddir)/src/lib-dovecot/libdovecot.la'
1b586a2fee8b Build libdovecot.so and libdovecot-storage.so.
Timo Sirainen <tss@iki.fi>
parents: 9016
diff changeset
2463 STORAGE_LIB='$(top_builddir)/src/lib-storage/libdovecot-storage.la'
1404
54015ae11177 --with-storage=maildir,mbox can now be used to compile in only the wanted
Timo Sirainen <tss@iki.fi>
parents: 1403
diff changeset
2464
9017
1b586a2fee8b Build libdovecot.so and libdovecot-storage.so.
Timo Sirainen <tss@iki.fi>
parents: 9016
diff changeset
2465 LINKED_STORAGE_LIBS=
12671
437e24ac6303 Fixed compiling with configure --with-storages when imapc wasn't listed.
Timo Sirainen <tss@iki.fi>
parents: 12617
diff changeset
2466
15167
0fa075f2e85a lib-storage: Added initial implementation for layout=index.
Timo Sirainen <tss@iki.fi>
parents: 15162
diff changeset
2467 mailbox_list_drivers="maildir imapdir fs index none shared"
11820
76ee1fa16012 Renamed "dbox" to "sdbox". Keep also dbox as an alias for it.
Timo Sirainen <tss@iki.fi>
parents: 11768
diff changeset
2468 have_sdbox=no
1404
54015ae11177 --with-storage=maildir,mbox can now be used to compile in only the wanted
Timo Sirainen <tss@iki.fi>
parents: 1403
diff changeset
2469 for storage in $mail_storages; do
9017
1b586a2fee8b Build libdovecot.so and libdovecot-storage.so.
Timo Sirainen <tss@iki.fi>
parents: 9016
diff changeset
2470 LINKED_STORAGE_LIBS="$LINKED_STORAGE_LIBS `eval echo \\$${storage}_libs`"
11820
76ee1fa16012 Renamed "dbox" to "sdbox". Keep also dbox as an alias for it.
Timo Sirainen <tss@iki.fi>
parents: 11768
diff changeset
2471 if test $storage = sdbox; then
76ee1fa16012 Renamed "dbox" to "sdbox". Keep also dbox as an alias for it.
Timo Sirainen <tss@iki.fi>
parents: 11768
diff changeset
2472 have_sdbox=yes
76ee1fa16012 Renamed "dbox" to "sdbox". Keep also dbox as an alias for it.
Timo Sirainen <tss@iki.fi>
parents: 11768
diff changeset
2473 fi
76ee1fa16012 Renamed "dbox" to "sdbox". Keep also dbox as an alias for it.
Timo Sirainen <tss@iki.fi>
parents: 11768
diff changeset
2474 if test $storage = sdbox || test $storage = mdbox; then
9977
0bb321c347ae Split dbox (single-dbox) and mdbox (multi-dbox) into separate storage backends.
Timo Sirainen <tss@iki.fi>
parents: 9973
diff changeset
2475 LINKED_STORAGE_LIBS="$LINKED_STORAGE_LIBS $dbox_common_libs"
0bb321c347ae Split dbox (single-dbox) and mdbox (multi-dbox) into separate storage backends.
Timo Sirainen <tss@iki.fi>
parents: 9973
diff changeset
2476 dbox_common_libs=""
0bb321c347ae Split dbox (single-dbox) and mdbox (multi-dbox) into separate storage backends.
Timo Sirainen <tss@iki.fi>
parents: 9973
diff changeset
2477 fi
12671
437e24ac6303 Fixed compiling with configure --with-storages when imapc wasn't listed.
Timo Sirainen <tss@iki.fi>
parents: 12617
diff changeset
2478 if test $storage = imapc; then
437e24ac6303 Fixed compiling with configure --with-storages when imapc wasn't listed.
Timo Sirainen <tss@iki.fi>
parents: 12617
diff changeset
2479 mailbox_list_drivers="$mailbox_list_drivers imapc"
13880
d4c909d2306f lib-storage: Added initial support for pop3c backend.
Timo Sirainen <tss@iki.fi>
parents: 13875
diff changeset
2480 want_ssl_libs=yes
d4c909d2306f lib-storage: Added initial support for pop3c backend.
Timo Sirainen <tss@iki.fi>
parents: 13875
diff changeset
2481 fi
d4c909d2306f lib-storage: Added initial support for pop3c backend.
Timo Sirainen <tss@iki.fi>
parents: 13875
diff changeset
2482 if test $storage = pop3c; then
d4c909d2306f lib-storage: Added initial support for pop3c backend.
Timo Sirainen <tss@iki.fi>
parents: 13875
diff changeset
2483 want_ssl_libs=yes
12671
437e24ac6303 Fixed compiling with configure --with-storages when imapc wasn't listed.
Timo Sirainen <tss@iki.fi>
parents: 12617
diff changeset
2484 fi
1404
54015ae11177 --with-storage=maildir,mbox can now be used to compile in only the wanted
Timo Sirainen <tss@iki.fi>
parents: 1403
diff changeset
2485 done
14285
e540404debb7 Makefile: Link with SSL_LIBS whenever linking libssl_iostream.la
Timo Sirainen <tss@iki.fi>
parents: 14261
diff changeset
2486 LINKED_STORAGE_LDADD=
13880
d4c909d2306f lib-storage: Added initial support for pop3c backend.
Timo Sirainen <tss@iki.fi>
parents: 13875
diff changeset
2487 if test "$want_ssl_libs" = yes; then
d4c909d2306f lib-storage: Added initial support for pop3c backend.
Timo Sirainen <tss@iki.fi>
parents: 13875
diff changeset
2488 LINKED_STORAGE_LIBS="$LINKED_STORAGE_LIBS \$(top_builddir)/src/lib-ssl-iostream/libssl_iostream.la"
14285
e540404debb7 Makefile: Link with SSL_LIBS whenever linking libssl_iostream.la
Timo Sirainen <tss@iki.fi>
parents: 14261
diff changeset
2489 LINKED_STORAGE_LDADD="$SSL_LIBS"
13880
d4c909d2306f lib-storage: Added initial support for pop3c backend.
Timo Sirainen <tss@iki.fi>
parents: 13875
diff changeset
2490 fi
9017
1b586a2fee8b Build libdovecot.so and libdovecot-storage.so.
Timo Sirainen <tss@iki.fi>
parents: 9016
diff changeset
2491 AC_SUBST(LINKED_STORAGE_LIBS)
14285
e540404debb7 Makefile: Link with SSL_LIBS whenever linking libssl_iostream.la
Timo Sirainen <tss@iki.fi>
parents: 14261
diff changeset
2492 AC_SUBST(LINKED_STORAGE_LDADD)
12671
437e24ac6303 Fixed compiling with configure --with-storages when imapc wasn't listed.
Timo Sirainen <tss@iki.fi>
parents: 12617
diff changeset
2493 AC_SUBST(mailbox_list_drivers)
6635
e4f9e2b94a90 Show mail storages in dovecot --build-options.
Timo Sirainen <tss@iki.fi>
parents: 6616
diff changeset
2494 AC_DEFINE_UNQUOTED(MAIL_STORAGES, "$mail_storages", List of compiled in mail storages)
1404
54015ae11177 --with-storage=maildir,mbox can now be used to compile in only the wanted
Timo Sirainen <tss@iki.fi>
parents: 1403
diff changeset
2495
11820
76ee1fa16012 Renamed "dbox" to "sdbox". Keep also dbox as an alias for it.
Timo Sirainen <tss@iki.fi>
parents: 11768
diff changeset
2496 if test $have_sdbox = yes; then
76ee1fa16012 Renamed "dbox" to "sdbox". Keep also dbox as an alias for it.
Timo Sirainen <tss@iki.fi>
parents: 11768
diff changeset
2497 # create alias for sdbox
76ee1fa16012 Renamed "dbox" to "sdbox". Keep also dbox as an alias for it.
Timo Sirainen <tss@iki.fi>
parents: 11768
diff changeset
2498 mail_storages="$mail_storages dbox"
76ee1fa16012 Renamed "dbox" to "sdbox". Keep also dbox as an alias for it.
Timo Sirainen <tss@iki.fi>
parents: 11768
diff changeset
2499 fi
76ee1fa16012 Renamed "dbox" to "sdbox". Keep also dbox as an alias for it.
Timo Sirainen <tss@iki.fi>
parents: 11768
diff changeset
2500
1404
54015ae11177 --with-storage=maildir,mbox can now be used to compile in only the wanted
Timo Sirainen <tss@iki.fi>
parents: 1403
diff changeset
2501 dnl **
9104
c6d306772f4e Added configure --without-shared-libs to link built binaries against static libraries.
Timo Sirainen <tss@iki.fi>
parents: 9092
diff changeset
2502 dnl ** Shared libraries usage
c6d306772f4e Added configure --without-shared-libs to link built binaries against static libraries.
Timo Sirainen <tss@iki.fi>
parents: 9092
diff changeset
2503 dnl **
c6d306772f4e Added configure --without-shared-libs to link built binaries against static libraries.
Timo Sirainen <tss@iki.fi>
parents: 9092
diff changeset
2504
c6d306772f4e Added configure --without-shared-libs to link built binaries against static libraries.
Timo Sirainen <tss@iki.fi>
parents: 9092
diff changeset
2505 if test "$want_shared_libs" = "yes"; then
10091
6a1c96577476 Makefiles: Separated LIBDOVECOT and LIBDOVECOT_DEPS.
Timo Sirainen <tss@iki.fi>
parents: 10052
diff changeset
2506 LIBDOVECOT_DEPS='$(top_builddir)/src/lib-dovecot/libdovecot.la'
6a1c96577476 Makefiles: Separated LIBDOVECOT and LIBDOVECOT_DEPS.
Timo Sirainen <tss@iki.fi>
parents: 10052
diff changeset
2507 LIBDOVECOT="$LIBDOVECOT_DEPS"
14591
07e6ca397a72 Created lib-imap-storage for IMAP-specific functionality that uses lib-storage.
Stephan Bosch <stephan@rename-it.nl>
parents: 14576
diff changeset
2508 LIBDOVECOT_STORAGE_DEPS='$(top_builddir)/src/lib-storage/libdovecot-storage.la $(top_builddir)/src/lib-imap-storage/libimap-storage.la'
9104
c6d306772f4e Added configure --without-shared-libs to link built binaries against static libraries.
Timo Sirainen <tss@iki.fi>
parents: 9092
diff changeset
2509 LIBDOVECOT_LOGIN='$(top_builddir)/src/login-common/libdovecot-login.la'
14729
0de6b238d6eb Added libdovecot-ssl for creating SSL servers more easily using lib-ssl-iostream.
Timo Sirainen <tss@iki.fi>
parents: 14674
diff changeset
2510 LIBDOVECOT_SSL='$(top_builddir)/src/lib-master/libmaster_ssl.la $(top_builddir)/src/lib-ssl-iostream/libssl_iostream.la'
14739
378ba560ea9f Moved zlib/bzlib code to lib-compression library.
Timo Sirainen <tss@iki.fi>
parents: 14729
diff changeset
2511 LIBDOVECOT_COMPRESS='$(top_builddir)/src/lib-compression/libcompression.la'
11370
f0141862bdca configure: --without-shared-libs should use static liblda for lda/lmtp.
Timo Sirainen <tss@iki.fi>
parents: 11356
diff changeset
2512 LIBDOVECOT_LDA='$(top_builddir)/src/lib-lda/libdovecot-lda.la'
9104
c6d306772f4e Added configure --without-shared-libs to link built binaries against static libraries.
Timo Sirainen <tss@iki.fi>
parents: 9092
diff changeset
2513 else
14748
84b4459e4dfc Added libtest to libdovecot.so
Timo Sirainen <tss@iki.fi>
parents: 14739
diff changeset
2514 LIBDOVECOT_DEPS='$(top_builddir)/src/lib-master/libmaster.la $(top_builddir)/src/lib-settings/libsettings.la $(top_builddir)/src/lib-dict/libdict.la $(top_builddir)/src/lib-dns/libdns.la $(top_builddir)/src/lib-fs/libfs.la $(top_builddir)/src/lib-imap/libimap.la $(top_builddir)/src/lib-mail/libmail.la $(top_builddir)/src/lib-auth/libauth.la $(top_builddir)/src/lib-charset/libcharset.la $(top_builddir)/src/lib-test/libtest.la $(top_builddir)/src/lib/liblib.la'
10091
6a1c96577476 Makefiles: Separated LIBDOVECOT and LIBDOVECOT_DEPS.
Timo Sirainen <tss@iki.fi>
parents: 10052
diff changeset
2515 LIBDOVECOT="$LIBDOVECOT_DEPS \$(LIBICONV)"
14591
07e6ca397a72 Created lib-imap-storage for IMAP-specific functionality that uses lib-storage.
Stephan Bosch <stephan@rename-it.nl>
parents: 14576
diff changeset
2516 LIBDOVECOT_STORAGE_LAST='$(top_builddir)/src/lib-storage/list/libstorage_list.la $(top_builddir)/src/lib-storage/index/libstorage_index.la $(top_builddir)/src/lib-storage/libstorage.la $(top_builddir)/src/lib-index/libindex.la $(top_builddir)/src/lib-imap-storage/libimap-storage.la'
9135
43ce0506a90b configure --without-shared-libs: Don't link other libraries to libstorage.a.
Timo Sirainen <tss@iki.fi>
parents: 9121
diff changeset
2517 LIBDOVECOT_STORAGE_FIRST='$(top_builddir)/src/lib-storage/libstorage_service.la $(top_builddir)/src/lib-storage/register/libstorage_register.la'
14285
e540404debb7 Makefile: Link with SSL_LIBS whenever linking libssl_iostream.la
Timo Sirainen <tss@iki.fi>
parents: 14261
diff changeset
2518 LIBDOVECOT_STORAGE_DEPS="$LIBDOVECOT_STORAGE_FIRST $LINKED_STORAGE_LIBS $LIBDOVECOT_STORAGE_LAST"
13675
7e3afd2252fd login proxy: Verify that remote hostname matches SSL cert, unless ssl=any-cert
Timo Sirainen <tss@iki.fi>
parents: 13666
diff changeset
2519 LIBDOVECOT_LOGIN='$(top_builddir)/src/login-common/liblogin.la $(top_builddir)/src/lib-ssl-iostream/libssl_iostream.la'
14729
0de6b238d6eb Added libdovecot-ssl for creating SSL servers more easily using lib-ssl-iostream.
Timo Sirainen <tss@iki.fi>
parents: 14674
diff changeset
2520 LIBDOVECOT_SSL='$(top_builddir)/src/lib-master/libmaster_ssl.la $(top_builddir)/src/lib-ssl-iostream/libssl_iostream.la'
14739
378ba560ea9f Moved zlib/bzlib code to lib-compression library.
Timo Sirainen <tss@iki.fi>
parents: 14729
diff changeset
2521 LIBDOVECOT_COMPRESS='$(top_builddir)/src/lib-compression/libcompression.la'
11370
f0141862bdca configure: --without-shared-libs should use static liblda for lda/lmtp.
Timo Sirainen <tss@iki.fi>
parents: 11356
diff changeset
2522 LIBDOVECOT_LDA='$(top_builddir)/src/lib-lda/liblda.la'
9104
c6d306772f4e Added configure --without-shared-libs to link built binaries against static libraries.
Timo Sirainen <tss@iki.fi>
parents: 9092
diff changeset
2523 fi
14285
e540404debb7 Makefile: Link with SSL_LIBS whenever linking libssl_iostream.la
Timo Sirainen <tss@iki.fi>
parents: 14261
diff changeset
2524 LIBDOVECOT_STORAGE="$LIBDOVECOT_STORAGE_DEPS $LINKED_STORAGE_LDADD"
9104
c6d306772f4e Added configure --without-shared-libs to link built binaries against static libraries.
Timo Sirainen <tss@iki.fi>
parents: 9092
diff changeset
2525 LIBDOVECOT_SQL='$(top_builddir)/src/lib-sql/libsql.la'
c6d306772f4e Added configure --without-shared-libs to link built binaries against static libraries.
Timo Sirainen <tss@iki.fi>
parents: 9092
diff changeset
2526 AC_SUBST(LIBDOVECOT)
10091
6a1c96577476 Makefiles: Separated LIBDOVECOT and LIBDOVECOT_DEPS.
Timo Sirainen <tss@iki.fi>
parents: 10052
diff changeset
2527 AC_SUBST(LIBDOVECOT_DEPS)
9104
c6d306772f4e Added configure --without-shared-libs to link built binaries against static libraries.
Timo Sirainen <tss@iki.fi>
parents: 9092
diff changeset
2528 AC_SUBST(LIBDOVECOT_STORAGE)
14285
e540404debb7 Makefile: Link with SSL_LIBS whenever linking libssl_iostream.la
Timo Sirainen <tss@iki.fi>
parents: 14261
diff changeset
2529 AC_SUBST(LIBDOVECOT_STORAGE_DEPS)
9104
c6d306772f4e Added configure --without-shared-libs to link built binaries against static libraries.
Timo Sirainen <tss@iki.fi>
parents: 9092
diff changeset
2530 AC_SUBST(LIBDOVECOT_LOGIN)
c6d306772f4e Added configure --without-shared-libs to link built binaries against static libraries.
Timo Sirainen <tss@iki.fi>
parents: 9092
diff changeset
2531 AC_SUBST(LIBDOVECOT_SQL)
14729
0de6b238d6eb Added libdovecot-ssl for creating SSL servers more easily using lib-ssl-iostream.
Timo Sirainen <tss@iki.fi>
parents: 14674
diff changeset
2532 AC_SUBST(LIBDOVECOT_SSL)
14739
378ba560ea9f Moved zlib/bzlib code to lib-compression library.
Timo Sirainen <tss@iki.fi>
parents: 14729
diff changeset
2533 AC_SUBST(LIBDOVECOT_COMPRESS)
11186
1319fa7a7266 lib-lda is now an installed shared library.
Timo Sirainen <tss@iki.fi>
parents: 11120
diff changeset
2534 AC_SUBST(LIBDOVECOT_LDA)
9104
c6d306772f4e Added configure --without-shared-libs to link built binaries against static libraries.
Timo Sirainen <tss@iki.fi>
parents: 9092
diff changeset
2535
c6d306772f4e Added configure --without-shared-libs to link built binaries against static libraries.
Timo Sirainen <tss@iki.fi>
parents: 9092
diff changeset
2536 dnl **
3943
cbe5c6772e0d Added support for dynamically building SQL drivers.
Timo Sirainen <tss@iki.fi>
parents: 3934
diff changeset
2537 dnl ** SQL drivers
cbe5c6772e0d Added support for dynamically building SQL drivers.
Timo Sirainen <tss@iki.fi>
parents: 3934
diff changeset
2538 dnl **
cbe5c6772e0d Added support for dynamically building SQL drivers.
Timo Sirainen <tss@iki.fi>
parents: 3934
diff changeset
2539
6194
0d86bb9cf286 Added --enable-sql-plugins to build SQL drivers as plugins. Based on patch
Timo Sirainen <tss@iki.fi>
parents: 6177
diff changeset
2540 build_pgsql=no
0d86bb9cf286 Added --enable-sql-plugins to build SQL drivers as plugins. Based on patch
Timo Sirainen <tss@iki.fi>
parents: 6177
diff changeset
2541 build_mysql=no
0d86bb9cf286 Added --enable-sql-plugins to build SQL drivers as plugins. Based on patch
Timo Sirainen <tss@iki.fi>
parents: 6177
diff changeset
2542 build_sqlite=no
3943
cbe5c6772e0d Added support for dynamically building SQL drivers.
Timo Sirainen <tss@iki.fi>
parents: 3934
diff changeset
2543 for driver in $sql_drivers; do
cbe5c6772e0d Added support for dynamically building SQL drivers.
Timo Sirainen <tss@iki.fi>
parents: 3934
diff changeset
2544 if test "$driver" = "pgsql"; then
cbe5c6772e0d Added support for dynamically building SQL drivers.
Timo Sirainen <tss@iki.fi>
parents: 3934
diff changeset
2545 AC_DEFINE(BUILD_PGSQL,, Built-in PostgreSQL support)
6194
0d86bb9cf286 Added --enable-sql-plugins to build SQL drivers as plugins. Based on patch
Timo Sirainen <tss@iki.fi>
parents: 6177
diff changeset
2546 build_pgsql=yes
3943
cbe5c6772e0d Added support for dynamically building SQL drivers.
Timo Sirainen <tss@iki.fi>
parents: 3934
diff changeset
2547 elif test "$driver" = "mysql"; then
cbe5c6772e0d Added support for dynamically building SQL drivers.
Timo Sirainen <tss@iki.fi>
parents: 3934
diff changeset
2548 AC_DEFINE(BUILD_MYSQL,, Built-in MySQL support)
6194
0d86bb9cf286 Added --enable-sql-plugins to build SQL drivers as plugins. Based on patch
Timo Sirainen <tss@iki.fi>
parents: 6177
diff changeset
2549 build_mysql=yes
3943
cbe5c6772e0d Added support for dynamically building SQL drivers.
Timo Sirainen <tss@iki.fi>
parents: 3934
diff changeset
2550 elif test "$driver" = "sqlite"; then
cbe5c6772e0d Added support for dynamically building SQL drivers.
Timo Sirainen <tss@iki.fi>
parents: 3934
diff changeset
2551 AC_DEFINE(BUILD_SQLITE,, Built-in SQLite support)
6194
0d86bb9cf286 Added --enable-sql-plugins to build SQL drivers as plugins. Based on patch
Timo Sirainen <tss@iki.fi>
parents: 6177
diff changeset
2552 build_sqlite=yes
3943
cbe5c6772e0d Added support for dynamically building SQL drivers.
Timo Sirainen <tss@iki.fi>
parents: 3934
diff changeset
2553 fi
cbe5c6772e0d Added support for dynamically building SQL drivers.
Timo Sirainen <tss@iki.fi>
parents: 3934
diff changeset
2554 done
9246
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
2555 if test $build_pgsql = no; then
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
2556 not_sql_drivers="$not_sql_drivers pgsql"
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
2557 fi
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
2558 if test $build_mysql = no; then
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
2559 not_sql_drivers="$not_sql_drivers mysql"
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
2560 fi
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
2561 if test $build_sqlite = no; then
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
2562 not_sql_drivers="$not_sql_drivers sqlite"
df8b1ae676fe configure: Show also list of disabled passdbs/userdbs/sql drivers.
Timo Sirainen <tss@iki.fi>
parents: 9245
diff changeset
2563 fi
3943
cbe5c6772e0d Added support for dynamically building SQL drivers.
Timo Sirainen <tss@iki.fi>
parents: 3934
diff changeset
2564
cbe5c6772e0d Added support for dynamically building SQL drivers.
Timo Sirainen <tss@iki.fi>
parents: 3934
diff changeset
2565 AC_SUBST(sql_drivers)
6194
0d86bb9cf286 Added --enable-sql-plugins to build SQL drivers as plugins. Based on patch
Timo Sirainen <tss@iki.fi>
parents: 6177
diff changeset
2566 AM_CONDITIONAL(BUILD_PGSQL, test "$build_pgsql" = "yes")
0d86bb9cf286 Added --enable-sql-plugins to build SQL drivers as plugins. Based on patch
Timo Sirainen <tss@iki.fi>
parents: 6177
diff changeset
2567 AM_CONDITIONAL(BUILD_MYSQL, test "$build_mysql" = "yes")
0d86bb9cf286 Added --enable-sql-plugins to build SQL drivers as plugins. Based on patch
Timo Sirainen <tss@iki.fi>
parents: 6177
diff changeset
2568 AM_CONDITIONAL(BUILD_SQLITE, test "$build_sqlite" = "yes")
8517
451e3cf38290 configure: Handle --with-*=* consistently and give better error messages.
Timo Sirainen <tss@iki.fi>
parents: 8489
diff changeset
2569 AM_CONDITIONAL(SQL_PLUGINS, test "$want_sql" = "plugin")
3943
cbe5c6772e0d Added support for dynamically building SQL drivers.
Timo Sirainen <tss@iki.fi>
parents: 3934
diff changeset
2570
cbe5c6772e0d Added support for dynamically building SQL drivers.
Timo Sirainen <tss@iki.fi>
parents: 3934
diff changeset
2571 dnl **
3969
884da753caba If zlib.h isn't found, don't try to build the zlib plugin.
Timo Sirainen <tss@iki.fi>
parents: 3948
diff changeset
2572 dnl ** Plugins
884da753caba If zlib.h isn't found, don't try to build the zlib plugin.
Timo Sirainen <tss@iki.fi>
parents: 3948
diff changeset
2573 dnl **
884da753caba If zlib.h isn't found, don't try to build the zlib plugin.
Timo Sirainen <tss@iki.fi>
parents: 3948
diff changeset
2574
14739
378ba560ea9f Moved zlib/bzlib code to lib-compression library.
Timo Sirainen <tss@iki.fi>
parents: 14729
diff changeset
2575 COMPRESS_LIBS=
8090
75b1f16cba72 Added --with-zlib and --with-bzlib configure options.
Timo Sirainen <tss@iki.fi>
parents: 8076
diff changeset
2576 if test "$want_zlib" != "no"; then
75b1f16cba72 Added --with-zlib and --with-bzlib configure options.
Timo Sirainen <tss@iki.fi>
parents: 8076
diff changeset
2577 AC_CHECK_HEADER(zlib.h, [
75b1f16cba72 Added --with-zlib and --with-bzlib configure options.
Timo Sirainen <tss@iki.fi>
parents: 8076
diff changeset
2578 have_zlib=yes
14739
378ba560ea9f Moved zlib/bzlib code to lib-compression library.
Timo Sirainen <tss@iki.fi>
parents: 14729
diff changeset
2579 have_compress_lib=yes
8090
75b1f16cba72 Added --with-zlib and --with-bzlib configure options.
Timo Sirainen <tss@iki.fi>
parents: 8076
diff changeset
2580 AC_DEFINE(HAVE_ZLIB,, Define if you have zlib library)
14739
378ba560ea9f Moved zlib/bzlib code to lib-compression library.
Timo Sirainen <tss@iki.fi>
parents: 14729
diff changeset
2581 COMPRESS_LIBS="$COMPRESS_LIBS -lz"
8090
75b1f16cba72 Added --with-zlib and --with-bzlib configure options.
Timo Sirainen <tss@iki.fi>
parents: 8076
diff changeset
2582 ], [
75b1f16cba72 Added --with-zlib and --with-bzlib configure options.
Timo Sirainen <tss@iki.fi>
parents: 8076
diff changeset
2583 if test "$want_zlib" = "yes"; then
75b1f16cba72 Added --with-zlib and --with-bzlib configure options.
Timo Sirainen <tss@iki.fi>
parents: 8076
diff changeset
2584 AC_ERROR([Can't build with zlib support: zlib.h not found])
75b1f16cba72 Added --with-zlib and --with-bzlib configure options.
Timo Sirainen <tss@iki.fi>
parents: 8076
diff changeset
2585 fi
75b1f16cba72 Added --with-zlib and --with-bzlib configure options.
Timo Sirainen <tss@iki.fi>
parents: 8076
diff changeset
2586 ])
75b1f16cba72 Added --with-zlib and --with-bzlib configure options.
Timo Sirainen <tss@iki.fi>
parents: 8076
diff changeset
2587 fi
3969
884da753caba If zlib.h isn't found, don't try to build the zlib plugin.
Timo Sirainen <tss@iki.fi>
parents: 3948
diff changeset
2588
8090
75b1f16cba72 Added --with-zlib and --with-bzlib configure options.
Timo Sirainen <tss@iki.fi>
parents: 8076
diff changeset
2589 if test "$want_bzlib" != "no"; then
75b1f16cba72 Added --with-zlib and --with-bzlib configure options.
Timo Sirainen <tss@iki.fi>
parents: 8076
diff changeset
2590 AC_CHECK_HEADER(bzlib.h, [
75b1f16cba72 Added --with-zlib and --with-bzlib configure options.
Timo Sirainen <tss@iki.fi>
parents: 8076
diff changeset
2591 AC_CHECK_LIB(bz2, BZ2_bzdopen, [
75b1f16cba72 Added --with-zlib and --with-bzlib configure options.
Timo Sirainen <tss@iki.fi>
parents: 8076
diff changeset
2592 have_bzlib=yes
14739
378ba560ea9f Moved zlib/bzlib code to lib-compression library.
Timo Sirainen <tss@iki.fi>
parents: 14729
diff changeset
2593 have_compress_lib=yes
8090
75b1f16cba72 Added --with-zlib and --with-bzlib configure options.
Timo Sirainen <tss@iki.fi>
parents: 8076
diff changeset
2594 AC_DEFINE(HAVE_BZLIB,, Define if you have bzlib library)
14739
378ba560ea9f Moved zlib/bzlib code to lib-compression library.
Timo Sirainen <tss@iki.fi>
parents: 14729
diff changeset
2595 COMPRESS_LIBS="$COMPRESS_LIBS -lbz2"
8090
75b1f16cba72 Added --with-zlib and --with-bzlib configure options.
Timo Sirainen <tss@iki.fi>
parents: 8076
diff changeset
2596 ], [
75b1f16cba72 Added --with-zlib and --with-bzlib configure options.
Timo Sirainen <tss@iki.fi>
parents: 8076
diff changeset
2597 if test "$want_bzlib" = "yes"; then
75b1f16cba72 Added --with-zlib and --with-bzlib configure options.
Timo Sirainen <tss@iki.fi>
parents: 8076
diff changeset
2598 AC_ERROR([Can't build with bzlib support: libbz2 not found])
75b1f16cba72 Added --with-zlib and --with-bzlib configure options.
Timo Sirainen <tss@iki.fi>
parents: 8076
diff changeset
2599 fi
75b1f16cba72 Added --with-zlib and --with-bzlib configure options.
Timo Sirainen <tss@iki.fi>
parents: 8076
diff changeset
2600 ])
75b1f16cba72 Added --with-zlib and --with-bzlib configure options.
Timo Sirainen <tss@iki.fi>
parents: 8076
diff changeset
2601 ], [
75b1f16cba72 Added --with-zlib and --with-bzlib configure options.
Timo Sirainen <tss@iki.fi>
parents: 8076
diff changeset
2602 if test "$want_bzlib" = "yes"; then
75b1f16cba72 Added --with-zlib and --with-bzlib configure options.
Timo Sirainen <tss@iki.fi>
parents: 8076
diff changeset
2603 AC_ERROR([Can't build with bzlib support: bzlib.h not found])
75b1f16cba72 Added --with-zlib and --with-bzlib configure options.
Timo Sirainen <tss@iki.fi>
parents: 8076
diff changeset
2604 fi
8046
8afc9ddd723e Check that libbz2 has correct functions. Old versions had different names.
Timo Sirainen <tss@iki.fi>
parents: 8022
diff changeset
2605 ])
8090
75b1f16cba72 Added --with-zlib and --with-bzlib configure options.
Timo Sirainen <tss@iki.fi>
parents: 8076
diff changeset
2606 fi
14739
378ba560ea9f Moved zlib/bzlib code to lib-compression library.
Timo Sirainen <tss@iki.fi>
parents: 14729
diff changeset
2607 AC_SUBST(COMPRESS_LIBS)
378ba560ea9f Moved zlib/bzlib code to lib-compression library.
Timo Sirainen <tss@iki.fi>
parents: 14729
diff changeset
2608 AM_CONDITIONAL(BUILD_ZLIB_PLUGIN, test "$have_compress_lib" = "yes")
7981
bb9d3aabcb61 zlib plugin supports now bzip2 also.
Timo Sirainen <tss@iki.fi>
parents: 7958
diff changeset
2609
6177
abec53314897 Build rquota_xdr.c with rpcgen from rquota.x.
Timo Sirainen <tss@iki.fi>
parents: 6159
diff changeset
2610 RPCGEN=${RPCGEN-rpcgen}
abec53314897 Build rquota_xdr.c with rpcgen from rquota.x.
Timo Sirainen <tss@iki.fi>
parents: 6159
diff changeset
2611 if ! $RPCGEN -c /dev/null > /dev/null; then
abec53314897 Build rquota_xdr.c with rpcgen from rquota.x.
Timo Sirainen <tss@iki.fi>
parents: 6159
diff changeset
2612 RPCGEN=
abec53314897 Build rquota_xdr.c with rpcgen from rquota.x.
Timo Sirainen <tss@iki.fi>
parents: 6159
diff changeset
2613 fi
abec53314897 Build rquota_xdr.c with rpcgen from rquota.x.
Timo Sirainen <tss@iki.fi>
parents: 6159
diff changeset
2614 AC_SUBST(RPCGEN)
abec53314897 Build rquota_xdr.c with rpcgen from rquota.x.
Timo Sirainen <tss@iki.fi>
parents: 6159
diff changeset
2615
6159
078d9dde99c8 Support for rquota with NFS mounts. Patch by HTK NetCommunication Oy.
Timo Sirainen <tss@iki.fi>
parents: 6111
diff changeset
2616 have_rquota=no
6177
abec53314897 Build rquota_xdr.c with rpcgen from rquota.x.
Timo Sirainen <tss@iki.fi>
parents: 6159
diff changeset
2617 if test -f /usr/include/rpcsvc/rquota.x && test -n "$RPCGEN"; then
6159
078d9dde99c8 Support for rquota with NFS mounts. Patch by HTK NetCommunication Oy.
Timo Sirainen <tss@iki.fi>
parents: 6111
diff changeset
2618 AC_DEFINE(HAVE_RQUOTA,, Define if you wish to retrieve quota of NFS mounted mailboxes)
078d9dde99c8 Support for rquota with NFS mounts. Patch by HTK NetCommunication Oy.
Timo Sirainen <tss@iki.fi>
parents: 6111
diff changeset
2619 have_rquota=yes
6177
abec53314897 Build rquota_xdr.c with rpcgen from rquota.x.
Timo Sirainen <tss@iki.fi>
parents: 6159
diff changeset
2620 fi
6159
078d9dde99c8 Support for rquota with NFS mounts. Patch by HTK NetCommunication Oy.
Timo Sirainen <tss@iki.fi>
parents: 6111
diff changeset
2621 AM_CONDITIONAL(HAVE_RQUOTA, test "$have_rquota" = "yes")
078d9dde99c8 Support for rquota with NFS mounts. Patch by HTK NetCommunication Oy.
Timo Sirainen <tss@iki.fi>
parents: 6111
diff changeset
2622
13305
57aeda3d94ad configure: Added --with-stemmer and output which fts backends are compiled.
Timo Sirainen <tss@iki.fi>
parents: 13294
diff changeset
2623 dnl
57aeda3d94ad configure: Added --with-stemmer and output which fts backends are compiled.
Timo Sirainen <tss@iki.fi>
parents: 13294
diff changeset
2624 dnl ** Full text search
57aeda3d94ad configure: Added --with-stemmer and output which fts backends are compiled.
Timo Sirainen <tss@iki.fi>
parents: 13294
diff changeset
2625 dnl
57aeda3d94ad configure: Added --with-stemmer and output which fts backends are compiled.
Timo Sirainen <tss@iki.fi>
parents: 13294
diff changeset
2626
57aeda3d94ad configure: Added --with-stemmer and output which fts backends are compiled.
Timo Sirainen <tss@iki.fi>
parents: 13294
diff changeset
2627 fts=" squat"
57aeda3d94ad configure: Added --with-stemmer and output which fts backends are compiled.
Timo Sirainen <tss@iki.fi>
parents: 13294
diff changeset
2628 not_fts=""
57aeda3d94ad configure: Added --with-stemmer and output which fts backends are compiled.
Timo Sirainen <tss@iki.fi>
parents: 13294
diff changeset
2629
57aeda3d94ad configure: Added --with-stemmer and output which fts backends are compiled.
Timo Sirainen <tss@iki.fi>
parents: 13294
diff changeset
2630 have_solr=no
7990
662172573fe1 Initial code to support Apache Solr (Lucene indexing server).
Timo Sirainen <tss@iki.fi>
parents: 7983
diff changeset
2631 if test "$want_solr" != "no"; then
11948
ebb4362b6d0d configure: AC_CHECK_PROG() calls now allow specifying full path to prog via environment.
Timo Sirainen <tss@iki.fi>
parents: 11939
diff changeset
2632 AC_CHECK_PROG(CURLCONFIG, curl-config, curl-config, NO)
ebb4362b6d0d configure: AC_CHECK_PROG() calls now allow specifying full path to prog via environment.
Timo Sirainen <tss@iki.fi>
parents: 11939
diff changeset
2633 if test $CURLCONFIG != NO; then
11958
1f817738b093 configure: Recent change broke getting libcurl cflags/libs.
Timo Sirainen <tss@iki.fi>
parents: 11948
diff changeset
2634 CURL_CFLAGS=`$CURLCONFIG --cflags`
1f817738b093 configure: Recent change broke getting libcurl cflags/libs.
Timo Sirainen <tss@iki.fi>
parents: 11948
diff changeset
2635 CURL_LIBS=`$CURLCONFIG --libs`
7990
662172573fe1 Initial code to support Apache Solr (Lucene indexing server).
Timo Sirainen <tss@iki.fi>
parents: 7983
diff changeset
2636
662172573fe1 Initial code to support Apache Solr (Lucene indexing server).
Timo Sirainen <tss@iki.fi>
parents: 7983
diff changeset
2637 dnl libcurl found, also need libexpat
662172573fe1 Initial code to support Apache Solr (Lucene indexing server).
Timo Sirainen <tss@iki.fi>
parents: 7983
diff changeset
2638 AC_CHECK_LIB(expat, XML_Parse, [
662172573fe1 Initial code to support Apache Solr (Lucene indexing server).
Timo Sirainen <tss@iki.fi>
parents: 7983
diff changeset
2639 AC_CHECK_HEADER(expat.h, [
662172573fe1 Initial code to support Apache Solr (Lucene indexing server).
Timo Sirainen <tss@iki.fi>
parents: 7983
diff changeset
2640 AC_SUBST(CURL_CFLAGS)
662172573fe1 Initial code to support Apache Solr (Lucene indexing server).
Timo Sirainen <tss@iki.fi>
parents: 7983
diff changeset
2641 AC_SUBST(CURL_LIBS)
662172573fe1 Initial code to support Apache Solr (Lucene indexing server).
Timo Sirainen <tss@iki.fi>
parents: 7983
diff changeset
2642 have_solr=yes
13305
57aeda3d94ad configure: Added --with-stemmer and output which fts backends are compiled.
Timo Sirainen <tss@iki.fi>
parents: 13294
diff changeset
2643 fts="$fts solr"
7990
662172573fe1 Initial code to support Apache Solr (Lucene indexing server).
Timo Sirainen <tss@iki.fi>
parents: 7983
diff changeset
2644 ], [
662172573fe1 Initial code to support Apache Solr (Lucene indexing server).
Timo Sirainen <tss@iki.fi>
parents: 7983
diff changeset
2645 if test $want_solr = yes; then
662172573fe1 Initial code to support Apache Solr (Lucene indexing server).
Timo Sirainen <tss@iki.fi>
parents: 7983
diff changeset
2646 AC_ERROR([Can't build with Solr support: expat.h not found])
662172573fe1 Initial code to support Apache Solr (Lucene indexing server).
Timo Sirainen <tss@iki.fi>
parents: 7983
diff changeset
2647 fi
662172573fe1 Initial code to support Apache Solr (Lucene indexing server).
Timo Sirainen <tss@iki.fi>
parents: 7983
diff changeset
2648 ])
662172573fe1 Initial code to support Apache Solr (Lucene indexing server).
Timo Sirainen <tss@iki.fi>
parents: 7983
diff changeset
2649 ], [
662172573fe1 Initial code to support Apache Solr (Lucene indexing server).
Timo Sirainen <tss@iki.fi>
parents: 7983
diff changeset
2650 if test $want_solr = yes; then
662172573fe1 Initial code to support Apache Solr (Lucene indexing server).
Timo Sirainen <tss@iki.fi>
parents: 7983
diff changeset
2651 AC_ERROR([Can't build with Solr support: libexpat not found])
662172573fe1 Initial code to support Apache Solr (Lucene indexing server).
Timo Sirainen <tss@iki.fi>
parents: 7983
diff changeset
2652 fi
662172573fe1 Initial code to support Apache Solr (Lucene indexing server).
Timo Sirainen <tss@iki.fi>
parents: 7983
diff changeset
2653 ])
662172573fe1 Initial code to support Apache Solr (Lucene indexing server).
Timo Sirainen <tss@iki.fi>
parents: 7983
diff changeset
2654 else
662172573fe1 Initial code to support Apache Solr (Lucene indexing server).
Timo Sirainen <tss@iki.fi>
parents: 7983
diff changeset
2655 if test $want_solr = yes; then
662172573fe1 Initial code to support Apache Solr (Lucene indexing server).
Timo Sirainen <tss@iki.fi>
parents: 7983
diff changeset
2656 AC_ERROR([Can't build with Solr support: curl-config not found])
662172573fe1 Initial code to support Apache Solr (Lucene indexing server).
Timo Sirainen <tss@iki.fi>
parents: 7983
diff changeset
2657 fi
662172573fe1 Initial code to support Apache Solr (Lucene indexing server).
Timo Sirainen <tss@iki.fi>
parents: 7983
diff changeset
2658 fi
662172573fe1 Initial code to support Apache Solr (Lucene indexing server).
Timo Sirainen <tss@iki.fi>
parents: 7983
diff changeset
2659 fi
662172573fe1 Initial code to support Apache Solr (Lucene indexing server).
Timo Sirainen <tss@iki.fi>
parents: 7983
diff changeset
2660 AM_CONDITIONAL(BUILD_SOLR, test "$have_solr" = "yes")
662172573fe1 Initial code to support Apache Solr (Lucene indexing server).
Timo Sirainen <tss@iki.fi>
parents: 7983
diff changeset
2661
13305
57aeda3d94ad configure: Added --with-stemmer and output which fts backends are compiled.
Timo Sirainen <tss@iki.fi>
parents: 13294
diff changeset
2662 have_lucene=no
13186
b099ac847f86 fts-lucene: Added initial support for language detection and stemming.
Timo Sirainen <tss@iki.fi>
parents: 13114
diff changeset
2663 if test "$want_lucene" = "yes"; then
13305
57aeda3d94ad configure: Added --with-stemmer and output which fts backends are compiled.
Timo Sirainen <tss@iki.fi>
parents: 13294
diff changeset
2664 if test $want_stemmer != no; then
57aeda3d94ad configure: Added --with-stemmer and output which fts backends are compiled.
Timo Sirainen <tss@iki.fi>
parents: 13294
diff changeset
2665 AC_CHECK_LIB(stemmer, sb_stemmer_new, [
57aeda3d94ad configure: Added --with-stemmer and output which fts backends are compiled.
Timo Sirainen <tss@iki.fi>
parents: 13294
diff changeset
2666 have_lucene_stemmer=yes
57aeda3d94ad configure: Added --with-stemmer and output which fts backends are compiled.
Timo Sirainen <tss@iki.fi>
parents: 13294
diff changeset
2667 AC_DEFINE(HAVE_LUCENE_STEMMER,, Define if you want stemming support for CLucene)
57aeda3d94ad configure: Added --with-stemmer and output which fts backends are compiled.
Timo Sirainen <tss@iki.fi>
parents: 13294
diff changeset
2668 AC_CHECK_LIB(textcat, special_textcat_Init, [
57aeda3d94ad configure: Added --with-stemmer and output which fts backends are compiled.
Timo Sirainen <tss@iki.fi>
parents: 13294
diff changeset
2669 have_lucene_textcat=yes
57aeda3d94ad configure: Added --with-stemmer and output which fts backends are compiled.
Timo Sirainen <tss@iki.fi>
parents: 13294
diff changeset
2670 AC_DEFINE(HAVE_LUCENE_TEXTCAT,, Define if you want textcat support for CLucene)
14789
558e4205c429 Debian names libtextcat as libexttextcat.
Timo Sirainen <tss@iki.fi>
parents: 14774
diff changeset
2671 ], [
558e4205c429 Debian names libtextcat as libexttextcat.
Timo Sirainen <tss@iki.fi>
parents: 14774
diff changeset
2672 AC_CHECK_LIB(exttextcat, special_textcat_Init, [
558e4205c429 Debian names libtextcat as libexttextcat.
Timo Sirainen <tss@iki.fi>
parents: 14774
diff changeset
2673 have_lucene_exttextcat=yes
558e4205c429 Debian names libtextcat as libexttextcat.
Timo Sirainen <tss@iki.fi>
parents: 14774
diff changeset
2674 AC_DEFINE(HAVE_LUCENE_EXTTEXTCAT,, Define if you want textcat (Debian version) support for CLucene)
558e4205c429 Debian names libtextcat as libexttextcat.
Timo Sirainen <tss@iki.fi>
parents: 14774
diff changeset
2675 ])
13305
57aeda3d94ad configure: Added --with-stemmer and output which fts backends are compiled.
Timo Sirainen <tss@iki.fi>
parents: 13294
diff changeset
2676 ])
57aeda3d94ad configure: Added --with-stemmer and output which fts backends are compiled.
Timo Sirainen <tss@iki.fi>
parents: 13294
diff changeset
2677 ], [
57aeda3d94ad configure: Added --with-stemmer and output which fts backends are compiled.
Timo Sirainen <tss@iki.fi>
parents: 13294
diff changeset
2678 if test $want_stemmer = yes; then
57aeda3d94ad configure: Added --with-stemmer and output which fts backends are compiled.
Timo Sirainen <tss@iki.fi>
parents: 13294
diff changeset
2679 AC_ERROR([Can't build with stemmer support: libstemmer not found])
57aeda3d94ad configure: Added --with-stemmer and output which fts backends are compiled.
Timo Sirainen <tss@iki.fi>
parents: 13294
diff changeset
2680 fi
13186
b099ac847f86 fts-lucene: Added initial support for language detection and stemming.
Timo Sirainen <tss@iki.fi>
parents: 13114
diff changeset
2681 ])
13305
57aeda3d94ad configure: Added --with-stemmer and output which fts backends are compiled.
Timo Sirainen <tss@iki.fi>
parents: 13294
diff changeset
2682 fi
57aeda3d94ad configure: Added --with-stemmer and output which fts backends are compiled.
Timo Sirainen <tss@iki.fi>
parents: 13294
diff changeset
2683 have_lucene=yes
57aeda3d94ad configure: Added --with-stemmer and output which fts backends are compiled.
Timo Sirainen <tss@iki.fi>
parents: 13294
diff changeset
2684 fts="$fts lucene"
13186
b099ac847f86 fts-lucene: Added initial support for language detection and stemming.
Timo Sirainen <tss@iki.fi>
parents: 13114
diff changeset
2685 fi
13282
c5bb5db9f541 fts-lucene: Added default_language setting and separated stemmer/textcat support.
Timo Sirainen <tss@iki.fi>
parents: 13211
diff changeset
2686 AM_CONDITIONAL(BUILD_LUCENE_STEMMER, test "$have_lucene_stemmer" = "yes")
13186
b099ac847f86 fts-lucene: Added initial support for language detection and stemming.
Timo Sirainen <tss@iki.fi>
parents: 13114
diff changeset
2687 AM_CONDITIONAL(BUILD_LUCENE_TEXTCAT, test "$have_lucene_textcat" = "yes")
14789
558e4205c429 Debian names libtextcat as libexttextcat.
Timo Sirainen <tss@iki.fi>
parents: 14774
diff changeset
2688 AM_CONDITIONAL(BUILD_LUCENE_EXTTEXTCAT, test "$have_lucene_exttextcat" = "yes")
13186
b099ac847f86 fts-lucene: Added initial support for language detection and stemming.
Timo Sirainen <tss@iki.fi>
parents: 13114
diff changeset
2689
13305
57aeda3d94ad configure: Added --with-stemmer and output which fts backends are compiled.
Timo Sirainen <tss@iki.fi>
parents: 13294
diff changeset
2690 if test $have_lucene = no; then
57aeda3d94ad configure: Added --with-stemmer and output which fts backends are compiled.
Timo Sirainen <tss@iki.fi>
parents: 13294
diff changeset
2691 not_fts="$not_fts lucene"
57aeda3d94ad configure: Added --with-stemmer and output which fts backends are compiled.
Timo Sirainen <tss@iki.fi>
parents: 13294
diff changeset
2692 fi
57aeda3d94ad configure: Added --with-stemmer and output which fts backends are compiled.
Timo Sirainen <tss@iki.fi>
parents: 13294
diff changeset
2693 if test $have_solr = no; then
57aeda3d94ad configure: Added --with-stemmer and output which fts backends are compiled.
Timo Sirainen <tss@iki.fi>
parents: 13294
diff changeset
2694 not_fts="$not_fts solr"
57aeda3d94ad configure: Added --with-stemmer and output which fts backends are compiled.
Timo Sirainen <tss@iki.fi>
parents: 13294
diff changeset
2695 fi
57aeda3d94ad configure: Added --with-stemmer and output which fts backends are compiled.
Timo Sirainen <tss@iki.fi>
parents: 13294
diff changeset
2696
3969
884da753caba If zlib.h isn't found, don't try to build the zlib plugin.
Timo Sirainen <tss@iki.fi>
parents: 3948
diff changeset
2697 dnl **
9002
9d0037a997f4 Initial commit for config rewrite.
Timo Sirainen <tss@iki.fi>
parents: 8601
diff changeset
2698 dnl ** Settings
9d0037a997f4 Initial commit for config rewrite.
Timo Sirainen <tss@iki.fi>
parents: 8601
diff changeset
2699 dnl **
9d0037a997f4 Initial commit for config rewrite.
Timo Sirainen <tss@iki.fi>
parents: 8601
diff changeset
2700
9d0037a997f4 Initial commit for config rewrite.
Timo Sirainen <tss@iki.fi>
parents: 8601
diff changeset
2701 dnl get a list of setting .[ch] files, but list .h files first
10336
e18645b47984 config: Allow settings plugins to specify also new default services.
Timo Sirainen <tss@iki.fi>
parents: 10295
diff changeset
2702 FILES1=`find $srcdir/src -name '*settings.[[ch]]'|grep "$srcdir/src/lib-" | sed 's/^\(.*\)\(.\)$/\2 \1\2/' | sort -r | sed s/^..//`
e18645b47984 config: Allow settings plugins to specify also new default services.
Timo Sirainen <tss@iki.fi>
parents: 10295
diff changeset
2703 FILES2=`find $srcdir/src -name '*settings.[[ch]]'|grep -v "$srcdir/src/lib-" | sed 's/^\(.*\)\(.\)$/\2 \1\2/' | grep -v all-settings | sort -r | sed s/^..//`
10702
dc6cf5f10602 configure: If libwrap isn't used, don't add its service to doveconf.
Timo Sirainen <tss@iki.fi>
parents: 10700
diff changeset
2704 SETTING_FILES=`echo $FILES1 $FILES2 | sed -e s,$srcdir/src,./src,g -e 's,./src,$(top_srcdir)/src,g'`
9002
9d0037a997f4 Initial commit for config rewrite.
Timo Sirainen <tss@iki.fi>
parents: 8601
diff changeset
2705 AC_SUBST(SETTING_FILES)
9d0037a997f4 Initial commit for config rewrite.
Timo Sirainen <tss@iki.fi>
parents: 8601
diff changeset
2706
9d0037a997f4 Initial commit for config rewrite.
Timo Sirainen <tss@iki.fi>
parents: 8601
diff changeset
2707 dnl **
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
2708 dnl ** capabilities
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
2709 dnl **
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
2710
12235
b63b6ad01448 configure: Added IDLE to banner CAPABILITY to make Blackberry happy.
Timo Sirainen <tss@iki.fi>
parents: 12231
diff changeset
2711 dnl IDLE doesn't really belong to banner. It's there just to make Blackberries
b63b6ad01448 configure: Added IDLE to banner CAPABILITY to make Blackberry happy.
Timo Sirainen <tss@iki.fi>
parents: 12231
diff changeset
2712 dnl happy, because otherwise BIS server disables push email.
b63b6ad01448 configure: Added IDLE to banner CAPABILITY to make Blackberry happy.
Timo Sirainen <tss@iki.fi>
parents: 12231
diff changeset
2713 capability_banner="IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE IDLE"
14939
2fc74b72817b Merged changes from v2.1 tree.
Timo Sirainen <tss@iki.fi>
parents: 14894 14935
diff changeset
2714 capability="$capability_banner SORT SORT=DISPLAY THREAD=REFERENCES THREAD=REFS THREAD=ORDEREDSUBJECT MULTIAPPEND URL-PARTIAL CATENATE UNSELECT CHILDREN NAMESPACE UIDPLUS LIST-EXTENDED I18NLEVEL=1 CONDSTORE QRESYNC ESEARCH ESORT SEARCHRES WITHIN CONTEXT=SEARCH LIST-STATUS SPECIAL-USE BINARY MOVE"
742
b3dd87844fff acconfig.h is deprecated with autoconf 2.5, changed configure to contain
Timo Sirainen <tss@iki.fi>
parents: 739
diff changeset
2715 AC_DEFINE_UNQUOTED(CAPABILITY_STRING, "$capability", IMAP capabilities)
7922
4b4d2a4423ec Removed login_greeting_capability setting. Instead now a minimal pre-login
Timo Sirainen <tss@iki.fi>
parents: 7917
diff changeset
2716 AC_DEFINE_UNQUOTED(CAPABILITY_BANNER_STRING, "$capability_banner", IMAP capabilities advertised in banner)
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
2717
843
e9a5ce16f0f3 EXTRA_CFLAGS environment is now added to CFLAGS after all tests. Useful for adding -Werror there.
Timo Sirainen <tss@iki.fi>
parents: 835
diff changeset
2718 CFLAGS="$CFLAGS $EXTRA_CFLAGS"
13666
3ecd119bd63b configure: Use libtool's -no-undefined flag instead of attempting it ourself.
Timo Sirainen <tss@iki.fi>
parents: 13554
diff changeset
2719 NOPLUGIN_LDFLAGS="-no-undefined"
12893
0be58f3930b2 Use -Wl,--as-needed -Wl,--no-undefined GNU ld flags for non-plugins.
Timo Sirainen <tss@iki.fi>
parents: 12887
diff changeset
2720 if test "$with_gnu_ld" = yes; then
13666
3ecd119bd63b configure: Use libtool's -no-undefined flag instead of attempting it ourself.
Timo Sirainen <tss@iki.fi>
parents: 13554
diff changeset
2721 NOPLUGIN_LDFLAGS="$NOPLUGIN_LDFLAGS -Wl,--as-needed"
12893
0be58f3930b2 Use -Wl,--as-needed -Wl,--no-undefined GNU ld flags for non-plugins.
Timo Sirainen <tss@iki.fi>
parents: 12887
diff changeset
2722 fi
13666
3ecd119bd63b configure: Use libtool's -no-undefined flag instead of attempting it ourself.
Timo Sirainen <tss@iki.fi>
parents: 13554
diff changeset
2723 LDFLAGS="\$(NOPLUGIN_LDFLAGS) $LDFLAGS"
3ecd119bd63b configure: Use libtool's -no-undefined flag instead of attempting it ourself.
Timo Sirainen <tss@iki.fi>
parents: 13554
diff changeset
2724 AC_SUBST(NOPLUGIN_LDFLAGS)
843
e9a5ce16f0f3 EXTRA_CFLAGS environment is now added to CFLAGS after all tests. Useful for adding -Werror there.
Timo Sirainen <tss@iki.fi>
parents: 835
diff changeset
2725
7297
2cda05620383 Added support for autoconf versions older than 2.59c.
Timo Sirainen <tss@iki.fi>
parents: 7285
diff changeset
2726 if test "$docdir" = ""; then
2cda05620383 Added support for autoconf versions older than 2.59c.
Timo Sirainen <tss@iki.fi>
parents: 7285
diff changeset
2727 dnl docdir supported only by autoconf v2.59c and later
7298
86af79a203d7 Base docdir to datadir instead of datarootdir which doesn't exist in old
Timo Sirainen <tss@iki.fi>
parents: 7297
diff changeset
2728 docdir='${datadir}/doc/${PACKAGE_TARNAME}'
7297
2cda05620383 Added support for autoconf versions older than 2.59c.
Timo Sirainen <tss@iki.fi>
parents: 7285
diff changeset
2729 fi
2cda05620383 Added support for autoconf versions older than 2.59c.
Timo Sirainen <tss@iki.fi>
parents: 7285
diff changeset
2730 AC_SUBST(docdir)
2cda05620383 Added support for autoconf versions older than 2.59c.
Timo Sirainen <tss@iki.fi>
parents: 7285
diff changeset
2731
11948
ebb4362b6d0d configure: AC_CHECK_PROG() calls now allow specifying full path to prog via environment.
Timo Sirainen <tss@iki.fi>
parents: 11939
diff changeset
2732 AC_CHECK_PROG(VALGRIND, valgrind, yes, no)
ebb4362b6d0d configure: AC_CHECK_PROG() calls now allow specifying full path to prog via environment.
Timo Sirainen <tss@iki.fi>
parents: 11939
diff changeset
2733 if test $VALGRIND = yes; then
10994
c78fe7920deb If valgrind exists, run unit tests using it.
Timo Sirainen <tss@iki.fi>
parents: 10980
diff changeset
2734 RUN_TEST='$(SHELL) $(top_srcdir)/run-test.sh'
c78fe7920deb If valgrind exists, run unit tests using it.
Timo Sirainen <tss@iki.fi>
parents: 10980
diff changeset
2735 else
c78fe7920deb If valgrind exists, run unit tests using it.
Timo Sirainen <tss@iki.fi>
parents: 10980
diff changeset
2736 RUN_TEST=''
c78fe7920deb If valgrind exists, run unit tests using it.
Timo Sirainen <tss@iki.fi>
parents: 10980
diff changeset
2737 fi
c78fe7920deb If valgrind exists, run unit tests using it.
Timo Sirainen <tss@iki.fi>
parents: 10980
diff changeset
2738 AC_SUBST(RUN_TEST)
10014
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2739 AC_SUBST(abs_top_builddir)
e7f8f15f1c4c configure: Use cache for more checks.
Timo Sirainen <tss@iki.fi>
parents: 10001
diff changeset
2740
3782
c67f77647a6e Added kqueue notification support. Patch by Vaclav Haisman
Timo Sirainen <tss@iki.fi>
parents: 3780
diff changeset
2741 AC_CONFIG_HEADERS([config.h])
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
2742 AC_CONFIG_FILES([
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
2743 Makefile
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
2744 doc/Makefile
11644
be2b7d2901a0 doc: added manual pages
Pascal Volk <user@localhost.localdomain.org>
parents: 11530
diff changeset
2745 doc/man/Makefile
5441
9d36800df1ae Added documentation to doc/wiki/. autogen.sh downloads them from dovecot.org
Timo Sirainen <tss@iki.fi>
parents: 5375
diff changeset
2746 doc/wiki/Makefile
9842
e95135898a3c Split dovecot-example.conf to multiple files. Also it's now installed under docdir.
Timo Sirainen <tss@iki.fi>
parents: 9812
diff changeset
2747 doc/example-config/Makefile
e95135898a3c Split dovecot-example.conf to multiple files. Also it's now installed under docdir.
Timo Sirainen <tss@iki.fi>
parents: 9812
diff changeset
2748 doc/example-config/conf.d/Makefile
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
2749 src/Makefile
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
2750 src/lib/Makefile
2754
3c3ac12be307 Created generic asynchronous SQL API and implemented MySQL and PostgreSQL
Timo Sirainen <tss@iki.fi>
parents: 2717
diff changeset
2751 src/lib-sql/Makefile
1702
43815588dd6b Moved client side code for auth process handling to lib-auth. Some other login process cleanups.
Timo Sirainen <tss@iki.fi>
parents: 1694
diff changeset
2752 src/lib-auth/Makefile
568
f2aa58c2afd0 SEARCH CHARSET support. Currently we do it through iconv() and only ASCII
Timo Sirainen <tss@iki.fi>
parents: 550
diff changeset
2753 src/lib-charset/Makefile
14739
378ba560ea9f Moved zlib/bzlib code to lib-compression library.
Timo Sirainen <tss@iki.fi>
parents: 14729
diff changeset
2754 src/lib-compression/Makefile
3737
d67092398377 Added dictionary API and implementation for SQL. It's meant for looking and
Timo Sirainen <tss@iki.fi>
parents: 3720
diff changeset
2755 src/lib-dict/Makefile
10615
8f9fc7fa7c73 Added dns-client service and library for doing async dns lookups.
Timo Sirainen <tss@iki.fi>
parents: 10600
diff changeset
2756 src/lib-dns/Makefile
12309
e3fe87b855ef Added lib-fs for simple filesystem accessing. Implemented POSIX, SiS and SiS-queue backends.
Timo Sirainen <tss@iki.fi>
parents: 12235
diff changeset
2757 src/lib-fs/Makefile
15195
70305d850220 Adds HTTP URL parse support.
Stephan Bosch <stephan@rename-it.nl>
parents: 15167
diff changeset
2758 src/lib-http/Makefile
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
2759 src/lib-imap/Makefile
14591
07e6ca397a72 Created lib-imap-storage for IMAP-specific functionality that uses lib-storage.
Stephan Bosch <stephan@rename-it.nl>
parents: 14576
diff changeset
2760 src/lib-imap-storage/Makefile
13554
743ebecc1224 Moved imapc-client into its own lib-imap-client library.
Timo Sirainen <tss@iki.fi>
parents: 13516
diff changeset
2761 src/lib-imap-client/Makefile
15066
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents: 15005
diff changeset
2762 src/lib-imap-urlauth/Makefile
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
2763 src/lib-index/Makefile
9092
e4832f128738 Renamed deliver to dovecot-lda and moved most of its code to lib-lda.
Timo Sirainen <tss@iki.fi>
parents: 9091
diff changeset
2764 src/lib-lda/Makefile
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
2765 src/lib-mail/Makefile
9059
94ecf8a8ed68 Added lib-master and mail-storage-service code that makes it easier to build new Dovecot binaries.
Timo Sirainen <tss@iki.fi>
parents: 9017
diff changeset
2766 src/lib-master/Makefile
2377
8f5be0be3199 NTLM authentication. Patch by Andrey Panin
Timo Sirainen <tss@iki.fi>
parents: 2369
diff changeset
2767 src/lib-ntlm/Makefile
4798
c04189d77a59 Added OTP and S/KEY authentication mechanisms. Patch by Andrey Panin.
Timo Sirainen <tss@iki.fi>
parents: 4736
diff changeset
2768 src/lib-otp/Makefile
9017
1b586a2fee8b Build libdovecot.so and libdovecot-storage.so.
Timo Sirainen <tss@iki.fi>
parents: 9016
diff changeset
2769 src/lib-dovecot/Makefile
1058
3b8fb7bf7ecc Moved settings parsing to lib-settings.
Timo Sirainen <tss@iki.fi>
parents: 1057
diff changeset
2770 src/lib-settings/Makefile
12616
bd23d4e10fa1 Added lib-ssl-iostream for handling SSL connections more easily.
Timo Sirainen <tss@iki.fi>
parents: 12580
diff changeset
2771 src/lib-ssl-iostream/Makefile
9258
665ea7a8d26e Tests are now run on "make check". Added initial tests for lib-index.
Timo Sirainen <tss@iki.fi>
parents: 9246
diff changeset
2772 src/lib-test/Makefile
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
2773 src/lib-storage/Makefile
4808
93bc9770f938 Initial code for separation of mailbox accessing and directory layout
Timo Sirainen <tss@iki.fi>
parents: 4798
diff changeset
2774 src/lib-storage/list/Makefile
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
2775 src/lib-storage/index/Makefile
12580
7dd1e45721ae Added initial implementation of "imapc" storage.
Timo Sirainen <tss@iki.fi>
parents: 12576
diff changeset
2776 src/lib-storage/index/imapc/Makefile
13880
d4c909d2306f lib-storage: Added initial support for pop3c backend.
Timo Sirainen <tss@iki.fi>
parents: 13875
diff changeset
2777 src/lib-storage/index/pop3c/Makefile
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
2778 src/lib-storage/index/maildir/Makefile
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
2779 src/lib-storage/index/mbox/Makefile
9977
0bb321c347ae Split dbox (single-dbox) and mdbox (multi-dbox) into separate storage backends.
Timo Sirainen <tss@iki.fi>
parents: 9973
diff changeset
2780 src/lib-storage/index/dbox-common/Makefile
0bb321c347ae Split dbox (single-dbox) and mdbox (multi-dbox) into separate storage backends.
Timo Sirainen <tss@iki.fi>
parents: 9973
diff changeset
2781 src/lib-storage/index/dbox-multi/Makefile
0bb321c347ae Split dbox (single-dbox) and mdbox (multi-dbox) into separate storage backends.
Timo Sirainen <tss@iki.fi>
parents: 9973
diff changeset
2782 src/lib-storage/index/dbox-single/Makefile
5458
daca7ed634c0 Added a simple cydir mail storage backend. It trusts index files completely:
Timo Sirainen <tss@iki.fi>
parents: 5456
diff changeset
2783 src/lib-storage/index/cydir/Makefile
6748
d712370dfd14 Added raw storage for opening single-mail files/streams as mailboxes.
Timo Sirainen <tss@iki.fi>
parents: 6734
diff changeset
2784 src/lib-storage/index/raw/Makefile
8173