summaryrefslogtreecommitdiff
path: root/win32/build/confutils.js
diff options
context:
space:
mode:
Diffstat (limited to 'win32/build/confutils.js')
-rw-r--r--win32/build/confutils.js20
1 files changed, 16 insertions, 4 deletions
diff --git a/win32/build/confutils.js b/win32/build/confutils.js
index 35694cb426..0892c0068e 100644
--- a/win32/build/confutils.js
+++ b/win32/build/confutils.js
@@ -2480,10 +2480,15 @@ function toolset_is_64()
if (VS_TOOLSET) {
return probe_binary(PHP_CL, 64);
} else if (CLANG_TOOLSET) {
- var command = 'cmd /c ""' + PHP_CL + '" -v"';
+ /*var command = 'cmd /c ""' + PHP_CL + '" -v"';
var full = execute(command + '" 2>&1"');
- return null != full.match(/x86_64/);
+ return null != full.match(/x86_64/);*/
+
+ /* Even executed within an environment setup with vcvars32.bat,
+ clang-cl doesn't recognize the arch toolset. But as it needs
+ the VS environment, checking the arch of cl.exe is correct. */
+ return probe_binary(PATH_PROG('cl', null), 64);
} else if (INTEL_TOOLSET) {
var command = 'cmd /c ""' + PHP_CL + '" -v"';
var full = execute(command + '" 2>&1"');
@@ -2511,6 +2516,13 @@ function toolset_setup_linker()
function toolset_setup_common_cflags()
{
+ // CFLAGS for building the PHP dll
+ DEFINE("CFLAGS_PHP", "/D _USRDLL /D PHP7DLLTS_EXPORTS /D PHP_EXPORTS \
+ /D LIBZEND_EXPORTS /D TSRM_EXPORTS /D SAPI_EXPORTS /D WINVER=" + WINVER);
+
+ DEFINE('CFLAGS_PHP_OBJ', '$(CFLAGS_PHP) $(STATIC_EXT_CFLAGS)');
+
+ // General CFLAGS for building objects
DEFINE("CFLAGS", "/nologo $(BASE_INCLUDES) /D _WINDOWS \
/D ZEND_WIN32=1 /D PHP_WIN32=1 /D WIN32 /D _MBCS /W3 ");
@@ -2545,9 +2557,9 @@ function toolset_setup_common_cflags()
} else if (CLANG_TOOLSET) {
if (X64) {
- ADD_FLAG('CFLAGS', ' -m64 ');
+ ADD_FLAG('CFLAGS', '-m64');
} else {
- ADD_FLAG('CFLAGS', ' -m32 ');
+ ADD_FLAG('CFLAGS', '-m32');
}
ADD_FLAG("CFLAGS", " /fallback ");
}