Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use CIPD Windows SDK to generate WinRT headers #448

Merged
merged 1 commit into from May 7, 2021

Conversation

cbracken
Copy link
Member

@cbracken cbracken commented May 7, 2021

Rather than relying on the Windows SDK that happens to be on the host
machine, we now pull down the Windows SDK from CIPD into
third_party/windows_sdk and use it directly.

cppwinrt relies on a registry entry to determine the SDK location and
doesn't currently support a mechanism for specifying this location
explicitly via an argument. Instead, we do what cppwinrt itself does and
parse out the Platform.XML file to determine the set of .winmd files to
take as input, then pass them to the tool directly.

Related: flutter/flutter#81994

@cbracken cbracken requested a review from clarkezone May 7, 2021 04:35
Rather than relying on the Windows SDK that happens to be on the host
machine, we now pull down the Windows SDK from CIPD into
third_party/windows_sdk and use it directly.

cppwinrt relies on a registry entry to determine the SDK location and
doesn't currently support a mechanism for specifying this location
explicitly via an argument. Instead, we do what cppwinrt itself does and
parse out the Platform.XML file to determine the set of .winmd files to
take as input, then pass them to the tool directly.
Copy link
Contributor

@clarkezone clarkezone left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@cbracken cbracken merged commit b1bc089 into flutter:master May 7, 2021
@cbracken cbracken deleted the use-cipd-windows-sdk branch May 7, 2021 04:44
cbracken added a commit to cbracken/flutter_engine that referenced this pull request May 7, 2021
We now build against a specific Windows SDK rather than whatever happens
to be installed on the host machine.

This also rolls the buildroot to include change
flutter/buildroot#448, which generates the WinRT
headers from the CIPD Windows SDK.
cbracken added a commit to cbracken/flutter_engine that referenced this pull request May 7, 2021
We now build against a specific Windows SDK rather than whatever happens
to be installed on the host machine.

This also rolls the buildroot to include change
flutter/buildroot#448, which generates the WinRT
headers from the CIPD Windows SDK.
cbracken added a commit to cbracken/flutter_engine that referenced this pull request May 7, 2021
We now build against a specific Windows SDK rather than whatever happens
to be installed on the host machine.

This also rolls the buildroot to include change
flutter/buildroot#448, which generates the WinRT
headers from the CIPD Windows SDK.

This also re-enables the UWP builder.
cbracken added a commit to cbracken/buildroot that referenced this pull request May 7, 2021
Canonicalizes input paths we pass to cppwinrt to avoid failures to open
files.

Followup to flutter#448
cbracken added a commit that referenced this pull request May 7, 2021
Canonicalizes input paths we pass to cppwinrt to avoid failures to open
files.

Followup to #448
cbracken added a commit to cbracken/flutter_engine that referenced this pull request May 7, 2021
We now build against a specific Windows SDK rather than whatever happens
to be installed on the host machine.

This also rolls the buildroot to include change
flutter/buildroot#448, which generates the WinRT
headers from the CIPD Windows SDK.

This also re-enables the UWP builder.
cbracken added a commit to cbracken/flutter_engine that referenced this pull request May 7, 2021
We now build against a specific Windows SDK rather than whatever happens
to be installed on the host machine.

This also rolls the buildroot to include change
flutter/buildroot#448, which generates the WinRT
headers from the CIPD Windows SDK.

This also rolls an updated version of cppwinrt that includes supports
for long paths.

This also re-enables the UWP builder.
cbracken added a commit to cbracken/flutter_engine that referenced this pull request May 7, 2021
We now build against a specific Windows SDK rather than whatever happens
to be installed on the host machine.

This also rolls the buildroot to include change
flutter/buildroot#448, which generates the WinRT
headers from the CIPD Windows SDK.

This also rolls an updated version of cppwinrt that includes supports
for long paths.

This also re-enables the UWP builder.
christopherfujino added a commit to christopherfujino/engine that referenced this pull request May 7, 2021
cbracken added a commit to cbracken/flutter_engine that referenced this pull request May 7, 2021
We now build against a specific Windows SDK rather than whatever happens
to be installed on the host machine.

This also rolls the buildroot to include change
flutter/buildroot#448, which generates the WinRT
headers from the CIPD Windows SDK.

This also rolls an updated version of cppwinrt that includes supports
for long paths.

This also re-enables the UWP builder.
cbracken added a commit to cbracken/flutter_engine that referenced this pull request May 7, 2021
We now build against a specific Windows SDK rather than whatever happens
to be installed on the host machine.

This also rolls the buildroot to include change
flutter/buildroot#448, which generates the WinRT
headers from the CIPD Windows SDK.

This also rolls an updated version of cppwinrt that includes supports
for long paths.

This also re-enables the UWP builder.
cbracken added a commit to cbracken/flutter_engine that referenced this pull request May 7, 2021
We now build against a specific Windows SDK rather than whatever happens
to be installed on the host machine.

This also rolls the buildroot to include change
flutter/buildroot#448, which generates the WinRT
headers from the CIPD Windows SDK.

This also rolls an updated version of cppwinrt that includes supports
for long paths.

This also re-enables the UWP builder.
cbracken added a commit to cbracken/flutter_engine that referenced this pull request May 7, 2021
We now build against a specific Windows SDK rather than whatever happens
to be installed on the host machine.

This also rolls the buildroot to include change
flutter/buildroot#448, which generates the WinRT
headers from the CIPD Windows SDK.

This also rolls an updated version of cppwinrt that includes supports
for long paths.

This also re-enables the UWP builder.
cbracken added a commit to flutter/engine that referenced this pull request May 8, 2021
We now build against a specific Windows SDK rather than whatever happens
to be installed on the host machine.

This also rolls the buildroot to include change
flutter/buildroot#448, which generates the WinRT
headers from the CIPD Windows SDK.

This also rolls an updated version of cppwinrt that includes supports
for long paths.

This also re-enables the UWP builder.
naudzghebre pushed a commit to naudzghebre/engine that referenced this pull request May 21, 2021
We now build against a specific Windows SDK rather than whatever happens
to be installed on the host machine.

This also rolls the buildroot to include change
flutter/buildroot#448, which generates the WinRT
headers from the CIPD Windows SDK.

This also rolls an updated version of cppwinrt that includes supports
for long paths.

This also re-enables the UWP builder.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
2 participants