execute CoreBuild to generate xaml files #2982
Closed
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fixes #2779
This enables the MSBuild workspace to run the xaml tasks that generate files, so those files get added as compiler source inputs correctly.
The solution is to switch to using the "CoreBuild" msbuild target instead of "Compile" (which is included in CoreBuild.)
Note: there has been lots of conversation on how/why the VS project system is able to use only the Compile target and still build/produce the correct compiler inputs, and the result is no one either knows are assumes there is project-system flavoring extensions augmenting the project system. What is known, however, is that under normal msbuild-only conditions, the extra tasks needed to process xaml only occur under CoreBuild.
So I'm switching msbuild workspace to use CodeBuild. The down side is that some extra/unnecessary work may happen when opening some projects.
@Pilchie @jasonmalinowski please review
*Also, this solution doesn't solve the versioning problem that requires apps using msbuild workspace to use .net config file redirects for msbuild API dlls, the same way the msbuild.exe and devenv.exe do.