@@ -74,6 +74,7 @@ if /i "%1"=="x86" set target_arch=x86&goto arg-ok
74
74
if /i " %1 " == " x64" set target_arch = x64& goto arg-ok
75
75
if /i " %1 " == " arm64" set target_arch = arm64& goto arg-ok
76
76
if /i " %1 " == " vs2017" set target_env = vs2017& goto arg-ok
77
+ if /i " %1 " == " vs2019" set target_env = vs2019& goto arg-ok
77
78
if /i " %1 " == " noprojgen" set noprojgen = 1& goto arg-ok
78
79
if /i " %1 " == " projgen" set projgen = 1& goto arg-ok
79
80
if /i " %1 " == " nobuild" set nobuild = 1& goto arg-ok
@@ -174,6 +175,7 @@ set "node_exe=%config%\node.exe"
174
175
set " node_gyp_exe = " %node_exe% " deps\npm\node_modules\node-gyp\bin\node-gyp"
175
176
set " npm_exe = " %~dp0 %node_exe% " %~dp0 deps\npm\bin\npm-cli.js"
176
177
if " %target_env% " == " vs2017" set " node_gyp_exe = %node_gyp_exe% --msvs_version=2017"
178
+ if " %target_env% " == " vs2019" set " node_gyp_exe = %node_gyp_exe% --msvs_version=2019"
177
179
178
180
if " %config% " == " Debug" set configure_flags = %configure_flags% --debug
179
181
if defined nosnapshot set configure_flags = %configure_flags% --without-snapshot
@@ -229,9 +231,9 @@ if %target_arch%==x86 if %msvs_host_arch%==x86 set vcvarsall_arg=x86
229
231
230
232
@ rem Look for Visual Studio 2017
231
233
:vs-set-2017
232
- if defined target_env if " %target_env% " NEQ " vs2017" goto msbuild-not-found
234
+ if defined target_env if " %target_env% " NEQ " vs2017" goto vs-set-2019
233
235
echo Looking for Visual Studio 2017
234
- call tools\msvs\vswhere_usability_wrapper.cmd
236
+ call tools\msvs\vswhere_usability_wrapper.cmd " [15.0,16.0) "
235
237
if " _%VCINSTALLDIR% _" == " __" goto msbuild-not-found
236
238
if defined msi (
237
239
echo Looking for WiX installation for Visual Studio 2017...
@@ -262,6 +264,41 @@ set GYP_MSVS_VERSION=2017
262
264
set PLATFORM_TOOLSET = v141
263
265
goto msbuild-found
264
266
267
+ @ rem Look for Visual Studio 2019
268
+ :vs-set-2019
269
+ if defined target_env if " %target_env% " NEQ " vs2019" goto msbuild-not-found
270
+ echo Looking for Visual Studio 2019
271
+ call tools\msvs\vswhere_usability_wrapper.cmd " [16.0,17.0)"
272
+ if " _%VCINSTALLDIR% _" == " __" goto msbuild-not-found
273
+ if defined msi (
274
+ echo Looking for WiX installation for Visual Studio 2019...
275
+ if not exist " %WIX% \SDK\VS2017" (
276
+ echo Failed to find WiX install for Visual Studio 2019
277
+ echo VS2019 support for WiX is only present starting at version 3.11
278
+ goto msbuild-not-found
279
+ )
280
+ if not exist " %VCINSTALLDIR% \..\MSBuild\Microsoft\WiX" (
281
+ echo Failed to find the WiX Toolset Visual Studio 2019 Extension
282
+ goto msbuild-not-found
283
+ )
284
+ )
285
+ @ rem check if VS2019 is already setup, and for the requested arch
286
+ if " _%VisualStudioVersion% _" == " _16.0_" if " _%VSCMD_ARG_TGT_ARCH% _" == " _%target_arch% _" goto found_vs2019
287
+ @ rem need to clear VSINSTALLDIR for vcvarsall to work as expected
288
+ set " VSINSTALLDIR = "
289
+ @ rem prevent VsDevCmd.bat from changing the current working directory
290
+ set " VSCMD_START_DIR = %CD% "
291
+ set vcvars_call = " %VCINSTALLDIR% \Auxiliary\Build\vcvarsall.bat" %vcvarsall_arg%
292
+ echo calling: %vcvars_call%
293
+ call %vcvars_call%
294
+ if errorlevel 1 goto msbuild-not-found
295
+ if defined DEBUG_HELPER @ ECHO ON
296
+ :found_vs2019
297
+ echo Found MSVS version %VisualStudioVersion%
298
+ set GYP_MSVS_VERSION = 2019
299
+ set PLATFORM_TOOLSET = v142
300
+ goto msbuild-found
301
+
265
302
:msbuild-not-found
266
303
echo Failed to find a suitable Visual Studio installation.
267
304
echo Try to run in a " Developer Command Prompt" or consult
0 commit comments