annotate configure.in @ 4443:a01337f6509a HEAD

Don't try to use any weird _syscall()s when detecting epoll.
author Timo Sirainen <tss@iki.fi>
date Tue, 27 Jun 2006 10:20:06 +0300
parents 9eee24bf2960
children 4b01707d6cbe
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])
4258
bd93316b078b Note about this being unstable CVS branch
Timo Sirainen <tss@iki.fi>
parents: 4166
diff changeset
2 AC_INIT([dovecot],[1.1.UNSTABLE],[dovecot@dovecot.org])
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
3 AC_CONFIG_SRCDIR([src])
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
4
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
5 AM_INIT_AUTOMAKE
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
6
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
7 AM_MAINTAINER_MODE
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
8
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
9 AC_ISC_POSIX
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
10 AC_PROG_CC
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
11 AC_PROG_CPP
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
12 AC_HEADER_STDC
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
13 AC_C_INLINE
3784
beeae4f17615 Cleanups and some more kqueue stuff
Timo Sirainen <tss@iki.fi>
parents: 3783
diff changeset
14 AC_PROG_LIBTOOL
1300
952bf533c2ea Better iconv() checking.
Timo Sirainen <tss@iki.fi>
parents: 1287
diff changeset
15 AM_ICONV
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
16
3720
fd0986477809 Initial implementation of Dovecot's own high performance file format, named
Timo Sirainen <tss@iki.fi>
parents: 3705
diff changeset
17 AC_CHECK_HEADERS(strings.h stdint.h unistd.h dirent.h \
3751
768770a01733 quotactl() quota checking support
Timo Sirainen <tss@iki.fi>
parents: 3749
diff changeset
18 sys/uio.h sys/sysmacros.h sys/resource.h sys/select.h libgen.h \
4050
41cb3921d869 configure was actually checking always only sys/quota.h. Also added
Timo Sirainen <tss@iki.fi>
parents: 4049
diff changeset
19 sys/quota.h sys/fs/ufs_quota.h ufs/ufs/quota.h jfs/quota.h \
4426
b8089cf41c96 Check for sasl.h and sasl/sasl.h existence and use the one that's found. If
Timo Sirainen <tss@iki.fi>
parents: 4423
diff changeset
20 mntent.h sys/mnttab.h sys/event.h sys/time.h sys/mkdev.h linux/dqblk_xfs.h \
b8089cf41c96 Check for sasl.h and sasl/sasl.h existence and use the one that's found. If
Timo Sirainen <tss@iki.fi>
parents: 4423
diff changeset
21 sasl.h sasl/sasl.h)
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
22
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
23 AC_ARG_ENABLE(ipv6,
426
951cb252e577 help update
Timo Sirainen <tss@iki.fi>
parents: 412
diff changeset
24 [ --enable-ipv6 Enable IPv6 support (default)],
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
25 if test x$enableval = xno; then
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
26 want_ipv6=no
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
27 else
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
28 want_ipv6=yes
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
29 fi,
426
951cb252e577 help update
Timo Sirainen <tss@iki.fi>
parents: 412
diff changeset
30 want_ipv6=yes)
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
31
544
42e65c2ba49d Added --enable-debug. Currently it just forces file locks so that index
Timo Sirainen <tss@iki.fi>
parents: 530
diff changeset
32 AC_ARG_ENABLE(debug,
42e65c2ba49d Added --enable-debug. Currently it just forces file locks so that index
Timo Sirainen <tss@iki.fi>
parents: 530
diff changeset
33 [ --enable-debug Enable some extra checks for debugging],
42e65c2ba49d Added --enable-debug. Currently it just forces file locks so that index
Timo Sirainen <tss@iki.fi>
parents: 530
diff changeset
34 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
35 AC_DEFINE(DEBUG,, Build with extra debugging checks)
544
42e65c2ba49d Added --enable-debug. Currently it just forces file locks so that index
Timo Sirainen <tss@iki.fi>
parents: 530
diff changeset
36 fi)
42e65c2ba49d Added --enable-debug. Currently it just forces file locks so that index
Timo Sirainen <tss@iki.fi>
parents: 530
diff changeset
37
546
e1254b838e0b Added --enable-asserts (default) and fixed some warnings when building
Timo Sirainen <tss@iki.fi>
parents: 544
diff changeset
38 AC_ARG_ENABLE(asserts,
e1254b838e0b Added --enable-asserts (default) and fixed some warnings when building
Timo Sirainen <tss@iki.fi>
parents: 544
diff changeset
39 [ --enable-asserts Enable asserts (default)],
4057
f4807accc1d5 Unbreak last accidental change..
Timo Sirainen <tss@iki.fi>
parents: 4055
diff changeset
40 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
41 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
42 fi)
e1254b838e0b Added --enable-asserts (default) and fixed some warnings when building
Timo Sirainen <tss@iki.fi>
parents: 544
diff changeset
43
328
a0abed892d11 s/--enable/--with/ to all auth modules. added --with-file-offset-size=BITS
Timo Sirainen <tss@iki.fi>
parents: 313
diff changeset
44 AC_ARG_WITH(file-offset-size,
a0abed892d11 s/--enable/--with/ to all auth modules. added --with-file-offset-size=BITS
Timo Sirainen <tss@iki.fi>
parents: 313
diff changeset
45 [ --with-file-offset-size=BITS Set size of file offsets. Usually 32 or 64.
439
b66ccecbc8a6 Added --with-mem-align=BYTES option
Timo Sirainen <tss@iki.fi>
parents: 426
diff changeset
46 (default: 64 if available)],
328
a0abed892d11 s/--enable/--with/ to all auth modules. added --with-file-offset-size=BITS
Timo Sirainen <tss@iki.fi>
parents: 313
diff changeset
47 preferred_off_t_bits=$withval,
a0abed892d11 s/--enable/--with/ to all auth modules. added --with-file-offset-size=BITS
Timo Sirainen <tss@iki.fi>
parents: 313
diff changeset
48 preferred_off_t_bits=64)
a0abed892d11 s/--enable/--with/ to all auth modules. added --with-file-offset-size=BITS
Timo Sirainen <tss@iki.fi>
parents: 313
diff changeset
49
439
b66ccecbc8a6 Added --with-mem-align=BYTES option
Timo Sirainen <tss@iki.fi>
parents: 426
diff changeset
50 AC_ARG_WITH(mem-align,
1394
059f13d577bb Use separate index alignment from memory alignment. We don't use pointers in
Timo Sirainen <tss@iki.fi>
parents: 1389
diff changeset
51 [ --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
52 mem_align=$withval,
b66ccecbc8a6 Added --with-mem-align=BYTES option
Timo Sirainen <tss@iki.fi>
parents: 426
diff changeset
53 mem_align=8)
b66ccecbc8a6 Added --with-mem-align=BYTES option
Timo Sirainen <tss@iki.fi>
parents: 426
diff changeset
54
2569
554f1324a435 Added epoll support if --with-ioloop=epoll is given. Patch by Andrey Panin.
Timo Sirainen <tss@iki.fi>
parents: 2538
diff changeset
55 AC_ARG_WITH(ioloop,
3784
beeae4f17615 Cleanups and some more kqueue stuff
Timo Sirainen <tss@iki.fi>
parents: 3783
diff changeset
56 [ --with-ioloop=IOLOOP Specify the I/O loop method to use
beeae4f17615 Cleanups and some more kqueue stuff
Timo Sirainen <tss@iki.fi>
parents: 3783
diff changeset
57 (epoll, kqueue, poll; default is poll)],
2569
554f1324a435 Added epoll support if --with-ioloop=epoll is given. Patch by Andrey Panin.
Timo Sirainen <tss@iki.fi>
parents: 2538
diff changeset
58 ioloop=$withval,
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=)
554f1324a435 Added epoll support if --with-ioloop=epoll is given. Patch by Andrey Panin.
Timo Sirainen <tss@iki.fi>
parents: 2538
diff changeset
60
3482
465c465c66be Added inotify patch by Johannes Berg and did some restructuring to
Timo Sirainen <tss@iki.fi>
parents: 3452
diff changeset
61 AC_ARG_WITH(notify,
465c465c66be Added inotify patch by Johannes Berg and did some restructuring to
Timo Sirainen <tss@iki.fi>
parents: 3452
diff changeset
62 [ --with-notify=IOLOOP Specify the file system notification method to use
3784
beeae4f17615 Cleanups and some more kqueue stuff
Timo Sirainen <tss@iki.fi>
parents: 3783
diff changeset
63 (dnotify, inotify, kqueue, none;
3482
465c465c66be Added inotify patch by Johannes Berg and did some restructuring to
Timo Sirainen <tss@iki.fi>
parents: 3452
diff changeset
64 default dnotify if compilable, otherwise none)],
465c465c66be Added inotify patch by Johannes Berg and did some restructuring to
Timo Sirainen <tss@iki.fi>
parents: 3452
diff changeset
65 notify=$withval,
465c465c66be Added inotify patch by Johannes Berg and did some restructuring to
Timo Sirainen <tss@iki.fi>
parents: 3452
diff changeset
66 notify=)
465c465c66be Added inotify patch by Johannes Berg and did some restructuring to
Timo Sirainen <tss@iki.fi>
parents: 3452
diff changeset
67
328
a0abed892d11 s/--enable/--with/ to all auth modules. added --with-file-offset-size=BITS
Timo Sirainen <tss@iki.fi>
parents: 313
diff changeset
68 AC_ARG_WITH(passwd,
426
951cb252e577 help update
Timo Sirainen <tss@iki.fi>
parents: 412
diff changeset
69 [ --with-passwd Build with /etc/passwd support (default)],
328
a0abed892d11 s/--enable/--with/ to all auth modules. added --with-file-offset-size=BITS
Timo Sirainen <tss@iki.fi>
parents: 313
diff changeset
70 if test x$withval = xno; then
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
71 want_passwd=no
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
72 else
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
73 want_passwd=yes
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
74 fi,
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
75 want_passwd=yes)
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(passwd-file,
a0abed892d11 s/--enable/--with/ to all auth modules. added --with-file-offset-size=BITS
Timo Sirainen <tss@iki.fi>
parents: 313
diff changeset
78 [ --with-passwd-file Build with passwd-like file support (default)],
a0abed892d11 s/--enable/--with/ to all auth modules. added --with-file-offset-size=BITS
Timo Sirainen <tss@iki.fi>
parents: 313
diff changeset
79 if test x$withval = xno; then
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
80 want_passwd_file=no
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
81 else
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
82 want_passwd_file=yes
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
83 fi,
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
84 want_passwd_file=yes)
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
85
328
a0abed892d11 s/--enable/--with/ to all auth modules. added --with-file-offset-size=BITS
Timo Sirainen <tss@iki.fi>
parents: 313
diff changeset
86 AC_ARG_WITH(shadow,
a0abed892d11 s/--enable/--with/ to all auth modules. added --with-file-offset-size=BITS
Timo Sirainen <tss@iki.fi>
parents: 313
diff changeset
87 [ --with-shadow Build with shadow password support (default)],
a0abed892d11 s/--enable/--with/ to all auth modules. added --with-file-offset-size=BITS
Timo Sirainen <tss@iki.fi>
parents: 313
diff changeset
88 if test x$withval = xno; then
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
89 want_shadow=no
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
90 else
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
91 want_shadow=yes
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
92 fi,
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
93 want_shadow=yes)
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
94
328
a0abed892d11 s/--enable/--with/ to all auth modules. added --with-file-offset-size=BITS
Timo Sirainen <tss@iki.fi>
parents: 313
diff changeset
95 AC_ARG_WITH(pam,
a0abed892d11 s/--enable/--with/ to all auth modules. added --with-file-offset-size=BITS
Timo Sirainen <tss@iki.fi>
parents: 313
diff changeset
96 [ --with-pam Build with PAM support (default)],
a0abed892d11 s/--enable/--with/ to all auth modules. added --with-file-offset-size=BITS
Timo Sirainen <tss@iki.fi>
parents: 313
diff changeset
97 if test x$withval = xno; then
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
98 want_pam=no
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
99 else
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
100 want_pam=yes
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
101 fi,
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
102 want_pam=yes)
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
103
2162
95b2a6abc01e Added checkpassword passdb. userdb has only beginnings.
Timo Sirainen <tss@iki.fi>
parents: 2103
diff changeset
104 AC_ARG_WITH(checkpassword,
95b2a6abc01e Added checkpassword passdb. userdb has only beginnings.
Timo Sirainen <tss@iki.fi>
parents: 2103
diff changeset
105 [ --with-checkpassword Build with checkpassword support (default)],
95b2a6abc01e Added checkpassword passdb. userdb has only beginnings.
Timo Sirainen <tss@iki.fi>
parents: 2103
diff changeset
106 if test x$withval = xno; then
95b2a6abc01e Added checkpassword passdb. userdb has only beginnings.
Timo Sirainen <tss@iki.fi>
parents: 2103
diff changeset
107 want_checkpassword=no
95b2a6abc01e Added checkpassword passdb. userdb has only beginnings.
Timo Sirainen <tss@iki.fi>
parents: 2103
diff changeset
108 else
95b2a6abc01e Added checkpassword passdb. userdb has only beginnings.
Timo Sirainen <tss@iki.fi>
parents: 2103
diff changeset
109 want_checkpassword=yes
95b2a6abc01e Added checkpassword passdb. userdb has only beginnings.
Timo Sirainen <tss@iki.fi>
parents: 2103
diff changeset
110 fi,
95b2a6abc01e Added checkpassword passdb. userdb has only beginnings.
Timo Sirainen <tss@iki.fi>
parents: 2103
diff changeset
111 want_checkpassword=yes)
95b2a6abc01e Added checkpassword passdb. userdb has only beginnings.
Timo Sirainen <tss@iki.fi>
parents: 2103
diff changeset
112
1851
d66d53f57e43 Added bsdauth support, patch by Dan Cross
Timo Sirainen <tss@iki.fi>
parents: 1849
diff changeset
113 AC_ARG_WITH(bsdauth,
d66d53f57e43 Added bsdauth support, patch by Dan Cross
Timo Sirainen <tss@iki.fi>
parents: 1849
diff changeset
114 [ --with-bsdauth Build with BSD authentication support (default)],
d66d53f57e43 Added bsdauth support, patch by Dan Cross
Timo Sirainen <tss@iki.fi>
parents: 1849
diff changeset
115 if test x$withval = xno; then
d66d53f57e43 Added bsdauth support, patch by Dan Cross
Timo Sirainen <tss@iki.fi>
parents: 1849
diff changeset
116 want_bsdauth=no
d66d53f57e43 Added bsdauth support, patch by Dan Cross
Timo Sirainen <tss@iki.fi>
parents: 1849
diff changeset
117 else
d66d53f57e43 Added bsdauth support, patch by Dan Cross
Timo Sirainen <tss@iki.fi>
parents: 1849
diff changeset
118 want_bsdauth=yes
d66d53f57e43 Added bsdauth support, patch by Dan Cross
Timo Sirainen <tss@iki.fi>
parents: 1849
diff changeset
119 fi,
d66d53f57e43 Added bsdauth support, patch by Dan Cross
Timo Sirainen <tss@iki.fi>
parents: 1849
diff changeset
120 want_bsdauth=yes)
d66d53f57e43 Added bsdauth support, patch by Dan Cross
Timo Sirainen <tss@iki.fi>
parents: 1849
diff changeset
121
3683
28cca6317829 Added GSSAPI support. Patch by Jelmer Vernooij and some fixes by
Timo Sirainen <tss@iki.fi>
parents: 3671
diff changeset
122 AC_ARG_WITH(gssapi,
4348
2dc5f48ff4ee Whitespace cleanup for --help. Don't enable GSSAPI support by default.
Timo Sirainen <tss@iki.fi>
parents: 4343
diff changeset
123 [ --with-gssapi Build with GSSAPI authentication support],
3683
28cca6317829 Added GSSAPI support. Patch by Jelmer Vernooij and some fixes by
Timo Sirainen <tss@iki.fi>
parents: 3671
diff changeset
124 if test x$withval = xno; then
28cca6317829 Added GSSAPI support. Patch by Jelmer Vernooij and some fixes by
Timo Sirainen <tss@iki.fi>
parents: 3671
diff changeset
125 want_gssapi=no
28cca6317829 Added GSSAPI support. Patch by Jelmer Vernooij and some fixes by
Timo Sirainen <tss@iki.fi>
parents: 3671
diff changeset
126 else
3686
1b86be09b41e typofix
Timo Sirainen <tss@iki.fi>
parents: 3683
diff changeset
127 want_gssapi=yes
3683
28cca6317829 Added GSSAPI support. Patch by Jelmer Vernooij and some fixes by
Timo Sirainen <tss@iki.fi>
parents: 3671
diff changeset
128 fi,
4348
2dc5f48ff4ee Whitespace cleanup for --help. Don't enable GSSAPI support by default.
Timo Sirainen <tss@iki.fi>
parents: 4343
diff changeset
129 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
130
1057
c5ab972db48c libldap checks, --without-pop3 disables pop3 server
Timo Sirainen <tss@iki.fi>
parents: 1049
diff changeset
131 AC_ARG_WITH(ldap,
c5ab972db48c libldap checks, --without-pop3 disables pop3 server
Timo Sirainen <tss@iki.fi>
parents: 1049
diff changeset
132 [ --with-ldap Build with LDAP support],
c5ab972db48c libldap checks, --without-pop3 disables pop3 server
Timo Sirainen <tss@iki.fi>
parents: 1049
diff changeset
133 if test x$withval = xno; then
c5ab972db48c libldap checks, --without-pop3 disables pop3 server
Timo Sirainen <tss@iki.fi>
parents: 1049
diff changeset
134 want_ldap=no
c5ab972db48c libldap checks, --without-pop3 disables pop3 server
Timo Sirainen <tss@iki.fi>
parents: 1049
diff changeset
135 else
c5ab972db48c libldap checks, --without-pop3 disables pop3 server
Timo Sirainen <tss@iki.fi>
parents: 1049
diff changeset
136 want_ldap=yes
c5ab972db48c libldap checks, --without-pop3 disables pop3 server
Timo Sirainen <tss@iki.fi>
parents: 1049
diff changeset
137 fi,
c5ab972db48c libldap checks, --without-pop3 disables pop3 server
Timo Sirainen <tss@iki.fi>
parents: 1049
diff changeset
138 want_ldap=no)
c5ab972db48c libldap checks, --without-pop3 disables pop3 server
Timo Sirainen <tss@iki.fi>
parents: 1049
diff changeset
139
280
fa2d1a1d025e vpopmail authentication. compiles, not tested if it really works.
Timo Sirainen <tss@iki.fi>
parents: 247
diff changeset
140 AC_ARG_WITH(vpopmail,
fa2d1a1d025e vpopmail authentication. compiles, not tested if it really works.
Timo Sirainen <tss@iki.fi>
parents: 247
diff changeset
141 [ --with-vpopmail Build with vpopmail support (default)],
fa2d1a1d025e vpopmail authentication. compiles, not tested if it really works.
Timo Sirainen <tss@iki.fi>
parents: 247
diff changeset
142 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
143 want_vpopmail=no
fa2d1a1d025e vpopmail authentication. compiles, not tested if it really works.
Timo Sirainen <tss@iki.fi>
parents: 247
diff changeset
144 else
fa2d1a1d025e vpopmail authentication. compiles, not tested if it really works.
Timo Sirainen <tss@iki.fi>
parents: 247
diff changeset
145 want_vpopmail=yes
fa2d1a1d025e vpopmail authentication. compiles, not tested if it really works.
Timo Sirainen <tss@iki.fi>
parents: 247
diff changeset
146 fi,
fa2d1a1d025e vpopmail authentication. compiles, not tested if it really works.
Timo Sirainen <tss@iki.fi>
parents: 247
diff changeset
147 want_vpopmail=yes)
fa2d1a1d025e vpopmail authentication. compiles, not tested if it really works.
Timo Sirainen <tss@iki.fi>
parents: 247
diff changeset
148
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
149 AC_ARG_WITH(static-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
150 [ --with-static-userdb Build with static userdb support (default)],
cacabd33c68a Initial code for POP3 server. RETR isn't working right yet, there's some
Timo Sirainen <tss@iki.fi>
parents: 1022
diff changeset
151 if test x$withval = xno; then
cacabd33c68a Initial code for POP3 server. RETR isn't working right yet, there's some
Timo Sirainen <tss@iki.fi>
parents: 1022
diff changeset
152 want_static_userdb=no
cacabd33c68a Initial code for POP3 server. RETR isn't working right yet, there's some
Timo Sirainen <tss@iki.fi>
parents: 1022
diff changeset
153 else
cacabd33c68a Initial code for POP3 server. RETR isn't working right yet, there's some
Timo Sirainen <tss@iki.fi>
parents: 1022
diff changeset
154 want_static_userdb=yes
cacabd33c68a Initial code for POP3 server. RETR isn't working right yet, there's some
Timo Sirainen <tss@iki.fi>
parents: 1022
diff changeset
155 fi,
cacabd33c68a Initial code for POP3 server. RETR isn't working right yet, there's some
Timo Sirainen <tss@iki.fi>
parents: 1022
diff changeset
156 want_static_userdb=yes)
cacabd33c68a Initial code for POP3 server. RETR isn't working right yet, there's some
Timo Sirainen <tss@iki.fi>
parents: 1022
diff changeset
157
3667
b7569a6a4ada Renamed userdb passdb to prefetch.
Timo Sirainen <tss@iki.fi>
parents: 3600
diff changeset
158 AC_ARG_WITH(prefetch-userdb,
b7569a6a4ada Renamed userdb passdb to prefetch.
Timo Sirainen <tss@iki.fi>
parents: 3600
diff changeset
159 [ --with-prefetch-userdb Build with prefetch userdb support (default)],
3062
5e2e4cdbfe2e Added "passdb" userdb. It works only if passdb gives all the information
Timo Sirainen <tss@iki.fi>
parents: 3004
diff changeset
160 if test x$withval = xno; then
3667
b7569a6a4ada Renamed userdb passdb to prefetch.
Timo Sirainen <tss@iki.fi>
parents: 3600
diff changeset
161 want_prefetch_userdb=no
3062
5e2e4cdbfe2e Added "passdb" userdb. It works only if passdb gives all the information
Timo Sirainen <tss@iki.fi>
parents: 3004
diff changeset
162 else
3667
b7569a6a4ada Renamed userdb passdb to prefetch.
Timo Sirainen <tss@iki.fi>
parents: 3600
diff changeset
163 want_prefetch_userdb=yes
3062
5e2e4cdbfe2e Added "passdb" userdb. It works only if passdb gives all the information
Timo Sirainen <tss@iki.fi>
parents: 3004
diff changeset
164 fi,
3667
b7569a6a4ada Renamed userdb passdb to prefetch.
Timo Sirainen <tss@iki.fi>
parents: 3600
diff changeset
165 want_prefetch_userdb=yes)
3062
5e2e4cdbfe2e Added "passdb" userdb. It works only if passdb gives all the information
Timo Sirainen <tss@iki.fi>
parents: 3004
diff changeset
166
4013
bf0357107349 Added --with-sql option to build with SQL userdb/passdb but without any
Timo Sirainen <tss@iki.fi>
parents: 4012
diff changeset
167 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
168 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
169 AC_ARG_WITH(sql,
bf0357107349 Added --with-sql option to build with SQL userdb/passdb but without any
Timo Sirainen <tss@iki.fi>
parents: 4012
diff changeset
170 [ --with-sql Build with generic SQL support],
bf0357107349 Added --with-sql option to build with SQL userdb/passdb but without any
Timo Sirainen <tss@iki.fi>
parents: 4012
diff changeset
171 if test x$withval = xno; then
bf0357107349 Added --with-sql option to build with SQL userdb/passdb but without any
Timo Sirainen <tss@iki.fi>
parents: 4012
diff changeset
172 want_sql=no
bf0357107349 Added --with-sql option to build with SQL userdb/passdb but without any
Timo Sirainen <tss@iki.fi>
parents: 4012
diff changeset
173 else
bf0357107349 Added --with-sql option to build with SQL userdb/passdb but without any
Timo Sirainen <tss@iki.fi>
parents: 4012
diff changeset
174 want_sql=yes
bf0357107349 Added --with-sql option to build with SQL userdb/passdb but without any
Timo Sirainen <tss@iki.fi>
parents: 4012
diff changeset
175 fi,
bf0357107349 Added --with-sql option to build with SQL userdb/passdb but without any
Timo Sirainen <tss@iki.fi>
parents: 4012
diff changeset
176 want_sql=no)
bf0357107349 Added --with-sql option to build with SQL userdb/passdb but without any
Timo Sirainen <tss@iki.fi>
parents: 4012
diff changeset
177
1283
2d8af547a8b4 Added PostgreSQL support, patch by Alex Howansky
Timo Sirainen <tss@iki.fi>
parents: 1256
diff changeset
178 AC_ARG_WITH(pgsql,
4013
bf0357107349 Added --with-sql option to build with SQL userdb/passdb but without any
Timo Sirainen <tss@iki.fi>
parents: 4012
diff changeset
179 [ --with-pgsql Build with PostgreSQL driver support],
1283
2d8af547a8b4 Added PostgreSQL support, patch by Alex Howansky
Timo Sirainen <tss@iki.fi>
parents: 1256
diff changeset
180 if test x$withval = xno; then
2d8af547a8b4 Added PostgreSQL support, patch by Alex Howansky
Timo Sirainen <tss@iki.fi>
parents: 1256
diff changeset
181 want_pgsql=no
2d8af547a8b4 Added PostgreSQL support, patch by Alex Howansky
Timo Sirainen <tss@iki.fi>
parents: 1256
diff changeset
182 else
2d8af547a8b4 Added PostgreSQL support, patch by Alex Howansky
Timo Sirainen <tss@iki.fi>
parents: 1256
diff changeset
183 want_pgsql=yes
2d8af547a8b4 Added PostgreSQL support, patch by Alex Howansky
Timo Sirainen <tss@iki.fi>
parents: 1256
diff changeset
184 fi,
2d8af547a8b4 Added PostgreSQL support, patch by Alex Howansky
Timo Sirainen <tss@iki.fi>
parents: 1256
diff changeset
185 want_pgsql=no)
2d8af547a8b4 Added PostgreSQL support, patch by Alex Howansky
Timo Sirainen <tss@iki.fi>
parents: 1256
diff changeset
186
1995
cc64f8bb4716 MySQL authentication patch by Matther Reimer
Timo Sirainen <tss@iki.fi>
parents: 1990
diff changeset
187 AC_ARG_WITH(mysql,
4013
bf0357107349 Added --with-sql option to build with SQL userdb/passdb but without any
Timo Sirainen <tss@iki.fi>
parents: 4012
diff changeset
188 [ --with-mysql Build with MySQL driver support],
1995
cc64f8bb4716 MySQL authentication patch by Matther Reimer
Timo Sirainen <tss@iki.fi>
parents: 1990
diff changeset
189 if test x$withval = xno; then
cc64f8bb4716 MySQL authentication patch by Matther Reimer
Timo Sirainen <tss@iki.fi>
parents: 1990
diff changeset
190 want_mysql=no
cc64f8bb4716 MySQL authentication patch by Matther Reimer
Timo Sirainen <tss@iki.fi>
parents: 1990
diff changeset
191 else
cc64f8bb4716 MySQL authentication patch by Matther Reimer
Timo Sirainen <tss@iki.fi>
parents: 1990
diff changeset
192 want_mysql=yes
cc64f8bb4716 MySQL authentication patch by Matther Reimer
Timo Sirainen <tss@iki.fi>
parents: 1990
diff changeset
193 fi,
cc64f8bb4716 MySQL authentication patch by Matther Reimer
Timo Sirainen <tss@iki.fi>
parents: 1990
diff changeset
194 want_mysql=no)
cc64f8bb4716 MySQL authentication patch by Matther Reimer
Timo Sirainen <tss@iki.fi>
parents: 1990
diff changeset
195
3919
b967ffb7e3a6 SQLite support. Patch by Jakob Hirsch.
Timo Sirainen <tss@iki.fi>
parents: 3904
diff changeset
196 AC_ARG_WITH(sqlite,
4348
2dc5f48ff4ee Whitespace cleanup for --help. Don't enable GSSAPI support by default.
Timo Sirainen <tss@iki.fi>
parents: 4343
diff changeset
197 [ --with-sqlite Build with SQLite3 driver support],
3919
b967ffb7e3a6 SQLite support. Patch by Jakob Hirsch.
Timo Sirainen <tss@iki.fi>
parents: 3904
diff changeset
198 if test x$withval = xno; then
b967ffb7e3a6 SQLite support. Patch by Jakob Hirsch.
Timo Sirainen <tss@iki.fi>
parents: 3904
diff changeset
199 want_sqlite=no
b967ffb7e3a6 SQLite support. Patch by Jakob Hirsch.
Timo Sirainen <tss@iki.fi>
parents: 3904
diff changeset
200 else
b967ffb7e3a6 SQLite support. Patch by Jakob Hirsch.
Timo Sirainen <tss@iki.fi>
parents: 3904
diff changeset
201 want_sqlite=yes
b967ffb7e3a6 SQLite support. Patch by Jakob Hirsch.
Timo Sirainen <tss@iki.fi>
parents: 3904
diff changeset
202 fi,
b967ffb7e3a6 SQLite support. Patch by Jakob Hirsch.
Timo Sirainen <tss@iki.fi>
parents: 3904
diff changeset
203 want_sqlite=no)
b967ffb7e3a6 SQLite support. Patch by Jakob Hirsch.
Timo Sirainen <tss@iki.fi>
parents: 3904
diff changeset
204
622
235188ee7a05 Support for OpenSSL.
Timo Sirainen <tss@iki.fi>
parents: 576
diff changeset
205 AC_ARG_WITH(ssl,
3881
ea56e9296b5b Default SSL is OpenSSL, not GNUTLS.
Timo Sirainen <tss@iki.fi>
parents: 3863
diff changeset
206 [ --with-ssl=[gnutls|openssl] Build with GNUTLS or OpenSSL (default)],
245
Timo Sirainen <tss@iki.fi>
parents: 244
diff changeset
207 if test x$withval = xno; then
244
bf1e284fece2 added --without-gnutls option
Timo Sirainen <tss@iki.fi>
parents: 224
diff changeset
208 want_gnutls=no
622
235188ee7a05 Support for OpenSSL.
Timo Sirainen <tss@iki.fi>
parents: 576
diff changeset
209 want_openssl=no
235188ee7a05 Support for OpenSSL.
Timo Sirainen <tss@iki.fi>
parents: 576
diff changeset
210 elif test x$withval = xgnutls; then
235188ee7a05 Support for OpenSSL.
Timo Sirainen <tss@iki.fi>
parents: 576
diff changeset
211 want_gnutls=yes
235188ee7a05 Support for OpenSSL.
Timo Sirainen <tss@iki.fi>
parents: 576
diff changeset
212 want_openssl=no
235188ee7a05 Support for OpenSSL.
Timo Sirainen <tss@iki.fi>
parents: 576
diff changeset
213 elif test x$withval = xopenssl; then
235188ee7a05 Support for OpenSSL.
Timo Sirainen <tss@iki.fi>
parents: 576
diff changeset
214 want_gnutls=no
235188ee7a05 Support for OpenSSL.
Timo Sirainen <tss@iki.fi>
parents: 576
diff changeset
215 want_openssl=yes
244
bf1e284fece2 added --without-gnutls option
Timo Sirainen <tss@iki.fi>
parents: 224
diff changeset
216 else
3004
60a172e62d11 Don't use GNUTLS unless explicitly specified. It's not working currently
Timo Sirainen <tss@iki.fi>
parents: 3002
diff changeset
217 want_gnutls=no
622
235188ee7a05 Support for OpenSSL.
Timo Sirainen <tss@iki.fi>
parents: 576
diff changeset
218 want_openssl=yes
235188ee7a05 Support for OpenSSL.
Timo Sirainen <tss@iki.fi>
parents: 576
diff changeset
219 fi, [
3004
60a172e62d11 Don't use GNUTLS unless explicitly specified. It's not working currently
Timo Sirainen <tss@iki.fi>
parents: 3002
diff changeset
220 want_gnutls=no
622
235188ee7a05 Support for OpenSSL.
Timo Sirainen <tss@iki.fi>
parents: 576
diff changeset
221 want_openssl=yes
235188ee7a05 Support for OpenSSL.
Timo Sirainen <tss@iki.fi>
parents: 576
diff changeset
222 ])
244
bf1e284fece2 added --without-gnutls option
Timo Sirainen <tss@iki.fi>
parents: 224
diff changeset
223
657
85a888d2766e Added script to easily generate self-signed certificate.
Timo Sirainen <tss@iki.fi>
parents: 654
diff changeset
224 AC_ARG_WITH(ssldir,
85a888d2766e Added script to easily generate self-signed certificate.
Timo Sirainen <tss@iki.fi>
parents: 654
diff changeset
225 [ --with-ssldir=DIR SSL base directory for certificates (/etc/ssl)],
85a888d2766e Added script to easily generate self-signed certificate.
Timo Sirainen <tss@iki.fi>
parents: 654
diff changeset
226 ssldir="$withval",
85a888d2766e Added script to easily generate self-signed certificate.
Timo Sirainen <tss@iki.fi>
parents: 654
diff changeset
227 ssldir=/etc/ssl
85a888d2766e Added script to easily generate self-signed certificate.
Timo Sirainen <tss@iki.fi>
parents: 654
diff changeset
228 )
712
385f862a4005 --with-ssldir actually didn't do anything, and the default directory for
Timo Sirainen <tss@iki.fi>
parents: 711
diff changeset
229 AC_SUBST(ssldir)
657
85a888d2766e Added script to easily generate self-signed certificate.
Timo Sirainen <tss@iki.fi>
parents: 654
diff changeset
230
3327
ce0733b39311 Added --with-rundir configure option.
Timo Sirainen <tss@iki.fi>
parents: 3284
diff changeset
231 AC_ARG_WITH(rundir,
ce0733b39311 Added --with-rundir configure option.
Timo Sirainen <tss@iki.fi>
parents: 3284
diff changeset
232 [ --with-rundir=DIR Runtime data directory (LOCALSTATEDIR/run/dovecot)],
ce0733b39311 Added --with-rundir configure option.
Timo Sirainen <tss@iki.fi>
parents: 3284
diff changeset
233 rundir="$withval",
ce0733b39311 Added --with-rundir configure option.
Timo Sirainen <tss@iki.fi>
parents: 3284
diff changeset
234 rundir=$localstatedir/run/$PACKAGE_NAME
ce0733b39311 Added --with-rundir configure option.
Timo Sirainen <tss@iki.fi>
parents: 3284
diff changeset
235 )
ce0733b39311 Added --with-rundir configure option.
Timo Sirainen <tss@iki.fi>
parents: 3284
diff changeset
236 AC_SUBST(rundir)
ce0733b39311 Added --with-rundir configure option.
Timo Sirainen <tss@iki.fi>
parents: 3284
diff changeset
237
4407
2e4857a2b858 Added --with-statedir configure option which defaults to
Timo Sirainen <tss@iki.fi>
parents: 4387
diff changeset
238 AC_ARG_WITH(statedir,
2e4857a2b858 Added --with-statedir configure option which defaults to
Timo Sirainen <tss@iki.fi>
parents: 4387
diff changeset
239 [ --with-statedir=DIR Permanent data directory (LOCALSTATEDIR/lib/dovecot)],
2e4857a2b858 Added --with-statedir configure option which defaults to
Timo Sirainen <tss@iki.fi>
parents: 4387
diff changeset
240 statedir="$withval",
2e4857a2b858 Added --with-statedir configure option which defaults to
Timo Sirainen <tss@iki.fi>
parents: 4387
diff changeset
241 statedir=$localstatedir/lib/$PACKAGE_NAME
2e4857a2b858 Added --with-statedir configure option which defaults to
Timo Sirainen <tss@iki.fi>
parents: 4387
diff changeset
242 )
2e4857a2b858 Added --with-statedir configure option which defaults to
Timo Sirainen <tss@iki.fi>
parents: 4387
diff changeset
243 AC_SUBST(statedir)
2e4857a2b858 Added --with-statedir configure option which defaults to
Timo Sirainen <tss@iki.fi>
parents: 4387
diff changeset
244
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
245 AC_ARG_WITH(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
246 [ --with-gc Use Boehm garbage collector (currently broken)],
49b6103dd2e0 Added support for Boehm GC. However it seems to be crashing for some reason
Timo Sirainen <tss@iki.fi>
parents: 1729
diff changeset
247 if test x$withval = xyes; then
49b6103dd2e0 Added support for Boehm GC. However it seems to be crashing for some reason
Timo Sirainen <tss@iki.fi>
parents: 1729
diff changeset
248 want_gc=yes
49b6103dd2e0 Added support for Boehm GC. However it seems to be crashing for some reason
Timo Sirainen <tss@iki.fi>
parents: 1729
diff changeset
249 else
49b6103dd2e0 Added support for Boehm GC. However it seems to be crashing for some reason
Timo Sirainen <tss@iki.fi>
parents: 1729
diff changeset
250 if test "x$withval" = xno; then
49b6103dd2e0 Added support for Boehm GC. However it seems to be crashing for some reason
Timo Sirainen <tss@iki.fi>
parents: 1729
diff changeset
251 want_gc=no
49b6103dd2e0 Added support for Boehm GC. However it seems to be crashing for some reason
Timo Sirainen <tss@iki.fi>
parents: 1729
diff changeset
252 else
49b6103dd2e0 Added support for Boehm GC. However it seems to be crashing for some reason
Timo Sirainen <tss@iki.fi>
parents: 1729
diff changeset
253 want_gc=yes
49b6103dd2e0 Added support for Boehm GC. However it seems to be crashing for some reason
Timo Sirainen <tss@iki.fi>
parents: 1729
diff changeset
254 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
255 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
256 want_gc=no)
49b6103dd2e0 Added support for Boehm GC. However it seems to be crashing for some reason
Timo Sirainen <tss@iki.fi>
parents: 1729
diff changeset
257
1057
c5ab972db48c libldap checks, --without-pop3 disables pop3 server
Timo Sirainen <tss@iki.fi>
parents: 1049
diff changeset
258 AC_ARG_WITH(pop3d,
c5ab972db48c libldap checks, --without-pop3 disables pop3 server
Timo Sirainen <tss@iki.fi>
parents: 1049
diff changeset
259 [ --with-pop3d Build POP3 server (default)],
c5ab972db48c libldap checks, --without-pop3 disables pop3 server
Timo Sirainen <tss@iki.fi>
parents: 1049
diff changeset
260 if test x$withval = xno; then
c5ab972db48c libldap checks, --without-pop3 disables pop3 server
Timo Sirainen <tss@iki.fi>
parents: 1049
diff changeset
261 want_pop3d=no
c5ab972db48c libldap checks, --without-pop3 disables pop3 server
Timo Sirainen <tss@iki.fi>
parents: 1049
diff changeset
262 else
c5ab972db48c libldap checks, --without-pop3 disables pop3 server
Timo Sirainen <tss@iki.fi>
parents: 1049
diff changeset
263 want_pop3d=yes
c5ab972db48c libldap checks, --without-pop3 disables pop3 server
Timo Sirainen <tss@iki.fi>
parents: 1049
diff changeset
264 fi,
c5ab972db48c libldap checks, --without-pop3 disables pop3 server
Timo Sirainen <tss@iki.fi>
parents: 1049
diff changeset
265 want_pop3d=yes)
c5ab972db48c libldap checks, --without-pop3 disables pop3 server
Timo Sirainen <tss@iki.fi>
parents: 1049
diff changeset
266 AM_CONDITIONAL(BUILD_POP3D, test "$want_pop3d" = "yes")
c5ab972db48c libldap checks, --without-pop3 disables pop3 server
Timo Sirainen <tss@iki.fi>
parents: 1049
diff changeset
267
3328
fdac6810fe64 Added --with-deliver option.
Timo Sirainen <tss@iki.fi>
parents: 3327
diff changeset
268 AC_ARG_WITH(deliver,
fdac6810fe64 Added --with-deliver option.
Timo Sirainen <tss@iki.fi>
parents: 3327
diff changeset
269 [ --with-deliver Build mail delivery agent (default)],
fdac6810fe64 Added --with-deliver option.
Timo Sirainen <tss@iki.fi>
parents: 3327
diff changeset
270 if test x$withval = xno; then
fdac6810fe64 Added --with-deliver option.
Timo Sirainen <tss@iki.fi>
parents: 3327
diff changeset
271 want_deliver=no
fdac6810fe64 Added --with-deliver option.
Timo Sirainen <tss@iki.fi>
parents: 3327
diff changeset
272 else
fdac6810fe64 Added --with-deliver option.
Timo Sirainen <tss@iki.fi>
parents: 3327
diff changeset
273 want_deliver=yes
fdac6810fe64 Added --with-deliver option.
Timo Sirainen <tss@iki.fi>
parents: 3327
diff changeset
274 fi,
fdac6810fe64 Added --with-deliver option.
Timo Sirainen <tss@iki.fi>
parents: 3327
diff changeset
275 want_deliver=yes)
fdac6810fe64 Added --with-deliver option.
Timo Sirainen <tss@iki.fi>
parents: 3327
diff changeset
276 AM_CONDITIONAL(BUILD_DELIVER, test "$want_deliver" = "yes")
fdac6810fe64 Added --with-deliver option.
Timo Sirainen <tss@iki.fi>
parents: 3327
diff changeset
277
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
278 AC_ARG_WITH(storages,
3943
cbe5c6772e0d Added support for dynamically building SQL drivers.
Timo Sirainen <tss@iki.fi>
parents: 3934
diff changeset
279 [ --with-storages Build with specified mail storage formats (maildir,mbox)], [
4005
450ee12c2e26 Give error if --with-storages or --without-storages is used without
Timo Sirainen <tss@iki.fi>
parents: 3997
diff changeset
280 if test "$withval" = "yes" -o "$withval" = "no"; then
450ee12c2e26 Give error if --with-storages or --without-storages is used without
Timo Sirainen <tss@iki.fi>
parents: 3997
diff changeset
281 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
282 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
283 mail_storages=`echo "$withval"|sed 's/,/ /g'` ],
3720
fd0986477809 Initial implementation of Dovecot's own high performance file format, named
Timo Sirainen <tss@iki.fi>
parents: 3705
diff changeset
284 mail_storages="maildir mbox dbox")
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
285 AC_SUBST(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
286
3943
cbe5c6772e0d Added support for dynamically building SQL drivers.
Timo Sirainen <tss@iki.fi>
parents: 3934
diff changeset
287 AC_ARG_WITH(sql-drivers,
cbe5c6772e0d Added support for dynamically building SQL drivers.
Timo Sirainen <tss@iki.fi>
parents: 3934
diff changeset
288 [ --with-sql-drivers Build with specified SQL drivers (all)], [
cbe5c6772e0d Added support for dynamically building SQL drivers.
Timo Sirainen <tss@iki.fi>
parents: 3934
diff changeset
289 sql_drivers=`echo "$withval"|sed 's/,/ /g'` ],
3948
795cc9739eb3 Make --without-sql-drivers work properly
Timo Sirainen <tss@iki.fi>
parents: 3944
diff changeset
290 sql_drivers="all")
3943
cbe5c6772e0d Added support for dynamically building SQL drivers.
Timo Sirainen <tss@iki.fi>
parents: 3934
diff changeset
291
4005
450ee12c2e26 Give error if --with-storages or --without-storages is used without
Timo Sirainen <tss@iki.fi>
parents: 3997
diff changeset
292 if test "$sql_drivers" = "all" -o "$sql_drivers" = "yes"; then
3943
cbe5c6772e0d Added support for dynamically building SQL drivers.
Timo Sirainen <tss@iki.fi>
parents: 3934
diff changeset
293 all_sql_drivers=yes
3948
795cc9739eb3 Make --without-sql-drivers work properly
Timo Sirainen <tss@iki.fi>
parents: 3944
diff changeset
294 sql_drivers=
795cc9739eb3 Make --without-sql-drivers work properly
Timo Sirainen <tss@iki.fi>
parents: 3944
diff changeset
295 elif test "$sql_drivers" = "no"; then
3944
e7aff159a0d3 Handle --without-sql-drivers
Timo Sirainen <tss@iki.fi>
parents: 3943
diff changeset
296 # --without-sql-drivers given
3948
795cc9739eb3 Make --without-sql-drivers work properly
Timo Sirainen <tss@iki.fi>
parents: 3944
diff changeset
297 sql_drivers=
3943
cbe5c6772e0d Added support for dynamically building SQL drivers.
Timo Sirainen <tss@iki.fi>
parents: 3934
diff changeset
298 fi
cbe5c6772e0d Added support for dynamically building SQL drivers.
Timo Sirainen <tss@iki.fi>
parents: 3934
diff changeset
299
2070
0c8f884d1648 Added --with-moduledir configure option
Timo Sirainen <tss@iki.fi>
parents: 2036
diff changeset
300 AC_ARG_WITH(moduledir,
0c8f884d1648 Added --with-moduledir configure option
Timo Sirainen <tss@iki.fi>
parents: 2036
diff changeset
301 [ --with-moduledir=DIR Base directory for dynamically loadable modules],
0c8f884d1648 Added --with-moduledir configure option
Timo Sirainen <tss@iki.fi>
parents: 2036
diff changeset
302 moduledir="$withval",
0c8f884d1648 Added --with-moduledir configure option
Timo Sirainen <tss@iki.fi>
parents: 2036
diff changeset
303 moduledir=$libdir/dovecot
0c8f884d1648 Added --with-moduledir configure option
Timo Sirainen <tss@iki.fi>
parents: 2036
diff changeset
304 )
0c8f884d1648 Added --with-moduledir configure option
Timo Sirainen <tss@iki.fi>
parents: 2036
diff changeset
305 AC_SUBST(moduledir)
0c8f884d1648 Added --with-moduledir configure option
Timo Sirainen <tss@iki.fi>
parents: 2036
diff changeset
306
3779
e87a8db60d25 Added --with-docs parameter to specify if documentation should be installed.
Timo Sirainen <tss@iki.fi>
parents: 3762
diff changeset
307 AC_ARG_WITH(docs,
4348
2dc5f48ff4ee Whitespace cleanup for --help. Don't enable GSSAPI support by default.
Timo Sirainen <tss@iki.fi>
parents: 4343
diff changeset
308 [ --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
309 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
310 want_docs=no
e87a8db60d25 Added --with-docs parameter to specify if documentation should be installed.
Timo Sirainen <tss@iki.fi>
parents: 3762
diff changeset
311 else
e87a8db60d25 Added --with-docs parameter to specify if documentation should be installed.
Timo Sirainen <tss@iki.fi>
parents: 3762
diff changeset
312 want_docs=yes
e87a8db60d25 Added --with-docs parameter to specify if documentation should be installed.
Timo Sirainen <tss@iki.fi>
parents: 3762
diff changeset
313 fi,
e87a8db60d25 Added --with-docs parameter to specify if documentation should be installed.
Timo Sirainen <tss@iki.fi>
parents: 3762
diff changeset
314 want_docs=yes)
e87a8db60d25 Added --with-docs parameter to specify if documentation should be installed.
Timo Sirainen <tss@iki.fi>
parents: 3762
diff changeset
315 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
316
691
567f5e66c7b8 We compile now if dev_t is a structure (eg. glibc+tcc).
Timo Sirainen <tss@iki.fi>
parents: 679
diff changeset
317 dnl * gcc specific options
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
318 if test "x$ac_cv_c_compiler_gnu" = "xyes"; then
850
a6f53dbe803f Enable more warnings with gcc
Timo Sirainen <tss@iki.fi>
parents: 843
diff changeset
319 # -Wcast-qual -Wcast-align -Wconversion # too many warnings
a6f53dbe803f Enable more warnings with gcc
Timo Sirainen <tss@iki.fi>
parents: 843
diff changeset
320 # -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
321 # -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
322 # -Wstrict-aliasing=2 # requires new gcc
2f26567685ff Removed -Wstrict-aliasing=2 since it gives errors with older gccs
Timo Sirainen <tss@iki.fi>
parents: 4018
diff changeset
323 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
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
567f5e66c7b8 We compile now if dev_t is a structure (eg. glibc+tcc).
Timo Sirainen <tss@iki.fi>
parents: 679
diff changeset
335
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
336 dnl **
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
337 dnl ** just some generic stuff...
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
338 dnl **
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
339
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
340 AC_CHECK_FUNC(socket, [], [
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
341 AC_CHECK_LIB(socket, socket, [
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
342 LIBS="$LIBS -lsocket"
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
343 ])
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
344 ])
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
345
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
346 AC_CHECK_FUNC(inet_addr, [], [
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
347 AC_CHECK_LIB(nsl, inet_addr, [
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
348 LIBS="$LIBS -lnsl"
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
349 ])
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
350 ])
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
351
494
83d4617e1dca Check fdatasync() from -lrt if it's not in libc (solaris). Also fallback to
Timo Sirainen <tss@iki.fi>
parents: 464
diff changeset
352 AC_CHECK_FUNC(fdatasync, [
742
b3dd87844fff acconfig.h is deprecated with autoconf 2.5, changed configure to contain
Timo Sirainen <tss@iki.fi>
parents: 739
diff changeset
353 have_fdatasync=yes
494
83d4617e1dca Check fdatasync() from -lrt if it's not in libc (solaris). Also fallback to
Timo Sirainen <tss@iki.fi>
parents: 464
diff changeset
354 ], [
83d4617e1dca Check fdatasync() from -lrt if it's not in libc (solaris). Also fallback to
Timo Sirainen <tss@iki.fi>
parents: 464
diff changeset
355 AC_CHECK_LIB(rt, fdatasync, [
742
b3dd87844fff acconfig.h is deprecated with autoconf 2.5, changed configure to contain
Timo Sirainen <tss@iki.fi>
parents: 739
diff changeset
356 have_fdatasync=yes
494
83d4617e1dca Check fdatasync() from -lrt if it's not in libc (solaris). Also fallback to
Timo Sirainen <tss@iki.fi>
parents: 464
diff changeset
357 LIBS="$LIBS -lrt"
83d4617e1dca Check fdatasync() from -lrt if it's not in libc (solaris). Also fallback to
Timo Sirainen <tss@iki.fi>
parents: 464
diff changeset
358 ])
83d4617e1dca Check fdatasync() from -lrt if it's not in libc (solaris). Also fallback to
Timo Sirainen <tss@iki.fi>
parents: 464
diff changeset
359 ])
83d4617e1dca Check fdatasync() from -lrt if it's not in libc (solaris). Also fallback to
Timo Sirainen <tss@iki.fi>
parents: 464
diff changeset
360
742
b3dd87844fff acconfig.h is deprecated with autoconf 2.5, changed configure to contain
Timo Sirainen <tss@iki.fi>
parents: 739
diff changeset
361 if test "$have_fdatasync" = "yes"; then
b3dd87844fff acconfig.h is deprecated with autoconf 2.5, changed configure to contain
Timo Sirainen <tss@iki.fi>
parents: 739
diff changeset
362 AC_DEFINE(HAVE_FDATASYNC,, Define if you have fdatasync())
b3dd87844fff acconfig.h is deprecated with autoconf 2.5, changed configure to contain
Timo Sirainen <tss@iki.fi>
parents: 739
diff changeset
363 fi
b3dd87844fff acconfig.h is deprecated with autoconf 2.5, changed configure to contain
Timo Sirainen <tss@iki.fi>
parents: 739
diff changeset
364
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
365 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
366 AC_CHECK_FUNCS(fcntl flock lockf inet_aton sigaction getpagesize madvise \
1849
83c635deda0b pread/pwrite fixes
Timo Sirainen <tss@iki.fi>
parents: 1786
diff changeset
367 strcasecmp stricmp vsnprintf vsyslog writev pread \
3237
2f57438d9542 Added setegid() emulation for HP-UX.
Timo Sirainen <tss@iki.fi>
parents: 3236
diff changeset
368 setrlimit setproctitle seteuid setreuid setegid setresgid \
4101
321469dcb8fb If /dev/urandom didn't exist and we used OpenSSL's random number generator,
Timo Sirainen <tss@iki.fi>
parents: 4082
diff changeset
369 strtoull strtouq setpriority quotactl getmntent kqueue kevent \
321469dcb8fb If /dev/urandom didn't exist and we used OpenSSL's random number generator,
Timo Sirainen <tss@iki.fi>
parents: 4082
diff changeset
370 getrusage)
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
371
2569
554f1324a435 Added epoll support if --with-ioloop=epoll is given. Patch by Andrey Panin.
Timo Sirainen <tss@iki.fi>
parents: 2538
diff changeset
372 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
373 have_ioloop=no
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
374
4386
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
375 if test "$ioloop" = "" || test "$ioloop" = "epoll"; then
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
376 AC_TRY_RUN([
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
377 #include <sys/epoll.h>
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
378
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
379 int main()
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
380 {
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
381 return epoll_create(5) < 1;
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
382 }
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
383 ], [
2569
554f1324a435 Added epoll support if --with-ioloop=epoll is given. Patch by Andrey Panin.
Timo Sirainen <tss@iki.fi>
parents: 2538
diff changeset
384 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
385 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
386 ioloop=epoll
2569
554f1324a435 Added epoll support if --with-ioloop=epoll is given. Patch by Andrey Panin.
Timo Sirainen <tss@iki.fi>
parents: 2538
diff changeset
387 ], [
4386
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
388 if test "$ioloop" != "" ; then
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
389 AC_MSG_WARN([epoll ioloop requested but epoll_create() is not available])
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
390 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
391 ])
554f1324a435 Added epoll support if --with-ioloop=epoll is given. Patch by Andrey Panin.
Timo Sirainen <tss@iki.fi>
parents: 2538
diff changeset
392 fi
554f1324a435 Added epoll support if --with-ioloop=epoll is given. Patch by Andrey Panin.
Timo Sirainen <tss@iki.fi>
parents: 2538
diff changeset
393
4386
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
394 if test "$ioloop" = "" || test "$ioloop" = "kqueue"; then
4433
Timo Sirainen <tss@iki.fi>
parents: 4426
diff changeset
395 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
396 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
397 ioloop=kqueue
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
398 have_ioloop=yes
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
399 elif test "$ioloop" = "kqueue"; then
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
400 AC_MSG_WARN([kqueue ioloop requested but kqueue() is not available])
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
401 fi
3749
194295062e5e Added kqueue support. Patch by Vaclav Haisman.
Timo Sirainen <tss@iki.fi>
parents: 3745
diff changeset
402 fi
194295062e5e Added kqueue support. Patch by Vaclav Haisman.
Timo Sirainen <tss@iki.fi>
parents: 3745
diff changeset
403
2569
554f1324a435 Added epoll support if --with-ioloop=epoll is given. Patch by Andrey Panin.
Timo Sirainen <tss@iki.fi>
parents: 2538
diff changeset
404 if test "$ioloop" = "" || test "$ioloop" = "poll"; then
554f1324a435 Added epoll support if --with-ioloop=epoll is given. Patch by Andrey Panin.
Timo Sirainen <tss@iki.fi>
parents: 2538
diff changeset
405 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
406 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
407 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
408 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
409 ])
554f1324a435 Added epoll support if --with-ioloop=epoll is given. Patch by Andrey Panin.
Timo Sirainen <tss@iki.fi>
parents: 2538
diff changeset
410 fi
554f1324a435 Added epoll support if --with-ioloop=epoll is given. Patch by Andrey Panin.
Timo Sirainen <tss@iki.fi>
parents: 2538
diff changeset
411
554f1324a435 Added epoll support if --with-ioloop=epoll is given. Patch by Andrey Panin.
Timo Sirainen <tss@iki.fi>
parents: 2538
diff changeset
412 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
413 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
414 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
415 fi
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
416
3745
840cc63e439b Don't allow giving invalid notify methods in --with-notify
Timo Sirainen <tss@iki.fi>
parents: 3744
diff changeset
417 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
418
4386
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
419 if test "$notify" = "" || test "$notify" = "inotify" ; then
4423
26d18749f718 Fixes to io notify detection. Patch by Marcus Rueckert
Timo Sirainen <tss@iki.fi>
parents: 4422
diff changeset
420 AC_MSG_CHECKING([if we can use inotify])
4386
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
421 dnl * inotify?
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
422 AC_TRY_RUN([
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
423 #define _GNU_SOURCE
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
424 #include <sys/ioctl.h>
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
425 #include <fcntl.h>
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
426 #include <sys/inotify.h>
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
427 #include <stdio.h>
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
428
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
429 int main()
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
430 {
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
431 int wd, fd;
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
432 char * fn = "/tmp";
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
433
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
434 fd = inotify_init ();
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
435 if (fd < 0)
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
436 {
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
437 perror ("inotify_init");
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
438 return (-1);
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
439 }
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
440
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
441 wd = inotify_add_watch (fd, fn, IN_ALL_EVENTS);
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
442
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
443 if (wd < 0)
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
444 {
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
445 perror ("inotify_add_watch");
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
446 return (-2);
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
447 }
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
448
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
449 inotify_rm_watch (fd, wd);
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
450
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
451 close (fd);
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
452 }
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
453 ], [
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
454 have_notify=inotify
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
455 notify=inotify
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
456 AC_DEFINE(IOLOOP_NOTIFY_INOTIFY,, Use Linux inotify)
4423
26d18749f718 Fixes to io notify detection. Patch by Marcus Rueckert
Timo Sirainen <tss@iki.fi>
parents: 4422
diff changeset
457 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
458 ], [
4423
26d18749f718 Fixes to io notify detection. Patch by Marcus Rueckert
Timo Sirainen <tss@iki.fi>
parents: 4422
diff changeset
459 AC_MSG_RESULT("no")
4386
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
460 if 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
461 AC_MSG_WARN([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
462 notify=""
4386
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
463 fi
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
464 ])
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
465 fi
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
466
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
467 if test "$notify" = "" || test "$notify" = "kqueue"; then
4423
26d18749f718 Fixes to io notify detection. Patch by Marcus Rueckert
Timo Sirainen <tss@iki.fi>
parents: 4422
diff changeset
468 AC_MSG_CHECKING([if we can use BSD kqueue() notify])
4386
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
469 dnl * BSD kqueue() notify
4442
9eee24bf2960 Fix kqueue notify checking.
Timo Sirainen <tss@iki.fi>
parents: 4433
diff changeset
470 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
471 have_notify=kqueue
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
472 notify=kqueue
4423
26d18749f718 Fixes to io notify detection. Patch by Marcus Rueckert
Timo Sirainen <tss@iki.fi>
parents: 4422
diff changeset
473 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
474 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
475 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
476 else
4423
26d18749f718 Fixes to io notify detection. Patch by Marcus Rueckert
Timo Sirainen <tss@iki.fi>
parents: 4422
diff changeset
477 AC_MSG_RESULT("no")
4386
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
478 if test "$notfify" = "kqueue" ; then
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
479 AC_MSG_WARN([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
480 notify=""
4386
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
481 fi
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
482 fi
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
483 fi
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
484
3482
465c465c66be Added inotify patch by Johannes Berg and did some restructuring to
Timo Sirainen <tss@iki.fi>
parents: 3452
diff changeset
485 if test "$notify" = "" || test "$notify" = "dnotify"; then
4423
26d18749f718 Fixes to io notify detection. Patch by Marcus Rueckert
Timo Sirainen <tss@iki.fi>
parents: 4422
diff changeset
486 AC_MSG_CHECKING([if we can use dnotify])
3482
465c465c66be Added inotify patch by Johannes Berg and did some restructuring to
Timo Sirainen <tss@iki.fi>
parents: 3452
diff changeset
487 dnl * dnotify?
465c465c66be Added inotify patch by Johannes Berg and did some restructuring to
Timo Sirainen <tss@iki.fi>
parents: 3452
diff changeset
488 AC_TRY_COMPILE([
465c465c66be Added inotify patch by Johannes Berg and did some restructuring to
Timo Sirainen <tss@iki.fi>
parents: 3452
diff changeset
489 #define _GNU_SOURCE
465c465c66be Added inotify patch by Johannes Berg and did some restructuring to
Timo Sirainen <tss@iki.fi>
parents: 3452
diff changeset
490 #include <fcntl.h>
465c465c66be Added inotify patch by Johannes Berg and did some restructuring to
Timo Sirainen <tss@iki.fi>
parents: 3452
diff changeset
491 #include <signal.h>
465c465c66be Added inotify patch by Johannes Berg and did some restructuring to
Timo Sirainen <tss@iki.fi>
parents: 3452
diff changeset
492 #include <unistd.h>
465c465c66be Added inotify patch by Johannes Berg and did some restructuring to
Timo Sirainen <tss@iki.fi>
parents: 3452
diff changeset
493 ], [
465c465c66be Added inotify patch by Johannes Berg and did some restructuring to
Timo Sirainen <tss@iki.fi>
parents: 3452
diff changeset
494 fcntl(0, F_SETSIG, SIGRTMIN);
465c465c66be Added inotify patch by Johannes Berg and did some restructuring to
Timo Sirainen <tss@iki.fi>
parents: 3452
diff changeset
495 fcntl(0, F_NOTIFY, DN_CREATE | DN_DELETE | DN_RENAME | DN_MULTISHOT);
465c465c66be Added inotify patch by Johannes Berg and did some restructuring to
Timo Sirainen <tss@iki.fi>
parents: 3452
diff changeset
496 ], [
4423
26d18749f718 Fixes to io notify detection. Patch by Marcus Rueckert
Timo Sirainen <tss@iki.fi>
parents: 4422
diff changeset
497 AC_MSG_RESULT("yes")
3482
465c465c66be Added inotify patch by Johannes Berg and did some restructuring to
Timo Sirainen <tss@iki.fi>
parents: 3452
diff changeset
498 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
499 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
500 notify=dnotify
3482
465c465c66be Added inotify patch by Johannes Berg and did some restructuring to
Timo Sirainen <tss@iki.fi>
parents: 3452
diff changeset
501 ], [
4423
26d18749f718 Fixes to io notify detection. Patch by Marcus Rueckert
Timo Sirainen <tss@iki.fi>
parents: 4422
diff changeset
502 AC_MSG_RESULT("no")
3482
465c465c66be Added inotify patch by Johannes Berg and did some restructuring to
Timo Sirainen <tss@iki.fi>
parents: 3452
diff changeset
503 if test "$notify" = "dnotify"; then
4386
e23469650c85 Better detection for ioloop and notify methods. Patch by Roy Marples
Timo Sirainen <tss@iki.fi>
parents: 4349
diff changeset
504 AC_MSG_WARN([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
505 fi
465c465c66be Added inotify patch by Johannes Berg and did some restructuring to
Timo Sirainen <tss@iki.fi>
parents: 3452
diff changeset
506 ])
3745
840cc63e439b Don't allow giving invalid notify methods in --with-notify
Timo Sirainen <tss@iki.fi>
parents: 3744
diff changeset
507 fi
840cc63e439b Don't allow giving invalid notify methods in --with-notify
Timo Sirainen <tss@iki.fi>
parents: 3744
diff changeset
508
840cc63e439b Don't allow giving invalid notify methods in --with-notify
Timo Sirainen <tss@iki.fi>
parents: 3744
diff changeset
509 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
510 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
511 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
512
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
513 dnl * GLIBC?
a2b009c65e02 Define PREAD_WRAPPERS if we're using GLIBC, not if we're using Linux.
Timo Sirainen <tss@iki.fi>
parents: 1978
diff changeset
514 AC_TRY_COMPILE([
a2b009c65e02 Define PREAD_WRAPPERS if we're using GLIBC, not if we're using Linux.
Timo Sirainen <tss@iki.fi>
parents: 1978
diff changeset
515 #include <stdlib.h>
a2b009c65e02 Define PREAD_WRAPPERS if we're using GLIBC, not if we're using Linux.
Timo Sirainen <tss@iki.fi>
parents: 1978
diff changeset
516 #ifdef __GLIBC__
a2b009c65e02 Define PREAD_WRAPPERS if we're using GLIBC, not if we're using Linux.
Timo Sirainen <tss@iki.fi>
parents: 1978
diff changeset
517 we have glibc
a2b009c65e02 Define PREAD_WRAPPERS if we're using GLIBC, not if we're using Linux.
Timo Sirainen <tss@iki.fi>
parents: 1978
diff changeset
518 #endif
a2b009c65e02 Define PREAD_WRAPPERS if we're using GLIBC, not if we're using Linux.
Timo Sirainen <tss@iki.fi>
parents: 1978
diff changeset
519 ],,, [
a2b009c65e02 Define PREAD_WRAPPERS if we're using GLIBC, not if we're using Linux.
Timo Sirainen <tss@iki.fi>
parents: 1978
diff changeset
520 AC_DEFINE(PREAD_WRAPPERS,, Define if pread/pwrite needs _XOPEN_SOURCE 500)
a2b009c65e02 Define PREAD_WRAPPERS if we're using GLIBC, not if we're using Linux.
Timo Sirainen <tss@iki.fi>
parents: 1978
diff changeset
521 ])
a2b009c65e02 Define PREAD_WRAPPERS if we're using GLIBC, not if we're using Linux.
Timo Sirainen <tss@iki.fi>
parents: 1978
diff changeset
522
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
523 dnl * OS specific options
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
524 case "$host_os" in
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
525 hpux*)
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
526 CFLAGS="$CFLAGS -D_XOPEN_SOURCE_EXTENDED"
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
527 ;;
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
528 *)
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
529 ;;
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
530 esac
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
531
55
db8ea2c11ab7 whops, 64bit support was disabled.
Timo Sirainen <tss@iki.fi>
parents: 50
diff changeset
532 AC_CHECK_SIZEOF(int)
db8ea2c11ab7 whops, 64bit support was disabled.
Timo Sirainen <tss@iki.fi>
parents: 50
diff changeset
533 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
534 AC_CHECK_SIZEOF(void *)
55
db8ea2c11ab7 whops, 64bit support was disabled.
Timo Sirainen <tss@iki.fi>
parents: 50
diff changeset
535 AC_CHECK_SIZEOF(long long)
185
60925d3e2c4d fixed ssize_t and off_t checks.
Timo Sirainen <tss@iki.fi>
parents: 183
diff changeset
536
2036
b3a56463c812 AC_DEFUN warning fixes for aclocal 1.8..
Timo Sirainen <tss@iki.fi>
parents: 2035
diff changeset
537 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
538 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
539
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
540 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
541 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
542 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
543 fi
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
544
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
545 result=""
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
546 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
547 AC_MSG_CHECKING([type of $1])
677
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
548
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
549 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
550 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
551 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
552 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
553
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
554 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
555 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
556 int)
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
557 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
558 ;;
1630
e9e533b323fb size_t checking fixes
Timo Sirainen <tss@iki.fi>
parents: 1626
diff changeset
559 unsigned-int)
e9e533b323fb size_t checking fixes
Timo Sirainen <tss@iki.fi>
parents: 1626
diff changeset
560 fmt="%u"
e9e533b323fb size_t checking fixes
Timo Sirainen <tss@iki.fi>
parents: 1626
diff changeset
561 ;;
733
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
562 long)
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
563 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
564 ;;
1630
e9e533b323fb size_t checking fixes
Timo Sirainen <tss@iki.fi>
parents: 1626
diff changeset
565 unsigned-long)
e9e533b323fb size_t checking fixes
Timo Sirainen <tss@iki.fi>
parents: 1626
diff changeset
566 fmt="%lu"
e9e533b323fb size_t checking fixes
Timo Sirainen <tss@iki.fi>
parents: 1626
diff changeset
567 ;;
733
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
568 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
569 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
570 ;;
1630
e9e533b323fb size_t checking fixes
Timo Sirainen <tss@iki.fi>
parents: 1626
diff changeset
571 unsigned-long-long)
e9e533b323fb size_t checking fixes
Timo Sirainen <tss@iki.fi>
parents: 1626
diff changeset
572 fmt="%llu"
e9e533b323fb size_t checking fixes
Timo Sirainen <tss@iki.fi>
parents: 1626
diff changeset
573 ;;
733
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
574 *)
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
575 fmt=""
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
576 ;;
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
577 esac
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
578
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
579 if test "$fmt" != ""; then
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
580 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
581 #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
582 #include <stdio.h>
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
583 ]], [[
733
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
584 printf("$fmt", ($1)0);
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
585 ]])],[
733
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
586 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
587 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
588 result=""
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
589 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
590 break
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
591 fi
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
592 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
593 visible="$result"
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
594 ],[])
677
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
595 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
596 done
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
597 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
598 fi
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
599
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
600 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
601 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
602 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
603 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
604 #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
605 typedef $type $1;
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
606 ]], [[]])],[
733
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
607 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
608 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
609 result=""
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
610 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
611 break
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
612 fi
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
613 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
614 visible="$type"
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
615 ],[])
733
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
616 done
280c0952fa90 AC_TYPEOF macro: with gcc we can check the type with printf() + -Werror
Timo Sirainen <tss@iki.fi>
parents: 732
diff changeset
617 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
618
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
619 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
620 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
621
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
622 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
623 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
624 #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
625 #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
626 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
627 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
628 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
629 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
630 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
631 }
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
632 ]])],[
677
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
633 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
634 rm -f conftestval
55
db8ea2c11ab7 whops, 64bit support was disabled.
Timo Sirainen <tss@iki.fi>
parents: 50
diff changeset
635
677
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
636 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
637 actype="ac_cv_sizeof_`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
638 if test "$size" = "`eval \"echo \\$$actype\"`"; then
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
639 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
640 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
641 break
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
642 fi
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
643 done
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
644 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
645 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
646 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
647 fi
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
648 ],[],[])
677
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
649 fi
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
650
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
651 typeof_$1=$result
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
652 AC_MSG_RESULT($visible)
185
60925d3e2c4d fixed ssize_t and off_t checks.
Timo Sirainen <tss@iki.fi>
parents: 183
diff changeset
653 ])
677
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
654
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
655 dnl * off_t checks, try to make it 64bit
742
b3dd87844fff acconfig.h is deprecated with autoconf 2.5, changed configure to contain
Timo Sirainen <tss@iki.fi>
parents: 739
diff changeset
656 AC_DEFINE_UNQUOTED(_FILE_OFFSET_BITS, $preferred_off_t_bits,
b3dd87844fff acconfig.h is deprecated with autoconf 2.5, changed configure to contain
Timo Sirainen <tss@iki.fi>
parents: 739
diff changeset
657 [If set to 64, enables 64bit off_t for some systems (eg. Linux, Solaris)])
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
658
3929
49a1a979959e If uoff_t type already exists, use it (UnixWare has it).
Timo Sirainen <tss@iki.fi>
parents: 3919
diff changeset
659 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
660
49a1a979959e If uoff_t type already exists, use it (UnixWare has it).
Timo Sirainen <tss@iki.fi>
parents: 3919
diff changeset
661 AC_CHECK_TYPE(uoff_t, [
3931
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
662 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
663 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
664 ], [
3931
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
665 have_uoff_t=no
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
666 ])
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
667
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
668 AC_TYPEOF(off_t, long int long-long)
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
669 case "$typeof_off_t" in
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
670 int)
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
671 offt_max=INT_MAX
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
672 uofft_fmt="u"
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
673 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
674 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
675 fi
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
676 offt_bits=`expr 8 \* $ac_cv_sizeof_int`
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
677 ;;
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
678 long)
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
679 offt_max=LONG_MAX
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
680 uofft_fmt="lu"
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
681 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
682 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
683 fi
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
684 offt_bits=`expr 8 \* $ac_cv_sizeof_long`
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
685 ;;
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
686 "long long")
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
687 offt_max=LLONG_MAX
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
688 uofft_fmt="llu"
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
689 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
690 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
691 fi
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
692 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
693 ;;
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
694 *)
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
695 AC_MSG_ERROR([Unsupported off_t type])
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
696 ;;
d37797a229c3 And fix for uoff_t checks..
Timo Sirainen <tss@iki.fi>
parents: 3929
diff changeset
697 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
698
2078
b3daf55df932 Added maildir_stat_dirs option.
Timo Sirainen <tss@iki.fi>
parents: 2070
diff changeset
699 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
700 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
2078
b3daf55df932 Added maildir_stat_dirs option.
Timo Sirainen <tss@iki.fi>
parents: 2070
diff changeset
701 #include <dirent.h>
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
702 ]], [[
2078
b3daf55df932 Added maildir_stat_dirs option.
Timo Sirainen <tss@iki.fi>
parents: 2070
diff changeset
703 struct dirent d;
b3daf55df932 Added maildir_stat_dirs option.
Timo Sirainen <tss@iki.fi>
parents: 2070
diff changeset
704 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
705 ]])],[
2078
b3daf55df932 Added maildir_stat_dirs option.
Timo Sirainen <tss@iki.fi>
parents: 2070
diff changeset
706 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
707 ],[])
2078
b3daf55df932 Added maildir_stat_dirs option.
Timo Sirainen <tss@iki.fi>
parents: 2070
diff changeset
708
1382
c4d519a6395d Don't define OFF_T_MAX if it's already defined
Timo Sirainen <tss@iki.fi>
parents: 1341
diff changeset
709 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
710 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
711 #include <limits.h>
c4d519a6395d Don't define OFF_T_MAX if it's already defined
Timo Sirainen <tss@iki.fi>
parents: 1341
diff changeset
712 #include <sys/types.h>
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
713 ]], [[
1382
c4d519a6395d Don't define OFF_T_MAX if it's already defined
Timo Sirainen <tss@iki.fi>
parents: 1341
diff changeset
714 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
715 ]])],[
1403
Timo Sirainen <tss@iki.fi>
parents: 1394
diff changeset
716 :
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
717 ],[
1382
c4d519a6395d Don't define OFF_T_MAX if it's already defined
Timo Sirainen <tss@iki.fi>
parents: 1341
diff changeset
718 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
719 ])
c4d519a6395d Don't define OFF_T_MAX if it's already defined
Timo Sirainen <tss@iki.fi>
parents: 1341
diff changeset
720
742
b3dd87844fff acconfig.h is deprecated with autoconf 2.5, changed configure to contain
Timo Sirainen <tss@iki.fi>
parents: 739
diff changeset
721 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
722
750
b97c8964d7c1 Give a hard warning if size_t is signed.
Timo Sirainen <tss@iki.fi>
parents: 745
diff changeset
723 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
724 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
725 dnl * that it's unsigned and only some old systems define it as signed.
b97c8964d7c1 Give a hard warning if size_t is signed.
Timo Sirainen <tss@iki.fi>
parents: 745
diff changeset
726 AC_MSG_CHECKING([whether size_t is signed])
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
727 AC_RUN_IFELSE([AC_LANG_SOURCE([[
750
b97c8964d7c1 Give a hard warning if size_t is signed.
Timo Sirainen <tss@iki.fi>
parents: 745
diff changeset
728 #include <sys/types.h>
b97c8964d7c1 Give a hard warning if size_t is signed.
Timo Sirainen <tss@iki.fi>
parents: 745
diff changeset
729 int main() {
b97c8964d7c1 Give a hard warning if size_t is signed.
Timo Sirainen <tss@iki.fi>
parents: 745
diff changeset
730 /* return 0 if we're signed */
b97c8964d7c1 Give a hard warning if size_t is signed.
Timo Sirainen <tss@iki.fi>
parents: 745
diff changeset
731 exit((size_t)(int)-1 <= 0 ? 0 : 1);
b97c8964d7c1 Give a hard warning if size_t is signed.
Timo Sirainen <tss@iki.fi>
parents: 745
diff changeset
732 }
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
733 ]])],[
750
b97c8964d7c1 Give a hard warning if size_t is signed.
Timo Sirainen <tss@iki.fi>
parents: 745
diff changeset
734 AC_MSG_RESULT(yes)
b97c8964d7c1 Give a hard warning if size_t is signed.
Timo Sirainen <tss@iki.fi>
parents: 745
diff changeset
735
b97c8964d7c1 Give a hard warning if size_t is signed.
Timo Sirainen <tss@iki.fi>
parents: 745
diff changeset
736 echo
b97c8964d7c1 Give a hard warning if size_t is signed.
Timo Sirainen <tss@iki.fi>
parents: 745
diff changeset
737 echo "Your system's size_t is a signed integer, Dovecot isn't designed to"
b97c8964d7c1 Give a hard warning if size_t is signed.
Timo Sirainen <tss@iki.fi>
parents: 745
diff changeset
738 echo "support it. It probably works just fine, but it's less resistant to"
b97c8964d7c1 Give a hard warning if size_t is signed.
Timo Sirainen <tss@iki.fi>
parents: 745
diff changeset
739 echo "buffer overflows. If you're not worried about this and still want to"
b97c8964d7c1 Give a hard warning if size_t is signed.
Timo Sirainen <tss@iki.fi>
parents: 745
diff changeset
740 echo "compile Dovecot, set ignore_signed_size=1 environment."
b97c8964d7c1 Give a hard warning if size_t is signed.
Timo Sirainen <tss@iki.fi>
parents: 745
diff changeset
741
b97c8964d7c1 Give a hard warning if size_t is signed.
Timo Sirainen <tss@iki.fi>
parents: 745
diff changeset
742 if test "$ignore_signed_size" = ""; then
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
743 AC_MSG_ERROR([aborting])
750
b97c8964d7c1 Give a hard warning if size_t is signed.
Timo Sirainen <tss@iki.fi>
parents: 745
diff changeset
744 fi
b97c8964d7c1 Give a hard warning if size_t is signed.
Timo Sirainen <tss@iki.fi>
parents: 745
diff changeset
745 echo "..ignoring as requested.."
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
746 ],[
750
b97c8964d7c1 Give a hard warning if size_t is signed.
Timo Sirainen <tss@iki.fi>
parents: 745
diff changeset
747 AC_MSG_RESULT(no)
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
748 ],[])
750
b97c8964d7c1 Give a hard warning if size_t is signed.
Timo Sirainen <tss@iki.fi>
parents: 745
diff changeset
749
1626
08b73ec005f8 Get the size_t type properly in OSX
Timo Sirainen <tss@iki.fi>
parents: 1625
diff changeset
750 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
751 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
752 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
753 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
754 case "$typeof_size_t" in
08b73ec005f8 Get the size_t type properly in OSX
Timo Sirainen <tss@iki.fi>
parents: 1625
diff changeset
755 "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
756 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
757 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
758 ;;
1626
08b73ec005f8 Get the size_t type properly in OSX
Timo Sirainen <tss@iki.fi>
parents: 1625
diff changeset
759 "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
760 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
761 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
762 ;;
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 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
765 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
766 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
767
1626
08b73ec005f8 Get the size_t type properly in OSX
Timo Sirainen <tss@iki.fi>
parents: 1625
diff changeset
768 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
769 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
770 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
771 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
772 ;;
3089685bbb7e Created AC_TYPEOF() which tells what base type (int/long/long long) the
Timo Sirainen <tss@iki.fi>
parents: 676
diff changeset
773 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
774
742
b3dd87844fff acconfig.h is deprecated with autoconf 2.5, changed configure to contain
Timo Sirainen <tss@iki.fi>
parents: 739
diff changeset
775 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
776 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
777
2036
b3a56463c812 AC_DEFUN warning fixes for aclocal 1.8..
Timo Sirainen <tss@iki.fi>
parents: 2035
diff changeset
778 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
779 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
780 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
781 [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
782 #include <sys/types.h>
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
783 $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
784 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
785 ])
1e5c655bad25 Renamed largest_t to uintmax_t which already exists in C99.
Timo Sirainen <tss@iki.fi>
parents: 677
diff changeset
786
1660
4076387f7ccb We should be checking C99 types using stdint.h, not inttypes.h
Timo Sirainen <tss@iki.fi>
parents: 1658
diff changeset
787 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
788 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
789 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
790 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
791 ])
4076387f7ccb We should be checking C99 types using stdint.h, not inttypes.h
Timo Sirainen <tss@iki.fi>
parents: 1658
diff changeset
792
4076387f7ccb We should be checking C99 types using stdint.h, not inttypes.h
Timo Sirainen <tss@iki.fi>
parents: 1658
diff changeset
793 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
794 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
795 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
796 fi
0ffecd4e7e1a added dec2str() function and largest_t type, removed itoa() and ltoa()
Timo Sirainen <tss@iki.fi>
parents: 175
diff changeset
797
908
bc55266563cd Use separate check for uint_fast32_t.
Timo Sirainen <tss@iki.fi>
parents: 907
diff changeset
798 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
799 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
800 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
801 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
802 fi
bc55266563cd Use separate check for uint_fast32_t.
Timo Sirainen <tss@iki.fi>
parents: 907
diff changeset
803
678
1e5c655bad25 Renamed largest_t to uintmax_t which already exists in C99.
Timo Sirainen <tss@iki.fi>
parents: 677
diff changeset
804 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
805 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
806 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
807 fi
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
808
1394
059f13d577bb Use separate index alignment from memory alignment. We don't use pointers in
Timo Sirainen <tss@iki.fi>
parents: 1389
diff changeset
809 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
810
1335
5ad84c54eb7e Support using OpenSSL's pseudo-random generator instead of /dev/urandom. If
Timo Sirainen <tss@iki.fi>
parents: 1300
diff changeset
811 dnl * find random source
5ad84c54eb7e Support using OpenSSL's pseudo-random generator instead of /dev/urandom. If
Timo Sirainen <tss@iki.fi>
parents: 1300
diff changeset
812 AC_MSG_CHECKING([for /dev/urandom])
1611
fcc5d6bb6244 test -o and -a are apparently non-POSIX. not using.
Timo Sirainen <tss@iki.fi>
parents: 1609
diff changeset
813 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
814 AC_MSG_RESULT(yes)
5ad84c54eb7e Support using OpenSSL's pseudo-random generator instead of /dev/urandom. If
Timo Sirainen <tss@iki.fi>
parents: 1300
diff changeset
815 AC_DEFINE(HAVE_DEV_URANDOM,, Define if you have /dev/urandom)
5ad84c54eb7e Support using OpenSSL's pseudo-random generator instead of /dev/urandom. If
Timo Sirainen <tss@iki.fi>
parents: 1300
diff changeset
816 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
817 else
5ad84c54eb7e Support using OpenSSL's pseudo-random generator instead of /dev/urandom. If
Timo Sirainen <tss@iki.fi>
parents: 1300
diff changeset
818 AC_MSG_RESULT(no)
5ad84c54eb7e Support using OpenSSL's pseudo-random generator instead of /dev/urandom. If
Timo Sirainen <tss@iki.fi>
parents: 1300
diff changeset
819
5ad84c54eb7e Support using OpenSSL's pseudo-random generator instead of /dev/urandom. If
Timo Sirainen <tss@iki.fi>
parents: 1300
diff changeset
820 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
821 AC_DEFINE(HAVE_OPENSSL_RAND_H,, Define if you have 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
822 RAND_LIBS=-lcrypto
5ad84c54eb7e Support using OpenSSL's pseudo-random generator instead of /dev/urandom. If
Timo Sirainen <tss@iki.fi>
parents: 1300
diff changeset
823 ])
5ad84c54eb7e Support using OpenSSL's pseudo-random generator instead of /dev/urandom. If
Timo Sirainen <tss@iki.fi>
parents: 1300
diff changeset
824 fi
5ad84c54eb7e Support using OpenSSL's pseudo-random generator instead of /dev/urandom. If
Timo Sirainen <tss@iki.fi>
parents: 1300
diff changeset
825 AC_SUBST(RAND_LIBS)
5ad84c54eb7e Support using OpenSSL's pseudo-random generator instead of /dev/urandom. If
Timo Sirainen <tss@iki.fi>
parents: 1300
diff changeset
826
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
827 dnl * do we have tm_gmtoff
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
828 AC_MSG_CHECKING([for tm_gmtoff])
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
829 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
830 [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
831 #include <time.h>]],
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
832 [[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
833 [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
834 [i_cv_field_tm_gmtoff=no])])
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
835 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
836 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
837 fi
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
838 AC_MSG_RESULT($i_cv_field_tm_gmtoff)
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
839
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
840 dnl * how large time_t values does gmtime() accept?
20519e4bca48 utc_mktime() crashed with 64bit time_t if gmtime() didn't like >32bit values
Timo Sirainen <tss@iki.fi>
parents: 1656
diff changeset
841 AC_MSG_CHECKING([how large time_t values gmtime() accepts])
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
842 AC_RUN_IFELSE([AC_LANG_SOURCE([[
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
843 #include <stdio.h>
20519e4bca48 utc_mktime() crashed with 64bit time_t if gmtime() didn't like >32bit values
Timo Sirainen <tss@iki.fi>
parents: 1656
diff changeset
844 #include <time.h>
20519e4bca48 utc_mktime() crashed with 64bit time_t if gmtime() didn't like >32bit values
Timo Sirainen <tss@iki.fi>
parents: 1656
diff changeset
845 int main() {
20519e4bca48 utc_mktime() crashed with 64bit time_t if gmtime() didn't like >32bit values
Timo Sirainen <tss@iki.fi>
parents: 1656
diff changeset
846 FILE *f;
20519e4bca48 utc_mktime() crashed with 64bit time_t if gmtime() didn't like >32bit values
Timo Sirainen <tss@iki.fi>
parents: 1656
diff changeset
847 int bits;
20519e4bca48 utc_mktime() crashed with 64bit time_t if gmtime() didn't like >32bit values
Timo Sirainen <tss@iki.fi>
parents: 1656
diff changeset
848 time_t t;
20519e4bca48 utc_mktime() crashed with 64bit time_t if gmtime() didn't like >32bit values
Timo Sirainen <tss@iki.fi>
parents: 1656
diff changeset
849
20519e4bca48 utc_mktime() crashed with 64bit time_t if gmtime() didn't like >32bit values
Timo Sirainen <tss@iki.fi>
parents: 1656
diff changeset
850 for (bits = 1, t = 1; t > 0; ++bits, t <<= 1) {
20519e4bca48 utc_mktime() crashed with 64bit time_t if gmtime() didn't like >32bit values
Timo Sirainen <tss@iki.fi>
parents: 1656
diff changeset
851 if (gmtime(&t) == NULL) {
20519e4bca48 utc_mktime() crashed with 64bit time_t if gmtime() didn't like >32bit values
Timo Sirainen <tss@iki.fi>
parents: 1656
diff changeset
852 bits--;
20519e4bca48 utc_mktime() crashed with 64bit time_t if gmtime() didn't like >32bit values
Timo Sirainen <tss@iki.fi>
parents: 1656
diff changeset
853 break;
20519e4bca48 utc_mktime() crashed with 64bit time_t if gmtime() didn't like >32bit values
Timo Sirainen <tss@iki.fi>
parents: 1656
diff changeset
854 }
20519e4bca48 utc_mktime() crashed with 64bit time_t if gmtime() didn't like >32bit values
Timo Sirainen <tss@iki.fi>
parents: 1656
diff changeset
855 }
3206
6400a517f087 Limit TIME_T_MAX_BITS to 40.
Timo Sirainen <tss@iki.fi>
parents: 3199
diff changeset
856 if (bits > 40) {
6400a517f087 Limit TIME_T_MAX_BITS to 40.
Timo Sirainen <tss@iki.fi>
parents: 3199
diff changeset
857 /* Solaris 9 breaks after 55 bits. Perhaps other systems break earlier.
6400a517f087 Limit TIME_T_MAX_BITS to 40.
Timo Sirainen <tss@iki.fi>
parents: 3199
diff changeset
858 Let's just do the same as Cyrus folks and limit it to 40 bits. */
6400a517f087 Limit TIME_T_MAX_BITS to 40.
Timo Sirainen <tss@iki.fi>
parents: 3199
diff changeset
859 bits = 40;
6400a517f087 Limit TIME_T_MAX_BITS to 40.
Timo Sirainen <tss@iki.fi>
parents: 3199
diff changeset
860 }
6400a517f087 Limit TIME_T_MAX_BITS to 40.
Timo Sirainen <tss@iki.fi>
parents: 3199
diff changeset
861
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
862 f = fopen("conftest.temp", "w");
20519e4bca48 utc_mktime() crashed with 64bit time_t if gmtime() didn't like >32bit values
Timo Sirainen <tss@iki.fi>
parents: 1656
diff changeset
863 if (f == NULL) {
20519e4bca48 utc_mktime() crashed with 64bit time_t if gmtime() didn't like >32bit values
Timo Sirainen <tss@iki.fi>
parents: 1656
diff changeset
864 perror("fopen()");
20519e4bca48 utc_mktime() crashed with 64bit time_t if gmtime() didn't like >32bit values
Timo Sirainen <tss@iki.fi>
parents: 1656
diff changeset
865 return 1;
20519e4bca48 utc_mktime() crashed with 64bit time_t if gmtime() didn't like >32bit values
Timo Sirainen <tss@iki.fi>
parents: 1656
diff changeset
866 }
20519e4bca48 utc_mktime() crashed with 64bit time_t if gmtime() didn't like >32bit values
Timo Sirainen <tss@iki.fi>
parents: 1656
diff changeset
867 fprintf(f, "%d", bits);
20519e4bca48 utc_mktime() crashed with 64bit time_t if gmtime() didn't like >32bit values
Timo Sirainen <tss@iki.fi>
parents: 1656
diff changeset
868 fclose(f);
20519e4bca48 utc_mktime() crashed with 64bit time_t if gmtime() didn't like >32bit values
Timo Sirainen <tss@iki.fi>
parents: 1656
diff changeset
869 return 0;
20519e4bca48 utc_mktime() crashed with 64bit time_t if gmtime() didn't like >32bit values
Timo Sirainen <tss@iki.fi>
parents: 1656
diff changeset
870 }
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
871 ]])],[
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
872 max_bits=`cat conftest.temp`
20519e4bca48 utc_mktime() crashed with 64bit time_t if gmtime() didn't like >32bit values
Timo Sirainen <tss@iki.fi>
parents: 1656
diff changeset
873 rm -f conftest.temp
20519e4bca48 utc_mktime() crashed with 64bit time_t if gmtime() didn't like >32bit values
Timo Sirainen <tss@iki.fi>
parents: 1656
diff changeset
874 AC_MSG_RESULT($max_bits)
20519e4bca48 utc_mktime() crashed with 64bit time_t if gmtime() didn't like >32bit values
Timo Sirainen <tss@iki.fi>
parents: 1656
diff changeset
875 ], [
20519e4bca48 utc_mktime() crashed with 64bit time_t if gmtime() didn't like >32bit values
Timo Sirainen <tss@iki.fi>
parents: 1656
diff changeset
876 AC_MSG_RESULT([check failed, assuming 31])
20519e4bca48 utc_mktime() crashed with 64bit time_t if gmtime() didn't like >32bit values
Timo Sirainen <tss@iki.fi>
parents: 1656
diff changeset
877 max_bits=31
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
878 ],[])
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
879 AC_DEFINE_UNQUOTED(TIME_T_MAX_BITS, $max_bits, max. time_t bits gmtime() can handle)
20519e4bca48 utc_mktime() crashed with 64bit time_t if gmtime() didn't like >32bit values
Timo Sirainen <tss@iki.fi>
parents: 1656
diff changeset
880
411
c2fdc076ae7f checks for writev()
Timo Sirainen <tss@iki.fi>
parents: 353
diff changeset
881 dnl * do we have struct iovec
c2fdc076ae7f checks for writev()
Timo Sirainen <tss@iki.fi>
parents: 353
diff changeset
882 AC_MSG_CHECKING([for struct iovec])
c2fdc076ae7f checks for writev()
Timo Sirainen <tss@iki.fi>
parents: 353
diff changeset
883 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
884 [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
411
c2fdc076ae7f checks for writev()
Timo Sirainen <tss@iki.fi>
parents: 353
diff changeset
885 #include <sys/types.h>
c2fdc076ae7f checks for writev()
Timo Sirainen <tss@iki.fi>
parents: 353
diff changeset
886 #include <sys/uio.h>
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
887 #include <unistd.h>]],
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
888 [[struct iovec *iovec;]])],
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
889 [i_cv_struct_iovec=yes],
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
890 [i_cv_struct_iovec=no])])
411
c2fdc076ae7f checks for writev()
Timo Sirainen <tss@iki.fi>
parents: 353
diff changeset
891
c2fdc076ae7f checks for writev()
Timo Sirainen <tss@iki.fi>
parents: 353
diff changeset
892 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
893 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
894 fi
c2fdc076ae7f checks for writev()
Timo Sirainen <tss@iki.fi>
parents: 353
diff changeset
895 AC_MSG_RESULT($i_cv_struct_iovec)
c2fdc076ae7f checks for writev()
Timo Sirainen <tss@iki.fi>
parents: 353
diff changeset
896
691
567f5e66c7b8 We compile now if dev_t is a structure (eg. glibc+tcc).
Timo Sirainen <tss@iki.fi>
parents: 679
diff changeset
897 dnl * is dev_t an integer or something else?
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
898 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
691
567f5e66c7b8 We compile now if dev_t is a structure (eg. glibc+tcc).
Timo Sirainen <tss@iki.fi>
parents: 679
diff changeset
899 #include <sys/types.h>
567f5e66c7b8 We compile now if dev_t is a structure (eg. glibc+tcc).
Timo Sirainen <tss@iki.fi>
parents: 679
diff changeset
900 struct test { dev_t a; };
567f5e66c7b8 We compile now if dev_t is a structure (eg. glibc+tcc).
Timo Sirainen <tss@iki.fi>
parents: 679
diff changeset
901 static struct test t = { 0 };
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
902 ]], [[]])],[],[
742
b3dd87844fff acconfig.h is deprecated with autoconf 2.5, changed configure to contain
Timo Sirainen <tss@iki.fi>
parents: 739
diff changeset
903 AC_DEFINE(DEV_T_STRUCT,, Define if your dev_t is a structure instead of integer type)
691
567f5e66c7b8 We compile now if dev_t is a structure (eg. glibc+tcc).
Timo Sirainen <tss@iki.fi>
parents: 679
diff changeset
904
567f5e66c7b8 We compile now if dev_t is a structure (eg. glibc+tcc).
Timo Sirainen <tss@iki.fi>
parents: 679
diff changeset
905 dnl we can't initialize structures, so don't warn about them either
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
906 if test "x$ac_cv_c_compiler_gnu" = "xyes"; then
691
567f5e66c7b8 We compile now if dev_t is a structure (eg. glibc+tcc).
Timo Sirainen <tss@iki.fi>
parents: 679
diff changeset
907 CFLAGS=`echo $CFLAGS|sed 's/ -W\b//'`
567f5e66c7b8 We compile now if dev_t is a structure (eg. glibc+tcc).
Timo Sirainen <tss@iki.fi>
parents: 679
diff changeset
908 fi
567f5e66c7b8 We compile now if dev_t is a structure (eg. glibc+tcc).
Timo Sirainen <tss@iki.fi>
parents: 679
diff changeset
909 ])
567f5e66c7b8 We compile now if dev_t is a structure (eg. glibc+tcc).
Timo Sirainen <tss@iki.fi>
parents: 679
diff changeset
910
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
911 dnl * Do we have RLIMIT_AS?
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
912 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
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
913 #include <sys/types.h>
f50714973d0b RLIMIT_AS isn't supported everywhere - use it if it exists, but also use
Timo Sirainen <tss@iki.fi>
parents: 733
diff changeset
914 #include <sys/time.h>
f50714973d0b RLIMIT_AS isn't supported everywhere - use it if it exists, but also use
Timo Sirainen <tss@iki.fi>
parents: 733
diff changeset
915 #include <sys/resource.h>
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
916 ]], [[
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
917 struct rlimit r;
f50714973d0b RLIMIT_AS isn't supported everywhere - use it if it exists, but also use
Timo Sirainen <tss@iki.fi>
parents: 733
diff changeset
918 getrlimit(RLIMIT_AS, &r);
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
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(HAVE_RLIMIT_AS,, Define if you have RLIMIT_AS for setrlimit())
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
921 ],[])
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
922
1065
6cb5b50aea71 Don't let login process fork()
Timo Sirainen <tss@iki.fi>
parents: 1058
diff changeset
923 dnl * Do we have RLIMIT_NPROC?
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
924 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
1065
6cb5b50aea71 Don't let login process fork()
Timo Sirainen <tss@iki.fi>
parents: 1058
diff changeset
925 #include <sys/types.h>
6cb5b50aea71 Don't let login process fork()
Timo Sirainen <tss@iki.fi>
parents: 1058
diff changeset
926 #include <sys/time.h>
6cb5b50aea71 Don't let login process fork()
Timo Sirainen <tss@iki.fi>
parents: 1058
diff changeset
927 #include <sys/resource.h>
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
928 ]], [[
1065
6cb5b50aea71 Don't let login process fork()
Timo Sirainen <tss@iki.fi>
parents: 1058
diff changeset
929 struct rlimit r;
6cb5b50aea71 Don't let login process fork()
Timo Sirainen <tss@iki.fi>
parents: 1058
diff changeset
930 getrlimit(RLIMIT_NPROC, &r);
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
931 ]])],[
1065
6cb5b50aea71 Don't let login process fork()
Timo Sirainen <tss@iki.fi>
parents: 1058
diff changeset
932 AC_DEFINE(HAVE_RLIMIT_NPROC,, Define if you have RLIMIT_NPROC for setrlimit())
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
933 ],[])
1065
6cb5b50aea71 Don't let login process fork()
Timo Sirainen <tss@iki.fi>
parents: 1058
diff changeset
934
528
a95b1ccff82e Support FreeBSD-compatible sendfile(). Completely untested.
Timo Sirainen <tss@iki.fi>
parents: 494
diff changeset
935 dnl * Linux compatible mremap()
a95b1ccff82e Support FreeBSD-compatible sendfile(). Completely untested.
Timo Sirainen <tss@iki.fi>
parents: 494
diff changeset
936 AC_MSG_CHECKING([Linux compatible mremap()])
2181
7d4e10c5bd93 Use AC_TRY_LINK() for sendfile() checks so it works right with Solaris. Did
Timo Sirainen <tss@iki.fi>
parents: 2177
diff changeset
937 AC_TRY_LINK([
224
e8863d6088fe mremap() check
Timo Sirainen <tss@iki.fi>
parents: 191
diff changeset
938 #include <unistd.h>
e8863d6088fe mremap() check
Timo Sirainen <tss@iki.fi>
parents: 191
diff changeset
939 #define __USE_GNU
e8863d6088fe mremap() check
Timo Sirainen <tss@iki.fi>
parents: 191
diff changeset
940 #include <sys/mman.h>
529
3a1be480d16a buggy checks. we were supposed to compile them, not run. plus fixes for
Timo Sirainen <tss@iki.fi>
parents: 528
diff changeset
941 ], [
3a1be480d16a buggy checks. we were supposed to compile them, not run. plus fixes for
Timo Sirainen <tss@iki.fi>
parents: 528
diff changeset
942 mremap(0, 0, 0, MREMAP_MAYMOVE);
224
e8863d6088fe mremap() check
Timo Sirainen <tss@iki.fi>
parents: 191
diff changeset
943 ], [
742
b3dd87844fff acconfig.h is deprecated with autoconf 2.5, changed configure to contain
Timo Sirainen <tss@iki.fi>
parents: 739
diff changeset
944 AC_DEFINE(HAVE_LINUX_MREMAP,, Define if you have Linux-compatible mremap())
224
e8863d6088fe mremap() check
Timo Sirainen <tss@iki.fi>
parents: 191
diff changeset
945 AC_MSG_RESULT(yes)
e8863d6088fe mremap() check
Timo Sirainen <tss@iki.fi>
parents: 191
diff changeset
946 ], [
e8863d6088fe mremap() check
Timo Sirainen <tss@iki.fi>
parents: 191
diff changeset
947 AC_MSG_RESULT(no)
e8863d6088fe mremap() check
Timo Sirainen <tss@iki.fi>
parents: 191
diff changeset
948 ])
e8863d6088fe mremap() check
Timo Sirainen <tss@iki.fi>
parents: 191
diff changeset
949
1622
d22e03714d36 index_mmap_invalidate = yes now invalidate memory maps before accessing
Timo Sirainen <tss@iki.fi>
parents: 1611
diff changeset
950 dnl * If mmap() plays nicely with write()
1924
4dbe61f1aea6 Put -lcrypt to first in AUTH_LIBS to fix some linking problems with Solaris
Timo Sirainen <tss@iki.fi>
parents: 1915
diff changeset
951 AC_MSG_CHECKING([whether shared mmaps get updated by write()s])
1622
d22e03714d36 index_mmap_invalidate = yes now invalidate memory maps before accessing
Timo Sirainen <tss@iki.fi>
parents: 1611
diff changeset
952 AC_TRY_RUN([
d22e03714d36 index_mmap_invalidate = yes now invalidate memory maps before accessing
Timo Sirainen <tss@iki.fi>
parents: 1611
diff changeset
953 #include <stdio.h>
d22e03714d36 index_mmap_invalidate = yes now invalidate memory maps before accessing
Timo Sirainen <tss@iki.fi>
parents: 1611
diff changeset
954 #include <sys/types.h>
d22e03714d36 index_mmap_invalidate = yes now invalidate memory maps before accessing
Timo Sirainen <tss@iki.fi>
parents: 1611
diff changeset
955 #include <sys/stat.h>
d22e03714d36 index_mmap_invalidate = yes now invalidate memory maps before accessing
Timo Sirainen <tss@iki.fi>
parents: 1611
diff changeset
956 #include <unistd.h>
d22e03714d36 index_mmap_invalidate = yes now invalidate memory maps before accessing
Timo Sirainen <tss@iki.fi>
parents: 1611
diff changeset
957 #include <fcntl.h>
d22e03714d36 index_mmap_invalidate = yes now invalidate memory maps before accessing
Timo Sirainen <tss@iki.fi>
parents: 1611
diff changeset
958 #include <sys/mman.h>
d22e03714d36 index_mmap_invalidate = yes now invalidate memory maps before accessing
Timo Sirainen <tss@iki.fi>
parents: 1611
diff changeset
959 int main() {
d22e03714d36 index_mmap_invalidate = yes now invalidate memory maps before accessing
Timo Sirainen <tss@iki.fi>
parents: 1611
diff changeset
960 /* return 0 if we're signed */
d22e03714d36 index_mmap_invalidate = yes now invalidate memory maps before accessing
Timo Sirainen <tss@iki.fi>
parents: 1611
diff changeset
961 int f = open("conftest.mmap", O_RDWR|O_CREAT|O_TRUNC);
d22e03714d36 index_mmap_invalidate = yes now invalidate memory maps before accessing
Timo Sirainen <tss@iki.fi>
parents: 1611
diff changeset
962 void *mem;
d22e03714d36 index_mmap_invalidate = yes now invalidate memory maps before accessing
Timo Sirainen <tss@iki.fi>
parents: 1611
diff changeset
963 if (f == -1) {
d22e03714d36 index_mmap_invalidate = yes now invalidate memory maps before accessing
Timo Sirainen <tss@iki.fi>
parents: 1611
diff changeset
964 perror("open()");
d22e03714d36 index_mmap_invalidate = yes now invalidate memory maps before accessing
Timo Sirainen <tss@iki.fi>
parents: 1611
diff changeset
965 return 1;
d22e03714d36 index_mmap_invalidate = yes now invalidate memory maps before accessing
Timo Sirainen <tss@iki.fi>
parents: 1611
diff changeset
966 }
1623
e31dbc7ca0da Delete conftest.mmap too
Timo Sirainen <tss@iki.fi>
parents: 1622
diff changeset
967 unlink("conftest.mmap");
e31dbc7ca0da Delete conftest.mmap too
Timo Sirainen <tss@iki.fi>
parents: 1622
diff changeset
968
1622
d22e03714d36 index_mmap_invalidate = yes now invalidate memory maps before accessing
Timo Sirainen <tss@iki.fi>
parents: 1611
diff changeset
969 write(f, "1", 2);
d22e03714d36 index_mmap_invalidate = yes now invalidate memory maps before accessing
Timo Sirainen <tss@iki.fi>
parents: 1611
diff changeset
970 mem = mmap(NULL, 2, PROT_READ|PROT_WRITE, MAP_SHARED, f, 0);
d22e03714d36 index_mmap_invalidate = yes now invalidate memory maps before accessing
Timo Sirainen <tss@iki.fi>
parents: 1611
diff changeset
971 if (mem == MAP_FAILED) {
d22e03714d36 index_mmap_invalidate = yes now invalidate memory maps before accessing
Timo Sirainen <tss@iki.fi>
parents: 1611
diff changeset
972 perror("mmap()");
d22e03714d36 index_mmap_invalidate = yes now invalidate memory maps before accessing
Timo Sirainen <tss@iki.fi>
parents: 1611
diff changeset
973 return 1;
d22e03714d36 index_mmap_invalidate = yes now invalidate memory maps before accessing
Timo Sirainen <tss@iki.fi>
parents: 1611
diff changeset
974 }
d22e03714d36 index_mmap_invalidate = yes now invalidate memory maps before accessing
Timo Sirainen <tss@iki.fi>
parents: 1611
diff changeset
975 strcpy(mem, "2");
d22e03714d36 index_mmap_invalidate = yes now invalidate memory maps before accessing
Timo Sirainen <tss@iki.fi>
parents: 1611
diff changeset
976 msync(mem, 2, MS_SYNC);
d22e03714d36 index_mmap_invalidate = yes now invalidate memory maps before accessing
Timo Sirainen <tss@iki.fi>
parents: 1611
diff changeset
977 lseek(f, 0, SEEK_SET);
d22e03714d36 index_mmap_invalidate = yes now invalidate memory maps before accessing
Timo Sirainen <tss@iki.fi>
parents: 1611
diff changeset
978 write(f, "3", 2);
d22e03714d36 index_mmap_invalidate = yes now invalidate memory maps before accessing
Timo Sirainen <tss@iki.fi>
parents: 1611
diff changeset
979
d22e03714d36 index_mmap_invalidate = yes now invalidate memory maps before accessing
Timo Sirainen <tss@iki.fi>
parents: 1611
diff changeset
980 return strcmp(mem, "3") == 0 ? 0 : 1;
d22e03714d36 index_mmap_invalidate = yes now invalidate memory maps before accessing
Timo Sirainen <tss@iki.fi>
parents: 1611
diff changeset
981 }
1625
Timo Sirainen <tss@iki.fi>
parents: 1623
diff changeset
982 ], [
1924
4dbe61f1aea6 Put -lcrypt to first in AUTH_LIBS to fix some linking problems with Solaris
Timo Sirainen <tss@iki.fi>
parents: 1915
diff changeset
983 AC_MSG_RESULT(yes)
1622
d22e03714d36 index_mmap_invalidate = yes now invalidate memory maps before accessing
Timo Sirainen <tss@iki.fi>
parents: 1611
diff changeset
984 ], [
1924
4dbe61f1aea6 Put -lcrypt to first in AUTH_LIBS to fix some linking problems with Solaris
Timo Sirainen <tss@iki.fi>
parents: 1915
diff changeset
985 AC_MSG_RESULT(no)
4dbe61f1aea6 Put -lcrypt to first in AUTH_LIBS to fix some linking problems with Solaris
Timo Sirainen <tss@iki.fi>
parents: 1915
diff changeset
986 AC_DEFINE(MMAP_CONFLICTS_WRITE,, [Define if shared mmaps don't get updated by write()s])
1622
d22e03714d36 index_mmap_invalidate = yes now invalidate memory maps before accessing
Timo Sirainen <tss@iki.fi>
parents: 1611
diff changeset
987 ])
d22e03714d36 index_mmap_invalidate = yes now invalidate memory maps before accessing
Timo Sirainen <tss@iki.fi>
parents: 1611
diff changeset
988
2349
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
989 dnl * see if fd passing works
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
990 AC_MSG_CHECKING([whether fd passing works])
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
991 for i in 1 2; do
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
992 old_cflags="$CFLAGS"
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
993 CFLAGS="$CFLAGS -I$srcdir/src/lib $srcdir/src/lib/fdpass.c"
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
994 if test $i = 2; then
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
995 CFLAGS="$CFLAGS -DBUGGY_CMSG_MACROS"
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
996 fi
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
997
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
998 AC_TRY_RUN([
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
999 #include <sys/types.h>
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
1000 #include <sys/socket.h>
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
1001 #include <sys/wait.h>
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
1002 #include <sys/stat.h>
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
1003 #include <unistd.h>
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
1004 #include <fcntl.h>
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
1005 #include "fdpass.h"
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
1006
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
1007 int main(void)
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
1008 {
3236
f6eb50f0d2c0 oops, broke fd pass check completely
Timo Sirainen <tss@iki.fi>
parents: 3235
diff changeset
1009 int fd[2], send_fd, recv_fd, status;
2349
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
1010 struct stat st, st2;
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
1011 char data;
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
1012
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
1013 send_fd = open("conftest.fdpass", O_CREAT|O_WRONLY);
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
1014 if (send_fd == -1) return 2;
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
1015 unlink("conftest.fdpass");
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
1016 if (fstat(send_fd, &st) < 0) return 2;
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
1017 if (socketpair(AF_UNIX, SOCK_STREAM, 0, fd) < 0) return 2;
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
1018
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
1019 switch (fork()) {
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
1020 case -1:
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
1021 return 2;
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
1022 case 0:
3235
d20aee22af6a Make sure "whether fd passing works" check doesn't get stuck (HP-UX fix).
Timo Sirainen <tss@iki.fi>
parents: 3206
diff changeset
1023 alarm(1);
2349
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
1024 if (fd_send(fd[0], send_fd, &data, 1) != 1) return 2;
3235
d20aee22af6a Make sure "whether fd passing works" check doesn't get stuck (HP-UX fix).
Timo Sirainen <tss@iki.fi>
parents: 3206
diff changeset
1025 return 0;
2349
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
1026 default:
3235
d20aee22af6a Make sure "whether fd passing works" check doesn't get stuck (HP-UX fix).
Timo Sirainen <tss@iki.fi>
parents: 3206
diff changeset
1027 alarm(2);
d20aee22af6a Make sure "whether fd passing works" check doesn't get stuck (HP-UX fix).
Timo Sirainen <tss@iki.fi>
parents: 3206
diff changeset
1028 if (wait(&status) == -1)
d20aee22af6a Make sure "whether fd passing works" check doesn't get stuck (HP-UX fix).
Timo Sirainen <tss@iki.fi>
parents: 3206
diff changeset
1029 return 2;
d20aee22af6a Make sure "whether fd passing works" check doesn't get stuck (HP-UX fix).
Timo Sirainen <tss@iki.fi>
parents: 3206
diff changeset
1030 if (status != 0)
d20aee22af6a Make sure "whether fd passing works" check doesn't get stuck (HP-UX fix).
Timo Sirainen <tss@iki.fi>
parents: 3206
diff changeset
1031 return status;
2349
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
1032 if (fd_read(fd[1], &data, 1, &recv_fd) != 1) return 1;
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
1033 if (fstat(recv_fd, &st2) < 0) return 2;
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
1034 return st.st_ino == st2.st_ino ? 0 : 1;
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
1035 }
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
1036 }
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
1037 ], [
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
1038 CFLAGS=$old_cflags
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
1039 if test $i = 2; then
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
1040 AC_DEFINE(BUGGY_CMSG_MACROS,, Define if you have buggy CMSG macros)
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
1041 fi
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
1042 AC_MSG_RESULT(yes)
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
1043 break
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
1044 ], [
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
1045 dnl no, try with BUGGY_CMSG_MACROS
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
1046 CFLAGS=$old_cflags
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
1047 if test $i = 2; then
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
1048 AC_MSG_RESULT(no)
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
1049 fi
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
1050 ])
b65456de1b49 Check BUGGY_CMSG_MACROS in configure.
Timo Sirainen <tss@iki.fi>
parents: 2325
diff changeset
1051 done
1622
d22e03714d36 index_mmap_invalidate = yes now invalidate memory maps before accessing
Timo Sirainen <tss@iki.fi>
parents: 1611
diff changeset
1052
2035
0e65efd14eda Solaris: Move from sendfilev() to sendfile() (was it always there?). Make
Timo Sirainen <tss@iki.fi>
parents: 2028
diff changeset
1053 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
1054 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
1055 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
1056 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
1057 ], [
981
7e9b90bfe78c If Solaris sendfilev() is found, don't try checking for Linux one. Linux
Timo Sirainen <tss@iki.fi>
parents: 976
diff changeset
1058 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
1059 dnl * This seems to pass with Solaris for some reason..
7e9b90bfe78c If Solaris sendfilev() is found, don't try checking for Linux one. Linux
Timo Sirainen <tss@iki.fi>
parents: 976
diff changeset
1060 AC_MSG_CHECKING([Linux compatible sendfile()])
2181
7d4e10c5bd93 Use AC_TRY_LINK() for sendfile() checks so it works right with Solaris. Did
Timo Sirainen <tss@iki.fi>
parents: 2177
diff changeset
1061 AC_TRY_LINK([
981
7e9b90bfe78c If Solaris sendfilev() is found, don't try checking for Linux one. Linux
Timo Sirainen <tss@iki.fi>
parents: 976
diff changeset
1062 #undef _FILE_OFFSET_BITS
7e9b90bfe78c If Solaris sendfilev() is found, don't try checking for Linux one. Linux
Timo Sirainen <tss@iki.fi>
parents: 976
diff changeset
1063 #include <sys/types.h>
7e9b90bfe78c If Solaris sendfilev() is found, don't try checking for Linux one. Linux
Timo Sirainen <tss@iki.fi>
parents: 976
diff changeset
1064 #include <sys/socket.h>
7e9b90bfe78c If Solaris sendfilev() is found, don't try checking for Linux one. Linux
Timo Sirainen <tss@iki.fi>
parents: 976
diff changeset
1065 #include <sys/sendfile.h>
7e9b90bfe78c If Solaris sendfilev() is found, don't try checking for Linux one. Linux
Timo Sirainen <tss@iki.fi>
parents: 976
diff changeset
1066 ], [
7e9b90bfe78c If Solaris sendfilev() is found, don't try checking for Linux one. Linux
Timo Sirainen <tss@iki.fi>
parents: 976
diff changeset
1067 sendfile(0, 0, (void *) 0, 0);
7e9b90bfe78c If Solaris sendfilev() is found, don't try checking for Linux one. Linux
Timo Sirainen <tss@iki.fi>
parents: 976
diff changeset
1068 ], [
7e9b90bfe78c If Solaris sendfilev() is found, don't try checking for Linux one. Linux
Timo Sirainen <tss@iki.fi>
parents: 976
diff changeset
1069 AC_DEFINE(HAVE_LINUX_SENDFILE,, Define if you have Linux-compatible sendfile())
7e9b90bfe78c If Solaris sendfilev() is found, don't try checking for Linux one. Linux
Timo Sirainen <tss@iki.fi>
parents: 976
diff changeset
1070 AC_MSG_RESULT(yes)
7e9b90bfe78c If Solaris sendfilev() is found, don't try checking for Linux one. Linux
Timo Sirainen <tss@iki.fi>
parents: 976
diff changeset
1071 ], [
7e9b90bfe78c If Solaris sendfilev() is found, don't try checking for Linux one. Linux
Timo Sirainen <tss@iki.fi>
parents: 976
diff changeset
1072 AC_MSG_RESULT(no)
7e9b90bfe78c If Solaris sendfilev() is found, don't try checking for Linux one. Linux
Timo Sirainen <tss@iki.fi>
parents: 976
diff changeset
1073 ])
7e9b90bfe78c If Solaris sendfilev() is found, don't try checking for Linux one. Linux
Timo Sirainen <tss@iki.fi>
parents: 976
diff changeset
1074
7e9b90bfe78c If Solaris sendfilev() is found, don't try checking for Linux one. Linux
Timo Sirainen <tss@iki.fi>
parents: 976
diff changeset
1075 dnl * FreeBSD compatible sendfile()
7e9b90bfe78c If Solaris sendfilev() is found, don't try checking for Linux one. Linux
Timo Sirainen <tss@iki.fi>
parents: 976
diff changeset
1076 AC_MSG_CHECKING([FreeBSD compatible sendfile()])
2181
7d4e10c5bd93 Use AC_TRY_LINK() for sendfile() checks so it works right with Solaris. Did
Timo Sirainen <tss@iki.fi>
parents: 2177
diff changeset
1077 AC_TRY_LINK([
981
7e9b90bfe78c If Solaris sendfilev() is found, don't try checking for Linux one. Linux
Timo Sirainen <tss@iki.fi>
parents: 976
diff changeset
1078 #include <sys/types.h>
7e9b90bfe78c If Solaris sendfilev() is found, don't try checking for Linux one. Linux
Timo Sirainen <tss@iki.fi>
parents: 976
diff changeset
1079 #include <sys/socket.h>
7e9b90bfe78c If Solaris sendfilev() is found, don't try checking for Linux one. Linux
Timo Sirainen <tss@iki.fi>
parents: 976
diff changeset
1080 #include <sys/uio.h>
7e9b90bfe78c If Solaris sendfilev() is found, don't try checking for Linux one. Linux
Timo Sirainen <tss@iki.fi>
parents: 976
diff changeset
1081 ], [
7e9b90bfe78c If Solaris sendfilev() is found, don't try checking for Linux one. Linux
Timo Sirainen <tss@iki.fi>
parents: 976
diff changeset
1082 struct sf_hdtr hdtr;
7e9b90bfe78c If Solaris sendfilev() is found, don't try checking for Linux one. Linux
Timo Sirainen <tss@iki.fi>
parents: 976
diff changeset
1083 sendfile(0, 0, 0, 0, &hdtr, (void *) 0, 0);
7e9b90bfe78c If Solaris sendfilev() is found, don't try checking for Linux one. Linux
Timo Sirainen <tss@iki.fi>
parents: 976
diff changeset
1084 ], [
7e9b90bfe78c If Solaris sendfilev() is found, don't try checking for Linux one. Linux
Timo Sirainen <tss@iki.fi>
parents: 976
diff changeset
1085 AC_DEFINE(HAVE_FREEBSD_SENDFILE,, Define if you have FreeBSD-compatible sendfile())
7e9b90bfe78c If Solaris sendfilev() is found, don't try checking for Linux one. Linux
Timo Sirainen <tss@iki.fi>
parents: 976
diff changeset
1086 AC_MSG_RESULT(yes)
7e9b90bfe78c If Solaris sendfilev() is found, don't try checking for Linux one. Linux
Timo Sirainen <tss@iki.fi>
parents: 976
diff changeset
1087 ], [
7e9b90bfe78c If Solaris sendfilev() is found, don't try checking for Linux one. Linux
Timo Sirainen <tss@iki.fi>
parents: 976
diff changeset
1088 AC_MSG_RESULT(no)
7e9b90bfe78c If Solaris sendfilev() is found, don't try checking for Linux one. Linux
Timo Sirainen <tss@iki.fi>
parents: 976
diff changeset
1089 ])
976
b3e0f857981c Support for Solaris sendfilev(). Entirely untested, hope it works.
Timo Sirainen <tss@iki.fi>
parents: 975
diff changeset
1090 ])
b3e0f857981c Support for Solaris sendfilev(). Entirely untested, hope it works.
Timo Sirainen <tss@iki.fi>
parents: 975
diff changeset
1091
3590
340e1b87c27b Added check for _XPG6 macro for crypt().
Timo Sirainen <tss@iki.fi>
parents: 3575
diff changeset
1092 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
1093 dnl * Add other macros there too "just in case".
3594
f1b407e8debb And more changes to get _XPG6 stuff working right
Timo Sirainen <tss@iki.fi>
parents: 3590
diff changeset
1094 AC_MSG_CHECKING([if we should use _XPG6 macro for crypt()])
3590
340e1b87c27b Added check for _XPG6 macro for crypt().
Timo Sirainen <tss@iki.fi>
parents: 3575
diff changeset
1095 AC_TRY_COMPILE([
340e1b87c27b Added check for _XPG6 macro for crypt().
Timo Sirainen <tss@iki.fi>
parents: 3575
diff changeset
1096 #define _XOPEN_SOURCE 4
340e1b87c27b Added check for _XPG6 macro for crypt().
Timo Sirainen <tss@iki.fi>
parents: 3575
diff changeset
1097 #define _XOPEN_SOURCE_EXTENDED 1
340e1b87c27b Added check for _XPG6 macro for crypt().
Timo Sirainen <tss@iki.fi>
parents: 3575
diff changeset
1098 #define _XOPEN_VERSION 4
340e1b87c27b Added check for _XPG6 macro for crypt().
Timo Sirainen <tss@iki.fi>
parents: 3575
diff changeset
1099 #define _XPG4_2
340e1b87c27b Added check for _XPG6 macro for crypt().
Timo Sirainen <tss@iki.fi>
parents: 3575
diff changeset
1100 #define _XPG6
340e1b87c27b Added check for _XPG6 macro for crypt().
Timo Sirainen <tss@iki.fi>
parents: 3575
diff changeset
1101 #include <unistd.h>
340e1b87c27b Added check for _XPG6 macro for crypt().
Timo Sirainen <tss@iki.fi>
parents: 3575
diff changeset
1102 ], [
340e1b87c27b Added check for _XPG6 macro for crypt().
Timo Sirainen <tss@iki.fi>
parents: 3575
diff changeset
1103 crypt("a", "b");
340e1b87c27b Added check for _XPG6 macro for crypt().
Timo Sirainen <tss@iki.fi>
parents: 3575
diff changeset
1104 ], [
340e1b87c27b Added check for _XPG6 macro for crypt().
Timo Sirainen <tss@iki.fi>
parents: 3575
diff changeset
1105 AC_DEFINE(CRYPT_USE_XPG6,, Define if _XPG6 macro is needed for crypt())
3594
f1b407e8debb And more changes to get _XPG6 stuff working right
Timo Sirainen <tss@iki.fi>
parents: 3590
diff changeset
1106 AC_MSG_RESULT(yes)
f1b407e8debb And more changes to get _XPG6 stuff working right
Timo Sirainen <tss@iki.fi>
parents: 3590
diff changeset
1107 ], [
f1b407e8debb And more changes to get _XPG6 stuff working right
Timo Sirainen <tss@iki.fi>
parents: 3590
diff changeset
1108 AC_MSG_RESULT(no)
3590
340e1b87c27b Added check for _XPG6 macro for crypt().
Timo Sirainen <tss@iki.fi>
parents: 3575
diff changeset
1109 ])
340e1b87c27b Added check for _XPG6 macro for crypt().
Timo Sirainen <tss@iki.fi>
parents: 3575
diff changeset
1110
3745
840cc63e439b Don't allow giving invalid notify methods in --with-notify
Timo Sirainen <tss@iki.fi>
parents: 3744
diff changeset
1111 dnl * Check if statfs() can be used to find out block device for files
840cc63e439b Don't allow giving invalid notify methods in --with-notify
Timo Sirainen <tss@iki.fi>
parents: 3744
diff changeset
1112 AC_MSG_CHECKING([if statfs.f_mntfromname exists])
840cc63e439b Don't allow giving invalid notify methods in --with-notify
Timo Sirainen <tss@iki.fi>
parents: 3744
diff changeset
1113 AC_TRY_COMPILE([
840cc63e439b Don't allow giving invalid notify methods in --with-notify
Timo Sirainen <tss@iki.fi>
parents: 3744
diff changeset
1114 #include <sys/param.h>
840cc63e439b Don't allow giving invalid notify methods in --with-notify
Timo Sirainen <tss@iki.fi>
parents: 3744
diff changeset
1115 #include <sys/mount.h>
840cc63e439b Don't allow giving invalid notify methods in --with-notify
Timo Sirainen <tss@iki.fi>
parents: 3744
diff changeset
1116 ], [
840cc63e439b Don't allow giving invalid notify methods in --with-notify
Timo Sirainen <tss@iki.fi>
parents: 3744
diff changeset
1117 struct statfs buf;
840cc63e439b Don't allow giving invalid notify methods in --with-notify
Timo Sirainen <tss@iki.fi>
parents: 3744
diff changeset
1118 char *p = buf.f_mntfromname;
840cc63e439b Don't allow giving invalid notify methods in --with-notify
Timo Sirainen <tss@iki.fi>
parents: 3744
diff changeset
1119
840cc63e439b Don't allow giving invalid notify methods in --with-notify
Timo Sirainen <tss@iki.fi>
parents: 3744
diff changeset
1120 statfs(".", &buf);
840cc63e439b Don't allow giving invalid notify methods in --with-notify
Timo Sirainen <tss@iki.fi>
parents: 3744
diff changeset
1121 ], [
840cc63e439b Don't allow giving invalid notify methods in --with-notify
Timo Sirainen <tss@iki.fi>
parents: 3744
diff changeset
1122 AC_DEFINE(HAVE_STATFS_MNTFROMNAME,, Define if you have statfs.f_mntfromname)
840cc63e439b Don't allow giving invalid notify methods in --with-notify
Timo Sirainen <tss@iki.fi>
parents: 3744
diff changeset
1123 AC_MSG_RESULT(yes)
840cc63e439b Don't allow giving invalid notify methods in --with-notify
Timo Sirainen <tss@iki.fi>
parents: 3744
diff changeset
1124 ], [
840cc63e439b Don't allow giving invalid notify methods in --with-notify
Timo Sirainen <tss@iki.fi>
parents: 3744
diff changeset
1125 AC_MSG_RESULT(no)
840cc63e439b Don't allow giving invalid notify methods in --with-notify
Timo Sirainen <tss@iki.fi>
parents: 3744
diff changeset
1126 ])
840cc63e439b Don't allow giving invalid notify methods in --with-notify
Timo Sirainen <tss@iki.fi>
parents: 3744
diff changeset
1127
3762
4d44a337ac08 Fixed to work with struct dqblk.dqb_curspace also which is apparently the
Timo Sirainen <tss@iki.fi>
parents: 3751
diff changeset
1128 dnl * Check if we have struct dqblk.dqb_curblocks
4d44a337ac08 Fixed to work with struct dqblk.dqb_curspace also which is apparently the
Timo Sirainen <tss@iki.fi>
parents: 3751
diff changeset
1129 AC_MSG_CHECKING([if struct dqblk.dqb_curblocks exists])
4d44a337ac08 Fixed to work with struct dqblk.dqb_curspace also which is apparently the
Timo Sirainen <tss@iki.fi>
parents: 3751
diff changeset
1130 AC_TRY_COMPILE([
4d44a337ac08 Fixed to work with struct dqblk.dqb_curspace also which is apparently the
Timo Sirainen <tss@iki.fi>
parents: 3751
diff changeset
1131 #include <sys/types.h>
4050
41cb3921d869 configure was actually checking always only sys/quota.h. Also added
Timo Sirainen <tss@iki.fi>
parents: 4049
diff changeset
1132 #include "$srcdir/src/plugins/quota/quota-fs.h"
3762
4d44a337ac08 Fixed to work with struct dqblk.dqb_curspace also which is apparently the
Timo Sirainen <tss@iki.fi>
parents: 3751
diff changeset
1133 ], [
4d44a337ac08 Fixed to work with struct dqblk.dqb_curspace also which is apparently the
Timo Sirainen <tss@iki.fi>
parents: 3751
diff changeset
1134 struct dqblk dqblk;
4d44a337ac08 Fixed to work with struct dqblk.dqb_curspace also which is apparently the
Timo Sirainen <tss@iki.fi>
parents: 3751
diff changeset
1135 unsigned int x = dqblk.dqb_curblocks;
4d44a337ac08 Fixed to work with struct dqblk.dqb_curspace also which is apparently the
Timo Sirainen <tss@iki.fi>
parents: 3751
diff changeset
1136 ], [
4d44a337ac08 Fixed to work with struct dqblk.dqb_curspace also which is apparently the
Timo Sirainen <tss@iki.fi>
parents: 3751
diff changeset
1137 AC_DEFINE(HAVE_STRUCT_DQBLK_CURBLOCKS,, Define if struct sqblk.dqb_curblocks exists)
4d44a337ac08 Fixed to work with struct dqblk.dqb_curspace also which is apparently the
Timo Sirainen <tss@iki.fi>
parents: 3751
diff changeset
1138 AC_MSG_RESULT(yes)
4d44a337ac08 Fixed to work with struct dqblk.dqb_curspace also which is apparently the
Timo Sirainen <tss@iki.fi>
parents: 3751
diff changeset
1139 ], [
4d44a337ac08 Fixed to work with struct dqblk.dqb_curspace also which is apparently the
Timo Sirainen <tss@iki.fi>
parents: 3751
diff changeset
1140 AC_MSG_RESULT(no)
4d44a337ac08 Fixed to work with struct dqblk.dqb_curspace also which is apparently the
Timo Sirainen <tss@iki.fi>
parents: 3751
diff changeset
1141 ])
4d44a337ac08 Fixed to work with struct dqblk.dqb_curspace also which is apparently the
Timo Sirainen <tss@iki.fi>
parents: 3751
diff changeset
1142
4d44a337ac08 Fixed to work with struct dqblk.dqb_curspace also which is apparently the
Timo Sirainen <tss@iki.fi>
parents: 3751
diff changeset
1143 dnl * Check if we have struct dqblk.dqb_curspace
4d44a337ac08 Fixed to work with struct dqblk.dqb_curspace also which is apparently the
Timo Sirainen <tss@iki.fi>
parents: 3751
diff changeset
1144 AC_MSG_CHECKING([if struct dqblk.dqb_curspace exists])
4d44a337ac08 Fixed to work with struct dqblk.dqb_curspace also which is apparently the
Timo Sirainen <tss@iki.fi>
parents: 3751
diff changeset
1145 AC_TRY_COMPILE([
4d44a337ac08 Fixed to work with struct dqblk.dqb_curspace also which is apparently the
Timo Sirainen <tss@iki.fi>
parents: 3751
diff changeset
1146 #include <sys/types.h>
4050
41cb3921d869 configure was actually checking always only sys/quota.h. Also added
Timo Sirainen <tss@iki.fi>
parents: 4049
diff changeset
1147 #include "$srcdir/src/plugins/quota/quota-fs.h"
3762
4d44a337ac08 Fixed to work with struct dqblk.dqb_curspace also which is apparently the
Timo Sirainen <tss@iki.fi>
parents: 3751
diff changeset
1148 ], [
4d44a337ac08 Fixed to work with struct dqblk.dqb_curspace also which is apparently the
Timo Sirainen <tss@iki.fi>
parents: 3751
diff changeset
1149 struct dqblk dqblk;
4d44a337ac08 Fixed to work with struct dqblk.dqb_curspace also which is apparently the
Timo Sirainen <tss@iki.fi>
parents: 3751
diff changeset
1150 unsigned int x = dqblk.dqb_curspace;
4d44a337ac08 Fixed to work with struct dqblk.dqb_curspace also which is apparently the
Timo Sirainen <tss@iki.fi>
parents: 3751
diff changeset
1151 ], [
4d44a337ac08 Fixed to work with struct dqblk.dqb_curspace also which is apparently the
Timo Sirainen <tss@iki.fi>
parents: 3751
diff changeset
1152 AC_DEFINE(HAVE_STRUCT_DQBLK_CURSPACE,, Define if struct sqblk.dqb_curspace exists)
4d44a337ac08 Fixed to work with struct dqblk.dqb_curspace also which is apparently the
Timo Sirainen <tss@iki.fi>
parents: 3751
diff changeset
1153 AC_MSG_RESULT(yes)
4d44a337ac08 Fixed to work with struct dqblk.dqb_curspace also which is apparently the
Timo Sirainen <tss@iki.fi>
parents: 3751
diff changeset
1154 ], [
4d44a337ac08 Fixed to work with struct dqblk.dqb_curspace also which is apparently the
Timo Sirainen <tss@iki.fi>
parents: 3751
diff changeset
1155 AC_MSG_RESULT(no)
4d44a337ac08 Fixed to work with struct dqblk.dqb_curspace also which is apparently the
Timo Sirainen <tss@iki.fi>
parents: 3751
diff changeset
1156 ])
4d44a337ac08 Fixed to work with struct dqblk.dqb_curspace also which is apparently the
Timo Sirainen <tss@iki.fi>
parents: 3751
diff changeset
1157
4063
f60237ad2edd Support Solaris's ioctl(Q_QUOTACTL).
Timo Sirainen <tss@iki.fi>
parents: 4057
diff changeset
1158 dnl * Check if we have Q_QUOTACTL ioctl (Solaris)
f60237ad2edd Support Solaris's ioctl(Q_QUOTACTL).
Timo Sirainen <tss@iki.fi>
parents: 4057
diff changeset
1159 AC_MSG_CHECKING([if struct Q_QUOTACTL ioctl exists])
f60237ad2edd Support Solaris's ioctl(Q_QUOTACTL).
Timo Sirainen <tss@iki.fi>
parents: 4057
diff changeset
1160 AC_TRY_COMPILE([
4065
a3090ba7429c One more Q_QUOTACTL check fix..
Timo Sirainen <tss@iki.fi>
parents: 4064
diff changeset
1161 #include <sys/types.h>
4063
f60237ad2edd Support Solaris's ioctl(Q_QUOTACTL).
Timo Sirainen <tss@iki.fi>
parents: 4057
diff changeset
1162 #include <sys/fs/ufs_quota.h>
f60237ad2edd Support Solaris's ioctl(Q_QUOTACTL).
Timo Sirainen <tss@iki.fi>
parents: 4057
diff changeset
1163 ], [
4064
f3e7ee9630d0 And fix for Q_QUOTACTL check..
Timo Sirainen <tss@iki.fi>
parents: 4063
diff changeset
1164 struct quotctl ctl;
4063
f60237ad2edd Support Solaris's ioctl(Q_QUOTACTL).
Timo Sirainen <tss@iki.fi>
parents: 4057
diff changeset
1165 ioctl(0, Q_QUOTACTL, &ctl);
f60237ad2edd Support Solaris's ioctl(Q_QUOTACTL).
Timo Sirainen <tss@iki.fi>
parents: 4057
diff changeset
1166 ], [
f60237ad2edd Support Solaris's ioctl(Q_QUOTACTL).
Timo Sirainen <tss@iki.fi>
parents: 4057
diff changeset
1167 AC_DEFINE(HAVE_Q_QUOTACTL,, Define if Q_QUOTACTL exists)
f60237ad2edd Support Solaris's ioctl(Q_QUOTACTL).
Timo Sirainen <tss@iki.fi>
parents: 4057
diff changeset
1168 AC_MSG_RESULT(yes)
f60237ad2edd Support Solaris's ioctl(Q_QUOTACTL).
Timo Sirainen <tss@iki.fi>
parents: 4057
diff changeset
1169 ], [
f60237ad2edd Support Solaris's ioctl(Q_QUOTACTL).
Timo Sirainen <tss@iki.fi>
parents: 4057
diff changeset
1170 AC_MSG_RESULT(no)
f60237ad2edd Support Solaris's ioctl(Q_QUOTACTL).
Timo Sirainen <tss@iki.fi>
parents: 4057
diff changeset
1171 ])
f60237ad2edd Support Solaris's ioctl(Q_QUOTACTL).
Timo Sirainen <tss@iki.fi>
parents: 4057
diff changeset
1172
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
1173 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
1174 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
1175 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
1176
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1177 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
1178 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
1179 #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
1180 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
1181 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
1182 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
1183 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
1184 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
1185 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
1186 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
1187 }
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1188 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
1189 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
1190 return 0;
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
1191 }]])],
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
1192 [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
1193 [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
1194 ])
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1195 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
1196 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
1197 #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
1198 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
1199 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
1200 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
1201 __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
1202 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
1203 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
1204 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
1205 }
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1206 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
1207 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
1208 return 0;
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
1209 }]])],
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
1210 [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
1211 [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
1212 ])
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1213
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1214 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
1215 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
1216 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
1217 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
1218 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
1219 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
1220
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1221 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
1222 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
1223 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
1224
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1225 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
1226 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
1227 #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
1228 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
1229 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
1230 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
1231 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
1232 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
1233 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
1234 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
1235 }
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1236 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
1237 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
1238 return 0;
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
1239 }]])],
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
1240 [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
1241 [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
1242 ])
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1243
c4754c5770f3 We weren't using va_list properly, especially gcc/PowerPC didn't like it.
Timo Sirainen <tss@iki.fi>
parents: 850
diff changeset
1244 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
1245 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
1246 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
1247
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1248 dnl **
622
235188ee7a05 Support for OpenSSL.
Timo Sirainen <tss@iki.fi>
parents: 576
diff changeset
1249 dnl ** SSL
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1250 dnl **
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1251
623
3fa9e363cd3d SSL fixes and doc updates.
Timo Sirainen <tss@iki.fi>
parents: 622
diff changeset
1252 have_ssl=no
3fa9e363cd3d SSL fixes and doc updates.
Timo Sirainen <tss@iki.fi>
parents: 622
diff changeset
1253
1611
fcc5d6bb6244 test -o and -a are apparently non-POSIX. not using.
Timo Sirainen <tss@iki.fi>
parents: 1609
diff changeset
1254 if test "$want_openssl" = "yes" && test "$have_ssl" = "no"; then
4049
2fa6dc0e0e27 Don't print error if pkg-config isn't found.
Timo Sirainen <tss@iki.fi>
parents: 4022
diff changeset
1255 if 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
1256 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
1257 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
1258 have_openssl=yes
97572a77243a Check OpenSSL using pkg-config which at least redhat uses nowadays.
Timo Sirainen <tss@iki.fi>
parents: 1539
diff changeset
1259 else
97572a77243a Check OpenSSL using pkg-config which at least redhat uses nowadays.
Timo Sirainen <tss@iki.fi>
parents: 1539
diff changeset
1260 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
1261 AC_CHECK_HEADERS(openssl/ssl.h openssl/err.h, [
97572a77243a Check OpenSSL using pkg-config which at least redhat uses nowadays.
Timo Sirainen <tss@iki.fi>
parents: 1539
diff changeset
1262 SSL_LIBS="-lssl -lcrypto"
97572a77243a Check OpenSSL using pkg-config which at least redhat uses nowadays.
Timo Sirainen <tss@iki.fi>
parents: 1539
diff changeset
1263 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
1264 have_openssl=yes
97572a77243a Check OpenSSL using pkg-config which at least redhat uses nowadays.
Timo Sirainen <tss@iki.fi>
parents: 1539
diff changeset
1265 ])
97572a77243a Check OpenSSL using pkg-config which at least redhat uses nowadays.
Timo Sirainen <tss@iki.fi>
parents: 1539
diff changeset
1266 ],, -lcrypto)
97572a77243a Check OpenSSL using pkg-config which at least redhat uses nowadays.
Timo Sirainen <tss@iki.fi>
parents: 1539
diff changeset
1267 fi
1566
919f5aafbc6c fix for openssl detection
Timo Sirainen <tss@iki.fi>
parents: 1565
diff changeset
1268 if test "$have_openssl" = "yes"; then
919f5aafbc6c fix for openssl detection
Timo Sirainen <tss@iki.fi>
parents: 1565
diff changeset
1269 AC_DEFINE(HAVE_OPENSSL,, Build with OpenSSL support)
919f5aafbc6c fix for openssl detection
Timo Sirainen <tss@iki.fi>
parents: 1565
diff changeset
1270 have_ssl="yes (OpenSSL)"
919f5aafbc6c fix for openssl detection
Timo Sirainen <tss@iki.fi>
parents: 1565
diff changeset
1271 fi
622
235188ee7a05 Support for OpenSSL.
Timo Sirainen <tss@iki.fi>
parents: 576
diff changeset
1272 fi
235188ee7a05 Support for OpenSSL.
Timo Sirainen <tss@iki.fi>
parents: 576
diff changeset
1273
1990
Timo Sirainen <tss@iki.fi>
parents: 1989
diff changeset
1274 if test $want_gnutls = yes && test "$have_ssl" = no; then
1948
7fa8697bc2a9 Default to OpenSSL
Timo Sirainen <tss@iki.fi>
parents: 1924
diff changeset
1275 AC_CHECK_LIB(gnutls, gnutls_global_init, [
7fa8697bc2a9 Default to OpenSSL
Timo Sirainen <tss@iki.fi>
parents: 1924
diff changeset
1276 AC_CHECK_HEADERS(gnutls/gnutls.h, [
7fa8697bc2a9 Default to OpenSSL
Timo Sirainen <tss@iki.fi>
parents: 1924
diff changeset
1277 AC_DEFINE(HAVE_GNUTLS,, Build with GNUTLS support)
7fa8697bc2a9 Default to OpenSSL
Timo Sirainen <tss@iki.fi>
parents: 1924
diff changeset
1278 SSL_LIBS="-lgnutls -lgcrypt"
7fa8697bc2a9 Default to OpenSSL
Timo Sirainen <tss@iki.fi>
parents: 1924
diff changeset
1279 AC_SUBST(SSL_LIBS)
7fa8697bc2a9 Default to OpenSSL
Timo Sirainen <tss@iki.fi>
parents: 1924
diff changeset
1280 have_ssl="yes (GNUTLS)"
7fa8697bc2a9 Default to OpenSSL
Timo Sirainen <tss@iki.fi>
parents: 1924
diff changeset
1281 have_gnutls=yes
7fa8697bc2a9 Default to OpenSSL
Timo Sirainen <tss@iki.fi>
parents: 1924
diff changeset
1282 ])
7fa8697bc2a9 Default to OpenSSL
Timo Sirainen <tss@iki.fi>
parents: 1924
diff changeset
1283 ],, -lgcrypt)
7fa8697bc2a9 Default to OpenSSL
Timo Sirainen <tss@iki.fi>
parents: 1924
diff changeset
1284 fi
7fa8697bc2a9 Default to OpenSSL
Timo Sirainen <tss@iki.fi>
parents: 1924
diff changeset
1285
742
b3dd87844fff acconfig.h is deprecated with autoconf 2.5, changed configure to contain
Timo Sirainen <tss@iki.fi>
parents: 739
diff changeset
1286 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
1287 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
1288 fi
b3dd87844fff acconfig.h is deprecated with autoconf 2.5, changed configure to contain
Timo Sirainen <tss@iki.fi>
parents: 739
diff changeset
1289
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1290 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
1291 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
1292 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
1293
49b6103dd2e0 Added support for Boehm GC. However it seems to be crashing for some reason
Timo Sirainen <tss@iki.fi>
parents: 1729
diff changeset
1294 if test "$want_gc" = "yes"; then
49b6103dd2e0 Added support for Boehm GC. However it seems to be crashing for some reason
Timo Sirainen <tss@iki.fi>
parents: 1729
diff changeset
1295 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
1296 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
1297 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
1298 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
1299 ], [
49b6103dd2e0 Added support for Boehm GC. However it seems to be crashing for some reason
Timo Sirainen <tss@iki.fi>
parents: 1729
diff changeset
1300 want_gc=no
49b6103dd2e0 Added support for Boehm GC. However it seems to be crashing for some reason
Timo Sirainen <tss@iki.fi>
parents: 1729
diff changeset
1301 ])
49b6103dd2e0 Added support for Boehm GC. However it seems to be crashing for some reason
Timo Sirainen <tss@iki.fi>
parents: 1729
diff changeset
1302 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
1303
49b6103dd2e0 Added support for Boehm GC. However it seems to be crashing for some reason
Timo Sirainen <tss@iki.fi>
parents: 1729
diff changeset
1304 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
1305 dnl ** userdb and passdb checks
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1306 dnl **
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1307
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1308 need_crypt=no
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
1309 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
1310 passdb=""
cacabd33c68a Initial code for POP3 server. RETR isn't working right yet, there's some
Timo Sirainen <tss@iki.fi>
parents: 1022
diff changeset
1311
cacabd33c68a Initial code for POP3 server. RETR isn't working right yet, there's some
Timo Sirainen <tss@iki.fi>
parents: 1022
diff changeset
1312 if test $want_static_userdb = yes; then
cacabd33c68a Initial code for POP3 server. RETR isn't working right yet, there's some
Timo Sirainen <tss@iki.fi>
parents: 1022
diff changeset
1313 need_crypt=yes
cacabd33c68a Initial code for POP3 server. RETR isn't working right yet, there's some
Timo Sirainen <tss@iki.fi>
parents: 1022
diff changeset
1314 AC_DEFINE(USERDB_STATIC,, Build with static userdb 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
1315 userdb="$userdb static"
cacabd33c68a Initial code for POP3 server. RETR isn't working right yet, there's some
Timo Sirainen <tss@iki.fi>
parents: 1022
diff changeset
1316 fi
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1317
3667
b7569a6a4ada Renamed userdb passdb to prefetch.
Timo Sirainen <tss@iki.fi>
parents: 3600
diff changeset
1318 if test $want_prefetch_userdb = yes; then
b7569a6a4ada Renamed userdb passdb to prefetch.
Timo Sirainen <tss@iki.fi>
parents: 3600
diff changeset
1319 AC_DEFINE(USERDB_PREFETCH,, Build with prefetch userdb support)
b7569a6a4ada Renamed userdb passdb to prefetch.
Timo Sirainen <tss@iki.fi>
parents: 3600
diff changeset
1320 userdb="$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
1321 fi
5e2e4cdbfe2e Added "passdb" userdb. It works only if passdb gives all the information
Timo Sirainen <tss@iki.fi>
parents: 3004
diff changeset
1322
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1323 if test $want_passwd = yes; then
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1324 need_crypt=yes
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
1325 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
1326 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
1327 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
1328 passdb="$passdb passwd"
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1329 fi
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1330
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1331 if test $want_passwd_file = yes; then
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1332 need_crypt=yes
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
1333 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
1334 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
1335 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
1336 passdb="$passdb passwd-file"
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1337 fi
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1338
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1339 if test $want_shadow = yes; then
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1340 AC_CHECK_FUNC(getspnam, [
1089
088c7d83f2f2 Check for shadow.h before assuming shadow auth is possible.
Timo Sirainen <tss@iki.fi>
parents: 1065
diff changeset
1341 AC_CHECK_HEADER(shadow.h, [
088c7d83f2f2 Check for shadow.h before assuming shadow auth is possible.
Timo Sirainen <tss@iki.fi>
parents: 1065
diff changeset
1342 need_crypt=yes
088c7d83f2f2 Check for shadow.h before assuming shadow auth is possible.
Timo Sirainen <tss@iki.fi>
parents: 1065
diff changeset
1343 AC_DEFINE(PASSDB_SHADOW,, Build with shadow support)
088c7d83f2f2 Check for shadow.h before assuming shadow auth is possible.
Timo Sirainen <tss@iki.fi>
parents: 1065
diff changeset
1344 passdb="$passdb shadow"
088c7d83f2f2 Check for shadow.h before assuming shadow auth is possible.
Timo Sirainen <tss@iki.fi>
parents: 1065
diff changeset
1345 ])
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1346 ])
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1347 fi
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1348
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1349 if test $want_pam = yes; then
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1350 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
1351 have_pam=no
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1352 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
1353 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
1354 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
1355 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
1356 ])
df5bf4ee669f OSX puts PAM includes into pam/ directory instead of security. Detect that.
Timo Sirainen <tss@iki.fi>
parents: 702
diff changeset
1357
df5bf4ee669f OSX puts PAM includes into pam/ directory instead of security. Detect that.
Timo Sirainen <tss@iki.fi>
parents: 702
diff changeset
1358 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
1359 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
1360 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
1361 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
1362 ])
df5bf4ee669f OSX puts PAM includes into pam/ directory instead of security. Detect that.
Timo Sirainen <tss@iki.fi>
parents: 702
diff changeset
1363
df5bf4ee669f OSX puts PAM includes into pam/ directory instead of security. Detect that.
Timo Sirainen <tss@iki.fi>
parents: 702
diff changeset
1364 if test "$have_pam" = "yes"; then
1284
71f61b6a0f02 cleanups
Timo Sirainen <tss@iki.fi>
parents: 1283
diff changeset
1365 AUTH_LIBS="$AUTH_LIBS -lpam"
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
1366 AC_DEFINE(PASSDB_PAM,, Build with PAM 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
1367 passdb="$passdb pam"
547
39a24074abf4 Call pam_setcred() if it exists.
Timo Sirainen <tss@iki.fi>
parents: 546
diff changeset
1368
39a24074abf4 Call pam_setcred() if it exists.
Timo Sirainen <tss@iki.fi>
parents: 546
diff changeset
1369 AC_CHECK_LIB(pam, pam_setcred, [
742
b3dd87844fff acconfig.h is deprecated with autoconf 2.5, changed configure to contain
Timo Sirainen <tss@iki.fi>
parents: 739
diff changeset
1370 AC_DEFINE(HAVE_PAM_SETCRED,,
b3dd87844fff acconfig.h is deprecated with autoconf 2.5, changed configure to contain
Timo Sirainen <tss@iki.fi>
parents: 739
diff changeset
1371 Define if you have pam_setcred())
547
39a24074abf4 Call pam_setcred() if it exists.
Timo Sirainen <tss@iki.fi>
parents: 546
diff changeset
1372 ])
706
df5bf4ee669f OSX puts PAM includes into pam/ directory instead of security. Detect that.
Timo Sirainen <tss@iki.fi>
parents: 702
diff changeset
1373 fi
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1374 ])
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1375 fi
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1376
2162
95b2a6abc01e Added checkpassword passdb. userdb has only beginnings.
Timo Sirainen <tss@iki.fi>
parents: 2103
diff changeset
1377 if test $want_checkpassword = yes; then
95b2a6abc01e Added checkpassword passdb. userdb has only beginnings.
Timo Sirainen <tss@iki.fi>
parents: 2103
diff changeset
1378 AC_DEFINE(USERDB_CHECKPASSWORD,, Build with checkpassword userdb support)
95b2a6abc01e Added checkpassword passdb. userdb has only beginnings.
Timo Sirainen <tss@iki.fi>
parents: 2103
diff changeset
1379 AC_DEFINE(PASSDB_CHECKPASSWORD,, Build with checkpassword passdb support)
95b2a6abc01e Added checkpassword passdb. userdb has only beginnings.
Timo Sirainen <tss@iki.fi>
parents: 2103
diff changeset
1380 userdb="$userdb checkpassword"
95b2a6abc01e Added checkpassword passdb. userdb has only beginnings.
Timo Sirainen <tss@iki.fi>
parents: 2103
diff changeset
1381 passdb="$passdb checkpassword"
95b2a6abc01e Added checkpassword passdb. userdb has only beginnings.
Timo Sirainen <tss@iki.fi>
parents: 2103
diff changeset
1382 fi
95b2a6abc01e Added checkpassword passdb. userdb has only beginnings.
Timo Sirainen <tss@iki.fi>
parents: 2103
diff changeset
1383
1851
d66d53f57e43 Added bsdauth support, patch by Dan Cross
Timo Sirainen <tss@iki.fi>
parents: 1849
diff changeset
1384 if test $want_bsdauth = yes; then
d66d53f57e43 Added bsdauth support, patch by Dan Cross
Timo Sirainen <tss@iki.fi>
parents: 1849
diff changeset
1385 AC_CHECK_FUNC(auth_userokay, [
d66d53f57e43 Added bsdauth support, patch by Dan Cross
Timo Sirainen <tss@iki.fi>
parents: 1849
diff changeset
1386 AC_DEFINE(PASSDB_BSDAUTH,, Build with BSD authentication support)
d66d53f57e43 Added bsdauth support, patch by Dan Cross
Timo Sirainen <tss@iki.fi>
parents: 1849
diff changeset
1387 passdb="$passdb bsdauth"
d66d53f57e43 Added bsdauth support, patch by Dan Cross
Timo Sirainen <tss@iki.fi>
parents: 1849
diff changeset
1388 ])
d66d53f57e43 Added bsdauth support, patch by Dan Cross
Timo Sirainen <tss@iki.fi>
parents: 1849
diff changeset
1389 fi
d66d53f57e43 Added bsdauth support, patch by Dan Cross
Timo Sirainen <tss@iki.fi>
parents: 1849
diff changeset
1390
3683
28cca6317829 Added GSSAPI support. Patch by Jelmer Vernooij and some fixes by
Timo Sirainen <tss@iki.fi>
parents: 3671
diff changeset
1391 have_gssapi=no
28cca6317829 Added GSSAPI support. Patch by Jelmer Vernooij and some fixes by
Timo Sirainen <tss@iki.fi>
parents: 3671
diff changeset
1392 if test $want_gssapi = yes; then
28cca6317829 Added GSSAPI support. Patch by Jelmer Vernooij and some fixes by
Timo Sirainen <tss@iki.fi>
parents: 3671
diff changeset
1393 AC_CHECK_PROG(KRB5CONFIG, krb5-config, YES, NO)
28cca6317829 Added GSSAPI support. Patch by Jelmer Vernooij and some fixes by
Timo Sirainen <tss@iki.fi>
parents: 3671
diff changeset
1394 if test $KRB5CONFIG = YES; then
3705
561e81dfa20b MIT kerberos v1.2 (and older) doesn't work with us.
Timo Sirainen <tss@iki.fi>
parents: 3686
diff changeset
1395 # we have a kludgy check here to check that we have
561e81dfa20b MIT kerberos v1.2 (and older) doesn't work with us.
Timo Sirainen <tss@iki.fi>
parents: 3686
diff changeset
1396 # version >= v1.3. Although this doesn't work right with
561e81dfa20b MIT kerberos v1.2 (and older) doesn't work with us.
Timo Sirainen <tss@iki.fi>
parents: 3686
diff changeset
1397 # non-MIT kerberos versioning..
561e81dfa20b MIT kerberos v1.2 (and older) doesn't work with us.
Timo Sirainen <tss@iki.fi>
parents: 3686
diff changeset
1398 if `krb5-config --version|grep -qv '1\.2'`; then
561e81dfa20b MIT kerberos v1.2 (and older) doesn't work with us.
Timo Sirainen <tss@iki.fi>
parents: 3686
diff changeset
1399 AUTH_LIBS="$AUTH_LIBS `krb5-config --libs gssapi`"
561e81dfa20b MIT kerberos v1.2 (and older) doesn't work with us.
Timo Sirainen <tss@iki.fi>
parents: 3686
diff changeset
1400 AUTH_CFLAGS="$AUTH_CFLAGS `krb5-config --cflags gssapi`"
3780
0128534525d8 Check that gssapi/gssapi.h exists before using it.
Timo Sirainen <tss@iki.fi>
parents: 3779
diff changeset
1401
0128534525d8 Check that gssapi/gssapi.h exists before using it.
Timo Sirainen <tss@iki.fi>
parents: 3779
diff changeset
1402 # 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
1403 # have gssapi.h
0128534525d8 Check that gssapi/gssapi.h exists before using it.
Timo Sirainen <tss@iki.fi>
parents: 3779
diff changeset
1404 old_CFLAGS=$CFLAGS
0128534525d8 Check that gssapi/gssapi.h exists before using it.
Timo Sirainen <tss@iki.fi>
parents: 3779
diff changeset
1405 CFLAGS="$CFLAGS `krb5-config --cflags gssapi`"
0128534525d8 Check that gssapi/gssapi.h exists before using it.
Timo Sirainen <tss@iki.fi>
parents: 3779
diff changeset
1406 AC_CHECK_HEADER([gssapi/gssapi.h], [
0128534525d8 Check that gssapi/gssapi.h exists before using it.
Timo Sirainen <tss@iki.fi>
parents: 3779
diff changeset
1407 AC_DEFINE(HAVE_GSSAPI,, Build with GSSAPI support)
0128534525d8 Check that gssapi/gssapi.h exists before using it.
Timo Sirainen <tss@iki.fi>
parents: 3779
diff changeset
1408 have_gssapi=yes
0128534525d8 Check that gssapi/gssapi.h exists before using it.
Timo Sirainen <tss@iki.fi>
parents: 3779
diff changeset
1409 ])
0128534525d8 Check that gssapi/gssapi.h exists before using it.
Timo Sirainen <tss@iki.fi>
parents: 3779
diff changeset
1410 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
1411 fi
3683
28cca6317829 Added GSSAPI support. Patch by Jelmer Vernooij and some fixes by
Timo Sirainen <tss@iki.fi>
parents: 3671
diff changeset
1412 fi
28cca6317829 Added GSSAPI support. Patch by Jelmer Vernooij and some fixes by
Timo Sirainen <tss@iki.fi>
parents: 3671
diff changeset
1413 fi
28cca6317829 Added GSSAPI support. Patch by Jelmer Vernooij and some fixes by
Timo Sirainen <tss@iki.fi>
parents: 3671
diff changeset
1414
1057
c5ab972db48c libldap checks, --without-pop3 disables pop3 server
Timo Sirainen <tss@iki.fi>
parents: 1049
diff changeset
1415 if test $want_ldap = yes; then
c5ab972db48c libldap checks, --without-pop3 disables pop3 server
Timo Sirainen <tss@iki.fi>
parents: 1049
diff changeset
1416 AC_CHECK_LIB(ldap, ldap_init, [
c5ab972db48c libldap checks, --without-pop3 disables pop3 server
Timo Sirainen <tss@iki.fi>
parents: 1049
diff changeset
1417 AC_CHECK_HEADER(ldap.h, [
2325
7613e0f68513 Fixed to compile with Solaris LDAP library
Timo Sirainen <tss@iki.fi>
parents: 2222
diff changeset
1418 AC_CHECK_LIB(ldap, ldap_initialize, [
7613e0f68513 Fixed to compile with Solaris LDAP library
Timo Sirainen <tss@iki.fi>
parents: 2222
diff changeset
1419 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
1420 ])
4415
b91816cd1d16 Added TLS support for LDAP if the library supports it.
Timo Sirainen <tss@iki.fi>
parents: 4411
diff changeset
1421 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
1422 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
1423 ])
1284
71f61b6a0f02 cleanups
Timo Sirainen <tss@iki.fi>
parents: 1283
diff changeset
1424 AUTH_LIBS="$AUTH_LIBS -lldap"
1057
c5ab972db48c libldap checks, --without-pop3 disables pop3 server
Timo Sirainen <tss@iki.fi>
parents: 1049
diff changeset
1425
c5ab972db48c libldap checks, --without-pop3 disables pop3 server
Timo Sirainen <tss@iki.fi>
parents: 1049
diff changeset
1426 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
1427 AC_DEFINE(PASSDB_LDAP,, Build with LDAP support)
c5ab972db48c libldap checks, --without-pop3 disables pop3 server
Timo Sirainen <tss@iki.fi>
parents: 1049
diff changeset
1428 userdb="$userdb ldap"
c5ab972db48c libldap checks, --without-pop3 disables pop3 server
Timo Sirainen <tss@iki.fi>
parents: 1049
diff changeset
1429 passdb="$passdb ldap"
c5ab972db48c libldap checks, --without-pop3 disables pop3 server
Timo Sirainen <tss@iki.fi>
parents: 1049
diff changeset
1430 ])
c5ab972db48c libldap checks, --without-pop3 disables pop3 server
Timo Sirainen <tss@iki.fi>
parents: 1049
diff changeset
1431 ])
c5ab972db48c libldap checks, --without-pop3 disables pop3 server
Timo Sirainen <tss@iki.fi>
parents: 1049
diff changeset
1432 fi
c5ab972db48c libldap checks, --without-pop3 disables pop3 server
Timo Sirainen <tss@iki.fi>
parents: 1049
diff changeset
1433
1283
2d8af547a8b4 Added PostgreSQL support, patch by Alex Howansky
Timo Sirainen <tss@iki.fi>
parents: 1256
diff changeset
1434 if test $want_pgsql = yes; then
2d8af547a8b4 Added PostgreSQL support, patch by Alex Howansky
Timo Sirainen <tss@iki.fi>
parents: 1256
diff changeset
1435 # based on code from PHP
2d8af547a8b4 Added PostgreSQL support, patch by Alex Howansky
Timo Sirainen <tss@iki.fi>
parents: 1256
diff changeset
1436 for i in /usr /usr/local /usr/local/pgsql; do
2d8af547a8b4 Added PostgreSQL support, patch by Alex Howansky
Timo Sirainen <tss@iki.fi>
parents: 1256
diff changeset
1437 for j in include include/pgsql include/postgres include/postgresql ""; do
2d8af547a8b4 Added PostgreSQL support, patch by Alex Howansky
Timo Sirainen <tss@iki.fi>
parents: 1256
diff changeset
1438 if test -r "$i/$j/libpq-fe.h"; then
1286
b8ecb067141a cleanup
Timo Sirainen <tss@iki.fi>
parents: 1284
diff changeset
1439 PGSQL_INCLUDE=$i/$j
b8ecb067141a cleanup
Timo Sirainen <tss@iki.fi>
parents: 1284
diff changeset
1440 fi
1283
2d8af547a8b4 Added PostgreSQL support, patch by Alex Howansky
Timo Sirainen <tss@iki.fi>
parents: 1256
diff changeset
1441 done
4142
08aef9a8e22c Added lib64 directory to mysql/pgsql checks. Removed all special lib/include
Timo Sirainen <tss@iki.fi>
parents: 4141
diff changeset
1442 for lib in lib lib64; do
08aef9a8e22c Added lib64 directory to mysql/pgsql checks. Removed all special lib/include
Timo Sirainen <tss@iki.fi>
parents: 4141
diff changeset
1443 for j in $lib $lib/pgsql $lib/postgres $lib/postgresql ""; do
1283
2d8af547a8b4 Added PostgreSQL support, patch by Alex Howansky
Timo Sirainen <tss@iki.fi>
parents: 1256
diff changeset
1444 if test -f "$i/$j/libpq.so" || test -f "$i/$j/libpq.a"; then
2d8af547a8b4 Added PostgreSQL support, patch by Alex Howansky
Timo Sirainen <tss@iki.fi>
parents: 1256
diff changeset
1445 PGSQL_LIBDIR=$i/$j
2d8af547a8b4 Added PostgreSQL support, patch by Alex Howansky
Timo Sirainen <tss@iki.fi>
parents: 1256
diff changeset
1446 fi
4142
08aef9a8e22c Added lib64 directory to mysql/pgsql checks. Removed all special lib/include
Timo Sirainen <tss@iki.fi>
parents: 4141
diff changeset
1447 done
1283
2d8af547a8b4 Added PostgreSQL support, patch by Alex Howansky
Timo Sirainen <tss@iki.fi>
parents: 1256
diff changeset
1448 done
2d8af547a8b4 Added PostgreSQL support, patch by Alex Howansky
Timo Sirainen <tss@iki.fi>
parents: 1256
diff changeset
1449 done
2d8af547a8b4 Added PostgreSQL support, patch by Alex Howansky
Timo Sirainen <tss@iki.fi>
parents: 1256
diff changeset
1450
2d8af547a8b4 Added PostgreSQL support, patch by Alex Howansky
Timo Sirainen <tss@iki.fi>
parents: 1256
diff changeset
1451 old_LIBS=$LIBS
1287
38b7fe3a596e pgsql check fixes
Timo Sirainen <tss@iki.fi>
parents: 1286
diff changeset
1452 if test "$PGSQL_LIBDIR" != ""; then
38b7fe3a596e pgsql check fixes
Timo Sirainen <tss@iki.fi>
parents: 1286
diff changeset
1453 LIBS="$LIBS -L$PGSQL_LIBDIR"
38b7fe3a596e pgsql check fixes
Timo Sirainen <tss@iki.fi>
parents: 1286
diff changeset
1454 fi
1283
2d8af547a8b4 Added PostgreSQL support, patch by Alex Howansky
Timo Sirainen <tss@iki.fi>
parents: 1256
diff changeset
1455
2d8af547a8b4 Added PostgreSQL support, patch by Alex Howansky
Timo Sirainen <tss@iki.fi>
parents: 1256
diff changeset
1456 AC_CHECK_LIB(pq, PQconnectdb, [
4300
3eeceb1156ad Check for existence of PQescapeStringConn() in PostgreSQL library. Forgot to
Timo Sirainen <tss@iki.fi>
parents: 4258
diff changeset
1457 AC_CHECK_LIB(pq, PQescapeStringConn, [
3eeceb1156ad Check for existence of PQescapeStringConn() in PostgreSQL library. Forgot to
Timo Sirainen <tss@iki.fi>
parents: 4258
diff changeset
1458 AC_DEFINE(HAVE_PQESCAPE_STRING_CONN,, Define if libpq has PQescapeStringConn function)
3eeceb1156ad Check for existence of PQescapeStringConn() in PostgreSQL library. Forgot to
Timo Sirainen <tss@iki.fi>
parents: 4258
diff changeset
1459 ])
1287
38b7fe3a596e pgsql check fixes
Timo Sirainen <tss@iki.fi>
parents: 1286
diff changeset
1460 old_CPPFLAGS=$CPPFLAGS
38b7fe3a596e pgsql check fixes
Timo Sirainen <tss@iki.fi>
parents: 1286
diff changeset
1461 if test "$PGSQL_INCLUDE" != ""; then
38b7fe3a596e pgsql check fixes
Timo Sirainen <tss@iki.fi>
parents: 1286
diff changeset
1462 CPPFLAGS="$CPPFLAGS -I $PGSQL_INCLUDE"
38b7fe3a596e pgsql check fixes
Timo Sirainen <tss@iki.fi>
parents: 1286
diff changeset
1463 fi
38b7fe3a596e pgsql check fixes
Timo Sirainen <tss@iki.fi>
parents: 1286
diff changeset
1464 AC_CHECK_HEADER(libpq-fe.h, [
38b7fe3a596e pgsql check fixes
Timo Sirainen <tss@iki.fi>
parents: 1286
diff changeset
1465 if test "$PGSQL_INCLUDE" != ""; then
2754
3c3ac12be307 Created generic asynchronous SQL API and implemented MySQL and PostgreSQL
Timo Sirainen <tss@iki.fi>
parents: 2717
diff changeset
1466 SQL_CFLAGS="$SQL_CFLAGS -I$PGSQL_INCLUDE"
1287
38b7fe3a596e pgsql check fixes
Timo Sirainen <tss@iki.fi>
parents: 1286
diff changeset
1467 fi
38b7fe3a596e pgsql check fixes
Timo Sirainen <tss@iki.fi>
parents: 1286
diff changeset
1468 if test "$PGSQL_LIBDIR" != ""; then
2754
3c3ac12be307 Created generic asynchronous SQL API and implemented MySQL and PostgreSQL
Timo Sirainen <tss@iki.fi>
parents: 2717
diff changeset
1469 SQL_LIBS="$SQL_LIBS -L$PGSQL_LIBDIR"
1287
38b7fe3a596e pgsql check fixes
Timo Sirainen <tss@iki.fi>
parents: 1286
diff changeset
1470 fi
2754
3c3ac12be307 Created generic asynchronous SQL API and implemented MySQL and PostgreSQL
Timo Sirainen <tss@iki.fi>
parents: 2717
diff changeset
1471 SQL_LIBS="$SQL_LIBS -lpq"
3c3ac12be307 Created generic asynchronous SQL API and implemented MySQL and PostgreSQL
Timo Sirainen <tss@iki.fi>
parents: 2717
diff changeset
1472 AC_DEFINE(HAVE_PGSQL,, Build with PostgreSQL support)
3943
cbe5c6772e0d Added support for dynamically building SQL drivers.
Timo Sirainen <tss@iki.fi>
parents: 3934
diff changeset
1473 found_sql_drivers="$found_sql_drivers pgsql"
cbe5c6772e0d Added support for dynamically building SQL drivers.
Timo Sirainen <tss@iki.fi>
parents: 3934
diff changeset
1474
cbe5c6772e0d Added support for dynamically building SQL drivers.
Timo Sirainen <tss@iki.fi>
parents: 3934
diff changeset
1475 if test "$all_sql_drivers" = "yes"; then
cbe5c6772e0d Added support for dynamically building SQL drivers.
Timo Sirainen <tss@iki.fi>
parents: 3934
diff changeset
1476 sql_drivers="$sql_drivers pgsql"
cbe5c6772e0d Added support for dynamically building SQL drivers.
Timo Sirainen <tss@iki.fi>
parents: 3934
diff changeset
1477 fi
1283
2d8af547a8b4 Added PostgreSQL support, patch by Alex Howansky
Timo Sirainen <tss@iki.fi>
parents: 1256
diff changeset
1478 ])
1287
38b7fe3a596e pgsql check fixes
Timo Sirainen <tss@iki.fi>
parents: 1286
diff changeset
1479 CPPFLAGS=$old_CPPFLAGS
1283
2d8af547a8b4 Added PostgreSQL support, patch by Alex Howansky
Timo Sirainen <tss@iki.fi>
parents: 1256
diff changeset
1480 ])
2d8af547a8b4 Added PostgreSQL support, patch by Alex Howansky
Timo Sirainen <tss@iki.fi>
parents: 1256
diff changeset
1481 LIBS=$old_LIBS
2d8af547a8b4 Added PostgreSQL support, patch by Alex Howansky
Timo Sirainen <tss@iki.fi>
parents: 1256
diff changeset
1482 fi
2d8af547a8b4 Added PostgreSQL support, patch by Alex Howansky
Timo Sirainen <tss@iki.fi>
parents: 1256
diff changeset
1483
1995
cc64f8bb4716 MySQL authentication patch by Matther Reimer
Timo Sirainen <tss@iki.fi>
parents: 1990
diff changeset
1484 if test $want_mysql = yes; then
2384
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
1485 # based on code from PHP
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
1486 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
1487 for j in include include/mysql ""; do
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
1488 if test -r "$i/$j/mysql.h"; then
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
1489 MYSQL_INCLUDE=$i/$j
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
1490 fi
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
1491 done
4142
08aef9a8e22c Added lib64 directory to mysql/pgsql checks. Removed all special lib/include
Timo Sirainen <tss@iki.fi>
parents: 4141
diff changeset
1492 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
1493 if test -f "$i/$j/libmysqlclient.so" || test -f "$i/$j/libmysqlclient.a"; then
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
1494 MYSQL_LIBDIR=$i/$j
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
1495 fi
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
1496 done
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
1497 done
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
1498
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
1499 old_LIBS=$LIBS
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
1500 if test "$MYSQL_LIBDIR" != ""; then
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
1501 LIBS="$LIBS -L$MYSQL_LIBDIR"
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
1502 fi
1995
cc64f8bb4716 MySQL authentication patch by Matther Reimer
Timo Sirainen <tss@iki.fi>
parents: 1990
diff changeset
1503
2416
e6594431ee4f If -lmysqlclient doesn't automatically link with zlib, do it manually.
Timo Sirainen <tss@iki.fi>
parents: 2403
diff changeset
1504 mysql_lib=""
4159
22bc42a33b79 And add -lm also to LIBS when checking if -lmysqlclient works..
Timo Sirainen <tss@iki.fi>
parents: 4158
diff changeset
1505 LIBS="$LIBS -lz -lm"
2384
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
1506 AC_CHECK_LIB(mysqlclient, mysql_init, [
4158
f1cd4665f82d libmysqlclient needs also -lm
Timo Sirainen <tss@iki.fi>
parents: 4144
diff changeset
1507 mysql_lib="-lmysqlclient -lz -lm"
2416
e6594431ee4f If -lmysqlclient doesn't automatically link with zlib, do it manually.
Timo Sirainen <tss@iki.fi>
parents: 2403
diff changeset
1508 ])
e6594431ee4f If -lmysqlclient doesn't automatically link with zlib, do it manually.
Timo Sirainen <tss@iki.fi>
parents: 2403
diff changeset
1509
e6594431ee4f If -lmysqlclient doesn't automatically link with zlib, do it manually.
Timo Sirainen <tss@iki.fi>
parents: 2403
diff changeset
1510 if test "$mysql_lib" != ""; then
2384
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
1511 old_CPPFLAGS=$CPPFLAGS
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
1512 if test "$MYSQL_INCLUDE" != ""; then
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
1513 CPPFLAGS="$CPPFLAGS -I $MYSQL_INCLUDE"
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
1514 fi
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
1515 AC_CHECK_HEADER(mysql.h, [
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
1516 if test "$MYSQL_INCLUDE" != ""; then
2754
3c3ac12be307 Created generic asynchronous SQL API and implemented MySQL and PostgreSQL
Timo Sirainen <tss@iki.fi>
parents: 2717
diff changeset
1517 SQL_CFLAGS="$SQL_CFLAGS -I$MYSQL_INCLUDE"
2384
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
1518 fi
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
1519 if test "$MYSQL_LIBDIR" != ""; then
2754
3c3ac12be307 Created generic asynchronous SQL API and implemented MySQL and PostgreSQL
Timo Sirainen <tss@iki.fi>
parents: 2717
diff changeset
1520 SQL_LIBS="$SQL_LIBS -L$MYSQL_LIBDIR"
2369
189a6de6b166 Added MySQL SSL support.
Timo Sirainen <tss@iki.fi>
parents: 2367
diff changeset
1521 fi
2754
3c3ac12be307 Created generic asynchronous SQL API and implemented MySQL and PostgreSQL
Timo Sirainen <tss@iki.fi>
parents: 2717
diff changeset
1522 SQL_LIBS="$SQL_LIBS $mysql_lib"
2384
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
1523
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
1524 AC_CHECK_LIB(mysqlclient, mysql_ssl_set, [
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
1525 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
1526 if test "x$have_openssl" = "yes"; then
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
1527 ssl_define="#define HAVE_OPENSSL"
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
1528 else
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
1529 ssl_define=""
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
1530 fi
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
1531 AC_TRY_COMPILE([
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
1532 $ssl_define
2403
3af28e102a39 Mysql check fix
Timo Sirainen <tss@iki.fi>
parents: 2384
diff changeset
1533 #include <mysql.h>
2384
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
1534 ], [
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
1535 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
1536 ], [
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
1537 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
1538 ])
2369
189a6de6b166 Added MySQL SSL support.
Timo Sirainen <tss@iki.fi>
parents: 2367
diff changeset
1539 ])
2384
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
1540
2754
3c3ac12be307 Created generic asynchronous SQL API and implemented MySQL and PostgreSQL
Timo Sirainen <tss@iki.fi>
parents: 2717
diff changeset
1541 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
1542 found_sql_drivers="$found_sql_drivers mysql"
2369
189a6de6b166 Added MySQL SSL support.
Timo Sirainen <tss@iki.fi>
parents: 2367
diff changeset
1543 ])
2384
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
1544 CPPFLAGS=$old_CPPFLAGS
2416
e6594431ee4f If -lmysqlclient doesn't automatically link with zlib, do it manually.
Timo Sirainen <tss@iki.fi>
parents: 2403
diff changeset
1545 fi
1995
cc64f8bb4716 MySQL authentication patch by Matther Reimer
Timo Sirainen <tss@iki.fi>
parents: 1990
diff changeset
1546
2384
0cc72087752f Better MySQL checking. Patch by John Dennis
Timo Sirainen <tss@iki.fi>
parents: 2377
diff changeset
1547 LIBS=$old_LIBS
1995
cc64f8bb4716 MySQL authentication patch by Matther Reimer
Timo Sirainen <tss@iki.fi>
parents: 1990
diff changeset
1548 fi
cc64f8bb4716 MySQL authentication patch by Matther Reimer
Timo Sirainen <tss@iki.fi>
parents: 1990
diff changeset
1549
3919
b967ffb7e3a6 SQLite support. Patch by Jakob Hirsch.
Timo Sirainen <tss@iki.fi>
parents: 3904
diff changeset
1550 if test $want_sqlite = yes; then
b967ffb7e3a6 SQLite support. Patch by Jakob Hirsch.
Timo Sirainen <tss@iki.fi>
parents: 3904
diff changeset
1551 AC_CHECK_LIB(sqlite3, sqlite3_open, [
b967ffb7e3a6 SQLite support. Patch by Jakob Hirsch.
Timo Sirainen <tss@iki.fi>
parents: 3904
diff changeset
1552 AC_CHECK_HEADER(sqlite3.h, [
4142
08aef9a8e22c Added lib64 directory to mysql/pgsql checks. Removed all special lib/include
Timo Sirainen <tss@iki.fi>
parents: 4141
diff changeset
1553 SQL_LIBS="$SQL_LIBS -lsqlite3 -lz"
3919
b967ffb7e3a6 SQLite support. Patch by Jakob Hirsch.
Timo Sirainen <tss@iki.fi>
parents: 3904
diff changeset
1554
b967ffb7e3a6 SQLite support. Patch by Jakob Hirsch.
Timo Sirainen <tss@iki.fi>
parents: 3904
diff changeset
1555 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
1556 found_sql_drivers="$found_sql_drivers sqlite"
3919
b967ffb7e3a6 SQLite support. Patch by Jakob Hirsch.
Timo Sirainen <tss@iki.fi>
parents: 3904
diff changeset
1557 ])
4144
13665379afa8 Unbreak last sqlite change
Timo Sirainen <tss@iki.fi>
parents: 4143
diff changeset
1558 ])
3919
b967ffb7e3a6 SQLite support. Patch by Jakob Hirsch.
Timo Sirainen <tss@iki.fi>
parents: 3904
diff changeset
1559 fi
b967ffb7e3a6 SQLite support. Patch by Jakob Hirsch.
Timo Sirainen <tss@iki.fi>
parents: 3904
diff changeset
1560
4013
bf0357107349 Added --with-sql option to build with SQL userdb/passdb but without any
Timo Sirainen <tss@iki.fi>
parents: 4012
diff changeset
1561 if test "$found_sql_drivers" != "" -o "$want_sql" = "yes"; then
3943
cbe5c6772e0d Added support for dynamically building SQL drivers.
Timo Sirainen <tss@iki.fi>
parents: 3934
diff changeset
1562 if test "$all_sql_drivers" = "yes"; then
cbe5c6772e0d Added support for dynamically building SQL drivers.
Timo Sirainen <tss@iki.fi>
parents: 3934
diff changeset
1563 sql_drivers="$found_sql_drivers"
cbe5c6772e0d Added support for dynamically building SQL drivers.
Timo Sirainen <tss@iki.fi>
parents: 3934
diff changeset
1564 fi
cbe5c6772e0d Added support for dynamically building SQL drivers.
Timo Sirainen <tss@iki.fi>
parents: 3934
diff changeset
1565
2754
3c3ac12be307 Created generic asynchronous SQL API and implemented MySQL and PostgreSQL
Timo Sirainen <tss@iki.fi>
parents: 2717
diff changeset
1566 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
1567 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
1568 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
1569 passdb="$passdb sql"
3943
cbe5c6772e0d Added support for dynamically building SQL drivers.
Timo Sirainen <tss@iki.fi>
parents: 3934
diff changeset
1570 userdb="$userdb sql"
2754
3c3ac12be307 Created generic asynchronous SQL API and implemented MySQL and PostgreSQL
Timo Sirainen <tss@iki.fi>
parents: 2717
diff changeset
1571 fi
3c3ac12be307 Created generic asynchronous SQL API and implemented MySQL and PostgreSQL
Timo Sirainen <tss@iki.fi>
parents: 2717
diff changeset
1572
280
fa2d1a1d025e vpopmail authentication. compiles, not tested if it really works.
Timo Sirainen <tss@iki.fi>
parents: 247
diff changeset
1573 if test $want_vpopmail = yes; then
fa2d1a1d025e vpopmail authentication. compiles, not tested if it really works.
Timo Sirainen <tss@iki.fi>
parents: 247
diff changeset
1574 vpopmail_home="`echo ~vpopmail`"
281
b7fe6867e549 print "checking vpopmail"
Timo Sirainen <tss@iki.fi>
parents: 280
diff changeset
1575 vpop_libdeps="$vpopmail_home/etc/lib_deps"
b7fe6867e549 print "checking vpopmail"
Timo Sirainen <tss@iki.fi>
parents: 280
diff changeset
1576
b7fe6867e549 print "checking vpopmail"
Timo Sirainen <tss@iki.fi>
parents: 280
diff changeset
1577 AC_MSG_CHECKING([for vpopmail configuration at $vpop_libdeps])
b7fe6867e549 print "checking vpopmail"
Timo Sirainen <tss@iki.fi>
parents: 280
diff changeset
1578 if test -f $vpop_libdeps; then
283
00dbc7e5f441 vpopmail needs also crypt()
Timo Sirainen <tss@iki.fi>
parents: 282
diff changeset
1579 need_crypt=yes
1284
71f61b6a0f02 cleanups
Timo Sirainen <tss@iki.fi>
parents: 1283
diff changeset
1580 AUTH_CFLAGS="$AUTH_CFLAGS `cat $vpopmail_home/etc/inc_deps` $CFLAGS"
71f61b6a0f02 cleanups
Timo Sirainen <tss@iki.fi>
parents: 1283
diff changeset
1581 AUTH_LIBS="$AUTH_LIBS `cat $vpop_libdeps`"
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
1582 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
1583 AC_DEFINE(PASSDB_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
1584 userdb="$userdb vpopmail"
cacabd33c68a Initial code for POP3 server. RETR isn't working right yet, there's some
Timo Sirainen <tss@iki.fi>
parents: 1022
diff changeset
1585 passdb="$passdb vpopmail"
281
b7fe6867e549 print "checking vpopmail"
Timo Sirainen <tss@iki.fi>
parents: 280
diff changeset
1586 AC_MSG_RESULT(found)
280
fa2d1a1d025e vpopmail authentication. compiles, not tested if it really works.
Timo Sirainen <tss@iki.fi>
parents: 247
diff changeset
1587 else
fa2d1a1d025e vpopmail authentication. compiles, not tested if it really works.
Timo Sirainen <tss@iki.fi>
parents: 247
diff changeset
1588 want_vpopmail=no
281
b7fe6867e549 print "checking vpopmail"
Timo Sirainen <tss@iki.fi>
parents: 280
diff changeset
1589 AC_MSG_RESULT(not found)
280
fa2d1a1d025e vpopmail authentication. compiles, not tested if it really works.
Timo Sirainen <tss@iki.fi>
parents: 247
diff changeset
1590 fi
fa2d1a1d025e vpopmail authentication. compiles, not tested if it really works.
Timo Sirainen <tss@iki.fi>
parents: 247
diff changeset
1591 fi
fa2d1a1d025e vpopmail authentication. compiles, not tested if it really works.
Timo Sirainen <tss@iki.fi>
parents: 247
diff changeset
1592
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1593 if test $need_crypt = yes; then
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1594 AC_CHECK_LIB(crypt, crypt, [
1924
4dbe61f1aea6 Put -lcrypt to first in AUTH_LIBS to fix some linking problems with Solaris
Timo Sirainen <tss@iki.fi>
parents: 1915
diff changeset
1595 AUTH_LIBS="-lcrypt $AUTH_LIBS"
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1596 ], [
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1597 AC_CHECK_FUNC(crypt,, [
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
1598 AC_MSG_ERROR([crypt() wasn't found])
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1599 ])
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1600 ])
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1601 fi
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1602
1150
18a2074a4d3d Support for dynamic authentication modules.
Timo Sirainen <tss@iki.fi>
parents: 1096
diff changeset
1603 dnl * dynamic modules?
1511
a4ad03c210af Check if dlopen is in libc too.
Timo Sirainen <tss@iki.fi>
parents: 1467
diff changeset
1604 have_modules=no
1539
c31852cc94f5 Check dlopen() from libc before from libdl
Timo Sirainen <tss@iki.fi>
parents: 1524
diff changeset
1605 AC_CHECK_FUNC(dlopen, [
1511
a4ad03c210af Check if dlopen is in libc too.
Timo Sirainen <tss@iki.fi>
parents: 1467
diff changeset
1606 have_modules=yes
1539
c31852cc94f5 Check dlopen() from libc before from libdl
Timo Sirainen <tss@iki.fi>
parents: 1524
diff changeset
1607 MODULE_LIBS="-export-dynamic"
1511
a4ad03c210af Check if dlopen is in libc too.
Timo Sirainen <tss@iki.fi>
parents: 1467
diff changeset
1608 ], [
1539
c31852cc94f5 Check dlopen() from libc before from libdl
Timo Sirainen <tss@iki.fi>
parents: 1524
diff changeset
1609 AC_CHECK_LIB(dl, dlopen, [
1511
a4ad03c210af Check if dlopen is in libc too.
Timo Sirainen <tss@iki.fi>
parents: 1467
diff changeset
1610 have_modules=yes
1539
c31852cc94f5 Check dlopen() from libc before from libdl
Timo Sirainen <tss@iki.fi>
parents: 1524
diff changeset
1611 MODULE_LIBS="-export-dynamic -ldl"
1511
a4ad03c210af Check if dlopen is in libc too.
Timo Sirainen <tss@iki.fi>
parents: 1467
diff changeset
1612 ])
a4ad03c210af Check if dlopen is in libc too.
Timo Sirainen <tss@iki.fi>
parents: 1467
diff changeset
1613 ])
a4ad03c210af Check if dlopen is in libc too.
Timo Sirainen <tss@iki.fi>
parents: 1467
diff changeset
1614
a4ad03c210af Check if dlopen is in libc too.
Timo Sirainen <tss@iki.fi>
parents: 1467
diff changeset
1615 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
1616 AC_DEFINE(HAVE_MODULES,, Define if you have dynamic module support)
1150
18a2074a4d3d Support for dynamic authentication modules.
Timo Sirainen <tss@iki.fi>
parents: 1096
diff changeset
1617 userdb="$userdb (modules)"
18a2074a4d3d Support for dynamic authentication modules.
Timo Sirainen <tss@iki.fi>
parents: 1096
diff changeset
1618 passdb="$passdb (modules)"
1465
03dd87873a81 Added support for dynamically loadable imap/pop3 modules.
Timo Sirainen <tss@iki.fi>
parents: 1462
diff changeset
1619
03dd87873a81 Added support for dynamically loadable imap/pop3 modules.
Timo Sirainen <tss@iki.fi>
parents: 1462
diff changeset
1620 AC_SUBST(MODULE_LIBS)
1511
a4ad03c210af Check if dlopen is in libc too.
Timo Sirainen <tss@iki.fi>
parents: 1467
diff changeset
1621 fi
1150
18a2074a4d3d Support for dynamic authentication modules.
Timo Sirainen <tss@iki.fi>
parents: 1096
diff changeset
1622
1283
2d8af547a8b4 Added PostgreSQL support, patch by Alex Howansky
Timo Sirainen <tss@iki.fi>
parents: 1256
diff changeset
1623 AC_SUBST(AUTH_CFLAGS)
1284
71f61b6a0f02 cleanups
Timo Sirainen <tss@iki.fi>
parents: 1283
diff changeset
1624 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
1625 AC_SUBST(SQL_CFLAGS)
3c3ac12be307 Created generic asynchronous SQL API and implemented MySQL and PostgreSQL
Timo Sirainen <tss@iki.fi>
parents: 2717
diff changeset
1626 AC_SUBST(SQL_LIBS)
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1627
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1628 dnl **
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1629 dnl ** Index file compatibility flags
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1630 dnl **
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1631
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1632 dnl * currently just checking for endianess
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1633
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1634 AC_C_BIGENDIAN
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1635
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1636 if test $ac_cv_c_bigendian = yes; then
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1637 flags=0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1638 else
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1639 flags=1
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1640 fi
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1641
742
b3dd87844fff acconfig.h is deprecated with autoconf 2.5, changed configure to contain
Timo Sirainen <tss@iki.fi>
parents: 739
diff changeset
1642 AC_DEFINE_UNQUOTED(MAIL_INDEX_COMPAT_FLAGS, $flags, Index file compatibility flags)
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1643
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1644 dnl **
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1645 dnl ** IPv6 support
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1646 dnl **
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1647
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1648 if test "x$want_ipv6" = "xyes"; then
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1649 AC_MSG_CHECKING([for IPv6])
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1650 AC_CACHE_VAL(i_cv_type_in6_addr,
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
1651 [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1652 #include <sys/types.h>
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1653 #include <sys/socket.h>
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1654 #include <netinet/in.h>
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1655 #include <netdb.h>
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
1656 #include <arpa/inet.h>]],
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
1657 [[struct in6_addr i;]])],
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
1658 [i_cv_type_in6_addr=yes],
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
1659 [i_cv_type_in6_addr=no])])
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1660 if test $i_cv_type_in6_addr = 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
1661 AC_DEFINE(HAVE_IPV6,, Build with IPv6 support)
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1662 fi
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1663 AC_MSG_RESULT($i_cv_type_in6_addr)
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1664 fi
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1665
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1666 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
1667 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
1668 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
1669
3997
e7df415a97f1 Build fixes
Timo Sirainen <tss@iki.fi>
parents: 3995
diff changeset
1670 maildir_libs='$(top_builddir)/src/lib-storage/index/maildir/libstorage_maildir.a'
e7df415a97f1 Build fixes
Timo Sirainen <tss@iki.fi>
parents: 3995
diff changeset
1671 mbox_libs='$(top_builddir)/src/lib-storage/index/mbox/libstorage_mbox.a'
e7df415a97f1 Build fixes
Timo Sirainen <tss@iki.fi>
parents: 3995
diff changeset
1672 dbox_libs='$(top_builddir)/src/lib-storage/index/dbox/libstorage_dbox.a'
e7df415a97f1 Build fixes
Timo Sirainen <tss@iki.fi>
parents: 3995
diff changeset
1673 index_libs='$(top_builddir)/src/lib-storage/index/libstorage_index.a $(top_builddir)/src/lib-index/libindex.a'
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
1674
4422
c46c02c7e602 Include linux/unistd.h instead of asm/unistd.h when checking for epoll.
Timo Sirainen <tss@iki.fi>
parents: 4415
diff changeset
1675 deliver_storage="mbox"
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
1676 STORAGE_LIBS=
54015ae11177 --with-storage=maildir,mbox can now be used to compile in only the wanted
Timo Sirainen <tss@iki.fi>
parents: 1403
diff changeset
1677 for storage in $mail_storages; do
4422
c46c02c7e602 Include linux/unistd.h instead of asm/unistd.h when checking for epoll.
Timo Sirainen <tss@iki.fi>
parents: 4415
diff changeset
1678 if test "$storage" = "$deliver_storage"; then
c46c02c7e602 Include linux/unistd.h instead of asm/unistd.h when checking for epoll.
Timo Sirainen <tss@iki.fi>
parents: 4415
diff changeset
1679 deliver_storage=""
c46c02c7e602 Include linux/unistd.h instead of asm/unistd.h when checking for epoll.
Timo Sirainen <tss@iki.fi>
parents: 4415
diff changeset
1680 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
1681 STORAGE_LIBS="$STORAGE_LIBS `eval \"echo \\$${storage}_libs\"`"
54015ae11177 --with-storage=maildir,mbox can now be used to compile in only the wanted
Timo Sirainen <tss@iki.fi>
parents: 1403
diff changeset
1682 done
54015ae11177 --with-storage=maildir,mbox can now be used to compile in only the wanted
Timo Sirainen <tss@iki.fi>
parents: 1403
diff changeset
1683 STORAGE_LIBS="$STORAGE_LIBS $index_libs"
54015ae11177 --with-storage=maildir,mbox can now be used to compile in only the wanted
Timo Sirainen <tss@iki.fi>
parents: 1403
diff changeset
1684 AC_SUBST(STORAGE_LIBS)
54015ae11177 --with-storage=maildir,mbox can now be used to compile in only the wanted
Timo Sirainen <tss@iki.fi>
parents: 1403
diff changeset
1685
4422
c46c02c7e602 Include linux/unistd.h instead of asm/unistd.h when checking for epoll.
Timo Sirainen <tss@iki.fi>
parents: 4415
diff changeset
1686 if test -n "$deliver_storage" && test "$want_deliver" = yes; then
c46c02c7e602 Include linux/unistd.h instead of asm/unistd.h when checking for epoll.
Timo Sirainen <tss@iki.fi>
parents: 4415
diff changeset
1687 AC_ERROR([If you remove mbox from storages, you need to build --without-deliver])
c46c02c7e602 Include linux/unistd.h instead of asm/unistd.h when checking for epoll.
Timo Sirainen <tss@iki.fi>
parents: 4415
diff changeset
1688 fi
c46c02c7e602 Include linux/unistd.h instead of asm/unistd.h when checking for epoll.
Timo Sirainen <tss@iki.fi>
parents: 4415
diff changeset
1689
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
1690 dnl **
3943
cbe5c6772e0d Added support for dynamically building SQL drivers.
Timo Sirainen <tss@iki.fi>
parents: 3934
diff changeset
1691 dnl ** SQL drivers
cbe5c6772e0d Added support for dynamically building SQL drivers.
Timo Sirainen <tss@iki.fi>
parents: 3934
diff changeset
1692 dnl **
cbe5c6772e0d Added support for dynamically building SQL drivers.
Timo Sirainen <tss@iki.fi>
parents: 3934
diff changeset
1693
cbe5c6772e0d Added support for dynamically building SQL drivers.
Timo Sirainen <tss@iki.fi>
parents: 3934
diff changeset
1694 for driver in $sql_drivers; do
cbe5c6772e0d Added support for dynamically building SQL drivers.
Timo Sirainen <tss@iki.fi>
parents: 3934
diff changeset
1695 if test "$driver" = "pgsql"; then
cbe5c6772e0d Added support for dynamically building SQL drivers.
Timo Sirainen <tss@iki.fi>
parents: 3934
diff changeset
1696 AC_DEFINE(BUILD_PGSQL,, Built-in PostgreSQL support)
cbe5c6772e0d Added support for dynamically building SQL drivers.
Timo Sirainen <tss@iki.fi>
parents: 3934
diff changeset
1697 elif test "$driver" = "mysql"; then
cbe5c6772e0d Added support for dynamically building SQL drivers.
Timo Sirainen <tss@iki.fi>
parents: 3934
diff changeset
1698 AC_DEFINE(BUILD_MYSQL,, Built-in MySQL support)
cbe5c6772e0d Added support for dynamically building SQL drivers.
Timo Sirainen <tss@iki.fi>
parents: 3934
diff changeset
1699 elif test "$driver" = "sqlite"; then
cbe5c6772e0d Added support for dynamically building SQL drivers.
Timo Sirainen <tss@iki.fi>
parents: 3934
diff changeset
1700 AC_DEFINE(BUILD_SQLITE,, Built-in SQLite support)
cbe5c6772e0d Added support for dynamically building SQL drivers.
Timo Sirainen <tss@iki.fi>
parents: 3934
diff changeset
1701 fi
cbe5c6772e0d Added support for dynamically building SQL drivers.
Timo Sirainen <tss@iki.fi>
parents: 3934
diff changeset
1702 done
cbe5c6772e0d Added support for dynamically building SQL drivers.
Timo Sirainen <tss@iki.fi>
parents: 3934
diff changeset
1703
cbe5c6772e0d Added support for dynamically building SQL drivers.
Timo Sirainen <tss@iki.fi>
parents: 3934
diff changeset
1704 AC_SUBST(sql_drivers)
cbe5c6772e0d Added support for dynamically building SQL drivers.
Timo Sirainen <tss@iki.fi>
parents: 3934
diff changeset
1705
cbe5c6772e0d Added support for dynamically building SQL drivers.
Timo Sirainen <tss@iki.fi>
parents: 3934
diff changeset
1706 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
1707 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
1708 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
1709
884da753caba If zlib.h isn't found, don't try to build the zlib plugin.
Timo Sirainen <tss@iki.fi>
parents: 3948
diff changeset
1710 have_zlib=no
884da753caba If zlib.h isn't found, don't try to build the zlib plugin.
Timo Sirainen <tss@iki.fi>
parents: 3948
diff changeset
1711 AC_CHECK_HEADER(zlib.h, [
884da753caba If zlib.h isn't found, don't try to build the zlib plugin.
Timo Sirainen <tss@iki.fi>
parents: 3948
diff changeset
1712 have_zlib=yes
884da753caba If zlib.h isn't found, don't try to build the zlib plugin.
Timo Sirainen <tss@iki.fi>
parents: 3948
diff changeset
1713 ])
884da753caba If zlib.h isn't found, don't try to build the zlib plugin.
Timo Sirainen <tss@iki.fi>
parents: 3948
diff changeset
1714 AM_CONDITIONAL(BUILD_ZLIB, test "$have_zlib" = "yes")
884da753caba If zlib.h isn't found, don't try to build the zlib plugin.
Timo Sirainen <tss@iki.fi>
parents: 3948
diff changeset
1715
884da753caba If zlib.h isn't found, don't try to build the zlib plugin.
Timo Sirainen <tss@iki.fi>
parents: 3948
diff changeset
1716 dnl **
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1717 dnl ** capabilities
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1718 dnl **
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1719
4411
a2420b745cd5 Added support for SASL-IR extension.
Timo Sirainen <tss@iki.fi>
parents: 4407
diff changeset
1720 capability="IMAP4rev1 SASL-IR SORT THREAD=REFERENCES MULTIAPPEND UNSELECT LITERAL+ IDLE CHILDREN NAMESPACE LOGIN-REFERRALS"
742
b3dd87844fff acconfig.h is deprecated with autoconf 2.5, changed configure to contain
Timo Sirainen <tss@iki.fi>
parents: 739
diff changeset
1721 AC_DEFINE_UNQUOTED(CAPABILITY_STRING, "$capability", IMAP capabilities)
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1722
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
1723 CFLAGS="$CFLAGS $EXTRA_CFLAGS"
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
1724
3782
c67f77647a6e Added kqueue notification support. Patch by Vaclav Haisman
Timo Sirainen <tss@iki.fi>
parents: 3780
diff changeset
1725 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
1726 AC_CONFIG_FILES([
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1727 Makefile
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1728 doc/Makefile
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1729 src/Makefile
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1730 src/lib/Makefile
2754
3c3ac12be307 Created generic asynchronous SQL API and implemented MySQL and PostgreSQL
Timo Sirainen <tss@iki.fi>
parents: 2717
diff changeset
1731 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
1732 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
1733 src/lib-charset/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
1734 src/lib-dict/Makefile
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1735 src/lib-imap/Makefile
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1736 src/lib-index/Makefile
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1737 src/lib-mail/Makefile
2377
8f5be0be3199 NTLM authentication. Patch by Andrey Panin
Timo Sirainen <tss@iki.fi>
parents: 2369
diff changeset
1738 src/lib-ntlm/Makefile
1058
3b8fb7bf7ecc Moved settings parsing to lib-settings.
Timo Sirainen <tss@iki.fi>
parents: 1057
diff changeset
1739 src/lib-settings/Makefile
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1740 src/lib-storage/Makefile
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1741 src/lib-storage/index/Makefile
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1742 src/lib-storage/index/maildir/Makefile
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1743 src/lib-storage/index/mbox/Makefile
3720
fd0986477809 Initial implementation of Dovecot's own high performance file format, named
Timo Sirainen <tss@iki.fi>
parents: 3705
diff changeset
1744 src/lib-storage/index/dbox/Makefile
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1745 src/lib-storage/subscription-file/Makefile
761
d3bd41a56309 First implementation of SORT extension. String comparing still not up to
Timo Sirainen <tss@iki.fi>
parents: 755
diff changeset
1746 src/lib-storage/register/Makefile
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1747 src/auth/Makefile
4349
4d4c649ac106 Enabled building deliver
Timo Sirainen <tss@iki.fi>
parents: 4348
diff changeset
1748 src/deliver/Makefile
3779
e87a8db60d25 Added --with-docs parameter to specify if documentation should be installed.
Timo Sirainen <tss@iki.fi>
parents: 3762
diff changeset
1749 src/dict/Makefile
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1750 src/imap/Makefile
1049
c41787e8c3f4 Moved common login process code to login-common, created pop3-login.
Timo Sirainen <tss@iki.fi>
parents: 1043
diff changeset
1751 src/imap-login/Makefile
c41787e8c3f4 Moved common login process code to login-common, created pop3-login.
Timo Sirainen <tss@iki.fi>
parents: 1043
diff changeset
1752 src/login-common/Makefile
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1753 src/master/Makefile
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
1754 src/pop3/Makefile
1049
c41787e8c3f4 Moved common login process code to login-common, created pop3-login.
Timo Sirainen <tss@iki.fi>
parents: 1043
diff changeset
1755 src/pop3-login/Makefile
1694
0fae24674a9a Separated rawlog into it's own binary.
Timo Sirainen <tss@iki.fi>
parents: 1669
diff changeset
1756 src/util/Makefile
3738
732b62dc1976 Added beginnings of plugin infrastructure. TODO: These could be optionally
Timo Sirainen <tss@iki.fi>
parents: 3737
diff changeset
1757 src/plugins/Makefile
4082
dcee3dadef51 Added acl.
Timo Sirainen <timo.sirainen@movial.fi>
parents: 4068
diff changeset
1758 src/plugins/acl/Makefile
3972
a506ee4ec31e Added "mail storage conversion" plugin. It can be used with IMAP, POP3
Timo Sirainen <tss@iki.fi>
parents: 3969
diff changeset
1759 src/plugins/convert/Makefile
3738
732b62dc1976 Added beginnings of plugin infrastructure. TODO: These could be optionally
Timo Sirainen <tss@iki.fi>
parents: 3737
diff changeset
1760 src/plugins/quota/Makefile
732b62dc1976 Added beginnings of plugin infrastructure. TODO: These could be optionally
Timo Sirainen <tss@iki.fi>
parents: 3737
diff changeset
1761 src/plugins/imap-quota/Makefile
732b62dc1976 Added beginnings of plugin infrastructure. TODO: These could be optionally
Timo Sirainen <tss@iki.fi>
parents: 3737
diff changeset
1762 src/plugins/trash/Makefile
3800
68e7519ebd90 Added zlib plugin
Timo Sirainen <tss@iki.fi>
parents: 3786
diff changeset
1763 src/plugins/zlib/Makefile
1418
c36d18766a35 0.99.9.1 released. Added redhat spec file.
Timo Sirainen <tss@iki.fi>
parents: 1410
diff changeset
1764 stamp.h
4343
407e6c620d70 dovecot-config now contains module_dir
Timo Sirainen <tss@iki.fi>
parents: 4300
diff changeset
1765 dovecot-config.in])
1096
2ea48622afbc Building in separate directory didn't work
Timo Sirainen <tss@iki.fi>
parents: 1089
diff changeset
1766
2796
fb7f862194b5 Upgrades to autoconf 2.5 and automake >1.4.
Timo Sirainen <tss@iki.fi>
parents: 2784
diff changeset
1767 AC_OUTPUT
1096
2ea48622afbc Building in separate directory didn't work
Timo Sirainen <tss@iki.fi>
parents: 1089
diff changeset
1768
0
3b1985cbc908 Initial revision
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1769 echo
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
1770 echo "Install prefix ...................... : $prefix"
cacabd33c68a Initial code for POP3 server. RETR isn't working right yet, there's some
Timo Sirainen <tss@iki.fi>
parents: 1022
diff changeset
1771 echo "File offsets ........................ : ${offt_bits}bit"
2569
554f1324a435 Added epoll support if --with-ioloop=epoll is given. Patch by Andrey Panin.
Timo Sirainen <tss@iki.fi>
parents: 2538
diff changeset
1772 echo "I/O loop method ..................... : $ioloop"
3745
840cc63e439b Don't allow giving invalid notify methods in --with-notify
Timo Sirainen <tss@iki.fi>
parents: 3744
diff changeset
1773 echo "File change notification method ..... : $have_notify"
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 echo "Building with SSL support ........... : $have_ssl"
cacabd33c68a Initial code for POP3 server. RETR isn't working right yet, there's some
Timo Sirainen <tss@iki.fi>
parents: 1022
diff changeset
1775 echo "Building with IPv6 support .......... : $want_ipv6"
1057
c5ab972db48c libldap checks, --without-pop3 disables pop3 server
Timo Sirainen <tss@iki.fi>
parents: 1049
diff changeset
1776 echo "Building with pop3 server ........... : $want_pop3d"
4422
c46c02c7e602 Include linux/unistd.h instead of asm/unistd.h when checking for epoll.
Timo Sirainen <tss@iki.fi>
parents: 4415
diff changeset
1777 echo "Building with mail delivery agent .. : $want_deliver"
3683
28cca6317829 Added GSSAPI support. Patch by Jelmer Vernooij and some fixes by
Timo Sirainen <tss@iki.fi>
parents: 3671
diff changeset
1778 echo "Building with GSSAPI support ........ : $have_gssapi"
1150
18a2074a4d3d Support for dynamic authentication modules.
Timo Sirainen <tss@iki.fi>
parents: 1096
diff changeset
1779 echo "Building with user database modules . :$userdb"
18a2074a4d3d Support for dynamic authentication modules.
Timo Sirainen <tss@iki.fi>
parents: 1096
diff changeset
1780 echo "Building with password lookup modules :$passdb"
4143
c2ae6dc37a19 Print the SQL drivers we're building.
Timo Sirainen <tss@iki.fi>
parents: 4142
diff changeset
1781 echo "Building with SQL drivers ............:$sql_drivers"
4258
bd93316b078b Note about this being unstable CVS branch
Timo Sirainen <tss@iki.fi>
parents: 4166
diff changeset
1782
bd93316b078b Note about this being unstable CVS branch
Timo Sirainen <tss@iki.fi>
parents: 4166
diff changeset
1783 echo
bd93316b078b Note about this being unstable CVS branch
Timo Sirainen <tss@iki.fi>
parents: 4166
diff changeset
1784 echo "NOTE: This is the UNSTABLE development branch of Dovecot."
bd93316b078b Note about this being unstable CVS branch
Timo Sirainen <tss@iki.fi>
parents: 4166
diff changeset
1785 echo "You may want to change into the stabilizing branch:"
bd93316b078b Note about this being unstable CVS branch
Timo Sirainen <tss@iki.fi>
parents: 4166
diff changeset
1786 echo " cvs up -r branch_1_0"