@@ -222,8 +222,7 @@ goto run
222222if defined noprojgen goto msbuild
223223
224224@ rem Generate the VS project.
225- echo configure %configure_flags% --dest-cpu=%target_arch% --tag=%TAG%
226- python configure %configure_flags% --dest-cpu=%target_arch% --tag=%TAG%
225+ call :run-python configure %configure_flags% --dest-cpu=%target_arch% --tag=%TAG%
227226if errorlevel 1 goto create-msvs-files-failed
228227if not exist node.sln goto create-msvs-files-failed
229228echo Project files generated.
@@ -408,7 +407,7 @@ if defined test_node_inspect goto node-test-inspect
408407goto node-tests
409408
410409:node-check-deopts
411- python tools\test.py --mode=release --check-deopts parallel sequential -J
410+ call : run- python tools\test.py --mode=release --check-deopts parallel sequential -J
412411if defined test_node_inspect goto node-test-inspect
413412goto node-tests
414413
@@ -423,8 +422,7 @@ if "%config%"=="Debug" set test_args=--mode=debug %test_args%
423422if " %config% " == " Release" set test_args = --mode=release %test_args%
424423echo running 'cctest %cctest_args% '
425424" %config% \cctest" %cctest_args%
426- echo running 'python tools\test.py %test_args% '
427- python tools\test.py %test_args%
425+ call :run-python tools\test.py %test_args%
428426goto cpplint
429427
430428:cpplint
@@ -442,8 +440,8 @@ test\gc\binding.cc tools\icu\*.cc tools\icu\*.h') do (
442440( endlocal
443441 set cppfilelist = %localcppfilelist%
444442)
445- python tools/cpplint.py %cppfilelist%
446- python tools/check-imports.py
443+ call : run- python tools/cpplint.py %cppfilelist%
444+ call : run- python tools/check-imports.py
447445goto jslint
448446
449447:add-to-list
@@ -502,6 +500,14 @@ echo vcbuild.bat build-release : builds the release distribution as used by n
502500echo vcbuild.bat enable-vtune : builds nodejs with Intel VTune profiling support to profile JavaScript
503501goto exit
504502
503+ :run-python
504+ call tools\msvs\find_python.cmd
505+ if errorlevel 1 echo Could not find python2 & goto :exit
506+ set cmd1 = %VCBUILD_PYTHON_LOCATION% %*
507+ echo %cmd1%
508+ %cmd1%
509+ exit /b %ERRORLEVEL%
510+
505511:exit
506512goto :EOF
507513
@@ -513,8 +519,9 @@ rem ***************
513519set NODE_VERSION =
514520set TAG =
515521set FULLVERSION =
516-
517- for /F " usebackq tokens=*" %%i in (`python " %~dp0 tools\getnodeversion.py" `) do set NODE_VERSION = %%i
522+ :: Call as subroutine for validation of python
523+ call :run-python tools\getnodeversion.py > nul
524+ for /F " tokens=*" %%i in ('%VCBUILD_PYTHON_LOCATION% tools\getnodeversion.py') do set NODE_VERSION = %%i
518525if not defined NODE_VERSION (
519526 echo Cannot determine current version of Node.js
520527 exit /b 1
@@ -523,7 +530,7 @@ if not defined NODE_VERSION (
523530if not defined DISTTYPE set DISTTYPE = release
524531if " %DISTTYPE% " == " release" (
525532 set FULLVERSION = %NODE_VERSION%
526- goto exit
533+ exit /b 0
527534)
528535if " %DISTTYPE% " == " custom" (
529536 if not defined CUSTOMTAG (
@@ -550,7 +557,4 @@ if not "%DISTTYPE%"=="custom" (
550557 set TAG = %DISTTYPE%%DATESTRING%%COMMIT%
551558)
552559set FULLVERSION = %NODE_VERSION% -%TAG%
553-
554- :exit
555- if not defined DISTTYPEDIR set DISTTYPEDIR = %DISTTYPE%
556- goto :EOF
560+ exit /b 0
0 commit comments