Share via


Interesting behavior in desktop build ...

Desktop build not stopping immediately on build break ...

Details

If I am building two solutions sln1 and sln2 for two configuration debug|x86 and release|x86 and there is a compiler error in sln1. The build process tries to build sln1 (for debug|x86) and gets build break. Unfortunately MSBuild does not stop but goes on to build sln2 (for debug|x86). The task does not loop for second configuration (release|x86). Ideally either user should get binaries corresponding to release|x86 or sln2 should not be build at all. We will try to fix this behavior in future releases.

The behavior is same at projects level (i.e csproj, vbproj, etc). For example sln1 contains three projects (csproj1, csproj2, csproj3) and they are all independent and there is a compilation error in csproj1, then csproj2 and csproj3 will get build for the same (active) configuration. However if there is dependency between projects then the dependent projects will be skipped on build break.