1 dnl $Id: configure.in,v 1.5 2001/09/01 00:57:59 robs Exp $
3 dnl This file is an input file used by the GNU "autoconf" program to
4 dnl generate the file "configure", which is run during the build
5 dnl to configure the system for the local environment.
7 # This file and the script it generates is used by both the devkit
8 # and the Perl FCGI module. Although each has slightly different
9 # requirements, this allows the build environment to maintained by one
10 # file set. The FCGI build is idendified by the presence of the
11 # file FCGI.XL. If its not found, its consider a devkit build.
15 if test -f "FCGI.XL"; then
19 if test "$FCGI_BUILD"; then
20 AC_CONFIG_HEADER([fcgi_config.h])
22 AC_CONFIG_HEADER([include/fcgi_config.h])
29 AC_CHECK_TOOL([AR], [ar], [ar])
31 AC_CHECK_LIB([nsl], [main]) ac_cv_lib_nsl=ac_cv_lib_nsl_main
32 AC_CHECK_LIB([resolv], [main]) ac_cv_lib_resolv=ac_cv_lib_resolv_main
33 AC_CHECK_LIB([socket], [main]) ac_cv_lib_socket=ac_cv_lib_socket_main
34 AC_CHECK_LIB([dnet_stub], [main]) ac_cv_lib_dnet_stub=ac_cv_lib_dnet_stub_main
35 AC_CHECK_LIB([ieee], [main]) ac_cv_lib_ieee=ac_cv_lib_ieee_main
37 AC_CHECK_LIB([pthread], [main],
38 [AC_DEFINE([HAVE_LIBPTHREAD], [1],
39 [Define if you have the pthread library])
40 AC_SUBST([HAVE_LIBPTHREAD])])
41 ac_cv_lib_pthread=ac_cv_lib_pthread_main
43 AC_CHECK_TYPE([ssize_t], [int])
45 AC_MSG_CHECKING([for sun_len in sys/un.h])
46 AC_EGREP_HEADER([sun_len], [sys/un.h],
48 AC_DEFINE([HAVE_SOCKADDR_UN_SUN_LEN], [1],
49 [Define if sockaddr_un in sys/un.h contains a sun_len component])],
52 AC_REPLACE_FUNCS([strerror])
54 AC_MSG_CHECKING([for fpos_t in stdio.h])
55 AC_EGREP_HEADER([fpos_t], [stdio.h],
57 AC_DEFINE([HAVE_FPOS], [1], [Define if the fpos_t typedef is in stdio.h])],
60 AC_CHECK_HEADERS([sys/socket.h netdb.h netinet/in.h arpa/inet.h sys/time.h limits.h sys/param.h unistd.h])
62 AC_MSG_CHECKING([for a fileno() prototype in stdio.h])
63 AC_EGREP_HEADER([fileno], [stdio.h],
65 AC_DEFINE([HAVE_FILENO_PROTO], [1],
66 [Define if there's a fileno() prototype in stdio.h])],
69 if test "$HAVE_SYS_SOCKET_H"; then
70 AC_MSG_CHECKING([for socklen_t in sys/socket.h])
71 AC_EGREP_HEADER([socklen_t], [sys/socket.h],
73 AC_DEFINE([HAVE_SOCKLEN], [1],
74 [Define if the socklen_t typedef is in sys/socket.h])],
78 #--------------------------------------------------------------------
79 # Do we need cross-process locking on this platform?
80 #--------------------------------------------------------------------
81 AC_MSG_CHECKING([whether cross-process locking is required by accept()])
83 IRIX\ 5.* | SunOS\ 5.* | UNIX_System_V\ 4.0)
85 AC_DEFINE([USE_LOCKING], [1],
86 [Define if cross-process locking is required by accept()])
93 #--------------------------------------------------------------------
94 # Does va_arg(arg, long double) crash the compiler?
95 # hpux 9.04 compiler does and so does Stratus FTX (uses HP's compiler)
96 #--------------------------------------------------------------------
97 AC_MSG_CHECKING([whether va_arg(arg, long double) crashes the compiler])
98 AC_TRY_COMPILE([#include <stdarg.h>],
99 [long double lDblArg; va_list arg; lDblArg = va_arg(arg, long double);],
101 [AC_MSG_RESULT([yes])
102 AC_DEFINE([HAVE_VA_ARG_LONG_DOUBLE_BUG], [1],
103 [Define if va_arg(arg, long double) crashes the compiler])])
108 #--------------------------------------------------------------------
109 # This is a little hokie in that it avoids including config.guess
110 # and config.sub in the distribution, but its been working so far.
111 # Windows builds don't run configure so we should be safe fixing
112 # this to 'unix' (at least for now).
113 #--------------------------------------------------------------------
121 CCDEFS="$CCDEFS -Wall -Wmissing-prototypes"
129 if test -z "$FCGI_BUILD"; then
130 AC_CONFIG_FILES([Makefile