config.m4 3.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. dnl config.m4 for sapi cli
  2. PHP_ARG_ENABLE(cli,,
  3. [ --disable-cli Disable building CLI version of PHP
  4. (this forces --without-pear)], yes, no)
  5. AC_CHECK_FUNCS(setproctitle)
  6. AC_CHECK_HEADERS([sys/pstat.h])
  7. AC_CACHE_CHECK([for PS_STRINGS], [cli_cv_var_PS_STRINGS],
  8. [AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <machine/vmparam.h>
  9. #include <sys/exec.h>
  10. ]],
  11. [[PS_STRINGS->ps_nargvstr = 1;
  12. PS_STRINGS->ps_argvstr = "foo";]])],
  13. [cli_cv_var_PS_STRINGS=yes],
  14. [cli_cv_var_PS_STRINGS=no])])
  15. if test "$cli_cv_var_PS_STRINGS" = yes ; then
  16. AC_DEFINE([HAVE_PS_STRINGS], [], [Define to 1 if the PS_STRINGS thing exists.])
  17. fi
  18. AC_MSG_CHECKING(for CLI build)
  19. if test "$PHP_CLI" != "no"; then
  20. PHP_ADD_MAKEFILE_FRAGMENT($abs_srcdir/sapi/cli/Makefile.frag)
  21. dnl Set filename
  22. SAPI_CLI_PATH=sapi/cli/php
  23. dnl Select SAPI
  24. PHP_SELECT_SAPI(cli, program, php_cli.c php_http_parser.c php_cli_server.c ps_title.c php_cli_process_title.c, -DZEND_ENABLE_STATIC_TSRMLS_CACHE=1, '$(SAPI_CLI_PATH)')
  25. case $host_alias in
  26. *aix*)
  27. if test "$php_sapi_module" = "shared"; then
  28. BUILD_CLI="echo '\#! .' > php.sym && echo >>php.sym && nm -BCpg \`echo \$(PHP_GLOBAL_OBJS) \$(PHP_BINARY_OBJS) \$(PHP_CLI_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_CLI_OBJS) \$(EXTRA_LIBS) \$(ZEND_EXTRA_LIBS) -o \$(SAPI_CLI_PATH)"
  29. else
  30. BUILD_CLI="echo '\#! .' > php.sym && echo >>php.sym && nm -BCpg \`echo \$(PHP_GLOBAL_OBJS) \$(PHP_BINARY_OBJS) \$(PHP_CLI_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_CLI_OBJS) \$(EXTRA_LIBS) \$(ZEND_EXTRA_LIBS) -o \$(SAPI_CLI_PATH)"
  31. fi
  32. ;;
  33. *darwin*)
  34. BUILD_CLI="\$(CC) \$(CFLAGS_CLEAN) \$(EXTRA_CFLAGS) \$(EXTRA_LDFLAGS_PROGRAM) \$(LDFLAGS) \$(NATIVE_RPATHS) \$(PHP_GLOBAL_OBJS:.lo=.o) \$(PHP_BINARY_OBJS:.lo=.o) \$(PHP_CLI_OBJS:.lo=.o) \$(PHP_FRAMEWORKS) \$(EXTRA_LIBS) \$(ZEND_EXTRA_LIBS) -o \$(SAPI_CLI_PATH)"
  35. ;;
  36. *)
  37. BUILD_CLI="\$(LIBTOOL) --mode=link \$(CC) -export-dynamic \$(CFLAGS_CLEAN) \$(EXTRA_CFLAGS) \$(EXTRA_LDFLAGS_PROGRAM) \$(LDFLAGS) \$(PHP_RPATHS) \$(PHP_GLOBAL_OBJS) \$(PHP_BINARY_OBJS) \$(PHP_CLI_OBJS) \$(EXTRA_LIBS) \$(ZEND_EXTRA_LIBS) -o \$(SAPI_CLI_PATH)"
  38. ;;
  39. esac
  40. dnl Set executable for tests
  41. PHP_EXECUTABLE="\$(top_builddir)/\$(SAPI_CLI_PATH)"
  42. PHP_SUBST(PHP_EXECUTABLE)
  43. dnl Expose to Makefile
  44. PHP_SUBST(SAPI_CLI_PATH)
  45. PHP_SUBST(BUILD_CLI)
  46. PHP_OUTPUT(sapi/cli/php.1)
  47. PHP_INSTALL_HEADERS([sapi/cli/cli.h])
  48. fi
  49. AC_MSG_RESULT($PHP_CLI)