2 dnl configure.in -- autoconf template for nmh
8 AC_CONFIG_HEADER(config.h)
12 dnl ---------------------
13 dnl define a macro or two
14 dnl ---------------------
16 AC_DEFUN(NMH_PROG_GNU_LIBTOOL, [
17 if test -n "$LIBTOOL" ; then
18 tmptest=`$LIBTOOL --version 2>&1 | grep GNU`
19 if test x"$tmptest" != x ; then
21 AC_SUBST(GNU_LIBTOOL)dnl
27 dnl What version of nmh are we building?
28 VERSION=`sed -e 's/nmh-//' ${srcdir}/VERSION`
29 echo "configuring for nmh-$VERSION"
32 dnl What date of nmh are we building?
33 DATE=`cat ${srcdir}/DATE`
34 echo "configuring for nmh dated $DATE"
37 dnl --------------------------
38 dnl CHECK COMMAND LINE OPTIONS
39 dnl --------------------------
41 dnl Do you want client-side support for apop?
43 [ --enable-apop enable client-side support for POP3 and APOP])
44 if test x"$enable_apop" = x"yes"; then
51 dnl Do you want to debug nmh?
53 [ --enable-debug enable nmh code debugging])
54 dnl The old redundant --enable-nmh-debug is deprecated and undocumented.
55 if test x"$enable_nmh_debug" = x"yes"; then
59 dnl Allow users to send email from addresses other than their default?
60 AC_ARG_ENABLE(masquerade,
61 [ --enable-masquerade[='draft_from mmailid username_extension']
62 enable up to 3 types of address masquerading [none]],
63 [if test x"$enable_masquerade" = x"yes"; then
64 masquerade="draft_from mmailid username_extension"
66 masquerade="$enable_masquerade"
68 AC_SUBST(masquerade)dnl
70 dnl Do you want mhe support?
72 [ --enable-mhe enable mhe support (DEFAULT)])
74 dnl mhe support is on by default, so define it unless --disable-mhe or the
75 dnl deprecated, undocumented --disable-nmh-mhe are specified.
76 if test x"$enable_mhe" != x"no" -a x"$enable_nmh_mhe" != x"no"; then
80 dnl Do you want client-side support for pop?
82 [ --enable-pop enable client-side support for plain POP3])
83 dnl The old redundant --enable-nmh-pop is deprecated and undocumented.
84 if test x"$enable_nmh_pop" = x"yes"; then
88 dnl Do you want client-side support for using SASL for authentication?
89 dnl Note that this code will be enabled for both POP and SMTP
90 AC_ARG_WITH(cyrus-sasl,
91 [ --with-cyrus-sasl=<dir> Specify location of Cyrus SASL library for auth])
92 if test x"$with_cyrus_sasl" != x -a x"$with_cyrus_sasl" != x"no"; then
93 AC_DEFINE(CYRUS_SASL)dnl
99 dnl What should be the default editor?
101 [ --with-editor=EDITOR specify the default editor])
103 if test -n "$with_editor"; then
104 editorpath="$with_editor"
107 dnl Set the backup prefix
108 AC_ARG_WITH([hash-backup],
109 [ --with-hash-backup use # as the backup prefix (default: ,)])
110 if test x"$with_hash_backup" != x -a x"$with_hash_backup" != x"no"; then
115 AC_DEFINE_UNQUOTED(BACKUP_PREFIX, "$backup_prefix")dnl
117 dnl Do you want support for hesiod
119 [ --with-hesiod=PREFIX specify location of Hesiod])
120 if test x"$with_hesiod" != x -a x"$with_hesiod" != x"no"; then
124 dnl Do you want client-side support for kpop
126 [ --with-krb4=PREFIX specify location of Kerberos V4 for KPOP support])
127 if test x"$with_krb4" != x -a x"$with_krb4" != x"no"; then
130 AC_DEFINE(KPOP_PRINCIPAL, "pop")dnl
133 dnl After we know if we're including apop and kpop support, do pop stuff
134 if test x"$enable_pop" = x"yes"; then
137 POPSED='/^%nmhbeginpop%/d;/^%nmhendpop%/d'
139 POPSED='/^%nmhbeginpop%/,/^%nmhendpop%/d'
144 dnl What method of locking to use?
146 [ --with-locking=LOCKTYPE specify the file locking method
147 (one of dot, fcntl, flock, lockf)])
149 if test x"$with_locking" = x"dot"; then
151 AC_DEFINE(DOT_LOCKING)dnl
152 elif test x"$with_locking" = x"flock"; then
154 AC_DEFINE(FLOCK_LOCKING)dnl
155 elif test x"$with_locking" = x"lockf"; then
157 AC_DEFINE(LOCKF_LOCKING)dnl
158 elif test x"$with_locking" = x"fcntl"; then
160 AC_DEFINE(FCNTL_LOCKING)dnl
163 AC_DEFINE(DOT_LOCKING)dnl
166 dnl What method of posting should post use?
168 [ --with-mts=MTS specify the default mail transport agent/service])
170 if test x"$with_mts" = x"smtp"; then
172 elif test x"$with_mts" = x"sendmail"; then
179 dnl Both the smtp and sendmail mail transport services use the smtp code
180 AC_DEFINE(SMTPMTS)dnl
182 dnl What should be the default pager?
184 [ --with-pager=PAGER specify the default pager])
186 if test -n "$with_pager"; then
187 pagerpath="$with_pager"
190 dnl What should be the default mail server(s)?
191 AC_ARG_WITH(smtpservers,
192 [ --with-smtpservers='SMTPSERVER1[ SMTPSERVER2...]'
193 specify the default SMTP server(s) [localhost]])
194 if test -n "$with_smtpservers"; then
195 smtpservers="$with_smtpservers"
197 smtpservers="localhost"
199 AC_SUBST(smtpservers)dnl
201 dnl ----------------------------------------------------
202 dnl Default location is /usr/local/nmh/{bin,etc,lib,man}
203 dnl ----------------------------------------------------
204 AC_PREFIX_DEFAULT(/usr/local/nmh)
206 dnl ------------------
207 dnl CHECK THE COMPILER
208 dnl ------------------
209 dnl We want these before the checks,
210 dnl so the checks can modify their values.
211 test -z "$CFLAGS" && CFLAGS= auto_cflags=1
212 if test x"$enable_debug" = x"yes"; then
213 test -z "$LDFLAGS" && LDFLAGS=-g
218 dnl if the user hasn't specified CFLAGS, then
219 dnl if compiler is gcc, then
220 dnl use -O2 and some warning flags
222 if test -n "$auto_cflags"; then
223 if test x"$enable_debug" = x"yes"; then
224 if test -n "$GCC"; then
225 test -z "$CFLAGS" && CFLAGS="-Wall -g" || CFLAGS="$CFLAGS -Wall -g"
227 test -z "$CFLAGS" && CFLAGS=-g || CFLAGS="$CFLAGS -g"
230 if test -z "$LDFLAGS"; then
240 if test -n "$GCC"; then
241 test -z "$CFLAGS" && CFLAGS="-Wall -O2" || CFLAGS="$CFLAGS -Wall -O2"
243 test -z "$CFLAGS" && CFLAGS=-O || CFLAGS="$CFLAGS -O"
248 AC_C_CONST dnl Does compiler support `const'.
250 dnl ------------------
251 dnl CHECK FOR PROGRAMS
252 dnl ------------------
253 AC_PROG_MAKE_SET dnl Does make define $MAKE
254 AC_PROG_INSTALL dnl Check for BSD compatible `install'
255 AC_PROG_RANLIB dnl Check for `ranlib'
256 AC_PROG_AWK dnl Check for mawk,gawk,nawk, then awk
257 AC_PROG_LEX dnl Check for lex/flex
260 pathtmp=/usr/bin:/bin:/usr/local/bin:/usr/xpg4/bin:/usr/ucb
261 AC_PATH_PROG(cutpath, cut, no, [$pathtmp])
263 dnl ----------------------------------------------
264 dnl check for lclint, and lint if it doesn't exist
265 dnl ----------------------------------------------
266 AC_CHECK_PROG(linttmp1, lclint, lclint, no)dnl
267 if test x$ac_cv_prog_linttmp1 != xno ; then
268 LINT=$ac_cv_prog_linttmp1
269 LINTFLAGS="-weak +posixlib -macrovarprefixexclude"
271 AC_CHECK_PROG(linttmp2, lint, lint, no)dnl
272 if test x$ac_cv_prog_linttmp2 != xno ; then
273 LINT=$ac_cv_prog_linttmp2
276 LINT="echo 'No lint program found'"
281 AC_SUBST(LINTFLAGS)dnl
283 dnl try to figure out which one we've got
284 AC_CHECK_PROG(LIBTOOL, libtool, libtool, , [$pathtmp])
287 dnl Check for lorder and tsort commands
288 AC_CHECK_PROG(LORDER, lorder, lorder, no)dnl
289 AC_CHECK_PROG(TSORT, tsort, tsort, no)dnl
291 dnl If either doesn't exist, replace them with echo and cat
292 if test x$ac_cv_prog_LORDER != xlorder -o x$ac_cv_prog_TSORT != xtsort; then
297 dnl Mac OS X has lorder, but sh is too broken for it to work
298 dnl elif test -z "`lorder config/config.c 2>&1 | grep config/config.c`" ; then
301 dnl AC_SUBST(LORDER)dnl
302 dnl AC_SUBST(TSORT)dnl
305 dnl Check whether tsort can deal with loops
306 AC_CACHE_CHECK(whether tsort can deal with loops, nmh_cv_tsort_loop,
307 [if test -z "`echo a b b a | tsort 2>/dev/null | grep a`" ; then
310 nmh_cv_tsort_loop=yes
312 if test x$nmh_cv_tsort_loop = xno ; then
320 pathtmp=/usr/bin:/bin:/usr/local/bin:/usr/xpg4/bin:/usr/ucb
321 AC_PATH_PROG(lspath, ls, no, [$pathtmp])
323 dnl See how we get ls to display the owner and the group
324 if test "$lspath" != "no"; then
325 AC_CACHE_CHECK(how to get ls to show us the group ownership of a file,
327 [if test x"`$lspath -dl / | $AWK '{print $9}'`" = x"/"; then
328 dnl There were 9 parameters, so unless this is a really bizarre, nonstandard
329 dnl ls, it would seem -l gave us both the user and group. On this type of
330 dnl ls, -g makes _only_ the group be displayed (and not the user).
331 nmh_cv_ls_grpopt="-l"
333 dnl Looks like -l only gave us the user, so we need -g to get the group too.
334 nmh_cv_ls_grpopt="-lg"
339 pathtmp=/usr/bin:/bin:/usr/ucb:/usr/local/bin
340 AC_PATH_PROG(morepath, more, no, [$pathtmp])
342 dnl If pager is not specified yet,
343 dnl then use `more' as the default.
344 if test -z "$pagerpath"; then
345 pagerpath="$morepath"
347 AC_SUBST(pagerpath)dnl
349 dnl Look for `sendmail'
350 pathtmp=/usr/lib:/usr/sbin:/usr/etc:/usr/ucblib:/usr/bin:/bin
351 AC_PATH_PROG(sendmailpath, sendmail, no, [$pathtmp])
354 pathtmp=/usr/bin:/bin:/usr/ucb:/usr/local/bin
355 AC_PATH_PROG(vipath, vi, no, [$pathtmp])
357 dnl If editor is not specified yet,
358 dnl then use `vi' as the default.
359 if test -z "$editorpath"; then
362 AC_SUBST(editorpath)dnl
364 dnl Check for broken vi
365 AC_CACHE_CHECK(for broken vi, nmh_cv_attvibug,
366 [if echo 'r /nonexist-file
374 if test "$nmh_cv_attvibug" = yes; then
375 AC_DEFINE(ATTVIBUG)dnl
378 dnl ----------------------------------------------------------
379 dnl FIND MAIL SPOOL AND SEE IF WE NEED TO MAKE inc SETGID MAIL
380 dnl ----------------------------------------------------------
381 AC_CACHE_CHECK(where mail spool is located, nmh_cv_mailspool,
382 [for mailspool in /var/mail dnl
385 /dev/null; dnl Just in case we fall through
387 test -d $mailspool && break
389 nmh_cv_mailspool=$mailspool
391 mailspool=$nmh_cv_mailspool
392 AC_SUBST(mailspool)dnl
394 dnl See whether the mail spool directory is world-writable.
395 if test "$lspath" != "no" -a "$cutpath" != "no"; then
396 AC_CACHE_CHECK(whether the mail spool is world-writable,
397 nmh_cv_mailspool_world_writable,
398 [if test "`$lspath -dlL $mailspool | $cutpath -c9`" = "-"; then
399 nmh_cv_mailspool_world_writable=no
401 nmh_cv_mailspool_world_writable=yes
405 dnl Also, check for liblockfile (as found on Debian systems)
406 AC_CHECK_HEADER(lockfile.h, AC_CHECK_LIB(lockfile, lockfile_create) )
408 dnl and whether its companion program dotlockfile is setgid
409 AC_PATH_PROG(dotlockfilepath, dotlockfile, no)
410 if test "$ac_cv_lib_lockfile_lockfile_create" != "no" ; then
411 if test "$ac_cv_path_dotlockfilepath" != "no" ; then
412 AC_CACHE_CHECK(whether dotlockfile is setgid, nmh_cv_dotlockfile_setgid,
413 [ if test -g "$ac_cv_path_dotlockfilepath" ; then
414 nmh_cv_dotlockfile_setgid=yes
416 nmh_cv_dotlockfile_setgid=no
421 dnl If mailspool is not world-writable and dotlockfile is not setgid,
422 dnl we need to #define MAILGROUP to 1 and make inc setgid.
423 if test x"$nmh_cv_mailspool_world_writable" = x"no" -a x"$nmh_cv_dotlockfile_setgid" != x"yes" ; then
424 dnl do we really need both of these?
425 AC_DEFINE(MAILGROUP)dnl
428 AC_SUBST(SETGID_MAIL)dnl
430 dnl Use ls to see which group owns the mail spool directory.
431 AC_CACHE_CHECK(what group owns the mail spool, nmh_cv_ls_mail_grp,
432 [nmh_cv_ls_mail_grp=`$lspath -dL $nmh_cv_ls_grpopt $mailspool|$AWK '{print $4}'`
434 MAIL_SPOOL_GRP=$nmh_cv_ls_mail_grp
435 AC_SUBST(MAIL_SPOOL_GRP)dnl
437 dnl ------------------
438 dnl CHECK HEADER FILES
439 dnl ------------------
445 AC_CHECK_HEADERS(string.h memory.h stdlib.h unistd.h errno.h fcntl.h \
446 limits.h crypt.h termcap.h termio.h termios.h locale.h \
447 netdb.h sys/param.h sys/time.h sys/utsname.h arpa/inet.h \
451 AC_CACHE_CHECK(POSIX termios, nmh_cv_sys_posix_termios,
452 [AC_TRY_LINK([#include <sys/types.h>
454 #include <termios.h>],
455 [/* SunOS 4.0.3 has termios.h but not the library calls. */
457 nmh_cv_sys_posix_termios=yes, nmh_cv_sys_posix_termios=no)])
459 if test $nmh_cv_sys_posix_termios = yes; then
460 AC_CACHE_CHECK(TIOCGWINSZ in termios.h,
461 nmh_cv_header_termios_h_tiocgwinsz,
462 [AC_TRY_LINK([#include <sys/types.h>
463 #include <termios.h>],
464 [int x = TIOCGWINSZ;],
465 nmh_cv_header_termios_h_tiocgwinsz=yes,
466 nmh_cv_header_termios_h_tiocgwinsz=no)])
468 nmh_cv_header_termios_h_tiocgwinsz=no
471 if test $nmh_cv_header_termios_h_tiocgwinsz = no; then
472 AC_CACHE_CHECK(TIOCGWINSZ in sys/ioctl.h,
473 nmh_cv_header_sys_ioctl_h_tiocgwinsz,
474 [AC_TRY_LINK([#include <sys/types.h>
475 #include <sys/ioctl.h>],
476 [int x = TIOCGWINSZ;],
477 nmh_cv_header_sys_ioctl_h_tiocgwinsz=yes,
478 nmh_cv_header_sys_ioctl_h_tiocgwinsz=no)])
479 if test $nmh_cv_header_sys_ioctl_h_tiocgwinsz = yes; then
480 AC_DEFINE(GWINSZ_IN_SYS_IOCTL)dnl
485 dnl Checks for _IO_write_ptr. A Linuxism used by nmh on linux. We
486 dnl really use a whole set of them, but this check should be
489 AC_CHECK_HEADER(libio.h, [
490 AC_EGREP_HEADER(_IO_write_ptr, libio.h, [
491 AC_DEFINE(LINUX_STDIO) ]) ])
493 AC_CHECK_HEADER([sys/ptem.h], AC_DEFINE(WINSIZE_IN_PTEM))
499 AC_CHECK_LIB(mkstemp,mkstemp)
500 AC_CHECK_FUNCS(waitpid wait3 sigaction sigprocmask sigblock sigsetmask \
501 sighold sigrelse writev lstat uname tzset killpg mkstemp \
504 dnl solaris screws this up
505 AC_CHECK_FUNC(gethostbyname, [AC_DEFINE(HAVE_GETHOSTBYNAME)],
506 AC_CHECK_LIB(nsl, gethostbyname, [AC_DEFINE(HAVE_GETHOSTBYNAME)] ) )
508 dnl sigsetjmp may be a macro
509 AC_MSG_CHECKING(for sigsetjmp)
510 AC_TRY_LINK([#include <setjmp.h>], [sigsetjmp((void *)0, 0);],
511 [AC_DEFINE(HAVE_SIGSETJMP) AC_MSG_RESULT(yes)], AC_MSG_RESULT(no))
513 AC_REPLACE_FUNCS(snprintf strerror strdup)
515 dnl Look for the initgroups() declaration. On AIX 4.[13], Solaris 4.1.3, and
516 dnl ULTRIX 4.2A the function is defined in libc but there's no declaration in
517 dnl any system header.
519 dnl On Solaris 2.[456], the declaration is in <grp.h>. On HP-UX 9-11 and
520 dnl (reportedly) FreeBSD 3.[23], it's in <unistd.h>. Any other locations we
522 AC_EGREP_HEADER(initgroups, grp.h, AC_DEFINE(INITGROUPS_HEADER, <grp.h>),
523 AC_EGREP_HEADER(initgroups, unistd.h,
524 AC_DEFINE(INITGROUPS_HEADER, <unistd.h>)))
526 dnl On AIX 4.1, snprintf() is defined in libc.a but there's no prototype in
527 dnl <stdio.h> or elsewhere. Apparently it's not officially supported (though it
528 dnl seems to work perfectly and IBM apparently uses it in internal code).
529 dnl Anyhow, if we omit our own snprintf() and vsnprintf() prototypes when we
530 dnl HAVE_SNPRINTF, we get a billion warnings at compile time. Use the C
531 dnl preprocessor to preprocess stdio.h and make sure that there's actually a
533 AC_EGREP_HEADER(snprintf, stdio.h, AC_DEFINE(HAVE_SNPRINTF_PROTOTYPE))
535 dnl -------------------
536 dnl CHECK FOR LIBRARIES
537 dnl -------------------
538 dnl Check location of modf
539 AC_CHECK_FUNC(modf, , AC_CHECK_LIB(m, modf))
541 dnl Checks for network libraries (nsl, socket)
544 termcap_curses_order="termcap curses ncurses"
545 for lib in $termcap_curses_order; do
546 AC_CHECK_LIB(${lib}, tgetent, [TERMLIB="-l$lib"; break])
554 AC_CHECK_FUNC(dbm_open, ,
555 AC_CHECK_LIB(ndbm, dbm_open, ,
556 AC_CHECK_LIB(dbm, dbm_open, ,
557 AC_CHECK_LIB(db1, dbm_open, ,
558 AC_CHECK_LIB(gdbm, dbm_open, ,
559 AC_CHECK_LIB(db, __db_ndbm_open))))))
565 AC_CHECK_HEADERS(db1/ndbm.h gdbm/ndbm.h db.h, break, )
570 if test x"$with_hesiod" != x -a x"$with_hesiod" != x"no"; then
571 if test x"$with_hesiod" != x"yes"; then
572 HESIOD_INCLUDES="-I$with_hesiod/include"
573 HESIOD_LIBS="-L$with_hesiod/lib"
575 AC_CHECK_FUNC(res_send,
576 [AC_CHECK_LIB(hesiod, hes_resolve,
577 [HESIOD_LIBS="$HESIOD_LIBS -lhesiod"],
578 [AC_MSG_ERROR(Hesiod library not found)],
580 [AC_CHECK_LIB(hesiod, hes_resolve,
581 [HESIOD_LIBS="$HESIOD_LIBS -lhesiod -lresolv"],
582 [AC_MSG_ERROR(Hesiod library not found)],
583 $HESIOD_LIBS -lresolv)])
586 AC_SUBST(HESIOD_INCLUDES)dnl
587 AC_SUBST(HESIOD_LIBS)dnl
589 dnl ----------------------------------
590 dnl CHECK FOR KRB4 (Kerberos4 support)
591 dnl ----------------------------------
592 if test x"$with_krb4" != x -a x"$with_krb4" != x"no"; then
593 if test x"$with_krb4" != x"yes"; then
594 KRB4_INCLUDES="-I$with_krb4/include"
595 if test -d "$with_krb4/include/kerberosIV"; then
596 KRB4_INCLUDES="$KRB4_INCLUDES -I$with_krb4/include/kerberosIV"
598 KRB4_LIBS="-L$with_krb4/lib"
599 elif test -d /usr/include/kerberosIV; then
600 KRB4_INCLUDES="-I/usr/include/kerberosIV"
602 dnl First, check if we have -lk5crypto, since that means we have a recent krb5
604 AC_CHECK_LIB(k5crypto, krb5_encrypt,
605 [AC_CHECK_LIB(krb4, krb_rd_req,
606 [KRB4_LIBS="$KRB4_LIBS -lkrb4 -ldes425 -lkrb5 -lk5crypto -lcom_err"],
607 [AC_MSG_ERROR(Kerberos 4 compatibility libraries not found)],
608 $KRB4_LIBS -ldes425 -lkrb5 -lk5crypto -lcom_err)],
610 [AC_CHECK_LIB(krb4, krb_rd_req,
611 [KRB4_LIBS="$KRB4_LIBS -lkrb4 -ldes425 -lkrb5 -lcrypto -lcom_err"],
612 [AC_CHECK_LIB(krb, krb_rd_req,
613 [KRB4_LIBS="$KRB4_LIBS -lkrb -ldes"],
614 [AC_MSG_ERROR(Kerberos 4 libraries not found)],
616 $KRB4_LIBS -ldes425 -lkrb5 -lcrypto -lcom_err)],
620 AC_SUBST(KRB4_INCLUDES)dnl
621 AC_SUBST(KRB4_LIBS)dnl
623 dnl --------------------
624 dnl CHECK FOR CYRUS SASL
625 dnl --------------------
626 if test x"$with_cyrus_sasl" != x -a x"$with_cyrus_sasl" != x"no"; then
627 if test x"$with_cyrus_sasl" != x"yes"; then
628 SASL_INCLUDES="-I$with_cyrus_sasl/include"
629 SASL_LIBS="-L$with_cyrus_sasl/lib"
631 dnl Do OS-specific hardcoding of SASL shared library path into executables,
632 dnl so user isn't forced to set environment variables like Solaris'
636 SASL_LIBS="$SASL_LIBS -R$with_cyrus_sasl/lib"
640 save_LDFLAGS="$LDFLAGS"
641 LDFLAGS="$LDFLAGS $SASL_LIBS"
642 AC_CHECK_LIB(sasl2, sasl_client_new,
643 [SASL_LIBS="$SASL_LIBS -lsasl2"],
644 [AC_MSG_ERROR(Cyrus SASL library not found)])
645 LDFLAGS="$save_LDFLAGS"
647 AC_SUBST(SASL_INCLUDES)dnl
648 AC_SUBST(SASL_LIBS)dnl
650 dnl ---------------------
651 dnl CHECK TERMCAP LIBRARY
652 dnl ---------------------
654 dnl Add the termcap library, so that the following configure
655 dnl tests will find it when it tries to link test programs.
656 nmh_save_LIBS="$LIBS"
657 LIBS="$TERMLIB $LIBS"
659 dnl Checks for external variable ospeed in the termcap library.
660 AC_CACHE_CHECK(if an include file defines ospeed,
661 nmh_cv_decl_ospeed_include_defines,
663 [#include <sys/types.h>
669 #endif], [ospeed = 0;],
670 nmh_cv_decl_ospeed_include_defines=yes,
671 nmh_cv_decl_ospeed_include_defines=no)])
673 if test $nmh_cv_decl_ospeed_include_defines = no; then
674 AC_CACHE_CHECK(if you must define ospeed,
675 nmh_cv_decl_ospeed_must_define,
676 [AC_TRY_LINK( ,[extern short ospeed; ospeed = 0;],
677 nmh_cv_decl_ospeed_must_define=yes,
678 nmh_cv_decl_ospeed_must_define=no)])
681 if test $nmh_cv_decl_ospeed_include_defines = yes; then
682 AC_DEFINE(HAVE_OSPEED)dnl
683 elif test $nmh_cv_decl_ospeed_must_define = yes; then
684 AC_DEFINE(HAVE_OSPEED)
685 AC_DEFINE(MUST_DEFINE_OSPEED)
688 dnl dnl Checks if tgetent accepts NULL and will
689 dnl dnl allocate its own termcap buffer.
690 dnl AC_CACHE_CHECK(if tgetent accepts NULL,
691 dnl nmh_cv_func_tgetent_accepts_null,
692 dnl [AC_TRY_RUN([main(){int i = tgetent((char*)0,"vt100");exit(!i || i == -1);}],
693 dnl nmh_cv_func_tgetent_accepts_null=yes,
694 dnl nmh_cv_func_tgetent_accepts_null=no,
695 dnl nmh_cv_func_tgetent_accepts_null=no)])
696 dnl if test $nmh_cv_func_tgetent_accepts_null = yes; then
697 dnl AC_DEFINE(TGETENT_ACCEPTS_NULL)
700 dnl Now put the libraries back to what it was before we
701 dnl starting checking the termcap library.
702 LIBS="$nmh_save_LIBS"
714 dnl Check for sigset_t. Currently I'm looking in
715 dnl <sys/types.h> and <signal.h>. Others might need
717 AC_CACHE_CHECK(for sigset_t, nmh_cv_type_sigset_t,
719 [#include <sys/types.h>
720 #include <signal.h>], [sigset_t tempsigset;],
721 nmh_cv_type_sigset_t=yes, nmh_cv_type_sigset_t=no)])
722 if test $nmh_cv_type_sigset_t = no; then
723 AC_DEFINE(sigset_t, unsigned int)
731 AC_CACHE_CHECK(for tm_gmtoff in struct tm, nmh_cv_struct_tm_gmtoff,
733 [#ifdef TIME_WITH_SYS_TIME
734 # include <sys/time.h>
737 # ifdef TM_IN_SYS_TIME
738 # include <sys/time.h>
743 [struct tm temptm; temptm.tm_gmtoff = 0;],
744 nmh_cv_struct_tm_gmtoff=yes, nmh_cv_struct_tm_gmtoff=no)])
745 if test $nmh_cv_struct_tm_gmtoff = yes; then
746 AC_DEFINE(HAVE_TM_GMTOFF)
752 dnl What style of signal do you have (POSIX, BSD, or SYSV)?
753 AC_MSG_CHECKING(what style of signals to use)
754 if test $ac_cv_func_sigaction = yes -a $ac_cv_func_sigprocmask = yes; then
755 signals_style=POSIX_SIGNALS
756 AC_DEFINE(POSIX_SIGNALS)
757 AC_DEFINE(RELIABLE_SIGNALS)
758 elif test $ac_cv_func_sigblock = yes -a $ac_cv_func_sigsetmask = yes; then
759 signals_style=BSD_SIGNALS
760 AC_DEFINE(BSD_SIGNALS)
761 AC_DEFINE(RELIABLE_SIGNALS)
762 elif test $ac_cv_func_sighold = yes -a $ac_cv_func_sigrelse = yes; then
763 signals_style=SYSV_SIGNALS
764 AC_DEFINE(SYSV_SIGNALS)
766 signals_style=NO_SIGNAL_BLOCKING
767 AC_DEFINE(NO_SIGNAL_BLOCKING)
770 AC_MSG_RESULT($signals_style)
772 dnl Where is <signal.h> located? Needed as input for signames.awk
773 AC_CACHE_CHECK(where signal.h is located, nmh_cv_path_signal_h,
774 [for SIGNAL_H in /usr/include/bsd/sys/signal.h dnl Next
775 /usr/include/asm/signal.h dnl Linux 1.3.0 and above
776 /usr/include/asm/signum.h dnl some versions of Linux/Alpha
777 /usr/include/linux/signal.h dnl Linux up to 1.2.11
778 /usr/include/sys/signal.h dnl Almost everybody else
779 /dev/null; dnl Just in case we fall through
781 test -f $SIGNAL_H && \
782 grep '#[ ]*define[ ][ ]*SIG[0-9A-Z]*[ ]*[0-9][0-9]*' $SIGNAL_H > /dev/null && \
785 nmh_cv_path_signal_h=$SIGNAL_H
787 SIGNAL_H=$nmh_cv_path_signal_h
788 AC_SUBST(SIGNAL_H)dnl
791 dnl OS SPECIFIC DEFINES
832 AC_DEFINE(SCO_5_STDIO)
840 AC_OUTPUT(Makefile config/Makefile h/Makefile sbr/Makefile uip/Makefile \
841 mts/Makefile mts/smtp/Makefile \
842 etc/Makefile docs/Makefile man/Makefile, \
843 [test -z "$CONFIG_HEADERS" || echo > stamp-h])
845 dnl Umm, what's the point of these assignments?? -- <dan-nmh@dilvish.speed.net>
846 eval "nmhbin=${bindir}"; eval "nmhbin2=${nmhbin}"
847 eval "nmhsysconf=${sysconfdir}"; eval "nmhsysconf2=${nmhsysconf}"
848 eval "nmhlib=${libdir}"; eval "nmhlib2=${nmhlib}"
849 eval "nmhman=${mandir}"
852 if test x"$enable_pop" = x"yes"; then
855 if test x"$enable_apop" = x"yes"; then
856 pop_kinds="${pop_kinds}APOP "
859 if test x"$with_krb4" != x -a x"$with_krb4" != x"no"; then
860 pop_kinds="${pop_kinds}KPOP "
863 pop_kinds="${pop_kinds}POP3)"
869 nmh version : ${VERSION}
870 target os : ${target}
872 compiler flags : ${CFLAGS}
873 linker flags : ${LDFLAGS}
874 source code location : ${srcdir}
875 binary install path : ${nmhbin2}
876 libary install path : ${nmhlib2}
877 config files install path : ${nmhsysconf2}
878 man page install path : ${nmhman}
879 backup prefix : ${backup_prefix}
880 transport system : ${MTS}
881 file locking type : ${LOCKTYPE}
882 default smtp servers : ${smtpservers}
883 default editor : ${editorpath}
884 default pager : ${pagerpath}
885 email address masquerading : ${masquerade}
886 pop is enabled : ${pop_kinds}
887 SASL support : ${sasl_support}"