Ok, my notes include now:

    - PHP_SELECT_SAPI will be extended to also cover ZTS

    PHP_SELECT_SAPI(name, type[, sources [, extra-cflags [, zts]]])

    zts is either

    empty -- works with non-ZTS only (common case)
    or 1 - ZTS only
    or 2 - works with both (e.g. CGI, embed)

    If an incompatible set of SAPI modules is selected, configure
    will dump out with an error message.  I'm currently figuring
    out the details.

    The build-target (newly introduced current 5th parameter)
    will be dropped -- on a second thought, it is more appealing
    to create either libphp4.la or an executable named php in the
    SAPI module's directory.  Because that is not the final
    destination, the exact build name does not really matter, so
    we take the simplest approach.


    - PHP_CLI_OBJS/PHP_SAPI_OBJS/PHP_GLOBAL_OBJS will be
      replaced with PHP_OBJS_$TARGET_SAPI_NAME and
      PHP_OBJS_COMMON

    Because we might have any number of SAPI module targets, we
    introduce a common prefix (PHP_OBJS).


    - EXT_STATIC/EXT_CLI_STATIC will be removed in favor of
      PHP_EXT_COMMON and PHP_EXT_$TARGET_SAPI_NAME

    This is similar to the prior point.  These variables will
    contain a list of extensions which the
    internal_functions_$TARGET_SAPI_NAME.c file will be
    generated from.  Which leads me to

    - config.status will contain a dynamically generated section
      for the creation of internal_functions_*.c files

    - INSTALL_IT will be substituted with
      PHP_INSTALL_$TARGET_SAPI_NAME for each SAPI module

      Each install target will be callable as
      install-$target_sapi_name.

    - The "install-sapi" target will invoke the previously
      mentioned targets.

    - PHP_ADD_SOURCES will be able to add files to any
      PHP_OBJS_* variable.

    - The meaning of PHP_NEW_EXTENSION's sapi_class parameter
      will be extended to allow a *list* of SAPI module names
      with which the extension can be compiled.

      Request for Discussion: I also consider dropping this
      option, because from my POV the user should be free to
      include any extension she likes into any SAPI module.  E.g.
      I don't see any reason for not including pcntl into my
      webserver SAPI module which currently is simply impossible.

    - Sascha


-- 
PHP Development Mailing List <http://www.php.net/>
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to