1 dnl Autoconfigure input file for fetchmail
3 # Fetchmail automatic configuration support
5 # Eric S. Raymond <esr@thyrsus.com>
6 # 2004 - 2012 Matthias Andree <matthias.andree@gmx.de>
8 dnl Process this file with autoconf to produce a configure script.
11 dnl XXX - if bumping version here, check fetchmail.man, too!
12 AC_INIT([fetchmail],[7.0.0-alpha3],[fetchmail-devel@lists.berlios.de])
13 AC_CONFIG_SRCDIR([fetchmail.h])
14 AC_CONFIG_HEADERS([config.h])
15 AC_CONFIG_LIBOBJ_DIR([.])
19 dnl keep this before stuff that runs the compiler!
20 AC_USE_SYSTEM_EXTENSIONS
22 dnl automake options are in Makefile.am
24 dnl 2.60 required for AC_USE_SYSTEM_EXTENSIONS
25 AM_INIT_AUTOMAKE(silent-rules)
27 dnl python is optional
29 # you can pass PYTHON=: in environment or on the command line
30 # to disable python detection and continue without building/installing
31 # fetchmail.conf -- be sure to check README.packaging, too!
33 AM_PATH_PYTHON(2.0,,AC_MSG_WARN([Disabling fetchmailconf: python 2.0 or greater not found]))
34 AM_CONDITIONAL([HAVE_PYTHON], [test "$PYTHON" != :])
44 dnl check for b0rked Solaris (and other shells) and find one that works
45 AC_MSG_CHECKING(for a working shell...)
46 for i in /usr/xpg6/bin/sh /usr/xpg4/bin/sh /usr/ccs/bin/sh /bin/sh /usr/bin/sh /bin/ksh /bin/bash /usr/local/bin/bash ; do
47 $i -c 'if ! false ; then echo $(echo ok) ; fi' >config.$$ 2>/dev/null
50 if test "x$j" = "xok" ; then
57 if test "x$SHELL" = "x" ; then
58 AC_MSG_ERROR(no SUS compliant shell found - on Solaris, install SUNWxcu4)
61 AC_CHECK_HEADERS([arpa/nameser.h])
63 AC_CHECK_HEADERS([resolv.h],,,[
64 #include <sys/types.h>
65 #include <netinet/in.h>
66 #ifdef HAVE_ARPA_NAMESER_H
67 #include <arpa/nameser.h>
71 AC_CHECK_DECLS([h_errno],,,[
76 # Check for OS special cases
79 AC_MSG_NOTICE(found Darwin - Adding -DBIND_8_COMPAT to CFLAGS)
80 CPPFLAGS="$CPPFLAGS -DBIND_8_COMPAT"
82 # Check for FreeBSD special case: more libs needed
84 AC_MSG_NOTICE(found FreeBSD - Adding -lkvm -lcom_err to standard libraries)
85 LIBS="$LIBS -lkvm -lcom_err"
92 AM_GNU_GETTEXT([external], [need-ngettext])
93 AM_GNU_GETTEXT_VERSION([0.17])
96 # Under sysV68, socket and friends are provided by the C library.
97 # -linet does not provide socket, but causes multiple definition
98 # errors at link-time. It is thus better to only use the C library.
99 # So don't add -linet to the link list unless it's necessary
100 AC_CHECK_FUNC(socket,
101 AC_MSG_RESULT(using libc's socket),
102 AC_CHECK_LIB(socket,socket)
103 AC_CHECK_LIB(inet,socket))
105 # The condition in this test copes with the presence of inet_addr in libc6.
106 AC_CHECK_FUNC(inet_addr,
107 AC_MSG_RESULT(using libc's inet_addr),
108 AC_CHECK_LIB(nsl,inet_addr))
110 AC_REPLACE_FUNCS([stpcpy strlcpy strlcat])
112 AC_CHECK_FUNC(getopt_long, [],
113 [AC_LIBSOURCES([getopt.c, getopt1.c])
114 EXTRAOBJ="$EXTRAOBJ getopt.\$(OBJEXT) getopt1.\$(OBJEXT)"])
118 AC_CHECK_FUNCS(vsyslog inet_aton)
120 dnl INET6 is used by KAME/getnameinfo
121 AC_CACHE_CHECK(for AF_INET6/PF_INET6,ac_cv_inet6,
124 #include <sys/types.h>
125 #include <sys/socket.h>
130 ac_cv_inet6=yes , ac_cv_inet6=no
132 if test "x$ac_cv_inet6" = xyes
134 AC_DEFINE(INET6,1,Define to 1 if your system defines AF_INET6 and PF_INET6.)
137 # Under Red Hat 4.0 (and many other Linuxes) -lresolv is seriously flaky
138 # and breaks gethostbyname(2). It's better to use the bind stuff in the C
139 # library. So don't add -lresolv to the link list unless it's necessary
140 # (It will be necessary when using GNU libc6).
142 for lib in '' -lresolv; do
143 if test -z "$lib"; then
144 AC_MSG_CHECKING([for res_search in libc])
146 AC_MSG_CHECKING([for res_search in $lib])
148 LIBS="$old_LIBS $lib"
149 AC_LINK_IFELSE([AC_LANG_PROGRAM([[
150 #include <sys/types.h>
151 #include <netinet/in.h>
152 #ifdef HAVE_ARPA_NAMESER_H
153 #include <arpa/nameser.h>
158 extern int res_search();
159 ]], [[res_search(0, 0, 0, 0, 0); dn_skipname(0,0);]])],
160 [AC_MSG_RESULT([found])
161 AC_DEFINE(HAVE_RES_SEARCH, [1],
162 [Define to 1 if you have the 'res_search' and 'dn_skipname' functions.])
163 break], [AC_MSG_RESULT([not found])])
167 dnl Check for libcrypt -- it may live in libc or libcrypt, as on IRIX
168 AC_CHECK_FUNC(crypt, , AC_CHECK_LIB(crypt,crypt))
170 AC_MSG_CHECKING(sys_siglist declaration in signal.h or unistd.h)
171 AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <signal.h>
172 /* NetBSD declares sys_siglist in <unistd.h>. */
174 ]], [[char *msg = *(sys_siglist + 1);]])],[AC_DEFINE(SYS_SIGLIST_DECLARED,1,[Define if 'sys_siglist' is declared by <signal.h>.]) AC_MSG_RESULT(yes)],[AC_MSG_RESULT(no)])
176 AC_DEFINE_UNQUOTED(PID_DIR, "/var/run", directory for PID lock files)
179 [ --enable-pwmd enable Password Manager Daemon support],
182 if test "$enable_pwmd" = "yes"; then
183 PKG_CHECK_EXISTS([libpwmd], have_libpwmd=1,
184 AC_MSG_ERROR([Could not find libpwmd pkg-config module.]))
187 PKG_CHECK_MODULES([libpwmd], [libpwmd >= 6.0.0])
188 AM_CONDITIONAL(HAVE_LIBPWMD, true)
189 AC_DEFINE(HAVE_LIBPWMD, 1, [Define if you have libPWMD installed.])
191 AM_CONDITIONAL(HAVE_LIBPWMD, false)
194 # We may have a fallback MDA available in case the socket open to the
195 # local SMTP listener fails. Best to use procmail for this, as we know
196 # it won't try delivering through local SMTP and cause a mail loop.
197 # Sendmail without the -t option to use the message headers will work too,
198 # not just for sendmail itself but for workalikes like exim.
200 # Note1: A disadvantage of using procmail is that local alias expansion
201 # according to /etc/aliases won't get done if we fall back. This doesn't
202 # matter in single-drop mode.
204 # Note2: it would be a very bad idea to use any MDA that doesn't return
205 # a refuse-to-deliver status on disk- or process-table-full
206 # conditions; mail could get lost that way. Sendmail and all of the MDAs
207 # like exim that might be lurking under a sendmail alias) do the right
208 # thing in this circumstance. Matthias Andree warns that procmail does
211 # Note3: Defalt value of fallback is now off. Matthias writes:
213 # 1. there is no way to predict when the fallback is used. With some MTAs
214 # (such as those limiting load average), outer circumstances can cause
215 # the fallback to kick in.
217 # 2. the fallback changes fetchmail behaviour in unpredictable ways. It's
218 # not only about alias expansion, .forwards to special filters won't
219 # work, mail may end up in a different place (users claim "mail loss"
222 # 3. The claim procmail did the right thing with its exit codes is plain
223 # wrong. I've seen procmail exit with code 1 when it should have exited
224 # with code 75, like, configuration errors. Procmail is a dangerous
225 # beast and is best replaced by maildrop.
227 # 4. if multiple choices exist (like procmail and maildrop), fetchmail
228 # cannot tell which one it should choose. Say, your MTA is configured
229 # to use maildrop to deliver to user's mailboxes, if fetchmail then
230 # chooses procmail, this is plain wrong.
233 AC_PATH_PROG(procmail, procmail, "", $PATH:/usr/sbin)
234 AC_PATH_PROG(sendmail, sendmail, "", $PATH:/usr/sbin:/usr/lib)
235 AC_PATH_PROG(maildrop, maildrop, "", $PATH:/usr/local/bin)
237 ### use option --disable-fallback to disable fallback MDA
238 ### use option --enable-fallback=procmail or
239 ### --enable-fallback=sendmail to select
240 AC_ARG_ENABLE(fallback,
241 [ --enable-fallback=procmail enable procmail as fallback
242 --enable-fallback=sendmail enable /usr/sbin/sendmail as fallback
243 --enable-fallback=maildrop enable maildrop as fallback
244 --enable-fallback=no disable fallback],,[enable_fallback=no])
246 case "$enable_fallback" in
247 sendmail) if test -z "$sendmail" ; then
248 AC_MSG_ERROR([Sendmail selected as fallback, but not found])
251 AC_DEFINE_UNQUOTED(FALLBACK_MDA, "$sendmail -i %T", Fallback MTA to use if defined)
252 AC_MSG_NOTICE(Will use $sendmail as fallback MDA.)
254 procmail) if test -z "$procmail" ; then
255 AC_MSG_ERROR([procmail selected as fallback, but not found])
258 AC_DEFINE_UNQUOTED(FALLBACK_MDA, "$procmail -d %T")
259 AC_MSG_NOTICE(Will use $procmail as fallback MDA.)
261 maildrop) if test -z "$maildrop" ; then
262 AC_MSG_ERROR([maildrop selected as fallback, but not found])
265 AC_DEFINE_UNQUOTED(FALLBACK_MDA, "$maildrop -d %T")
266 AC_MSG_NOTICE(Will use $maildrop as fallback MDA.)
268 no|unset) AC_MSG_NOTICE(Will not use a fallback MDA.)
270 auto|yes|set) if test -n "$sendmail" ; then
271 AC_DEFINE_UNQUOTED(FALLBACK_MDA,"$sendmail -i %T")
272 AC_MSG_NOTICE(Will use $sendmail as fallback MDA.)
274 AC_MSG_WARN(No fallback MDA available. procmail and maildrop are not eligible)
275 AC_MSG_WARN(for automatic fallback MDA configuration for reliability reasons.)
278 *) AC_MSG_ERROR([unkown value for --enable-fallback given: $enable_fallback])
283 ### use option --disable-POP3 to omit the POP3 support
285 [ --disable-POP3 don't compile in POP3 protocol support],
286 [with_POP3=$enableval],
288 test "$with_POP3" = "yes" && AC_DEFINE(POP3_ENABLE,1,Define if you want POP3 support compiled in)
289 AM_CONDITIONAL(POP3_ENABLE, test "$with_POP3" = yes)
291 ### use option --disable-IMAP to omit the IMAP support
293 [ --disable-IMAP don't compile in IMAP protocol support],
294 [with_IMAP=$enableval],
296 test "$with_IMAP" = "yes" && AC_DEFINE(IMAP_ENABLE,1,Define if you want IMAP support compiled in)
297 AM_CONDITIONAL(IMAP_ENABLE, test "$with_IMAP" = yes)
299 ### use option --disable-ETRN to omit the ETRN support
301 [ --disable-ETRN don't compile in ETRN protocol support],
302 [with_ETRN=$enableval],
304 test "$with_ETRN" = "yes" && AC_DEFINE(ETRN_ENABLE,1,Define if you want ETRN support compiled in.)
305 AM_CONDITIONAL(ETRN_ENABLE, test "$with_ETRN" = yes)
307 ### use option --disable-ODMR to omit the ODMR support
309 [ --disable-ODMR don't compile in ODMR protocol support],
310 [with_ODMR=$enableval],
312 test "$with_ODMR" = "yes" && AC_DEFINE(ODMR_ENABLE,1,Define if you want ODMR support compiled in)
313 AM_CONDITIONAL(ODMR_ENABLE, test "$with_ODMR" = yes)
315 ### use option --enable-RPA to compile in the RPA support
317 [ --enable-RPA compile in RPA protocol support],
318 [with_RPA=$enableval],
320 test "$with_RPA" = "yes" && AC_DEFINE(RPA_ENABLE,1,Define if you want RPA support compiled in)
321 AM_CONDITIONAL(RPA_ENABLE, test "$with_RPA" = yes)
323 ### use option --enable-NTLM to compile in the NTLM support
325 [ --enable-NTLM compile in NTLM authentication support],
326 [with_NTLM=$enableval],
328 test "$with_NTLM" = "yes" && AC_DEFINE(NTLM_ENABLE,1,Define if you want NTLM authentication)
329 AM_CONDITIONAL(NTLM_ENABLE, test "$with_NTLM" = yes)
331 ### use option --enable-SDPS to compile in the SDPS support
333 [ --enable-SDPS compile in SDPS protocol support],
334 [with_SDPS=$enableval],
336 if test "$with_SDPS" = yes ; then
337 if test "$with_POP3" != yes ; then
338 AC_MSG_WARN([SDPS cannot be enabled with POP3 disabled. Disabling SDPS.])
341 AC_DEFINE(SDPS_ENABLE,1,Define if you want SDPS support compiled in)
344 if test "$with_POP3" != yes && test "$with_IMAP" != yes ; then
345 AC_MSG_ERROR([You must enable at least one of POP3 and IMAP.])
350 ### use option --enable-opie to compile in the OPIE support
352 [ --enable-opie support OTP through the OPIE library],
353 [ AC_CHECK_HEADER(opie.h,, [AC_MSG_ERROR([cannot find <opie.h>, which is required for OPIE support.])])
354 AC_CHECK_LIB(opie,opiegenerator,, [AC_MSG_ERROR([cannot find libopie, which is required for OPIE support.])])
355 with_opie=$enableval],
357 test "$with_opie" = "yes" && AC_DEFINE(OPIE_ENABLE,1,Define if you want OPIE support compiled in)
359 dnl Mostly stolen from gnulib's getaddrinfo.m4
360 AC_SEARCH_LIBS(getaddrinfo, [nsl socket])
361 AC_CACHE_CHECK([for getaddrinfo],[fm_cv_getaddrinfo],[
362 AC_LINK_IFELSE([AC_LANG_PROGRAM([[
363 #include <sys/types.h>
364 #include <sys/socket.h>
366 ]], [[getaddrinfo(0, 0, 0, 0);]])],[ fm_cv_getaddrinfo=yes],[ fm_cv_getaddrinfo=no ])
369 if test x"$fm_cv_getaddrinfo" = "xyes"; then
370 AC_DEFINE(HAVE_GETADDRINFO, 1,
371 [Define to 1 if you have the getaddrinfo function.])
374 AC_CACHE_CHECK([for getnameinfo],[fm_cv_getnameinfo],[
375 AC_LINK_IFELSE([AC_LANG_PROGRAM([[
376 #include <sys/types.h>
377 #include <sys/socket.h>
382 ]], [[getnameinfo(NULL,0, NULL,0, NULL, 0, 0);]])],[ fm_cv_getnameinfo=yes],[ fm_cv_getnameinfo=no ])
384 if test $fm_cv_getnameinfo = yes ; then
385 AC_DEFINE(HAVE_GETNAMEINFO,1,[Define to 1 if your system has getnameinfo()])
388 AM_CONDITIONAL(NEED_GETADDRINFO, test "$fm_cv_getaddrinfo" != yes)
389 AM_CONDITIONAL(NEED_GETNAMEINFO, test "$fm_cv_getnameinfo" != yes)
391 AC_CHECK_FUNCS(inet_ntop)
392 dnl Check if getaddrinfo is async-signal-safe - most implementations aren't
393 if test "$fm_cv_getaddrinfo" = yes ; then
394 AC_MSG_CHECKING(if your getaddrinfo is async-signal-safe)
396 dnl we have getaddrinfo() - check if the OS is known to have a async-signal-safe implementation
398 darwin9*) gai_ts=yes ;;
399 linux*) gai_ts=yes ;;
400 freebsd5.5|freebsd6*|freebsd7*) gai_ts=yes ;;
401 solaris2.8|solaris2.9|solaris2.10) gai_ts=yes ;;
403 AC_MSG_RESULT($gai_ts)
404 if test $gai_ts = yes ; then
405 AC_DEFINE(GETADDRINFO_ASYNCSAFE, 1, [define to 1 if you know your getaddrinfo function is async-signal-safe])
409 # This version of the Kerberos 5 options addresses the follwing issues:
411 # * Build correctly under Heimdal kerberos if it is compiled with db2 and
412 # OpenSSL support (Debian's is)
414 ### use option --with-kerberos5=DIR to point at a Kerberos 5 directory
415 ### make sure --with-ssl is run before --with-kerberos* !
416 AC_ARG_WITH(kerberos5,
417 [ --with-kerberos5=DIR point fetchmail compilation at a Kerberos 5 directory],
419 if test "$with_kerberos5" != "no"
421 # Check for a OpenBSD special case
422 if test "$with_kerberos5" = "yes" && ( test `uname` = "OpenBSD" )
424 AS_MESSAGE(checking kerberosV for OpenBSD...)
425 AC_DEFINE(HEIMDAL,1,Define if you have HEIMDAL kerberos 5)
426 AC_DEFINE(KERBEROS_V5,1,Define if you have Kerberos V5)
427 CFLAGS="$CFLAGS -I/usr/include/kerberosV"
428 LIBS="$LIBS -lasn1 -lkrb5 -lcom_err -lkafs"
429 elif krb5-config 2> /dev/null >/dev/null ; then
430 krb5_prefix=`krb5-config --prefix krb5`
431 AC_MSG_RESULT([krb5-config points to kerberosV under $krb5_prefix])
432 if test -f ${krb5_prefix}/include/et/com_err.h && \
433 ! test -f ${krb5_prefix}/include/com_err.h ; then
434 CFLAGS="$CFLAGS -I${krb5_prefix}/include/et"
437 CFLAGS="$CFLAGS `krb5-config --cflags krb5`"
438 LIBS="$LIBS `krb5-config --libs krb5`"
439 AC_DEFINE(KERBEROS_V5)
441 if test "$with_kerberos5" != "yes"
443 LDFLAGS="$LDFLAGS -L${with_kerberos5}/lib"
444 searchdirs="$with_kerberos5"
446 searchdirs="/usr/kerberos /usr/local/krb5 /usr/athena /usr"
449 for dir in $searchdirs
450 do AC_MSG_CHECKING([for Kerberos V in $dir])
451 if test -f "$dir/include/krb5.h" || test -f "$dir/include/krb5/krb5.h"
453 if test -d "$dir/include/krb5" ; then CPPFLAGS="$CPPFLAGS -I$dir/include/krb5" ; fi
455 if test -f "$dir/include/roken.h" || test -f "$dir/include/krb5/roken.h"
457 ac_krblibs="-lasn1 -lroken -lcom_err"
458 AC_MSG_RESULT([Heimdal found])
459 dnl Attempt to detect if we need to -ldb2 to link Heimdal
460 dnl we assume we do if it is available
461 AC_CHECK_LIB(db2, db_open, ac_krblibs="$ac_krblibs -ldb2", [],
463 AC_CHECK_LIB(des, des_string_to_key, libk5crypto=-ldes,
464 AC_CHECK_LIB(crypto, MD5_Init, [],
465 AC_MSG_ERROR([DES libraries not found. Try adding --with-ssl to enable OpenSSL support]),
466 ${LDFLAGS} ${ac_krblibs}),
467 ${LDFLAGS} ${ac_krblibs})
470 AC_MSG_RESULT([found])
471 ac_krblibs="-lcom_err"
473 krb5_des_string_to_key,
474 libk5crypto=-lcrypto,
475 AC_CHECK_LIB(k5crypto,
476 krb5_des_string_to_key,
477 libk5crypto=-lk5crypto,
478 AC_MSG_ERROR([Kerberos 5 DES libraries not found]),
479 ${LDFLAGS} ${ac_krblibs}),
480 ${LDFLAGS} ${ac_krblibs})
482 AC_CHECK_LIB(krb5, krb5_init_context,[],
484 ${LDFLAGS} ${ac_krblibs})
485 AC_DEFINE(KERBEROS_V5)
486 test "$dir" != "/usr" && CFLAGS="$CFLAGS -I$dir/include"
487 LDFLAGS="$LDFLAGS -L$dir/lib"
488 LIBS="$LIBS $ac_krblibs $libk5crypto"
492 AC_MSG_RESULT([not found])
495 if test -z "$with_kerberos5" ; then
496 AC_MSG_ERROR([Kerberos 5 libraries not found])
500 ]) dnl --with-kerberos5=DIR
502 ### use option --with-ssl to compile in the SSL support
504 [ --with-ssl=[DIR] enable SSL support using libraries in DIR],
507 test "$with_ssl" != "no" && AC_DEFINE(SSL_ENABLE,1,Define if you want SSL support compiled in)
509 if test "$with_ssl" = "yes"
511 # User didn't specify an SSL location. Let's look at some common
512 # directories where SSL has been found in the past and try and auto
513 # configure for SSL. OpenSSL determination will be made later.
514 # This will screw up if an OpenSSL install is located in a later
515 # directory than an older SSLeay install, but the user should fix that
516 # anyways and he can override on the configure line.
517 # Just testing for directories is not sufficient, /usr exists on
529 if test -r "$ac_dir/include/openssl/ssl.h" ; then
536 if test -n "$with_ssl" -a "$with_ssl" != "no"
538 # With the autoconfigure above, the only time this is going to be
539 # true is going to be when we could not find the headers. If they
540 # are not in system standard locations, we are going to be broken.
541 if test "$with_ssl" = "yes"
543 # Let's just define the standard location for the SSLeay root
544 with_ssl="/usr/local/ssl"
546 if test -r $with_ssl/include/openssl/ssl.h
548 ### ssl.h found under openssl. Use openssl configuration preferentially,
549 AC_MSG_NOTICE(Enabling OpenSSL support in $with_ssl.)
550 test "$with_ssl" != "/usr" && CFLAGS="$CFLAGS -I$with_ssl/include"
551 ### In Red Hat 9, this file includes a reference to <krb5.h>, so we
552 ### force the Kerberos direcory onto the include path so it will build.
553 CFLAGS="$CFLAGS -I/usr/kerberos/include"
554 ### OpenBSD comes with ssl headers
556 AC_MSG_ERROR([SSL support enabled, but OpenSSL not found])
558 LDFLAGS="$LDFLAGS -L$with_ssl/lib"
559 LIBS="$LIBS -lssl -lcrypto"
560 dnl check if -ldl is needed
561 AC_MSG_CHECKING([for additional library dependencies of SSL])
564 for i in "" "-ldl" ; do
565 LIBS="$LDFLAGS $save_LIBS $i"
566 AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <openssl/ssl.h>],[SSL_library_init()])],[found=1; break])
568 if test $found = 0 ; then
569 AC_MSG_RESULT([error])
570 AC_MSG_ERROR([cannot link with SSL - check config.log])
573 if test "$i" = "" ; then i="(none)" ; fi
575 dnl XXX FIXME: use pkg-config if available!
576 AC_DEFINE(SSL_ENABLE)
578 AC_MSG_WARN(Disabling SSL support.)
579 AC_MSG_WARN(Consider re-running configure --with-ssl.)
582 case "$LIBS" in *-lssl*)
583 AC_CHECK_DECLS([SSLv2_client_method],,,[#include <openssl/ssl.h>])
587 ### use option --with-socks=DIR to point at SOCKS library
589 [ --with-socks[=DIR] add built-in SOCKS firewall access],
591 if test "$with_socks" != no
593 if test "$with_socks" != yes
595 LDFLAGS="$LDFLAGS -L$with_socks"
597 AC_CHECK_LIB(socks, Rconnect,,
598 AC_MSG_ERROR([could not find libsocks which is needed for built-in SOCKS support]))
600 AC_DEFINE(HAVE_SOCKS,1,Define if you want built-in SOCKS support)
601 CFLAGS="$CFLAGS -Dconnect=Rconnect -Dgetsockname=Rgetsockname -Dbind=Rbind -Daccept=Raccept -Dlisten=Rlisten -Dselect=Rselect"
605 ### use option --with-socks5=DIR to point at SOCKS library
607 [ --with-socks5[=DIR] add built-in SOCKS5 firewall access],
609 if test "$with_socks5" != no
611 if test "$with_socks5" != yes
613 LDFLAGS="$LDFLAGS -L$with_socks5"
615 ac_savedLDFLAGS="$LDFLAGS"
616 LDFLAGS="$LDFLAGS $LDFLAGS"
617 AC_CHECK_LIB(socks5, SOCKSconnect,,
618 AC_MSG_ERROR([could not find libsocks5 which is needed for built-in SOCKS5 support]))
619 AC_DEFINE(HAVE_SOCKS)
620 CFLAGS="$CFLAGS -Dconnect=SOCKSconnect -Dgetsockname=SOCKSgetsockname -Dbind=SOCKSbind -Daccept=SOCKSaccept -Dlisten=SOCKSlisten -Dselect=SOCKSselect -Drecvfrom=SOCKSrecvfrom -Dsendto=SOCKSsendto -Drecv=SOCKSrecv -Dsend=SOCKSsend -Dread=SOCKSread -Dwrite=SOCKSwrite -Drresvport=SOCKSrresvport -Dshutdown=SOCKSshutdown -Dlisten=SOCKSlisten -Dclose=SOCKSclose -Ddup=SOCKSdup -Ddup2=SOCKSdup2 -Dgethostbyname=SOCKSgethostbyname"
621 AC_CHECK_FUNC(SOCKSfclose, [CFLAGS="$CFLAGS -Dfclose=SOCKSfclose"])
622 LDFLAGS="$ac_savedLDFLAGS"
625 dnl for libesmtp/ modules:
626 ACX_WHICH_GETHOSTBYNAME_R
628 ### use option --with-hesiod=DIR to point at a HESIOD directory
629 AC_ma_SEARCH_PACKAGE(hesiod, hesiod_getmailhost, /usr/athena /usr /usr/local,hesiod, hesiod.h)
631 ### use option --with-gssapi=DIR to compile in GSSAPI support
633 [ --with-gssapi[=DIR] compile in GSSAPI support using libraries in DIR],
635 if test "$with_gssapi" != "no"
637 if test "$with_gssapi" = "yes" -a -n "$with_kerberos5"
639 with_gssapi=$with_kerberos5
642 if test "$with_gssapi" != "yes" -a -n "$with_gssapi"
644 CFLAGS="$CFLAGS -I$with_gssapi/include"
645 LDFLAGS="$LDFLAGS -L$with_gssapi/lib"
648 dnl obtain gssapi default libs
649 if krb5-config --libs gssapi 2>/dev/null >/dev/null ; then
650 LIBS="$LIBS `krb5-config --libs gssapi`"
652 AC_CHECK_LIB(gss, gss_check_version, LIBS="$LIBS -lgss", nogss=t)
656 if test "$with_gssapi" = yes ; then
659 if test -f "$with_gssapi/include/roken.h" -o -f "$with_gssapi/include/krb5/roken.h"
661 # have roken.h, assume Heimdal
663 NetBSD) LIBS="$LIBS -lkrb5" ;;
664 *) LIBS="$LIBS -lkrb5 -lasn1 -ldes -lroken -ldb -ldl" ;;
666 AC_CHECK_LIB(gssapi, gss_init_sec_context,LIBS="$LIBS -lgssapi",
667 AC_MSG_ERROR([could not find libgssapi which is needed for GSSAPI support]), )
670 # no roken.h, assume MIT
671 AC_CHECK_LIB(gssapi_krb5, gss_init_sec_context,LIBS="$LIBS -lgssapi_krb5",
672 AC_MSG_ERROR([could not find libgssapi_krb5 which is needed for GSSAPI support]), -lkrb5)
676 AC_DEFINE(GSSAPI,1,Define if you want GSSAPI authentication)
677 if test "$with_gssapi" != yes ; then
678 CPPFLAGS="$CPPFLAGS -I$with_gssapi/include"
680 AC_CHECK_HEADERS(gss.h gssapi.h gssapi/gssapi.h gssapi/gssapi_generic.h)
681 AC_CHECK_DECLS(GSS_C_NT_HOSTBASED_SERVICE,,,[
686 #if HAVE_GSSAPI_GSSAPI_H
687 #include <gssapi/gssapi.h>
691 #if HAVE_GSSAPI_GSSAPI_GENERIC_H
692 #include <gssapi/gssapi_generic.h>
697 AC_CONFIG_FILES([Makefile po/Makefile.in genlsm.sh])
701 dnl comment-start: "dnl "
703 dnl comment-start-skip: "\\bdnl\\b\\s *"
704 dnl compile-command: "make configure config.h.in"