diff --git a/nuget/CppWinrtRules.Project.xml b/nuget/CppWinrtRules.Project.xml index 062d70f2b..572efc31d 100644 --- a/nuget/CppWinrtRules.Project.xml +++ b/nuget/CppWinrtRules.Project.xml @@ -70,5 +70,10 @@ DisplayName="Optimized" Description="Enables component projection optimization features (e.g., unified construction)" Category="General" /> + + diff --git a/nuget/Microsoft.Windows.CppWinRT.targets b/nuget/Microsoft.Windows.CppWinRT.targets index f10bf9176..660090b85 100644 --- a/nuget/Microsoft.Windows.CppWinRT.targets +++ b/nuget/Microsoft.Windows.CppWinRT.targets @@ -37,7 +37,7 @@ Copyright (C) Microsoft Corporation. All rights reserved. $(WindowsSDK_MetadataPathVersioned) - $(GetTargetPathDependsOn);GetCppWinRTMdMergeInputs;CppWinRTResolveWinMD; + $(GetTargetPathDependsOn);ComputeCppWinRTResolvedWinMD;CppWinRTResolvedWinMD; $(PrepareForBuildDependsOn);CppWinRTVerifyKitVersion; @@ -50,7 +50,12 @@ Copyright (C) Microsoft Corporation. All rights reserved. $(ComputeMidlInputsTargets);CppWinRTComputeXamlGeneratedMidlInputs;CppWinRTSetMidlReferences; - $(AfterMidlTargets);GetCppWinRTMdMergeInputs;CppWinRTMergeProjectWinMDInputs;CppWinRTResolveWinMD; + $(AfterMidlTargets); + GetCppWinRTMdMergeInputs; + CppWinRTMergeProjectWinMDInputs; + ComputeCppWinRTResolvedWinMD; + CppWinRTResolvedWinMD; + CppWinRTResolvedWinMDToOutputDirectory; $(ResolveAssemblyReferencesDependsOn);GetCppWinRTProjectWinMDReferences;CppWinRTRemoveStaticLibraries; @@ -112,8 +117,18 @@ Copyright (C) Microsoft Corporation. All rights reserved. - + + + true + false + + + + @@ -127,7 +142,7 @@ Copyright (C) Microsoft Corporation. All rights reserved. $(ConfigurationType) - + <_MdMergeDepth Condition="'$(CppWinRTNamespaceMergeDepth)' != ''">-n:$(CppWinRTNamespaceMergeDepth) @@ -401,11 +416,20 @@ $(XamlMetaDataProviderPch) <_MdMergedOutput Remove="@(_MdMergedOutput)"/> <_MdMergedOutput Include="$(CppWinRTMergedDir)*.winmd"/> + + + + + + - diff --git a/nuget/readme.md b/nuget/readme.md index f61003785..c08079ed6 100644 --- a/nuget/readme.md +++ b/nuget/readme.md @@ -67,6 +67,7 @@ C++/WinRT behavior can be customized with these project properties: | CppWinRTFastAbi | true \| *false | Enables Fast ABI feature for both consuming and producing projections | | CppWinRTProjectLanguage | C++/CX \| *C++/WinRT | Selects the C++ dialect for the project. C++/WinRT provides full projection support, C++/CX permits consuming projection headers. | | CppWinRTOptimized | true \| *false | Enables component projection [optimization features](https://kennykerr.ca/2019/06/07/cppwinrt-optimizing-components/) | +| CppWinRTGenerateWindowsMetadata | true \| *false | Indicates whether this project produces Windows Metadata | \*Default value To customize common C++/WinRT project properties: diff --git a/test/nuget/TestRuntimeComponent1/TestRuntimeComponent1.vcxproj b/test/nuget/TestRuntimeComponent1/TestRuntimeComponent1.vcxproj index 1ed2bb2d0..5f92b074f 100644 --- a/test/nuget/TestRuntimeComponent1/TestRuntimeComponent1.vcxproj +++ b/test/nuget/TestRuntimeComponent1/TestRuntimeComponent1.vcxproj @@ -87,7 +87,7 @@ Console - true + false TestRuntimeComponent1.def diff --git a/test/nuget/TestRuntimeComponent2/TestRuntimeComponent2.vcxproj b/test/nuget/TestRuntimeComponent2/TestRuntimeComponent2.vcxproj index 4b3832a86..c30618143 100644 --- a/test/nuget/TestRuntimeComponent2/TestRuntimeComponent2.vcxproj +++ b/test/nuget/TestRuntimeComponent2/TestRuntimeComponent2.vcxproj @@ -88,7 +88,7 @@ Console - true + false TestRuntimeComponent2.def diff --git a/test/nuget/TestRuntimeComponent3/TestRuntimeComponent3.vcxproj b/test/nuget/TestRuntimeComponent3/TestRuntimeComponent3.vcxproj index 42fb22b1d..20b8301fd 100644 --- a/test/nuget/TestRuntimeComponent3/TestRuntimeComponent3.vcxproj +++ b/test/nuget/TestRuntimeComponent3/TestRuntimeComponent3.vcxproj @@ -88,7 +88,7 @@ Console - true + false TestRuntimeComponent3.def diff --git a/test/nuget/TestRuntimeComponentEmpty/TestRuntimeComponentEmpty.vcxproj b/test/nuget/TestRuntimeComponentEmpty/TestRuntimeComponentEmpty.vcxproj index 35f2c0098..03fa5a174 100644 --- a/test/nuget/TestRuntimeComponentEmpty/TestRuntimeComponentEmpty.vcxproj +++ b/test/nuget/TestRuntimeComponentEmpty/TestRuntimeComponentEmpty.vcxproj @@ -88,7 +88,7 @@ Console - true + false TestRuntimeComponentEmpty.def diff --git a/vsix/ProjectTemplates/VC/Windows Desktop/ConsoleApplication/ConsoleApplication.vcxproj b/vsix/ProjectTemplates/VC/Windows Desktop/ConsoleApplication/ConsoleApplication.vcxproj index 6d45da3c0..66e7c6eaa 100644 --- a/vsix/ProjectTemplates/VC/Windows Desktop/ConsoleApplication/ConsoleApplication.vcxproj +++ b/vsix/ProjectTemplates/VC/Windows Desktop/ConsoleApplication/ConsoleApplication.vcxproj @@ -3,6 +3,7 @@ true true + true true 15.0 {$guid1$} diff --git a/vsix/ProjectTemplates/VC/Windows Desktop/WindowsApplication/WindowsApplication.vcxproj b/vsix/ProjectTemplates/VC/Windows Desktop/WindowsApplication/WindowsApplication.vcxproj index 822bb8bb1..8071fbd46 100644 --- a/vsix/ProjectTemplates/VC/Windows Desktop/WindowsApplication/WindowsApplication.vcxproj +++ b/vsix/ProjectTemplates/VC/Windows Desktop/WindowsApplication/WindowsApplication.vcxproj @@ -3,6 +3,7 @@ true true + true true 15.0 {$guid1$} diff --git a/vsix/ProjectTemplates/VC/Windows Universal/BlankApp/BlankApp.vcxproj b/vsix/ProjectTemplates/VC/Windows Universal/BlankApp/BlankApp.vcxproj index cb666a57a..7aa6dc7a8 100644 --- a/vsix/ProjectTemplates/VC/Windows Universal/BlankApp/BlankApp.vcxproj +++ b/vsix/ProjectTemplates/VC/Windows Universal/BlankApp/BlankApp.vcxproj @@ -3,6 +3,7 @@ true true + true true {$guid1$} $projectname$ diff --git a/vsix/ProjectTemplates/VC/Windows Universal/CoreApp/CoreApp.vcxproj b/vsix/ProjectTemplates/VC/Windows Universal/CoreApp/CoreApp.vcxproj index c84ab6848..6199f3c73 100644 --- a/vsix/ProjectTemplates/VC/Windows Universal/CoreApp/CoreApp.vcxproj +++ b/vsix/ProjectTemplates/VC/Windows Universal/CoreApp/CoreApp.vcxproj @@ -3,6 +3,7 @@ true true + true true {$guid1$} $projectname$ diff --git a/vsix/ProjectTemplates/VC/Windows Universal/StaticLibrary/StaticLibrary.vcxproj b/vsix/ProjectTemplates/VC/Windows Universal/StaticLibrary/StaticLibrary.vcxproj index e619fe0b3..211d584b7 100644 --- a/vsix/ProjectTemplates/VC/Windows Universal/StaticLibrary/StaticLibrary.vcxproj +++ b/vsix/ProjectTemplates/VC/Windows Universal/StaticLibrary/StaticLibrary.vcxproj @@ -3,6 +3,7 @@ true true + true -lib $(MSBuildProjectName) true {$guid1$} diff --git a/vsix/ProjectTemplates/VC/Windows Universal/WindowsRuntimeComponent/WindowsRuntimeComponent.vcxproj b/vsix/ProjectTemplates/VC/Windows Universal/WindowsRuntimeComponent/WindowsRuntimeComponent.vcxproj index b917f4eda..855c9a456 100644 --- a/vsix/ProjectTemplates/VC/Windows Universal/WindowsRuntimeComponent/WindowsRuntimeComponent.vcxproj +++ b/vsix/ProjectTemplates/VC/Windows Universal/WindowsRuntimeComponent/WindowsRuntimeComponent.vcxproj @@ -3,6 +3,7 @@ true true + true true {$guid1$} $projectname$