buildbase.bat (4485B)
1 @ECHO OFF 2 REM Usage: [buildbase.bat ..\vs2019\mysolution.sln 16] 3 4 SETLOCAL enabledelayedexpansion 5 6 SET solution=%1 7 SET version=%2 8 SET log=build_%version%.log 9 SET tools=Microsoft Visual Studio %version%.0\VC\vcvarsall.bat 10 11 IF %version% == 17 ( 12 SET tools=Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\Build\vcvarsall.bat 13 SET environment="%programfiles%\!tools!" 14 IF NOT EXIST !environment! ( 15 SET environment="%programfiles(x86)%\!tools!" 16 IF NOT EXIST !environment! ( 17 SET tools=Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvarsall.bat 18 ) 19 ) 20 ) 21 22 IF %version% == 16 ( 23 SET tools=Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvarsall.bat 24 SET environment="%programfiles%\!tools!" 25 IF NOT EXIST !environment! ( 26 SET environment="%programfiles(x86)%\!tools!" 27 IF NOT EXIST !environment! ( 28 SET tools=Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvarsall.bat 29 ) 30 ) 31 ) 32 33 IF %version% == 15 ( 34 SET tools=Microsoft Visual Studio\2017\Enterprise\VC\Auxiliary\Build\vcvarsall.bat 35 SET environment="%programfiles%\!tools!" 36 IF NOT EXIST !environment! ( 37 SET environment="%programfiles(x86)%\!tools!" 38 IF NOT EXIST !environment! ( 39 SET tools=Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvarsall.bat 40 ) 41 ) 42 ) 43 SET environment="%programfiles%\!tools!" 44 IF NOT EXIST !environment! SET environment="%programfiles(x86)%\!tools!" 45 46 ECHO Environment: !environment! 47 48 IF NOT EXIST !environment! GOTO no_tools 49 50 ECHO Building: %solution% 51 52 CALL !environment! x86 > nul 53 ECHO Platform=x86 54 55 ECHO Configuration=DynDebug 56 msbuild /m /v:n /p:Configuration=DynDebug /p:Platform=Win32 %solution% >> %log% 57 IF errorlevel 1 GOTO error 58 ECHO Configuration=DynRelease 59 msbuild /m /v:n /p:Configuration=DynRelease /p:Platform=Win32 %solution% >> %log% 60 IF errorlevel 1 GOTO error 61 ECHO Configuration=LtcgDebug 62 msbuild /m /v:n /p:Configuration=LtcgDebug /p:Platform=Win32 %solution% >> %log% 63 IF errorlevel 1 GOTO error 64 ECHO Configuration=LtcgRelease 65 msbuild /m /v:n /p:Configuration=LtcgRelease /p:Platform=Win32 %solution% >> %log% 66 IF errorlevel 1 GOTO error 67 ECHO Configuration=StaticDebug 68 msbuild /m /v:n /p:Configuration=StaticDebug /p:Platform=Win32 %solution% >> %log% 69 IF errorlevel 1 GOTO error 70 ECHO Configuration=StaticRelease 71 msbuild /m /v:n /p:Configuration=StaticRelease /p:Platform=Win32 %solution% >> %log% 72 IF errorlevel 1 GOTO error 73 74 CALL !environment! x86_amd64 > nul 75 ECHO Platform=x64 76 77 ECHO Configuration=DynDebug 78 msbuild /m /v:n /p:Configuration=DynDebug /p:Platform=x64 %solution% >> %log% 79 IF errorlevel 1 GOTO error 80 ECHO Configuration=DynRelease 81 msbuild /m /v:n /p:Configuration=DynRelease /p:Platform=x64 %solution% >> %log% 82 IF errorlevel 1 GOTO error 83 ECHO Configuration=LtcgDebug 84 msbuild /m /v:n /p:Configuration=LtcgDebug /p:Platform=x64 %solution% >> %log% 85 IF errorlevel 1 GOTO error 86 ECHO Configuration=LtcgRelease 87 msbuild /m /v:n /p:Configuration=LtcgRelease /p:Platform=x64 %solution% >> %log% 88 IF errorlevel 1 GOTO error 89 ECHO Configuration=StaticDebug 90 msbuild /m /v:n /p:Configuration=StaticDebug /p:Platform=x64 %solution% >> %log% 91 IF errorlevel 1 GOTO error 92 ECHO Configuration=StaticRelease 93 msbuild /m /v:n /p:Configuration=StaticRelease /p:Platform=x64 %solution% >> %log% 94 IF errorlevel 1 GOTO error 95 96 @REM Build ARM64 packages only for Visual studio 2019 and later 97 IF %version% GEQ 16 ( 98 CALL !environment! ARM64 > nul 99 ECHO Platform=ARM64 100 101 ECHO Configuration=DynDebug 102 msbuild /m /v:n /p:Configuration=DynDebug /p:Platform=ARM64 %solution% >> %log% 103 IF errorlevel 1 GOTO error 104 ECHO Configuration=DynRelease 105 msbuild /m /v:n /p:Configuration=DynRelease /p:Platform=ARM64 %solution% >> %log% 106 IF errorlevel 1 GOTO error 107 ECHO Configuration=LtcgDebug 108 msbuild /m /v:n /p:Configuration=LtcgDebug /p:Platform=ARM64 %solution% >> %log% 109 IF errorlevel 1 GOTO error 110 ECHO Configuration=LtcgRelease 111 msbuild /m /v:n /p:Configuration=LtcgRelease /p:Platform=ARM64 %solution% >> %log% 112 IF errorlevel 1 GOTO error 113 ECHO Configuration=StaticDebug 114 msbuild /m /v:n /p:Configuration=StaticDebug /p:Platform=ARM64 %solution% >> %log% 115 IF errorlevel 1 GOTO error 116 ECHO Configuration=StaticRelease 117 msbuild /m /v:n /p:Configuration=StaticRelease /p:Platform=ARM64 %solution% >> %log% 118 IF errorlevel 1 GOTO error 119 ) 120 121 ECHO Complete: %solution% 122 GOTO end 123 124 :error 125 ECHO *** ERROR, build terminated early, see: %log% 126 GOTO end 127 128 :no_tools 129 ECHO *** ERROR, build tools not found: !tools! 130 131 :end 132