config9.m4 3.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. dnl config.m4 for sapi cgi
  2. PHP_ARG_ENABLE(cgi,,
  3. [ --disable-cgi Disable building CGI version of PHP], yes, no)
  4. dnl
  5. dnl CGI setup
  6. dnl
  7. AC_MSG_CHECKING(for CGI build)
  8. if test "$PHP_CGI" != "no"; then
  9. AC_MSG_RESULT(yes)
  10. AC_MSG_CHECKING([for socklen_t in sys/socket.h])
  11. AC_EGREP_HEADER([socklen_t], [sys/socket.h],
  12. [AC_MSG_RESULT([yes])
  13. AC_DEFINE([HAVE_SOCKLEN_T], [1],
  14. [Define if the socklen_t typedef is in sys/socket.h])],
  15. AC_MSG_RESULT([no]))
  16. AC_MSG_CHECKING([for sun_len in sys/un.h])
  17. AC_EGREP_HEADER([sun_len], [sys/un.h],
  18. [AC_MSG_RESULT([yes])
  19. AC_DEFINE([HAVE_SOCKADDR_UN_SUN_LEN], [1],
  20. [Define if sockaddr_un in sys/un.h contains a sun_len component])],
  21. AC_MSG_RESULT([no]))
  22. AC_MSG_CHECKING([whether cross-process locking is required by accept()])
  23. case "`uname -sr`" in
  24. IRIX\ 5.* | SunOS\ 5.* | UNIX_System_V\ 4.0)
  25. AC_MSG_RESULT([yes])
  26. AC_DEFINE([USE_LOCKING], [1],
  27. [Define if cross-process locking is required by accept()])
  28. ;;
  29. *)
  30. AC_MSG_RESULT([no])
  31. ;;
  32. esac
  33. PHP_ADD_MAKEFILE_FRAGMENT($abs_srcdir/sapi/cgi/Makefile.frag)
  34. dnl Set filename
  35. case $host_alias in
  36. *cygwin* )
  37. SAPI_CGI_PATH=sapi/cgi/php-cgi.exe
  38. ;;
  39. * )
  40. SAPI_CGI_PATH=sapi/cgi/php-cgi
  41. ;;
  42. esac
  43. dnl Select SAPI
  44. PHP_SELECT_SAPI(cgi, program, cgi_main.c, -DZEND_ENABLE_STATIC_TSRMLS_CACHE=1, '$(SAPI_CGI_PATH)')
  45. case $host_alias in
  46. *aix*)
  47. if test "$php_sapi_module" = "shared"; then
  48. BUILD_CGI="echo '\#! .' > php.sym && echo >>php.sym && nm -BCpg \`echo \$(PHP_GLOBAL_OBJS) \$(PHP_BINARY_OBJS) \$(PHP_CGI_OBJS) | sed 's/\([A-Za-z0-9_]*\)\.lo/.libs\/\1.o/g'\` | \$(AWK) '{ if (((\$\$2 == \"T\") || (\$\$2 == \"D\") || (\$\$2 == \"B\")) && (substr(\$\$3,1,1) != \".\")) { print \$\$3 } }' | sort -u >> php.sym && \$(LIBTOOL) --mode=link \$(CC) -export-dynamic \$(CFLAGS_CLEAN) \$(EXTRA_CFLAGS) \$(EXTRA_LDFLAGS_PROGRAM) \$(LDFLAGS) -Wl,-brtl -Wl,-bE:php.sym \$(PHP_RPATHS) \$(PHP_GLOBAL_OBJS) \$(PHP_BINARY_OBJS) \$(PHP_FASTCGI_OBJS) \$(PHP_CGI_OBJS) \$(EXTRA_LIBS) \$(ZEND_EXTRA_LIBS) -o \$(SAPI_CGI_PATH)"
  49. else
  50. BUILD_CGI="echo '\#! .' > php.sym && echo >>php.sym && nm -BCpg \`echo \$(PHP_GLOBAL_OBJS) \$(PHP_BINARY_OBJS) \$(PHP_CGI_OBJS) | sed 's/\([A-Za-z0-9_]*\)\.lo/\1.o/g'\` | \$(AWK) '{ if (((\$\$2 == \"T\") || (\$\$2 == \"D\") || (\$\$2 == \"B\")) && (substr(\$\$3,1,1) != \".\")) { print \$\$3 } }' | sort -u >> php.sym && \$(LIBTOOL) --mode=link \$(CC) -export-dynamic \$(CFLAGS_CLEAN) \$(EXTRA_CFLAGS) \$(EXTRA_LDFLAGS_PROGRAM) \$(LDFLAGS) -Wl,-brtl -Wl,-bE:php.sym \$(PHP_RPATHS) \$(PHP_GLOBAL_OBJS) \$(PHP_BINARY_OBJS) \$(PHP_FASTCGI_OBJS) \$(PHP_CGI_OBJS) \$(EXTRA_LIBS) \$(ZEND_EXTRA_LIBS) -o \$(SAPI_CGI_PATH)"
  51. fi
  52. ;;
  53. *darwin*)
  54. BUILD_CGI="\$(CC) \$(CFLAGS_CLEAN) \$(EXTRA_CFLAGS) \$(EXTRA_LDFLAGS_PROGRAM) \$(LDFLAGS) \$(NATIVE_RPATHS) \$(PHP_GLOBAL_OBJS:.lo=.o) \$(PHP_BINARY_OBJS:.lo=.o) \$(PHP_FASTCGI_OBJS:.lo=.o) \$(PHP_CGI_OBJS:.lo=.o) \$(PHP_FRAMEWORKS) \$(EXTRA_LIBS) \$(ZEND_EXTRA_LIBS) -o \$(SAPI_CGI_PATH)"
  55. ;;
  56. *)
  57. BUILD_CGI="\$(LIBTOOL) --mode=link \$(CC) -export-dynamic \$(CFLAGS_CLEAN) \$(EXTRA_CFLAGS) \$(EXTRA_LDFLAGS_PROGRAM) \$(LDFLAGS) \$(PHP_RPATHS) \$(PHP_GLOBAL_OBJS) \$(PHP_BINARY_OBJS) \$(PHP_FASTCGI_OBJS) \$(PHP_CGI_OBJS) \$(EXTRA_LIBS) \$(ZEND_EXTRA_LIBS) -o \$(SAPI_CGI_PATH)"
  58. ;;
  59. esac
  60. dnl Expose to Makefile
  61. PHP_SUBST(SAPI_CGI_PATH)
  62. PHP_SUBST(BUILD_CGI)
  63. PHP_OUTPUT(sapi/cgi/php-cgi.1)
  64. else
  65. AC_MSG_RESULT(no)
  66. fi