diff options
author | Pat Gavlin <pagavlin@microsoft.com> | 2016-01-12 11:25:27 -0800 |
---|---|---|
committer | Pat Gavlin <pagavlin@microsoft.com> | 2016-01-13 15:29:44 -0800 |
commit | 0d0ada00caa03cd2a7d00bb647c5c6bb1a95156a (patch) | |
tree | 50ec610d815ce61e489b95dbb2662d78b706ab65 /build.cmd | |
parent | 761fa468d2fb09d00044fa1848b884b657191876 (diff) | |
download | coreclr-0d0ada00caa03cd2a7d00bb647c5c6bb1a95156a.tar.gz coreclr-0d0ada00caa03cd2a7d00bb647c5c6bb1a95156a.tar.bz2 coreclr-0d0ada00caa03cd2a7d00bb647c5c6bb1a95156a.zip |
Add configureonly and skipconfigure to builds.
These options allow the developer to either:
1. Run build configuration without actually running the build, or
2. Skip build configuration when running the build.
CMake already adds the various CMakeLists.txt files as build
dependencies s.t. it will be automatically re-run when necessary.
Diffstat (limited to 'build.cmd')
-rw-r--r-- | build.cmd | 17 |
1 files changed, 17 insertions, 0 deletions
@@ -48,6 +48,8 @@ set "__LogsDir=%__RootBinDir%\Logs" set __CleanBuild= set __MscorlibOnly= +set __ConfigureOnly= +set __SkipConfigure= set __SkipMscorlibBuild= set __SkipNativeBuild= set __SkipTestBuild= @@ -105,6 +107,8 @@ if /i "%1" == "windowsmscorlib" (set __MscorlibOnly=1&set __BuildOS=Windows_ if /i "%1" == "vs2013" (set __VSVersion=%1&shift&goto Arg_Loop) if /i "%1" == "vs2015" (set __VSVersion=%1&shift&goto Arg_Loop) +if /i "%1" == "configureonly" (set __ConfigureOnly=1&set __SkipMscorlibBuild=1&set __SkipTestBuild=1&shift&goto Arg_Loop) +if /i "%1" == "skipconfigure" (set __SkipConfigure=1&shift&goto Arg_Loop) if /i "%1" == "skipmscorlib" (set __SkipMscorlibBuild=1&shift&goto Arg_Loop) if /i "%1" == "skipnative" (set __SkipNativeBuild=1&shift&goto Arg_Loop) if /i "%1" == "skiptests" (set __SkipTestBuild=1&shift&goto Arg_Loop) @@ -134,6 +138,11 @@ goto Usage :ArgsDone +if defined __ConfigureOnly if defined __SkipConfigure ( + echo "Error: option 'configureonly' is incompatible with 'skipconfigure' + goto Usage +) + if defined __SkipMscorlibBuild if defined __MscorlibOnly ( echo Error: option 'skipmscorlib' is incompatible with 'freebsdmscorlib', 'linuxmscorlib', 'osxmscorlib', and 'windowsmscorlib'. goto Usage @@ -301,6 +310,8 @@ if not exist "%VSINSTALLDIR%DIA SDK" goto NoDIA :GenVSSolution +if defined __SkipConfigure goto SkipConfigure + echo %__MsgPrefix%Regenerating the Visual Studio solution pushd "%__IntermediatesDir%" @@ -308,6 +319,8 @@ call "%__SourceDir%\pal\tools\gen-buildsys-win.bat" "%__ProjectDir%" %__VSVersio @if defined __echo @echo on popd +:SkipConfigure + if not exist "%__IntermediatesDir%\install.vcxproj" ( echo %__MsgPrefix%Error: failed to generate native component build project! exit /b 1 @@ -358,6 +371,8 @@ REM === Build the CLR VM REM === REM ========================================================================================= +if defined __ConfigureOnly goto SkipNativeBuild + echo %__MsgPrefix%Invoking msbuild set "__BuildLog=%__LogsDir%\CoreCLR_%__BuildOS%__%__BuildArch%__%__BuildType%.log" @@ -637,6 +652,8 @@ echo respectively^). echo priority ^<N^> : specify a set of test that will be built and run, with priority N. echo sequential: force a non-parallel build ^(default is to build in parallel echo using all processors^). +echo configureonly: skip all builds; only run CMake ^(default: CMake and builds are run^) +echo skipconfigure: skip CMake ^(default: CMake is run^) echo skipmscorlib: skip building mscorlib ^(default: mscorlib is built^). echo skipnative: skip building native components ^(default: native components are built^). echo skiptests: skip building tests ^(default: tests are built^). |