CppWinRT is a tool that generates standard C++17 header-file libraries for Windows Runtime (WinRT) APIs. These instructions describe how to update the CIPD package that bundles these tools for Flutter builds.
A more detailed introduction to C++/WinRT can be found in the Microsoft documentation.
The source code is available under an MIT license, from https://github.com/microsoft/cppwinrt.
Updating this package requires the following dependencies:
To update the CIPD package, follow these steps:
.nupkg
file into this directory.tmp
:unzip microsoft.windows.cppwinrt.<version_number>.nupkg -d tmp
cipd create --pkg-def cppwinrt-win-amd64.cipd.yamlThe tool should output that the package was successfully uploaded and verified, including the package path and an identifier SHA.
build:
tag:cipd set-tag flutter/cppwinrt/win-amd64 --version=<new_version_sha> --tag=build:<upstream_version>
cipd describe flutter/cppwinrt/win-amd64 -version <new_version_sha>
rm -rf cppwinrt *.nupkg
Finally, we'll update the DEPS file to point to the latest version.
DEPS
file in an editor.cppwinrt
.version
value to the version you just tagged.The block should look like this:
'src/third_party/cppwinrt': { 'packages': [ { 'package': 'flutter/cppwinrt/win-amd64', 'version': 'build:<upstream_version>' } ], 'condition': 'download_windows_deps', 'dep_type': 'cipd', },
Finally, re-run gclient sync
to verify the package downloads correctly.