diff options
| author | Sam Varshavchik | 2013-08-25 14:43:26 -0400 |
|---|---|---|
| committer | Sam Varshavchik | 2013-08-25 14:43:52 -0400 |
| commit | a00fd90cded04581b53d107f07ad2ff4e83384b3 (patch) | |
| tree | 6525d7dfa86d4a84bca3b3ed188b7e54636e68d9 /cgi/configure.ac | |
| parent | 3587050bb0729dfc8759a84e7ffbc860662b1b25 (diff) | |
| download | courier-libs-a00fd90cded04581b53d107f07ad2ff4e83384b3.tar.bz2 | |
Renamed configure.in to configure.ac
Diffstat (limited to 'cgi/configure.ac')
| -rw-r--r-- | cgi/configure.ac | 155 |
1 files changed, 155 insertions, 0 deletions
diff --git a/cgi/configure.ac b/cgi/configure.ac new file mode 100644 index 0000000..9169322 --- /dev/null +++ b/cgi/configure.ac @@ -0,0 +1,155 @@ +dnl Process this file with autoconf to produce a configure script. +dnl +dnl Copyright 1998 - 2005 Double Precision, Inc. See COPYING for +dnl distribution information. + +AC_INIT(cgi, 0.10, [courier-users@lists.sourceforge.net]) + +>confdefs.h # Kill PACKAGE_ macros + +AC_CONFIG_SRCDIR(cgi.c) +AC_CONFIG_AUX_DIR(../..) +AM_INIT_AUTOMAKE([foreign no-define]) + +AM_CONFIG_HEADER(cgi_config.h) + +dnl Checks for programs. +AC_USE_SYSTEM_EXTENSIONS +AC_PROG_CC +AC_PROG_AWK +AC_PROG_INSTALL +AC_PROG_LN_S +AC_PROG_LIBTOOL + +dnl Checks for libraries. + +dnl Checks for header files. +AC_HEADER_STDC +AC_CHECK_HEADERS(fcntl.h sys/time.h sys/wait.h sys/select.h sys/uio.h unistd.h) +AC_HEADER_TIME + +dnl Checks for typedefs, structures, and compiler characteristics. +AC_C_CONST +AC_TYPE_SIZE_T + +AC_CACHE_CHECK([for socklen_t], + cgi_cv_hassocklen_t, + +AC_COMPILE_IFELSE([ +AC_LANG_SOURCE( [ +#include <sys/types.h> +#include <sys/socket.h> + +socklen_t sl_t; +],[ + accept(0, 0, &sl_t); +])], + cgi_cv_hassocklen_t=yes, + cgi_cv_hassocklen_t=no) +) + +socklen_t="int" + +if test $cgi_cv_hassocklen_t = yes +then + : +else + AC_DEFINE_UNQUOTED(socklen_t, int, [ Default definition for socklen_t ]) +fi + + +dnl Checks for library functions. +AC_CHECK_FUNCS(strdup strncasecmp) + +dnl Other checks + +AC_ARG_WITH(formdata, + [ --with-formdata Compile support for multipart/formdata], + AC_DEFINE_UNQUOTED(CGIFORMDATA, 1, + [ Whether to generate code to handle multipart/formdata ])) + +AC_ARG_WITH(maxargsize, + [ --with-maxargsize=nbytes Limit maximum size of CGI args], + CFLAGS="$CFLAGS -DCGIMAXARG=$withval") + +AC_ARG_WITH(maxformargsize, + [ --with-maxformargsize=nbytes Maximum size of multipart/formdata uploads], + CFLAGS="$CFLAGS -DCGIMAXFORMDATAARG=$withval") + +AC_TRY_RUN( [ + +#include <stdio.h> +#include <stdlib.h> +#include <limits.h> + +int main() +{ +FILE *fp=fopen("conftestval", "w"); + + if (!fp) exit(1); + fprintf(fp, "-%lu\n", ULONG_MAX); + fclose(fp); + return (0); +} +] + , [ MAXLONGSIZE=`wc -c conftestval | awk ' { print $1 } ' ` ], + [ + AC_MSG_ERROR(Unable to run test program.) + ] , + [ + MAXLONGSIZE=60 + AC_MSG_WARN([Cross compiling, setting MAXLONGSIZE to $MAXLONGSIZE]) + ] + ) + +AC_CACHE_CHECK([how to pass file descriptors], + ac_cv_sqwebmail_passfd, + +AC_TRY_COMPILE( [ +#include <sys/types.h> +#include <sys/socket.h> +#include <sys/uio.h> + +int fd; struct msghdr msg; ], +[ + msg.msg_accrights=(caddr_t)fd; + msg.msg_accrightslen=sizeof(fd); +], + ac_cv_sqwebmail_passfd=msg_accrights, + + AC_TRY_COMPILE( [ +#include <sys/types.h> +#include <sys/socket.h> +#include <sys/uio.h> + +struct msghdr msg; struct cmsghdr cmsg; char buf; +], +[ + msg.msg_control = &buf; + msg.msg_controllen = 1; +], + ac_cv_sqwebmail_passfd=msg_control, + ac_cv_sqwebmail_passfd=none))) + +if test "$ac_cv_sqwebmail_passfd" = "msg_accrights" +then + AC_DEFINE_UNQUOTED(CGI_PASSFD_MSGACCRIGHTS,1, + [Pass file descriptors in msg_accrights]) +fi + +if test "$ac_cv_sqwebmail_passfd" = "msg_control" +then + AC_DEFINE_UNQUOTED(CGI_PASSFD_MSGCONTROL,1, + [Pass file descriptors in msg_control]) +fi + + +if test "$GCC" = yes ; then + CFLAGS="$CFLAGS -Wall" +fi + +CFLAGS="$CFLAGS -I.. -I$srcdir/.." +AC_SYS_LARGEFILE + +AC_DEFINE_UNQUOTED(MAXLONGSIZE, $MAXLONGSIZE, [ Calculate max size of long ]) +AC_OUTPUT(Makefile) |
