From 8980d8c25f074c196efba3dc1da739c3e42468c8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jo=C3=A3o=20Reis?= Date: Thu, 24 Oct 2019 02:13:52 +0100 Subject: [PATCH] build: vcbuild uses default Python, not Py2 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit vcbuild now searches for the first python.exe found, and uses it, where it used to look for Python 2 first. PR-URL: https://github.com/nodejs/node/pull/30091 Reviewed-By: Christian Clauss Reviewed-By: João Reis Reviewed-By: Jiawen Geng Reviewed-By: Colin Ihrig --- tools/msvs/find_python.cmd | 52 +------------------------------------- vcbuild.bat | 3 --- 2 files changed, 1 insertion(+), 54 deletions(-) diff --git a/tools/msvs/find_python.cmd b/tools/msvs/find_python.cmd index 728eeb405b8171..671fcbd7e58c03 100644 --- a/tools/msvs/find_python.cmd +++ b/tools/msvs/find_python.cmd @@ -3,27 +3,6 @@ echo Looking for Python setlocal enabledelayedexpansion -:: To remove the preference for Python 2, but still support it, just remove -:: the 5 blocks marked with "Python 2:" and the support warnings - -:: Python 2: If python.exe is in %Path%, use if it's Python 2 -FOR /F "delims=" %%a IN ('where python.exe 2^> NUL') DO ( - SET need_path=0 - SET p=%%~dpa - CALL :validate-v2 - IF NOT ERRORLEVEL 1 GOTO :found-python2 - GOTO :done-path-v2 -) -:done-path-v2 - -:: Python 2: Query the 3 locations mentioned in PEP 514 for a python2 InstallPath -FOR %%K IN ( "HKCU\Software", "HKLM\SOFTWARE", "HKLM\Software\Wow6432Node") DO ( - SET need_path=1 - CALL :find-versions-v2 %%K - IF NOT ERRORLEVEL 1 CALL :validate-v2 - IF NOT ERRORLEVEL 1 GOTO :found-python2 -) - :: Use python.exe if in %PATH% set need_path=0 for /f "delims=" %%a in ('where python.exe 2^> nul') do ( @@ -41,14 +20,6 @@ for %%k in ( "HKCU\Software", "HKLM\SOFTWARE", "HKLM\Software\Wow6432Node") do ( goto :no-python -:: Python 2: Find Python 2 installations in a registry location -:find-versions-v2 -for /f "delims=" %%a in ('reg query "%~1\Python\PythonCore" /f * /k 2^> nul ^| findstr /r ^^HK ^| findstr "\\2\."') do ( - call :read-installpath %%a - if not errorlevel 1 exit /b 0 -) -exit /b 1 - :: Find Python installations in a registry location :find-versions for /f "delims=" %%a in ('reg query "%~1\Python\PythonCore" /f * /k 2^> nul ^| findstr /r ^^HK') do ( @@ -73,32 +44,11 @@ for /f "skip=2 tokens=1* delims=)" %%a in ('reg query "%1\InstallPath" /ve /t RE ) exit /b 1 - -:: Python 2: Check if %p% holds a path to a real python2 executable -:validate-v2 -IF NOT EXIST "%p%\python.exe" EXIT /B 1 -:: Check if %p% is python2 -"%p%\python.exe" -V 2>&1 | findstr /R "^Python.2.*" > NUL -EXIT /B %ERRORLEVEL% - - -:: Python 2: -:found-python2 -echo Python 2 found in %p%\python.exe -set pyver=2 -goto :done - :found-python echo Python found in %p%\python.exe -echo WARNING: Python 3 is not yet fully supported, to avoid issues Python 2 should be installed. -set pyver=3 -goto :done - -:done endlocal ^ & set "pt=%p%" ^ - & set "need_path_ext=%need_path%" ^ - & set "VCBUILD_PYTHON_VERSION=%pyver%" + & set "need_path_ext=%need_path%" set "VCBUILD_PYTHON_LOCATION=%pt%\python.exe" if %need_path_ext%==1 set "PATH=%pt%;%PATH%" set "pt=" diff --git a/vcbuild.bat b/vcbuild.bat index 5ddc04aeb25a4a..57f2deba799d57 100644 --- a/vcbuild.bat +++ b/vcbuild.bat @@ -688,9 +688,6 @@ goto exit :create-msvs-files-failed echo Failed to create vc project files. -if %VCBUILD_PYTHON_VERSION%==3 ( - echo Python 3 is not yet fully supported, to avoid issues Python 2 should be installed. -) del .used_configure_flags goto exit