Skip to content

Improve repo building experience#2489

Open
manodasanW wants to merge 10 commits into
staging/3.0from
manodasanw/buildTask
Open

Improve repo building experience#2489
manodasanW wants to merge 10 commits into
staging/3.0from
manodasanw/buildTask

Conversation

@manodasanW

Copy link
Copy Markdown
Member
  • Previously when you tried to build the slnx in VS, we would often run to WinRT.Generator.Tasks.dll is being used by msbuild and can't be replaced by the build and we would need to kill the processes and then build any changes for it. In addition, even if we did no changes for it, the builds for it often got triggered due to changing central props / targets file. To address this, we are using solution filters to filter out the task dll and move that to a separate solution filter project. This way when changes are done to the task, they can be done and built and then the rest of the projects can be opened and if there are no changes, then other changes don't impact it either.
  • Also updating the PlatformToolset defaults across the projects and some dependencies.

manodasanW and others added 6 commits July 23, 2026 01:00
Add cswinrt.buildtasks.slnf (bootstrap) and cswinrt.dev.slnf (all projects
except WinRT.Generator.Tasks) plus build-tasks.cmd. Developers build the task
DLL out-of-band and open the dev filter so VS never rebuilds the loaded DLL.
CI still builds the full cswinrt.slnx, so the task DLL is built and packaged
unchanged. Document the workflow in CONTRIBUTING.md and copilot-instructions.md.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 10e0f6e6-46f9-4a4c-ae23-44bae267ed9b
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 10e0f6e6-46f9-4a4c-ae23-44bae267ed9b
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 10e0f6e6-46f9-4a4c-ae23-44bae267ed9b
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 10e0f6e6-46f9-4a4c-ae23-44bae267ed9b
@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
There may be pipelines that require an authorized user to comment /azp run to run.

@manodasanW
manodasanW enabled auto-merge (squash) July 24, 2026 18:31
@Sergio0694

Copy link
Copy Markdown
Member

Nit: seeing this when opening VS still:

"C:\git\CsWinRT\src\TestWinRT\BenchmarkComponent\BenchmarkComponent.vcxproj : warning : Platform 'ARM' referenced in the project file 'BenchmarkComponent' cannot be found."

@manodasanW
manodasanW disabled auto-merge July 24, 2026 23:36
manodasanW and others added 4 commits July 24, 2026 18:25
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 10e0f6e6-46f9-4a4c-ae23-44bae267ed9b
Use msbuild -t:restore -p:RestorePackagesConfig=true instead of the bundled
nuget.exe, so get_testwinrt.cmd can run standalone in a VS Developer prompt
without depending on build.cmd having downloaded .nuget\nuget.exe first.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 10e0f6e6-46f9-4a4c-ae23-44bae267ed9b
Drop the unused 32-bit ARM solution platform from cswinrt.slnx (all projects
mapped it to x86/x64 with Build=false) and the corresponding arm legs in
build.cmd. Correct the ARM64 overrides that mapped to x86/x64 so they map to
ARM64, keeping Build=false on projects that don't build for ARM64. Native
TestWinRT vcxproj without an ARM64 config keep their Win32 mapping.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 10e0f6e6-46f9-4a4c-ae23-44bae267ed9b
@manodasanW

Copy link
Copy Markdown
Member Author

Nit: seeing this when opening VS still:

"C:\git\CsWinRT\src\TestWinRT\BenchmarkComponent\BenchmarkComponent.vcxproj : warning : Platform 'ARM' referenced in the project file 'BenchmarkComponent' cannot be found."

That was due to get_testwinrt.cmd was not ran I believe, added it to the docs that someone should run it the first time.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants