shane Mon Dec 2 00:24:54 2002 EDT Modified files: /php4/sapi/cgi/libfcgi acinclude.m4 libfcgi.m4 Log: aparently did not add these on head removed ssize_t which was causing problems, and not in libfcgi anyway
Index: php4/sapi/cgi/libfcgi/acinclude.m4 diff -u /dev/null php4/sapi/cgi/libfcgi/acinclude.m4:1.2 --- /dev/null Mon Dec 2 00:24:54 2002 +++ php4/sapi/cgi/libfcgi/acinclude.m4 Mon Dec 2 00:24:54 2002 @@ -0,0 +1,389 @@ +dnl $Id: acinclude.m4,v 1.2 2002/12/02 05:24:54 shane Exp $ + +AC_DEFUN(FCGI_COMMON_CHECKS, [ + 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], [1], + [Define if sockaddr_un in sys/un.h contains a sun_len component])], + AC_MSG_RESULT([no])) + + AC_MSG_CHECKING([for fpos_t in stdio.h]) + AC_EGREP_HEADER([fpos_t], [stdio.h], + [AC_MSG_RESULT([yes]) + AC_DEFINE([HAVE_FPOS], [1], + [Define if the fpos_t typedef is in stdio.h])], + AC_MSG_RESULT([no])) + + AC_CHECK_HEADERS([sys/socket.h netdb.h netinet/in.h arpa/inet.h]) + AC_CHECK_HEADERS([sys/time.h limits.h sys/param.h unistd.h]) + + AC_MSG_CHECKING([for a fileno() prototype in stdio.h]) + AC_EGREP_HEADER([fileno], [stdio.h], + [AC_MSG_RESULT([yes]) + AC_DEFINE([HAVE_FILENO_PROTO], [1], + [Define if there's a fileno() prototype in stdio.h])], + AC_MSG_RESULT([no])) + + if test "$HAVE_SYS_SOCKET_H"; 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], [1], + [Define if the socklen_t typedef is in sys/socket.h])], + AC_MSG_RESULT([no])) + fi + + #-------------------------------------------------------------------- + # Do we need cross-process locking on this platform? + #-------------------------------------------------------------------- + AC_MSG_CHECKING([whether cross-process locking is required by accept()]) + case "`uname -sr`" in + IRIX\ 5.* | SunOS\ 5.* | UNIX_System_V\ 4.0) + AC_MSG_RESULT([yes]) + AC_DEFINE([USE_LOCKING], [1], + [Define if cross-process locking is required by accept()]) + ;; + *) + 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([whether va_arg(arg, long double) crashes the compiler]) + AC_TRY_COMPILE([#include <stdarg.h>], + [long double lDblArg; va_list arg; lDblArg = va_arg(arg, long double);], + AC_MSG_RESULT([no]), + [AC_MSG_RESULT([yes]) + AC_DEFINE([HAVE_VA_ARG_LONG_DOUBLE_BUG], [1], + [Define if va_arg(arg, long double) crashes the compiler])]) + + AC_C_CONST +]) + + +dnl @synopsis ACX_PTHREAD([ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]]) +dnl +dnl This macro figures out how to build C programs using POSIX +dnl threads. It sets the PTHREAD_LIBS output variable to the threads +dnl library and linker flags, and the PTHREAD_CFLAGS output variable +dnl to any special C compiler flags that are needed. (The user can also +dnl force certain compiler flags/libs to be tested by setting these +dnl environment variables.) +dnl +dnl Also sets PTHREAD_CC to any special C compiler that is needed for +dnl multi-threaded programs (defaults to the value of CC otherwise). +dnl (This is necessary on AIX to use the special cc_r compiler alias.) +dnl +dnl If you are only building threads programs, you may wish to +dnl use these variables in your default LIBS, CFLAGS, and CC: +dnl +dnl LIBS="$PTHREAD_LIBS $LIBS" +dnl CFLAGS="$CFLAGS $PTHREAD_CFLAGS" +dnl CC="$PTHREAD_CC" +dnl +dnl In addition, if the PTHREAD_CREATE_JOINABLE thread-attribute +dnl constant has a nonstandard name, defines PTHREAD_CREATE_JOINABLE +dnl to that name (e.g. PTHREAD_CREATE_UNDETACHED on AIX). +dnl +dnl ACTION-IF-FOUND is a list of shell commands to run if a threads +dnl library is found, and ACTION-IF-NOT-FOUND is a list of commands +dnl to run it if it is not found. If ACTION-IF-FOUND is not specified, +dnl the default action will define HAVE_PTHREAD. +dnl +dnl Please let the authors know if this macro fails on any platform, +dnl or if you have any other suggestions or comments. This macro was +dnl based on work by SGJ on autoconf scripts for FFTW (www.fftw.org) +dnl (with help from M. Frigo), as well as ac_pthread and hb_pthread +dnl macros posted by AFC to the autoconf macro repository. We are also +dnl grateful for the helpful feedback of numerous users. +dnl +dnl @version $Id: acinclude.m4,v 1.2 2002/12/02 05:24:54 shane Exp $ +dnl @author Steven G. Johnson <[EMAIL PROTECTED]> and Alejandro Forero Cuervo +<[EMAIL PROTECTED]> + +AC_DEFUN([ACX_PTHREAD], [ +AC_REQUIRE([AC_CANONICAL_HOST]) +acx_pthread_ok=no + +# First, check if the POSIX threads header, pthread.h, is available. +# If it isn't, don't bother looking for the threads libraries. +AC_CHECK_HEADER(pthread.h, , acx_pthread_ok=noheader) + +# We must check for the threads library under a number of different +# names; the ordering is very important because some systems +# (e.g. DEC) have both -lpthread and -lpthreads, where one of the +# libraries is broken (non-POSIX). + +# First of all, check if the user has set any of the PTHREAD_LIBS, +# etcetera environment variables, and if threads linking works using +# them: +if test x"$PTHREAD_LIBS$PTHREAD_CFLAGS" != x; then + save_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS $PTHREAD_CFLAGS" + save_LIBS="$LIBS" + LIBS="$PTHREAD_LIBS $LIBS" + AC_MSG_CHECKING([for pthread_join in LIBS=$PTHREAD_LIBS with +CFLAGS=$PTHREAD_CFLAGS]) + AC_TRY_LINK_FUNC(pthread_join, acx_pthread_ok=yes) + AC_MSG_RESULT($acx_pthread_ok) + if test x"$acx_pthread_ok" = xno; then + PTHREAD_LIBS="" + PTHREAD_CFLAGS="" + fi + LIBS="$save_LIBS" + CFLAGS="$save_CFLAGS" +fi + +# Create a list of thread flags to try. Items starting with a "-" are +# C compiler flags, and other items are library names, except for "none" +# which indicates that we try without any flags at all. + +acx_pthread_flags="pthreads none -Kthread -kthread lthread -pthread -pthreads +-mthreads pthread --thread-safe -mt" + +# The ordering *is* (sometimes) important. Some notes on the +# individual items follow: + +# pthreads: AIX (must check this before -lpthread) +# none: in case threads are in libc; should be tried before -Kthread and +# other compiler flags to prevent continual compiler warnings +# -Kthread: Sequent (threads in libc, but -Kthread needed for pthread.h) +# -kthread: FreeBSD kernel threads (preferred to -pthread since SMP-able) +# lthread: LinuxThreads port on FreeBSD (also preferred to -pthread) +# -pthread: Linux/gcc (kernel threads), BSD/gcc (userland threads) +# -pthreads: Solaris/gcc +# -mthreads: Mingw32/gcc, Lynx/gcc +# -mt: Sun Workshop C (may only link SunOS threads [-lthread], but it +# doesn't hurt to check since this sometimes defines pthreads too; +# also defines -D_REENTRANT) +# pthread: Linux, etcetera +# --thread-safe: KAI C++ + +case "${host_cpu}-${host_os}" in + *solaris*) + + # On Solaris (at least, for some versions), libc contains stubbed + # (non-functional) versions of the pthreads routines, so link-based + # tests will erroneously succeed. (We need to link with -pthread or + # -lpthread.) (The stubs are missing pthread_cleanup_push, or rather + # a function called by this macro, so we could check for that, but + # who knows whether they'll stub that too in a future libc.) So, + # we'll just look for -pthreads and -lpthread first: + + acx_pthread_flags="-pthread -pthreads pthread -mt $acx_pthread_flags" + ;; +esac + +if test x"$acx_pthread_ok" = xno; then +for flag in $acx_pthread_flags; do + + case $flag in + none) + AC_MSG_CHECKING([whether pthreads work without any flags]) + ;; + + -*) + AC_MSG_CHECKING([whether pthreads work with $flag]) + PTHREAD_CFLAGS="$flag" + ;; + + *) + AC_MSG_CHECKING([for the pthreads library -l$flag]) + PTHREAD_LIBS="-l$flag" + ;; + esac + + save_LIBS="$LIBS" + save_CFLAGS="$CFLAGS" + LIBS="$PTHREAD_LIBS $LIBS" + CFLAGS="$CFLAGS $PTHREAD_CFLAGS" + + # Check for various functions. We must include pthread.h, + # since some functions may be macros. (On the Sequent, we + # need a special flag -Kthread to make this header compile.) + # We check for pthread_join because it is in -lpthread on IRIX + # while pthread_create is in libc. We check for pthread_attr_init + # due to DEC craziness with -lpthreads. We check for + # pthread_cleanup_push because it is one of the few pthread + # functions on Solaris that doesn't have a non-functional libc stub. + # We try pthread_create on general principles. + AC_TRY_LINK([#include <pthread.h>], + [pthread_t th; pthread_join(th, 0); + pthread_attr_init(0); pthread_cleanup_push(0, 0); + pthread_create(0,0,0,0); pthread_cleanup_pop(0); ], + [acx_pthread_ok=yes]) + + LIBS="$save_LIBS" + CFLAGS="$save_CFLAGS" + + AC_MSG_RESULT($acx_pthread_ok) + if test "x$acx_pthread_ok" = xyes; then + break; + fi + + PTHREAD_LIBS="" + PTHREAD_CFLAGS="" +done +fi + +# Various other checks: +if test "x$acx_pthread_ok" = xyes; then + save_LIBS="$LIBS" + LIBS="$PTHREAD_LIBS $LIBS" + save_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS $PTHREAD_CFLAGS" + + # Detect AIX lossage: threads are created detached by default + # and the JOINABLE attribute has a nonstandard name (UNDETACHED). + AC_MSG_CHECKING([for joinable pthread attribute]) + AC_TRY_LINK([#include <pthread.h>], + [int attr=PTHREAD_CREATE_JOINABLE;], + ok=PTHREAD_CREATE_JOINABLE, ok=unknown) + if test x"$ok" = xunknown; then + AC_TRY_LINK([#include <pthread.h>], + [int attr=PTHREAD_CREATE_UNDETACHED;], + ok=PTHREAD_CREATE_UNDETACHED, ok=unknown) + fi + if test x"$ok" != xPTHREAD_CREATE_JOINABLE; then + AC_DEFINE(PTHREAD_CREATE_JOINABLE, $ok, + [Define to the necessary symbol if this constant + uses a non-standard name on your system.]) + fi + AC_MSG_RESULT(${ok}) + if test x"$ok" = xunknown; then + AC_MSG_WARN([we do not know how to create joinable pthreads]) + fi + + AC_MSG_CHECKING([if more special flags are required for pthreads]) + flag=no + case "${host_cpu}-${host_os}" in + *-aix* | *-freebsd*) flag="-D_THREAD_SAFE";; + *solaris* | alpha*-osf*) flag="-D_REENTRANT";; + esac + AC_MSG_RESULT(${flag}) + if test "x$flag" != xno; then + PTHREAD_CFLAGS="$flag $PTHREAD_CFLAGS" + fi + + LIBS="$save_LIBS" + CFLAGS="$save_CFLAGS" + + # More AIX lossage: must compile with cc_r + AC_CHECK_PROG(PTHREAD_CC, cc_r, cc_r, ${CC}) +else + PTHREAD_CC="$CC" +fi + +AC_SUBST(PTHREAD_LIBS) +AC_SUBST(PTHREAD_CFLAGS) +AC_SUBST(PTHREAD_CC) + +# Finally, execute ACTION-IF-FOUND/ACTION-IF-NOT-FOUND: +if test x"$acx_pthread_ok" = xyes; then + ifelse([$1],,AC_DEFINE(HAVE_PTHREAD,1,[Define if you have POSIX threads +libraries and header files.]),[$1]) + : +else + acx_pthread_ok=no + $2 +fi + +])dnl ACX_PTHREAD + + + +dnl @synopsis AC_PROG_CC_WARNINGS([ANSI]) +dnl +dnl Enables a reasonable set of warnings for the C compiler. Optionally, +dnl if the first argument is nonempty, turns on flags which enforce and/or +dnl enable proper ANSI C if such flags are known to the compiler used. +dnl +dnl Currently this macro knows about GCC, Solaris C compiler, +dnl Digital Unix C compiler, C for AIX Compiler, HP-UX C compiler, +dnl and IRIX C compiler. +dnl +dnl @version $Id: acinclude.m4,v 1.2 2002/12/02 05:24:54 shane Exp $ +dnl @author Ville Laurikari <[EMAIL PROTECTED]> +dnl +AC_DEFUN([AC_PROG_CC_WARNINGS], [ + ansi=$1 + if test -z "$ansi"; then + msg="for C compiler warning flags" + else + msg="for C compiler warning and ANSI conformance flags" + fi + AC_CACHE_CHECK($msg, ac_cv_prog_cc_warnings, [ + if test -n "$CC"; then + cat > conftest.c <<EOF +int main(int argc, char **argv) { return 0; } +EOF + + dnl GCC + if test "$GCC" = "yes"; then + if test -z "$ansi"; then + ac_cv_prog_cc_warnings="-Wall" + else + ac_cv_prog_cc_warnings="-Wall -ansi -pedantic" + fi + + dnl Solaris C compiler + elif $CC -flags 2>&1 | grep "Xc.*strict ANSI C" > /dev/null 2>&1 && + $CC -c -v -Xc conftest.c > /dev/null 2>&1 && + test -f conftest.o; then + if test -z "$ansi"; then + ac_cv_prog_cc_warnings="-v" + else + ac_cv_prog_cc_warnings="-v -Xc" + fi + + dnl HP-UX C compiler + elif $CC > /dev/null 2>&1 && + $CC -c -Aa +w1 conftest.c > /dev/null 2>&1 && + test -f conftest.o; then + if test -z "$ansi"; then + ac_cv_prog_cc_warnings="+w1" + else + ac_cv_prog_cc_warnings="+w1 -Aa" + fi + + dnl Digital Unix C compiler + elif ! $CC > /dev/null 2>&1 && + $CC -c -verbose -w0 -warnprotos -std1 conftest.c > /dev/null 2>&1 && + test -f conftest.o; then + if test -z "$ansi"; then + ac_cv_prog_cc_warnings="-verbose -w0 -warnprotos" + else + ac_cv_prog_cc_warnings="-verbose -w0 -warnprotos -std1" + fi + + dnl C for AIX Compiler + elif $CC > /dev/null 2>&1 | grep AIX > /dev/null 2>&1 && + $CC -c -qlanglvl=ansi -qinfo=all conftest.c > /dev/null 2>&1 && + test -f conftest.o; then + if test -z "$ansi"; then + ac_cv_prog_cc_warnings="-qsrcmsg -qinfo=all:noppt:noppc:noobs:nocnd" + else + ac_cv_prog_cc_warnings="-qsrcmsg -qinfo=all:noppt:noppc:noobs:nocnd +-qlanglvl=ansi" + fi + + dnl IRIX C compiler + elif $CC -fullwarn -ansi -ansiE > /dev/null 2>&1 && + test -f conftest.o; then + if test -z "$ansi"; then + ac_cv_prog_cc_warnings="-fullwarn" + else + ac_cv_prog_cc_warnings="-fullwarn -ansi -ansiE" + fi + + fi + rm -f conftest.* + fi + if test -n "$ac_cv_prog_cc_warnings"; then + CFLAGS="$CFLAGS $ac_cv_prog_cc_warnings" + else + ac_cv_prog_cc_warnings="unknown" + fi + ]) +]) + + Index: php4/sapi/cgi/libfcgi/libfcgi.m4 diff -u /dev/null php4/sapi/cgi/libfcgi/libfcgi.m4:1.2 --- /dev/null Mon Dec 2 00:24:54 2002 +++ php4/sapi/cgi/libfcgi/libfcgi.m4 Mon Dec 2 00:24:54 2002 @@ -0,0 +1,77 @@ +dnl $Id: libfcgi.m4,v 1.2 2002/12/02 05:24:54 shane 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. + +#AC_INIT +#AM_INIT_AUTOMAKE(fcgi, 2.2.3-SNAP-0203171857) + +#AM_CONFIG_HEADER(include/fcgi_config.h) + +#AC_PROG_CC +#AC_PROG_CPP +#AC_PROG_INSTALL +#AC_PROG_LIBTOOL + +#AC_PROG_CXX + +#AC_LANG([C++]) + +#dnl autoconf defaults CXX to 'g++', so its unclear whether it exists/works +#AC_MSG_CHECKING([whether $CXX works]) +#AC_TRY_COMPILE([#include <iostream>], +# [std::cout << "ok";], +# [AC_MSG_RESULT(yes) +# LIBFCGIXX=libfcgi++.la +# ECHO_CPP=echo-cpp${EXEEXT} +# AC_MSG_CHECKING([whether cin has a streambuf assignment operator]) +# AC_TRY_COMPILE([#include <iostream>], +# [cin = static_cast<streambuf *>(0);], +# [AC_MSG_RESULT(yes) +# AC_DEFINE([HAVE_IOSTREAM_WITHASSIGN_STREAMBUF], +[1], +# [Define if cin/cout/cerr has a streambuf +assignment operator])], +# [AC_MSG_RESULT(no)]) +# AC_MSG_CHECKING([whether char_type is defined in the context of +streambuf]) +# AC_TRY_COMPILE([#include <iostream>], +# [class fcgi_streambuf : public std::streambuf { +char_type ct; }], +# [AC_MSG_RESULT(yes) +# AC_DEFINE([HAVE_STREAMBUF_CHAR_TYPE], [1], +# [Define if char_type is defined in the +context of streambuf])], +# [AC_MSG_RESULT(no)])], +# [AC_MSG_RESULT(no)]) +#AC_SUBST(LIBFCGIXX) +#AC_SUBST(ECHO_CPP) + +#AC_LANG([C]) + +AC_CHECK_LIB([nsl], [gethostbyname]) +AC_CHECK_LIB([socket], [socket]) + +ACX_PTHREAD([THREADED=threaded${EXEEXT}]) +AC_SUBST([THREADED]) + +FCGI_COMMON_CHECKS + +AC_REPLACE_FUNCS([strerror]) + +#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]) + +#AC_PROG_CC_WARNINGS + +#AC_CONFIG_FILES([Makefile +# cgi-fcgi/Makefile +# include/Makefile +# libfcgi/Makefile +# examples/Makefile]) + +#AC_OUTPUT
-- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php