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