forked from bartvdbraak/blender
94c8bbec9c
Previously the MSVC environment was setup every time using vcvarsall.bat when you ran you ran rebuild.cmd, Generally not an issue but after many rebuilds on the same console, it grows the path environment variable beyond what is supported and building breaks. This patch adds a check to see if the environment is setup already and skips the call to vcvarsall.bat Also cleans up the double build in the msbuild's version of rebuild.cmd install.vcxproj will build all that is needed, so no need to do a regular build first.
75 lines
1.9 KiB
Batchfile
75 lines
1.9 KiB
Batchfile
set BUILD_GENERATOR_POST=
|
|
set BUILD_PLATFORM_SELECT=
|
|
set MSBUILD_PLATFORM=x64
|
|
|
|
if "%WITH_CLANG%"=="1" (
|
|
set CLANG_CMAKE_ARGS=-T"llvm"
|
|
if "%WITH_ASAN%"=="1" (
|
|
set ASAN_CMAKE_ARGS=-DWITH_COMPILER_ASAN=On
|
|
)
|
|
) else (
|
|
if "%WITH_ASAN%"=="1" (
|
|
echo ASAN is only supported with clang.
|
|
exit /b 1
|
|
)
|
|
)
|
|
|
|
if "%WITH_PYDEBUG%"=="1" (
|
|
set PYDEBUG_CMAKE_ARGS=-DWINDOWS_PYTHON_DEBUG=On
|
|
)
|
|
|
|
if "%BUILD_VS_YEAR%"=="2019" (
|
|
set BUILD_PLATFORM_SELECT=-A %MSBUILD_PLATFORM%
|
|
) else (
|
|
set BUILD_GENERATOR_POST=%WINDOWS_ARCH%
|
|
)
|
|
|
|
set BUILD_CMAKE_ARGS=%BUILD_CMAKE_ARGS% -G "Visual Studio %BUILD_VS_VER% %BUILD_VS_YEAR%%BUILD_GENERATOR_POST%" %BUILD_PLATFORM_SELECT% %TESTS_CMAKE_ARGS% %CLANG_CMAKE_ARGS% %ASAN_CMAKE_ARGS% %PYDEBUG_CMAKE_ARGS%
|
|
|
|
if NOT EXIST %BUILD_DIR%\nul (
|
|
mkdir %BUILD_DIR%
|
|
)
|
|
|
|
if "%MUST_CLEAN%"=="1" (
|
|
echo Cleaning %BUILD_DIR%
|
|
msbuild ^
|
|
%BUILD_DIR%\Blender.sln ^
|
|
/target:clean ^
|
|
/property:Configuration=%BUILD_TYPE% ^
|
|
/verbosity:minimal ^
|
|
/p:platform=%MSBUILD_PLATFORM%
|
|
)
|
|
|
|
if NOT EXIST %BUILD_DIR%\Blender.sln set MUST_CONFIGURE=1
|
|
if "%NOBUILD%"=="1" set MUST_CONFIGURE=1
|
|
|
|
if "%MUST_CONFIGURE%"=="1" (
|
|
|
|
if NOT "%verbose%" == "" (
|
|
echo "%CMAKE% %BUILD_CMAKE_ARGS% -H%BLENDER_DIR% -B%BUILD_DIR%"
|
|
)
|
|
|
|
cmake ^
|
|
%BUILD_CMAKE_ARGS% ^
|
|
-H%BLENDER_DIR% ^
|
|
-B%BUILD_DIR%
|
|
|
|
if errorlevel 1 (
|
|
echo "Configuration Failed"
|
|
exit /b 1
|
|
)
|
|
)
|
|
echo echo off > %BUILD_DIR%\rebuild.cmd
|
|
echo if "%%VSCMD_VER%%" == "" ^( >> %BUILD_DIR%\rebuild.cmd
|
|
echo call "%VCVARS%" %BUILD_ARCH% >> %BUILD_DIR%\rebuild.cmd
|
|
echo ^) >> %BUILD_DIR%\rebuild.cmd
|
|
echo "%CMAKE%" . >> %BUILD_DIR%\rebuild.cmd
|
|
echo echo %%TIME%% ^> buildtime.txt >> %BUILD_DIR%\rebuild.cmd
|
|
echo msbuild ^
|
|
%BUILD_DIR%\INSTALL.vcxproj ^
|
|
/property:Configuration=%BUILD_TYPE% ^
|
|
/maxcpucount:2 ^
|
|
/verbosity:minimal ^
|
|
/p:platform=%MSBUILD_PLATFORM% ^
|
|
/flp:Summary;Verbosity=minimal;LogFile=%BUILD_DIR%\Build.log >> %BUILD_DIR%\rebuild.cmd
|
|
echo echo %%TIME%% ^>^> buildtime.txt >> %BUILD_DIR%\rebuild.cmd |