dnl $Id: configure.in,v 1.4 2001/08/30 22:13:01 robs Exp $ dnl dnl This file is an input file used by the GNU "autoconf" program to dnl generate the file "configure", which is run during the build dnl to configure the system for the local environment. # This file and the script it generates is used by both the devkit # and the Perl FCGI module. Although each has slightly different # requirements, this allows the build environment to maintained by one # file set. The FCGI build is idendified by the presence of the # file FCGI.XL. If its not found, its consider a devkit build. AC_INIT if test -f "FCGI.XL"; then FCGI_BUILD='true' fi if test "$FCGI_BUILD"; then AC_CONFIG_HEADER(fcgi_config.h) else AC_CONFIG_HEADER(include/fcgi_config.h) fi AC_PROG_CC AC_PROG_CPP AC_PROG_INSTALL AC_PROG_RANLIB AC_CHECK_TOOL(AR, ar, ar) AC_CHECK_LIB([nsl],[main],[],[],[])ac_cv_lib_nsl=ac_cv_lib_nsl_main AC_CHECK_LIB([resolv],[main],[],[],[])ac_cv_lib_resolv=ac_cv_lib_resolv_main AC_CHECK_LIB([socket],[main],[],[],[])ac_cv_lib_socket=ac_cv_lib_socket_main AC_CHECK_LIB([dnet_stub],[main],[],[],[])ac_cv_lib_dnet_stub=ac_cv_lib_dnet_stub_main AC_CHECK_LIB([ieee],[main],[],[],[])ac_cv_lib_ieee=ac_cv_lib_ieee_main AC_CHECK_TYPE(ssize_t, int) AC_MSG_CHECKING(for sun_len in sys/un.h) AC_EGREP_HEADER(sun_len, sys/un.h, AC_MSG_RESULT(yes) AC_DEFINE(HAVE_SOCKADDR_UN_SUN_LEN), AC_MSG_RESULT(no)) AC_CHECK_FUNCS(strerror) AC_REPLACE_FUNCS(strerror) AC_MSG_CHECKING(for fpos in stdio.h) AC_EGREP_HEADER(fpos_t, stdio.h, AC_MSG_RESULT(yes) AC_DEFINE(HAVE_FPOS), AC_MSG_RESULT(no)) AC_CHECK_HEADERS([sys/socket.h],[have_sys_socket=yes]) AC_CHECK_HEADERS([netdb.h]) AC_CHECK_HEADERS([netinet/in.h]) AC_CHECK_HEADERS([arpa/inet.h]) AC_CHECK_HEADERS([sys/time.h]) AC_CHECK_HEADERS([limits.h]) if test "x$have_sys_socket" = "xyes"; then AC_MSG_CHECKING(for socklen_t in sys/socket.h) AC_EGREP_HEADER(socklen_t, sys/socket.h, AC_MSG_RESULT(yes) AC_DEFINE(HAVE_SOCKLEN), AC_MSG_RESULT(no)) fi #-------------------------------------------------------------------- # Do we need cross-process locking on this platform? #-------------------------------------------------------------------- AC_MSG_CHECKING("if this machine needs cross-process locking") case "`uname -sr`" in IRIX\ 5.*) AC_DEFINE(USE_LOCKING) AC_MSG_RESULT(yes) ;; SunOS\ 5.*) AC_DEFINE(USE_LOCKING) AC_MSG_RESULT(yes) ;; UNIX_System_V\ 4.0) AC_DEFINE(USE_LOCKING) AC_MSG_RESULT(yes) ;; *) AC_MSG_RESULT(no) ;; esac #-------------------------------------------------------------------- # Does va_arg(arg, long double) crash the compiler? # hpux 9.04 compiler does and so does Stratus FTX (uses HP's compiler) #-------------------------------------------------------------------- AC_MSG_CHECKING(if va_arg(arg, long double) crashes the compiler) AC_TRY_COMPILE([#include ], [long double lDblArg; va_list arg; lDblArg = va_arg(arg, long double);], AC_MSG_RESULT(no), AC_DEFINE(HAVE_VA_ARG_LONG_DOUBLE_BUG) AC_MSG_RESULT(yes)) AC_C_CONST AC_C_INLINE #-------------------------------------------------------------------- # This is a little hokie in that it avoids including config.guess # and config.sub in the distribution, but its been working so far. # Windows builds don't run configure so we should be safe fixing # this to 'unix' (at least for now). #-------------------------------------------------------------------- SYSTEM=unix AC_SUBST(SYSTEM) L=a AC_SUBST(L) if test "$GCC"; then CCDEFS="$CCDEFS -ansi -pedantic -Wall -Wmissing-prototypes" fi AC_SUBST(CCDEFS) AC_OBJEXT if test -z "$FCGI_BUILD"; then AC_CONFIG_FILES([Makefile libfcgi/Makefile cgi-fcgi/Makefile examples/Makefile]) fi AC_OUTPUT