use libtool
[catagits/fcgi2.git] / configure.in
CommitLineData
737bf5cf 1dnl $Id: configure.in,v 1.8 2001/09/21 16:49:36 skimo Exp $
0198fd3c 2dnl
3dnl This file is an input file used by the GNU "autoconf" program to
4dnl generate the file "configure", which is run during the build
5dnl to configure the system for the local environment.
f802ee92 6
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.
0198fd3c 12
8bd181b5 13AC_INIT
af1181af 14AM_INIT_AUTOMAKE(fcgi, 2.2.1)
f802ee92 15
16if test -f "FCGI.XL"; then
17 FCGI_BUILD='true'
18fi
19
20if test "$FCGI_BUILD"; then
af1181af 21 AM_CONFIG_HEADER([fcgi_config.h])
f802ee92 22else
af1181af 23 AM_CONFIG_HEADER([include/fcgi_config.h])
f802ee92 24fi
8bd181b5 25
26AC_PROG_CC
27AC_PROG_CPP
28AC_PROG_INSTALL
ec728770 29AC_PROG_LIBTOOL
8bd181b5 30AC_PROG_RANLIB
eb7bc90d 31AC_CHECK_TOOL([AR], [ar], [ar])
32
33AC_CHECK_LIB([nsl], [main]) ac_cv_lib_nsl=ac_cv_lib_nsl_main
34AC_CHECK_LIB([resolv], [main]) ac_cv_lib_resolv=ac_cv_lib_resolv_main
35AC_CHECK_LIB([socket], [main]) ac_cv_lib_socket=ac_cv_lib_socket_main
36AC_CHECK_LIB([dnet_stub], [main]) ac_cv_lib_dnet_stub=ac_cv_lib_dnet_stub_main
37AC_CHECK_LIB([ieee], [main]) ac_cv_lib_ieee=ac_cv_lib_ieee_main
38
737bf5cf 39AC_SUBST(threaded)
eb7bc90d 40AC_CHECK_LIB([pthread], [main],
41 [AC_DEFINE([HAVE_LIBPTHREAD], [1],
42 [Define if you have the pthread library])
737bf5cf 43 AC_SUBST([HAVE_LIBPTHREAD])
44 threaded=threaded])
eb7bc90d 45ac_cv_lib_pthread=ac_cv_lib_pthread_main
46
47AC_CHECK_TYPE([ssize_t], [int])
48
49AC_MSG_CHECKING([for sun_len in sys/un.h])
50AC_EGREP_HEADER([sun_len], [sys/un.h],
51 [AC_MSG_RESULT([yes])
52 AC_DEFINE([HAVE_SOCKADDR_UN_SUN_LEN], [1],
53 [Define if sockaddr_un in sys/un.h contains a sun_len component])],
54 AC_MSG_RESULT([no]))
55
56AC_REPLACE_FUNCS([strerror])
57
58AC_MSG_CHECKING([for fpos_t in stdio.h])
59AC_EGREP_HEADER([fpos_t], [stdio.h],
60 [AC_MSG_RESULT([yes])
61 AC_DEFINE([HAVE_FPOS], [1], [Define if the fpos_t typedef is in stdio.h])],
62 AC_MSG_RESULT([no]))
63
64AC_CHECK_HEADERS([sys/socket.h netdb.h netinet/in.h arpa/inet.h sys/time.h limits.h sys/param.h unistd.h])
65
66AC_MSG_CHECKING([for a fileno() prototype in stdio.h])
67AC_EGREP_HEADER([fileno], [stdio.h],
68 [AC_MSG_RESULT([yes])
69 AC_DEFINE([HAVE_FILENO_PROTO], [1],
70 [Define if there's a fileno() prototype in stdio.h])],
71 AC_MSG_RESULT([no]))
72
73if test "$HAVE_SYS_SOCKET_H"; then
74 AC_MSG_CHECKING([for socklen_t in sys/socket.h])
75 AC_EGREP_HEADER([socklen_t], [sys/socket.h],
76 [AC_MSG_RESULT([yes])
77 AC_DEFINE([HAVE_SOCKLEN], [1],
78 [Define if the socklen_t typedef is in sys/socket.h])],
79 AC_MSG_RESULT([no]))
3361128b 80fi
81
0198fd3c 82#--------------------------------------------------------------------
83# Do we need cross-process locking on this platform?
84#--------------------------------------------------------------------
eb7bc90d 85AC_MSG_CHECKING([whether cross-process locking is required by accept()])
0198fd3c 86case "`uname -sr`" in
eb7bc90d 87 IRIX\ 5.* | SunOS\ 5.* | UNIX_System_V\ 4.0)
88 AC_MSG_RESULT([yes])
89 AC_DEFINE([USE_LOCKING], [1],
90 [Define if cross-process locking is required by accept()])
91 ;;
0198fd3c 92 *)
eb7bc90d 93 AC_MSG_RESULT([no])
94 ;;
0198fd3c 95esac
96
97#--------------------------------------------------------------------
98# Does va_arg(arg, long double) crash the compiler?
99# hpux 9.04 compiler does and so does Stratus FTX (uses HP's compiler)
100#--------------------------------------------------------------------
eb7bc90d 101AC_MSG_CHECKING([whether va_arg(arg, long double) crashes the compiler])
0198fd3c 102AC_TRY_COMPILE([#include <stdarg.h>],
103 [long double lDblArg; va_list arg; lDblArg = va_arg(arg, long double);],
eb7bc90d 104 AC_MSG_RESULT([no]),
105 [AC_MSG_RESULT([yes])
106 AC_DEFINE([HAVE_VA_ARG_LONG_DOUBLE_BUG], [1],
107 [Define if va_arg(arg, long double) crashes the compiler])])
0198fd3c 108
f802ee92 109AC_C_CONST
110AC_C_INLINE
111
0198fd3c 112#--------------------------------------------------------------------
f802ee92 113# This is a little hokie in that it avoids including config.guess
114# and config.sub in the distribution, but its been working so far.
115# Windows builds don't run configure so we should be safe fixing
116# this to 'unix' (at least for now).
0198fd3c 117#--------------------------------------------------------------------
f802ee92 118SYSTEM=unix
eb7bc90d 119AC_SUBST([SYSTEM])
f802ee92 120
121L=a
eb7bc90d 122AC_SUBST([L])
f802ee92 123
124if test "$GCC"; then
eb7bc90d 125 CCDEFS="$CCDEFS -Wall -Wmissing-prototypes"
f802ee92 126fi
127
eb7bc90d 128AC_SUBST([CCDEFS])
f802ee92 129
eb7bc90d 130AC_OBJEXT
131AC_SUBST([EXEEXT])
f802ee92 132
133if test -z "$FCGI_BUILD"; then
134 AC_CONFIG_FILES([Makefile
135 libfcgi/Makefile
136 cgi-fcgi/Makefile
137 examples/Makefile])
138fi
139
8bd181b5 140AC_OUTPUT
0198fd3c 141