mirror of
https://github.com/php/php-src.git
synced 2024-11-27 11:53:33 +08:00
Windows configure fixes, a few additional lib names allowed, apache2 only on for zts builds since apache on win is always threaded, isapi no longer stops configure in non-zts mode, look for _debug for debug libraries when debug is enabled
This commit is contained in:
parent
6552d91743
commit
7d4dfa8ee4
@ -1,7 +1,11 @@
|
||||
// $Id$
|
||||
// vim:ft=javascript
|
||||
|
||||
EXTENSION("ereg", "ereg.c", false /* never shared */, "-Dregexec=php_regexec -Dregerror=php_regerror -Dregfree=php_regfree -Dregcomp=php_regcomp -Iext/ereg/regex");
|
||||
ADD_SOURCES("ext/ereg/regex", "regcomp.c regexec.c regerror.c regfree.c", "ereg");
|
||||
AC_DEFINE('REGEX', 1, 'Bundled regex');
|
||||
AC_DEFINE('HSREGEX', 1, 'Bundled regex');
|
||||
ARG_WITH("ereg", "POSIX extended regular expressions", "yes");
|
||||
if (PHP_EREG != "no") {
|
||||
|
||||
EXTENSION("ereg", "ereg.c", false /* never shared */, "-Dregexec=php_regexec -Dregerror=php_regerror -Dregfree=php_regfree -Dregcomp=php_regcomp -Iext/ereg/regex");
|
||||
ADD_SOURCES("ext/ereg/regex", "regcomp.c regexec.c regerror.c regfree.c", "ereg");
|
||||
AC_DEFINE('REGEX', 1, 'Bundled regex');
|
||||
AC_DEFINE('HSREGEX', 1, 'Bundled regex');
|
||||
}
|
@ -5,7 +5,7 @@ ARG_WITH("libxml", "LibXML support", "yes");
|
||||
|
||||
if (PHP_LIBXML == "yes") {
|
||||
if (CHECK_LIB("libxml2_a_dll.lib;libxml2_a.lib", "libxml") &&
|
||||
CHECK_LIB("iconv_a.lib;iconv.lib", "libxml") &&
|
||||
CHECK_LIB("libiconv_a.lib;iconv_a.lib;libiconv.lib;iconv.lib", "libxml") &&
|
||||
CHECK_HEADER_ADD_INCLUDE("libxml/parser.h", "CFLAGS")) {
|
||||
|
||||
EXTENSION("libxml", "libxml.c", false /* never shared */);
|
||||
|
@ -1,21 +1,25 @@
|
||||
// $Id$
|
||||
// vim:ft=javascript
|
||||
|
||||
if (CHECK_LIB("ws2_32.lib", "mysqlnd")) {
|
||||
mysqlnd_source =
|
||||
"mysqlnd.c " +
|
||||
"mysqlnd_block_alloc.c " +
|
||||
"mysqlnd_charset.c " +
|
||||
"mysqlnd_debug.c " +
|
||||
"mysqlnd_loaddata.c " +
|
||||
"mysqlnd_palloc.c " +
|
||||
"mysqlnd_ps.c " +
|
||||
"mysqlnd_ps_codec.c " +
|
||||
"mysqlnd_qcache.c " +
|
||||
"mysqlnd_result.c " +
|
||||
"mysqlnd_result_meta.c " +
|
||||
"mysqlnd_statistics.c " +
|
||||
"mysqlnd_wireprotocol.c " +
|
||||
"php_mysqlnd.c";
|
||||
EXTENSION("mysqlnd", mysqlnd_source, false);
|
||||
}
|
||||
ARG_WITH("mysqlnd", "Mysql Native Client Driver", "yes");
|
||||
if (PHP_MYSQLND != "no") {
|
||||
|
||||
if (CHECK_LIB("ws2_32.lib", "mysqlnd")) {
|
||||
mysqlnd_source =
|
||||
"mysqlnd.c " +
|
||||
"mysqlnd_block_alloc.c " +
|
||||
"mysqlnd_charset.c " +
|
||||
"mysqlnd_debug.c " +
|
||||
"mysqlnd_loaddata.c " +
|
||||
"mysqlnd_palloc.c " +
|
||||
"mysqlnd_ps.c " +
|
||||
"mysqlnd_ps_codec.c " +
|
||||
"mysqlnd_qcache.c " +
|
||||
"mysqlnd_result.c " +
|
||||
"mysqlnd_result_meta.c " +
|
||||
"mysqlnd_statistics.c " +
|
||||
"mysqlnd_wireprotocol.c " +
|
||||
"php_mysqlnd.c";
|
||||
EXTENSION("mysqlnd", mysqlnd_source, false);
|
||||
}
|
||||
}
|
@ -6,7 +6,7 @@ ARG_ENABLE("zlib", "ZLIB support", "yes");
|
||||
if (PHP_ZLIB == "yes") {
|
||||
EXTENSION("zlib", "zlib.c zlib_fopen_wrapper.c zlib_filter.c", null, "/D ZLIB_EXPORTS");
|
||||
AC_DEFINE("HAVE_ZLIB", 1, "ZLIB support");
|
||||
CHECK_LIB("zlib.lib", "zlib", PHP_ZLIB);
|
||||
CHECK_LIB("zlib_a.lib;zlib.lib", "zlib", PHP_ZLIB);
|
||||
CHECK_HEADER_ADD_INCLUDE("zlib.h", "CFLAGS", "..\\zlib;" + php_usual_include_suspects);
|
||||
if (!PHP_ZLIB_SHARED) {
|
||||
ADD_DEF_FILE("ext\\zlib\\php_zlib.def");
|
||||
|
@ -4,7 +4,9 @@
|
||||
ARG_ENABLE('apache2filter', 'Build Apache 2.x filter', 'no');
|
||||
|
||||
if (PHP_APACHE2FILTER != "no") {
|
||||
if (CHECK_HEADER_ADD_INCLUDE("httpd.h", "CFLAGS_APACHE2FILTER", PHP_PHP_BUILD + "\\include\\apache2") &&
|
||||
if (PHP_ZTS == "no") {
|
||||
WARNING("Apache2 module requires an --enable-zts build of PHP on windows");
|
||||
} else if (CHECK_HEADER_ADD_INCLUDE("httpd.h", "CFLAGS_APACHE2FILTER", PHP_PHP_BUILD + "\\include\\apache2") &&
|
||||
CHECK_LIB("libhttpd.lib", "apache2filter", PHP_PHP_BUILD + "\\lib\\apache2") &&
|
||||
CHECK_LIB("libapr.lib", "apache2filter", PHP_PHP_BUILD + "\\lib\\apache2") &&
|
||||
CHECK_LIB("libaprutil.lib", "apache2filter", PHP_PHP_BUILD + "\\lib\\apache2")
|
||||
@ -20,7 +22,9 @@ if (PHP_APACHE2FILTER != "no") {
|
||||
ARG_ENABLE('apache2-2filter', 'Build Apache 2.2.x filter', 'no');
|
||||
|
||||
if (PHP_APACHE2_2FILTER != "no") {
|
||||
if (CHECK_HEADER_ADD_INCLUDE("httpd.h", "CFLAGS_APACHE2_2FILTER", PHP_PHP_BUILD + "\\include\\apache2_2") &&
|
||||
if (PHP_ZTS == "no") {
|
||||
WARNING("Apache2 module requires an --enable-zts build of PHP on windows");
|
||||
} else if (CHECK_HEADER_ADD_INCLUDE("httpd.h", "CFLAGS_APACHE2_2FILTER", PHP_PHP_BUILD + "\\include\\apache2_2") &&
|
||||
CHECK_LIB("libhttpd.lib", "apache2_2filter", PHP_PHP_BUILD + "\\lib\\apache2_2") &&
|
||||
CHECK_LIB("libapr-1.lib", "apache2_2filter", PHP_PHP_BUILD + "\\lib\\apache2_2") &&
|
||||
CHECK_LIB("libaprutil-1.lib", "apache2_2filter", PHP_PHP_BUILD + "\\lib\\apache2_2")
|
||||
|
@ -4,7 +4,9 @@
|
||||
ARG_ENABLE('apache2handler', 'Build Apache 2.x handler', 'no');
|
||||
|
||||
if (PHP_APACHE2HANDLER != "no") {
|
||||
if (CHECK_HEADER_ADD_INCLUDE("httpd.h", "CFLAGS_APACHE2HANDLER", PHP_PHP_BUILD + "\\include\\apache2") &&
|
||||
if (PHP_ZTS == "no") {
|
||||
WARNING("Apache2 module requires an --enable-zts build of PHP on windows");
|
||||
} else if (CHECK_HEADER_ADD_INCLUDE("httpd.h", "CFLAGS_APACHE2HANDLER", PHP_PHP_BUILD + "\\include\\apache2") &&
|
||||
CHECK_LIB("libhttpd.lib", "apache2handler", PHP_PHP_BUILD + "\\lib\\apache2") &&
|
||||
CHECK_LIB("libapr.lib", "apache2handler", PHP_PHP_BUILD + "\\lib\\apache2") &&
|
||||
CHECK_LIB("libaprutil.lib", "apache2handler", PHP_PHP_BUILD + "\\lib\\apache2")
|
||||
@ -20,7 +22,9 @@ if (PHP_APACHE2HANDLER != "no") {
|
||||
ARG_ENABLE('apache2-2handler', 'Build Apache 2.2.x handler', 'no');
|
||||
|
||||
if (PHP_APACHE2_2HANDLER != "no") {
|
||||
if (CHECK_HEADER_ADD_INCLUDE("httpd.h", "CFLAGS_APACHE2_2HANDLER", PHP_PHP_BUILD + "\\include\\apache2_2") &&
|
||||
if (PHP_ZTS == "no") {
|
||||
WARNING("Apache2 module requires an --enable-zts build of PHP on windows");
|
||||
} else if (CHECK_HEADER_ADD_INCLUDE("httpd.h", "CFLAGS_APACHE2_2HANDLER", PHP_PHP_BUILD + "\\include\\apache2_2") &&
|
||||
CHECK_LIB("libhttpd.lib", "apache2_2handler", PHP_PHP_BUILD + "\\lib\\apache2_2") &&
|
||||
CHECK_LIB("libapr-1.lib", "apache2_2handler", PHP_PHP_BUILD + "\\lib\\apache2_2") &&
|
||||
CHECK_LIB("libaprutil-1.lib", "apache2_2handler", PHP_PHP_BUILD + "\\lib\\apache2_2")
|
||||
|
@ -5,9 +5,9 @@ ARG_ENABLE('isapi', 'Build ISAPI version of PHP', 'no');
|
||||
|
||||
if (PHP_ISAPI == "yes") {
|
||||
if (PHP_ZTS == "no") {
|
||||
ERROR("ISAPI module requires an --enable-zts build of PHP");
|
||||
WARNING("ISAPI module requires an --enable-zts build of PHP");
|
||||
} else {
|
||||
SAPI('isapi', 'php5isapi.c', 'php' + PHP_VERSION + 'isapi.dll', '/D PHP5ISAPI_EXPORTS');
|
||||
ADD_FLAG('LDFLAGS_ISAPI', '/DEF:sapi\\isapi\\php5isapi.def');
|
||||
}
|
||||
|
||||
SAPI('isapi', 'php5isapi.c', 'php' + PHP_VERSION + 'isapi.dll', '/D PHP5ISAPI_EXPORTS');
|
||||
ADD_FLAG('LDFLAGS_ISAPI', '/DEF:sapi\\isapi\\php5isapi.def');
|
||||
}
|
||||
|
@ -17,7 +17,7 @@
|
||||
+----------------------------------------------------------------------+
|
||||
*/
|
||||
|
||||
// $Id: confutils.js,v 1.60.2.1.2.8.2.10 2008-04-14 17:55:02 sfox Exp $
|
||||
// $Id: confutils.js,v 1.60.2.1.2.8.2.11 2008-05-14 03:13:17 auroraeosrose Exp $
|
||||
|
||||
var STDOUT = WScript.StdOut;
|
||||
var STDERR = WScript.StdErr;
|
||||
@ -586,6 +586,17 @@ function CHECK_LIB(libnames, target, path_to_check, common_name)
|
||||
// libnames can be ; separated list of accepted library names
|
||||
libnames = libnames.split(';');
|
||||
|
||||
// for debug builds, lib may have _debug appended, we want that first
|
||||
if (PHP_DEBUG == "yes") {
|
||||
var length = libnames.length;
|
||||
for (var i = 0; i < length; i++) {
|
||||
var name = new String(libnames[i]);
|
||||
rExp = /.lib$/i;
|
||||
name = name.replace(rExp,"_debug.lib");
|
||||
libnames.unshift(name);
|
||||
}
|
||||
}
|
||||
|
||||
var i, j, k, libname;
|
||||
var location = false;
|
||||
var path = path_to_check.split(';');
|
||||
|
Loading…
Reference in New Issue
Block a user