diff --git a/build_files/windows/parse_arguments.cmd b/build_files/windows/parse_arguments.cmd index c63f062dfef..dcef46c2c9a 100644 --- a/build_files/windows/parse_arguments.cmd +++ b/build_files/windows/parse_arguments.cmd @@ -116,6 +116,9 @@ if NOT "%1" == "" ( ) else if "%1" == "doc_py" ( set DOC_PY=1 goto EOF + ) else if "%1" == "svnfix" ( + set SVN_FIX=1 + goto EOF ) else ( echo Command "%1" unknown, aborting! goto ERR diff --git a/build_files/windows/svn_fix.cmd b/build_files/windows/svn_fix.cmd new file mode 100644 index 00000000000..a9dcdf36847 --- /dev/null +++ b/build_files/windows/svn_fix.cmd @@ -0,0 +1,26 @@ +if "%BUILD_VS_YEAR%"=="2017" set BUILD_VS_LIBDIRPOST=vc15 +if "%BUILD_VS_YEAR%"=="2019" set BUILD_VS_LIBDIRPOST=vc15 +if "%BUILD_VS_YEAR%"=="2022" set BUILD_VS_LIBDIRPOST=vc15 + +set BUILD_VS_SVNDIR=win64_%BUILD_VS_LIBDIRPOST% +set BUILD_VS_LIBDIR="%BLENDER_DIR%..\lib\%BUILD_VS_SVNDIR%" + +echo Starting cleanup in %BUILD_VS_LIBDIR%. +cd %BUILD_VS_LIBDIR% +:RETRY +"%SVN%" cleanup +"%SVN%" update +if errorlevel 1 ( + set /p LibRetry= "Error during update, retry? y/n" + if /I "!LibRetry!"=="Y" ( + goto RETRY + ) + echo. + echo Error: Download of external libraries failed. + echo This is needed for building, please manually run 'svn cleanup' and 'svn update' in + echo %BUILD_VS_LIBDIR% , until this is resolved you CANNOT make a successful blender build + echo. + exit /b 1 +) +echo Cleanup complete + diff --git a/make.bat b/make.bat index e94f7637512..d55b2cfd1b3 100644 --- a/make.bat +++ b/make.bat @@ -56,6 +56,11 @@ if "%BUILD_VS_YEAR%" == "" ( ) ) +if "%SVN_FIX%" == "1" ( + call "%BLENDER_DIR%\build_files\windows\svn_fix.cmd" + goto EOF +) + if "%BUILD_UPDATE%" == "1" ( call "%BLENDER_DIR%\build_files\windows\check_libraries.cmd" if errorlevel 1 goto EOF