|
22 | 22 | <PropertyGroup>
|
23 | 23 | <ProjectGuid>CA5CAD1A-224A-4171-B13A-F16E576FDD12</ProjectGuid>
|
24 | 24 | <EntryPointProjectUniqueName>..\WindowsTerminal\WindowsTerminal.vcxproj</EntryPointProjectUniqueName>
|
| 25 | + <DebuggerType>NativeOnly</DebuggerType> |
25 | 26 | </PropertyGroup>
|
26 | 27 | <PropertyGroup Condition="!Exists('CascadiaPackage_TemporaryKey.pfx')">
|
27 | 28 | <AppxPackageSigningEnabled>false</AppxPackageSigningEnabled>
|
|
260 | 261 | </ItemGroup>
|
261 | 262 | <Import Project="$(OpenConsoleDir)src\wap-common.build.post.props" />
|
262 | 263 | <!--
|
263 |
| - This exists to work around Microsoft/microsoft-ui-xaml#494. |
264 |
| - https://github.com/Microsoft/microsoft-ui-xaml/issues/494 |
| 264 | + Microsoft.UI.Xaml contains some <Content> resource files that need to be included in our package. |
| 265 | + For some reason, they're not rolled up through dependent projects; if they were, their paths would |
| 266 | + be wrong. |
265 | 267 |
|
266 |
| - Because the MUX nuget package hardcodes a requirement that the consuming project |
267 |
| - be of type 'UAP', its resources are included in packaging and dependency resolution |
268 |
| - by default. Inject them here. |
| 268 | + WAP Packaging projects don't actually support nuget package references, so we added one manually. |
269 | 269 |
|
270 | 270 | This does mean that version changes to Microsoft.UI.Xaml must be manually reflected
|
271 | 271 | here.
|
|
277 | 277 | </PropertyGroup>
|
278 | 278 | <Error Condition="!Exists('..\..\..\packages\Microsoft.UI.Xaml.2.2.190611001-prerelease\build\native\Microsoft.UI.Xaml.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\Microsoft.UI.Xaml.2.2.190611001-prerelease\build\native\Microsoft.UI.Xaml.targets'))" />
|
279 | 279 | </Target>
|
280 |
| - <PropertyGroup> |
281 |
| - <WapProjBeforeGenerateAppxManifestDependsOn> |
282 |
| - $(WapProjBeforeGenerateAppxManifestDependsOn); |
283 |
| - _ConsoleInjectMUXWinmdIntoReferences; |
284 |
| - </WapProjBeforeGenerateAppxManifestDependsOn> |
285 |
| - </PropertyGroup> |
286 |
| - <Target Name="_ConsoleInjectMUXWinmdIntoReferences"> |
287 |
| - <ItemGroup> |
288 |
| - <_WinmdFilesFromReferences Include="@(Reference)" Condition="'%(Reference.Filename)' == 'Microsoft.UI.Xaml' and '%(Reference.Extension)' == '.winmd'" /> |
289 |
| - </ItemGroup> |
290 |
| - </Target> |
291 | 280 | <!-- End workaround -->
|
292 | 281 | <ItemGroup>
|
293 | 282 | <ProjectReference Include="..\WindowsTerminal\WindowsTerminal.vcxproj" />
|
|
310 | 299 | </_FilteredNonWapProjProjectOutput>
|
311 | 300 | </ItemGroup>
|
312 | 301 | </Target>
|
| 302 | + |
| 303 | + <!-- Move all the PRI files that would be packaged into the appx into _PriFile so that |
| 304 | + GenerateProjectPriFile catches them. This requires us to move payload collection |
| 305 | + up before GenerateProjectPriFile, when it is typically _after_ it (because the |
| 306 | + DesktopBridge project type is built to only prepare the payload during appx manifest |
| 307 | + generation. |
| 308 | +
|
| 309 | + Since PRI file generation is _before_ manifest generation (for possibly obvious or |
| 310 | + important reasons), that doesn't work for us. |
| 311 | + --> |
| 312 | + <PropertyGroup> |
| 313 | + <_GenerateProjectPriFileDependsOn>OpenConsoleLiftDesktopBridgePriFiles;$(_GenerateProjectPriFileDependsOn)</_GenerateProjectPriFileDependsOn> |
| 314 | + </PropertyGroup> |
| 315 | + <Target Name="OpenConsoleLiftDesktopBridgePriFiles" DependsOnTargets="_ConvertItems"> |
| 316 | + <ItemGroup> |
| 317 | + <_PriFile Include="@(_NonWapProjProjectOutput)" Condition="'%(Extension)' == '.pri'" /> |
| 318 | + <!-- Remove all other .pri files from the appx payload. --> |
| 319 | + <AppxPackagePayload Remove="@(AppxPackagePayload)" Condition="'%(Extension)' == '.pri'" /> |
| 320 | + </ItemGroup> |
| 321 | + </Target> |
| 322 | + |
313 | 323 | </Project>
|
0 commit comments