diff --git a/bootstrap/win/win_tools.bat b/bootstrap/win/win_tools.bat index 4dde1f603..8cc67e44f 100644 --- a/bootstrap/win/win_tools.bat +++ b/bootstrap/win/win_tools.bat @@ -25,12 +25,12 @@ if "%1" == "force" ( :GIT_CHECK :: If the batch file exists, skip the git check. -if exist "%WIN_TOOLS_ROOT_DIR%\%GIT_BIN_DIR%" goto :SVN_CHECK -if "%CHROME_HEADLESS%" == "1" goto :SVN_CHECK +if exist "%WIN_TOOLS_ROOT_DIR%\%GIT_BIN_DIR%" goto :MSYS_TERM_CHECK +if "%CHROME_HEADLESS%" == "1" goto :MSYS_TERM_CHECK if "%WIN_TOOLS_FORCE%" == "1" goto :GIT_INSTALL call git --version 2>nul 1>nul if errorlevel 1 goto :GIT_INSTALL -goto :SVN_CHECK +goto :MSYS_TERM_CHECK :GIT_INSTALL @@ -54,7 +54,7 @@ call copy /y "%WIN_TOOLS_ROOT_DIR%\%GIT_BIN_DIR%\ssh-keygen.bat" "%WIN_TOOLS_ROO :: Ensure autocrlf and filemode are set correctly. call "%WIN_TOOLS_ROOT_DIR%\git.bat" config --global core.autocrlf false call "%WIN_TOOLS_ROOT_DIR%\git.bat" config --global core.filemode false -goto :SVN_CHECK +goto :MSYS_TERM_CHECK :GIT_FAIL @@ -66,6 +66,17 @@ set ERRORLEVEL=1 goto :END +:MSYS_TERM_CHECK +:: Tweak git.bat to set TERM appropriately +call FIND "TERM" "%WIN_TOOLS_ROOT_DIR%\git.bat" 2>nul 1>nul +IF errorlevel 1 ( + FINDSTR /V "git\.cmd" "%WIN_TOOLS_ROOT_DIR%\git.bat" > git.bat.new + echo set TERM=msys >> git.bat.new + FINDSTR "git\.cmd" "%WIN_TOOLS_ROOT_DIR%\git.bat" >> git.bat.new + MOVE /Y git.bat.new "%WIN_TOOLS_ROOT_DIR%\git.bat" >nul +) + + :SVN_CHECK :: If the batch file exists, skip the svn check. if exist "%WIN_TOOLS_ROOT_DIR%\svn.bat" goto :PYTHON_CHECK