diff options
-rw-r--r-- | configure.in | 227 |
1 files changed, 227 insertions, 0 deletions
diff --git a/configure.in b/configure.in new file mode 100644 index 00000000..35e14591 --- /dev/null +++ b/configure.in @@ -0,0 +1,227 @@ +dnl Autoconfigure input file for popclient +dnl Carl Harris, ceharris@mal.com +dnl +dnl Process this file with autoconf to produce a configure script. +dnl +dnl $Log: configure.in,v $ +dnl Revision 1.1 1996/06/24 20:43:13 esr +dnl Initial revision +dnl +dnl Revision 1.6 1995/09/07 22:37:33 ceharris +dnl Preparation for 3.0b4 release. +dnl +dnl Revision 1.5 1995/08/14 18:36:37 ceharris +dnl Patches to support POP3's LAST command. +dnl Final revisions for beta3 release. +dnl +dnl Revision 1.4 1995/08/10 00:32:26 ceharris +dnl Preparation for 3.0b3 beta release: +dnl - added code for --kill/--keep, --limit, --protocol, --flush +dnl options; --pop2 and --pop3 options now obsoleted by --protocol. +dnl - added support for APOP authentication, including --with-APOP +dnl argument for configure. +dnl - provisional and broken support for RPOP +dnl - added buffering to SockGets and SockRead functions. +dnl - fixed problem of command-line options not being correctly +dnl carried into the merged options record. +dnl +dnl Revision 1.3 1995/08/09 01:32:49 ceharris +dnl Version 3.0 beta 2 release. +dnl Added +dnl - .poprc functionality +dnl - GNU long options +dnl - multiple servers on the command line. +dnl Fixed +dnl - Passwords showing up in ps output. +dnl +dnl Revision 1.2 1995/08/08 01:01:17 ceharris +dnl Added GNU-style long options processing. +dnl Fixed password in 'ps' output problem. +dnl Fixed various RCS tag blunders. +dnl Integrated .poprc parser, lexer, etc into Makefile processing. +dnl +dnl + +AC_INIT(popclient.h) dnl A distinctive file to look for in srcdir. +AC_CONFIG_HEADER(config.h) + +# We want these before the checks, so the checks can modify their values. +test -z "$CFLAGS" && CFLAGS=-g AC_SUBST(CFLAGS) +test -z "$LDFLAGS" && LDFLAGS=-g AC_SUBST(LDFLAGS) + +AC_CANONICAL_HOST + +AC_MSG_CHECKING(delivery agent for $host) +case $host in + *-*-*bsd*) + AC_DEFINE(MDA_PATH,"/usr/libexec/mail.local") + AC_DEFINE(MDA_ALIAS,"mail.local") + AC_DEFINE(MDA_ARGS,"$u") + mdacmd="/usr/libexec/mail.local \$u" + ;; + + *-*-linux*) + AC_DEFINE(MDA_PATH,"/usr/bin/deliver") + AC_DEFINE(MDA_ALIAS,"deliver") + AC_DEFINE(MDA_ARGS,"$u") + mdacmd="/usr/bin/deliver \$u" + ;; + + *-*-aix*) + AC_DEFINE(MDA_PATH,"/usr/bin/bellmail") + AC_DEFINE(MDA_ALIAS,"bellmail") + AC_DEFINE(MDA_ARGS,"$u") + mdacmd="/usr/bin/bellmail \$u" + ;; + + *-*-hpux*) + AC_DEFINE(MDA_PATH,"/bin/rmail") + AC_DEFINE(MDA_ALIAS,"rmail") + AC_DEFINE(MDA_ARGS,"-d $u") + mdacmd="/bin/rmail -d \$u" + ;; + + # default case assumes /bin/mail is an MDA -- may LOSE mail on + # systems where it is not an MDA. + *) + AC_DEFINE(MDA_PATH,"/bin/mail") + AC_DEFINE(MDA_ALIAS,"mail") + AC_DEFINE(MDA_ARGS,"-d $u") + mdacmd="/bin/mail -d \$u" + ;; +esac +AC_MSG_RESULT($mdacmd) + + +AC_MSG_CHECKING(whether we want APOP support) +AC_ARG_WITH(APOP, + [ --with-APOP should we include APOP support?], + [EXTRASRC="$EXTRASRC \$(srcdir)/md5c.c \$(srcdir)/md5ify.c" + EXTRAOBJ="$EXTRAOBJ md5c.o md5ify.o" + AC_DEFINE(HAVE_APOP_SUPPORT) + AC_MSG_RESULT(yes)], + AC_MSG_RESULT(no)) + +AC_PROG_CC +AC_PROG_INSTALL +AC_PROG_CPP dnl Later checks need this. +AC_PROG_CC_C_O +AC_AIX +AC_ISC_POSIX +AC_MINIX +AC_HEADER_STDC +AC_TYPE_SIZE_T +AC_TYPE_PID_T +AC_TYPE_SIGNAL +AC_CHECK_HEADERS(unistd.h termios.h termio.h sgtty.h memory.h) + +AC_C_CONST dnl getopt needs this. + +AC_PROG_LEX +AC_PROG_YACC +AC_SUBST(LIBOBJS) + +AC_CHECK_LIB(socket,socket) +AC_CHECK_LIB(nsl,inet_addr) + + + +AC_CHECK_FUNC(bzero, AC_DEFINE(HAVE_BZERO), + AC_CHECK_FUNC(memset, [AC_DEFINE(HAVE_MEMSET) + AC_DEFINE(HAVE_MEMCPY)], + [EXTRASRC="$EXTRASRC \$(srcdir)/bzero.c" + EXTRAOBJ="$EXTRALIB bzero.o"])) + +AC_CHECK_FUNC(strdup, AC_DEFINE(HAVE_STRDUP), + [EXTRASRC="$EXTRASRC \$(srcdir)/strdup.c" + EXTRAOBJ="$EXTRAOBJ strdup.o"]) + +AC_CHECK_FUNC(strcasecmp, AC_DEFINE(HAVE_STRCASECMP), + [EXTRASRC="$EXTRASRC \$(srcdir)/strcasecmp.c" + EXTRAOBJ="$EXTRAOBJ strcasecmp.o"]) + +AC_CHECK_FUNC(getopt_long, AC_DEFINE(HAVE_GETOPTLONG), + [EXTRASRC="$EXTRASRC \$(srcdir)/getopt.c \$(srcdir)/getopt1.c" + EXTRAOBJ="$EXTRAOBJ getopt.o getopt1.o"]) + +AC_FUNC_ALLOCA +if test -n "$ALLOCA" +then + EXTRASRC="$EXTRASRC \$(srcdir)/alloca.c" + EXTRAOBJ="$EXTRAOBJ alloca.o" +fi + +dnl All AC_CHECK_FUNCs must precede the following AC_SUBSTs + +AC_SUBST(EXTRASRC) +AC_SUBST(EXTRAOBJ) + +AC_CHECK_FUNCS(dup2 strerror tcsetattr stty setsid) + +dnl AC_FUNC_SETVBUF_REVERSED + +dnl Check for usuable void pointer type +AC_MSG_CHECKING(use of void pointer type) +AC_TRY_COMPILE([], + [char *p; + void *xmalloc(); + p = (char *) xmalloc(1); + ], + [AC_DEFINE(HAVE_VOIDPOINTER) AC_MSG_RESULT(yes)], + AC_MSG_RESULT(no)) + +dnl Check for usable function prototypes +AC_MSG_CHECKING(use of function prototypes); +AC_TRY_COMPILE([], + [int x; + int myProtoFn (int arg); + x = 0; + x = myProtoFn(x); + ], + [AC_DEFINE(HAVE_PROTOTYPES) AC_MSG_RESULT(yes)], + AC_MSG_RESULT(no)) + +dnl Check out the wait reality. +AC_CHECK_HEADERS(sys/wait.h) AC_CHECK_FUNCS(waitpid wait3) +AC_COMPILE_CHECK(union wait, [#include <sys/types.h> +#include <sys/wait.h>], + [union wait status; int pid; pid = wait (&status); +#ifdef WEXITSTATUS +/* Some POSIXoid systems have both the new-style macros and the old + union wait type, and they do not work together. If union wait + conflicts with WEXITSTATUS et al, we don't want to use it at all. */ +if (WEXITSTATUS (status) != 0) pid = -1; +#endif +#ifdef HAVE_WAITPID +/* Make sure union wait works with waitpid. */ +pid = waitpid (-1, &status, 0); +#endif +], + AC_DEFINE(HAVE_UNION_WAIT)) + +AC_COMPILE_CHECK(sys_siglist declaration in signal.h or unistd.h, + [#include <signal.h> +/* NetBSD declares sys_siglist in <unistd.h>. */ +#ifdef HAVE_UNISTD_H +#include <unistd.h> +#endif], [char *msg = *(sys_siglist + 1);], + AC_DEFINE(SYS_SIGLIST_DECLARED)) + + +# The presence of the following is not meant to imply +# that necessarily works on those systems. +dnl AC_DYNIX_SEQ +dnl AC_XENIX_DIR +dnl AC_IRIX_SUN + +AC_OUTPUT(Makefile, [ +# Makefile uses this timestamp file to know when to remake Makefile, +# build.sh, and glob/Makefile. +touch stamp-config]) + +dnl Local Variables: +dnl comment-start: "dnl " +dnl comment-end: "" +dnl comment-start-skip: "\\bdnl\\b\\s *" +dnl compile-command: "make configure config.h.in" +dnl End: |