зеркало из https://github.com/microsoft/CsWinRT.git
Restructure solution for better validation of projections (#313)
* Initial restructure to exercise nuget package references instead of project references. Builds, but doesn't run. Some issues with how to manage the nuget cache while building/restoring. May need to ditch the nuget packaging, but keep the interop assemblies. * remove project refs * Remove nuget-based structure * fix tests, sample, remove nuspecs * winui tweak * post rebase fixups * post rebase fixup * cleanup * swallow RPC_E_DISCONNECTED in ContextCallback when apartment lost (this is better than try/catch which still causes test runs to fail in VS) * removed nuget-related cruft
This commit is contained in:
Родитель
7659cde6a4
Коммит
ede4a473a2
|
@ -16,3 +16,4 @@ TestWinRT
|
|||
_build/
|
||||
global.json
|
||||
.nuget
|
||||
.nupkg
|
||||
|
|
|
@ -11,6 +11,10 @@
|
|||
<AssetTargetFallback>netcoreapp5.0</AssetTargetFallback>
|
||||
</PropertyGroup>
|
||||
|
||||
<PropertyGroup Condition="'$(TargetFramework)' != 'net5.0'">
|
||||
<DefineConstants>$(DefineConstants);MANUAL_IUNKNOWN</DefineConstants>
|
||||
</PropertyGroup>
|
||||
|
||||
<PropertyGroup Condition="'$(VisualStudioVersion)' == '15.0'">
|
||||
<PlatformToolset>v141</PlatformToolset>
|
||||
<WindowsTargetPlatformVersion>10.0.17763.0</WindowsTargetPlatformVersion>
|
||||
|
@ -27,9 +31,8 @@
|
|||
<BuildPlatform>$(Platform)</BuildPlatform>
|
||||
<BuildPlatform Condition="'$(Platform)'=='Win32'">x86</BuildPlatform>
|
||||
<BuildOutDir Condition="'$(BuildOutDir)'==''">$([MSBuild]::NormalizeDirectory('$(SolutionDir)_build', '$(BuildPlatform)', '$(Configuration)'))</BuildOutDir>
|
||||
<CsWinRTDir>$([MSBuild]::NormalizeDirectory('$(BuildOutDir)', 'cswinrt', 'bin'))</CsWinRTDir>
|
||||
<CsWinRTDir Condition="'$(Platform)'=='ARM' or '$(Platform)'=='ARM64'">$([MSBuild]::NormalizeDirectory('$(SolutionDir)_build', 'x86', '$(Configuration)', 'cswinrt', 'bin'))</CsWinRTDir>
|
||||
<CsWinRTExe>$(CsWinRTDir)cswinrt.exe</CsWinRTExe>
|
||||
<CsWinRTPath>$([MSBuild]::NormalizeDirectory('$(BuildOutDir)', 'cswinrt', 'bin'))</CsWinRTPath>
|
||||
<CsWinRTPath Condition="'$(Platform)'=='ARM' or '$(Platform)'=='ARM64'">$([MSBuild]::NormalizeDirectory('$(SolutionDir)_build', 'x86', '$(Configuration)', 'cswinrt', 'bin'))</CsWinRTPath>
|
||||
</PropertyGroup>
|
||||
|
||||
<PropertyGroup Condition="'$(MSBuildProjectExtension)' == '.vcxproj'">
|
||||
|
@ -81,4 +84,6 @@
|
|||
|
||||
<Import Project="Strings.props" />
|
||||
|
||||
<Import Project="nuget\Microsoft.Windows.CsWinRT.props" />
|
||||
|
||||
</Project>
|
||||
|
|
|
@ -1,14 +1,5 @@
|
|||
<!--NOTE: Directory.Build.* files are temporary until C#/WinRT nuget contains msbuild support-->
|
||||
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup>
|
||||
<ResolveAssemblyReferencesDependsOn Condition="'$(RemoveWindowsReference)'=='true'">$(ResolveAssemblyReferencesDependsOn);RemoveWindowsReference</ResolveAssemblyReferencesDependsOn>
|
||||
</PropertyGroup>
|
||||
|
||||
<!--Remove Windows.Winmd reference to prevent compile collisions-->
|
||||
<Target Name="RemoveWindowsReference" Outputs="@(Reference)">
|
||||
<ItemGroup>
|
||||
<Reference Remove="Windows"/>
|
||||
</ItemGroup>
|
||||
</Target>
|
||||
|
||||
<Import Project="nuget\Microsoft.Windows.CsWinRT.targets" />
|
||||
|
||||
</Project>
|
||||
|
|
|
@ -0,0 +1,81 @@
|
|||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFrameworks>netstandard2.0;net5.0</TargetFrameworks>
|
||||
<Platforms>x64;x86</Platforms>
|
||||
<TargetPlatformVersion>10.0.18362.0</TargetPlatformVersion>
|
||||
<LangVersion>8</LangVersion>
|
||||
</PropertyGroup>
|
||||
|
||||
<PropertyGroup>
|
||||
<GenerateTestProjection Condition="'$(GenerateTestProjection)$(Configuration)' == 'Release'">true</GenerateTestProjection>
|
||||
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
|
||||
<NoWarn>8305;0618</NoWarn>
|
||||
</PropertyGroup>
|
||||
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<DebugType>full</DebugType>
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\..\TestComponentCSharp\TestComponentCSharp.vcxproj" />
|
||||
<ProjectReference Include="..\..\TestWinRT\TestComponent\TestComponent.vcxproj" />
|
||||
<PackageReference Include="System.Numerics.Vectors" Version="4.5.0" />
|
||||
<ProjectReference Include="..\..\WinRT.Runtime\WinRT.Runtime.csproj" />
|
||||
<ProjectReference Include="..\..\cswinrt\cswinrt.vcxproj" />
|
||||
<ProjectReference Include="..\Windows\Windows.csproj" />
|
||||
<ProjectReference Include="..\WinUI\WinUI.csproj" />
|
||||
<InternalsVisibleTo Include="UnitTest" />
|
||||
</ItemGroup>
|
||||
|
||||
<Target Name="GenerateProjection" AfterTargets="ResolveAssemblyReferences" BeforeTargets="DispatchToInnerBuilds;Build" Condition="'$(GenerateTestProjection)' == 'true'">
|
||||
<PropertyGroup>
|
||||
<!--PkgMicrosoft_WinUI is set in in obj\*.csproj.nuget.g.props with TargetFramework condition, doesn't support multi-targeting-->
|
||||
<PkgMicrosoft_WinUI Condition="'$(PkgMicrosoft_WinUI)'==''">$([MSBuild]::NormalizeDirectory('$(NuGetPackageRoot)', 'microsoft.winui', '$(MicrosoftWinUIVersion)'))</PkgMicrosoft_WinUI>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<!--Explicitly reference WinUI winmds from TFM uap10.0-->
|
||||
<ReferenceWinMDs Include="$(PkgMicrosoft_WinUI)/**/*.winmd" />
|
||||
<ReferenceWinMDs Include="@(ReferencePath)" Condition="'%(ReferencePath.WinMDFile)' == 'true'" />
|
||||
<!--Do not publish projection source winmds -->
|
||||
<ReferenceCopyLocalPaths Remove="@(ReferenceCopyLocalPaths)" Condition="%(ReferenceCopyLocalPaths.Filename) == 'TestComponent'" />
|
||||
<ReferenceCopyLocalPaths Remove="@(ReferenceCopyLocalPaths)" Condition="%(ReferenceCopyLocalPaths.Filename) == 'TestComponentCSharp'" />
|
||||
</ItemGroup>
|
||||
<PropertyGroup>
|
||||
<CsWinRTVerbosity>high</CsWinRTVerbosity>
|
||||
<CsWinRTResponseFile>$(IntermediateOutputPath)cswinrt_test.rsp</CsWinRTResponseFile>
|
||||
<CsWinRTCommand>$(CsWinRTExe) %40"$(CsWinRTResponseFile)"</CsWinRTCommand>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<CsWinRTParams>
|
||||
-verbose
|
||||
-in 10.0.18362.0
|
||||
-in @(ReferenceWinMDs->'"%(FullPath)"', ' ')
|
||||
-out "$(ProjectDir)Generated Files"
|
||||
-exclude Windows
|
||||
-exclude Microsoft
|
||||
-include TestComponent
|
||||
-include TestComponentCSharp
|
||||
</CsWinRTParams>
|
||||
</PropertyGroup>
|
||||
<MakeDir Directories="$(ProjectDir)Generated Files" />
|
||||
<WriteLinesToFile File="$(CsWinRTResponseFile)" Lines="$(CsWinRTParams)" Overwrite="true" WriteOnlyWhenDifferent="true" />
|
||||
<Message Text="$(CsWinRTCommand)" Importance="$(CsWinRTVerbosity)" />
|
||||
<Exec Command="$(CsWinRTCommand)" />
|
||||
</Target>
|
||||
|
||||
<Target Name="IncludeProjection" BeforeTargets="CoreCompile" AfterTargets="GenerateProjection">
|
||||
<PropertyGroup>
|
||||
<!--PkgMicrosoft_WinUI is set in in obj\*.csproj.nuget.g.props with TargetFramework condition, doesn't support multi-targeting-->
|
||||
<PkgMicrosoft_WinUI Condition="'$(PkgMicrosoft_WinUI)'==''">$([MSBuild]::NormalizeDirectory('$(NuGetPackageRoot)', 'microsoft.winui', '$(MicrosoftWinUIVersion)'))</PkgMicrosoft_WinUI>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="$(ProjectDir)Generated Files/*.cs" Exclude="@(Compile)" />
|
||||
<!--Remove references to projection source winmds to prevent compile conflict warnings-->
|
||||
<ReferencePathWithRefAssemblies Remove="@(ReferencePathWithRefAssemblies)" Condition="%(ReferencePathWithRefAssemblies.Filename) == 'TestComponent'" />
|
||||
<ReferencePathWithRefAssemblies Remove="@(ReferencePathWithRefAssemblies)" Condition="%(ReferencePathWithRefAssemblies.Filename) == 'TestComponentCSharp'" />
|
||||
</ItemGroup>
|
||||
</Target>
|
||||
|
||||
</Project>
|
|
@ -1,10 +1,10 @@
|
|||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>net5.0</TargetFramework>
|
||||
<TargetFrameworks>netstandard2.0;net5.0</TargetFrameworks>
|
||||
<Platforms>x64;x86</Platforms>
|
||||
<TargetPlatformVersion>10.0.18362.0</TargetPlatformVersion>
|
||||
<CsWinrtExe Condition="'$(CsWinrtPath)'!=''">$(CsWinrtPath)cswinrt.exe</CsWinrtExe>
|
||||
<LangVersion>8</LangVersion>
|
||||
</PropertyGroup>
|
||||
|
||||
<PropertyGroup>
|
||||
|
@ -12,53 +12,45 @@
|
|||
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
|
||||
<NoWarn>8305;0618</NoWarn>
|
||||
</PropertyGroup>
|
||||
|
||||
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<DebugType>full</DebugType>
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="System.Numerics.Vectors" Version="4.5.0" />
|
||||
<ProjectReference Include="..\..\WinRT.Runtime\WinRT.Runtime.csproj" />
|
||||
<ProjectReference Include="..\..\cswinrt\cswinrt.vcxproj" />
|
||||
|
||||
<!-- Exclude compile and build time assets so we don't think we're building a real WinUI App -->
|
||||
<PackageReference Include="Microsoft.WinUI" Version="$(MicrosoftWinUIVersion)" GeneratePathProperty="true">
|
||||
<ExcludeAssets>compile; build</ExcludeAssets>
|
||||
<ProjectReference Include="..\Windows\Windows.csproj" />
|
||||
<PackageReference Include="Microsoft.WinUI" Version="[$(MicrosoftWinUIVersion)]" GeneratePathProperty="true">
|
||||
<ExcludeAssets>compile; build; runtime</ExcludeAssets>
|
||||
</PackageReference>
|
||||
|
||||
<!-- For WinRTModule-->
|
||||
<InternalsVisibleTo Include="WinUITest" />
|
||||
</ItemGroup>
|
||||
|
||||
<Target Name="GenerateWinUIProjection" BeforeTargets="CoreCompile" Condition="'$(GenerateTestProjection)' == 'true'">
|
||||
<Target Name="GenerateProjection" AfterTargets="ResolveAssemblyReferences" BeforeTargets="DispatchToInnerBuilds;Build" Condition="'$(GenerateTestProjection)' == 'true'">
|
||||
<PropertyGroup>
|
||||
<!--PkgMicrosoft_WinUI is set in in obj\*.csproj.nuget.g.props with TargetFramework condition, doesn't support multi-targeting-->
|
||||
<PkgMicrosoft_WinUI Condition="'$(PkgMicrosoft_WinUI)'==''">$([MSBuild]::NormalizeDirectory('$(NuGetPackageRoot)', 'microsoft.winui', '$(MicrosoftWinUIVersion)'))</PkgMicrosoft_WinUI>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<!--PkgMicrosoft_WinUI is defined by Nuget reference-->
|
||||
<WinUIWinMDs Include="$(PkgMicrosoft_WinUI)/**/*.winmd" />
|
||||
<!--Explicitly reference WinUI winmds from TFM uap10.0-->
|
||||
<ReferenceWinMDs Include="$(PkgMicrosoft_WinUI)/**/*.winmd" />
|
||||
<ReferenceWinMDs Include="@(ReferencePath)" Condition="'%(ReferencePath.WinMDFile)' == 'true'" />
|
||||
</ItemGroup>
|
||||
<PropertyGroup>
|
||||
<CsWinRTVerbosity>high</CsWinRTVerbosity>
|
||||
<CsWinRTResponseFile>$(IntermediateOutputPath)cswinrt_platform.rsp</CsWinRTResponseFile>
|
||||
<CsWinRTResponseFile>$(IntermediateOutputPath)cswinrt_winui.rsp</CsWinRTResponseFile>
|
||||
<CsWinRTCommand>$(CsWinrtExe) %40"$(CsWinRTResponseFile)"</CsWinRTCommand>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<CsWinRTParams>
|
||||
-verbose
|
||||
-in 10.0.18362.0
|
||||
-in @(WinUIWinMDs->'"%(FullPath)"', ' ')
|
||||
-in @(ReferenceWinMDs->'"%(FullPath)"', ' ')
|
||||
-out "$(ProjectDir)Generated Files"
|
||||
-exclude Windows
|
||||
-include Microsoft
|
||||
-include Windows
|
||||
# Exclude causality types colliding with those in System.Private.CoreLib.dll
|
||||
-exclude Windows.Foundation.Diagnostics
|
||||
# Exclude Windows.UI, Windows.UI.Text, Windows.UI.Xaml per Microsoft.Windows.SDK.WinUI.Contracts NuGet
|
||||
-exclude Windows.UI.Colors
|
||||
-exclude Windows.UI.IColors
|
||||
-exclude Windows.UI.ColorHelper
|
||||
-exclude Windows.UI.IColorHelper
|
||||
#-exclude Windows.UI.Text (see below: must include Windows.UI.Text to workaround WinUI nuget issues)
|
||||
-exclude Windows.UI.Xaml
|
||||
-exclude Windows.ApplicationModel.Store.Preview
|
||||
# Allow Windows.UI.Text, Windows.UI.Xaml types used in other namespaces
|
||||
-include Windows.UI.Text.FontStretch
|
||||
-include Windows.UI.Text.FontStyle
|
||||
-include Windows.UI.Text.FontWeight
|
||||
-include Windows.UI.Text.UnderlineType
|
||||
# The current WinUI nuget incorrectly references several Windows.* types that should be
|
||||
# Microsoft.* types instead. Temporarily include these to enable the build
|
||||
-include Windows.UI.Xaml.Interop.Type
|
||||
|
@ -82,15 +74,10 @@
|
|||
<Exec Command="$(CsWinRTCommand)" />
|
||||
</Target>
|
||||
|
||||
<ItemGroup>
|
||||
<ReferenceCopyLocalPaths Include="$(PkgMicrosoft_WinUI)/runtimes/win10-$(Platform)/native/*.dll" />
|
||||
<ReferenceCopyLocalPaths Include="$(PkgMicrosoft_WinUI)/runtimes/win10-$(Platform)/native/**/*.mui">
|
||||
<DestinationSubDirectory>%(RecursiveDir)</DestinationSubDirectory>
|
||||
</ReferenceCopyLocalPaths>
|
||||
</ItemGroup>
|
||||
<Target Name="IncludeWinUIProjection" BeforeTargets="CoreCompile" AfterTargets="GenerateWinUIProjection">
|
||||
<Target Name="IncludeProjection" BeforeTargets="CoreCompile" AfterTargets="GenerateProjection">
|
||||
<ItemGroup>
|
||||
<Compile Include="$(ProjectDir)Generated Files/*.cs" Exclude="@(Compile)" />
|
||||
</ItemGroup>
|
||||
</Target>
|
||||
|
||||
</Project>
|
|
@ -0,0 +1,76 @@
|
|||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFrameworks>netstandard2.0;net5.0</TargetFrameworks>
|
||||
<Platforms>x64;x86</Platforms>
|
||||
<TargetPlatformVersion>10.0.18362.0</TargetPlatformVersion>
|
||||
<LangVersion>8</LangVersion>
|
||||
</PropertyGroup>
|
||||
|
||||
<PropertyGroup>
|
||||
<GenerateTestProjection Condition="'$(GenerateTestProjection)$(Configuration)' == 'Release'">true</GenerateTestProjection>
|
||||
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
|
||||
<NoWarn>8305;0618</NoWarn>
|
||||
</PropertyGroup>
|
||||
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<DebugType>full</DebugType>
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
</PropertyGroup>
|
||||
|
||||
<PropertyGroup Condition="'$(Configuration)|$(TargetFramework)|$(Platform)'=='Release|netstandard2.0|x64'">
|
||||
<DebugType>full</DebugType>
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="System.Numerics.Vectors" Version="4.5.0" />
|
||||
<!--<PackageReference Include="Microsoft.Windows.CsWinRT" Version="[$(NugetTestVersion)]" />-->
|
||||
<ProjectReference Include="..\..\WinRT.Runtime\WinRT.Runtime.csproj" />
|
||||
<ProjectReference Include="..\..\cswinrt\cswinrt.vcxproj" />
|
||||
</ItemGroup>
|
||||
|
||||
<Target Name="GenerateProjection" AfterTargets="ResolveAssemblyReferences" BeforeTargets="DispatchToInnerBuilds;Build" Condition="'$(GenerateTestProjection)' == 'true'">
|
||||
<PropertyGroup>
|
||||
<CsWinRTVerbosity>high</CsWinRTVerbosity>
|
||||
<CsWinRTResponseFile>$(IntermediateOutputPath)cswinrt_windows.rsp</CsWinRTResponseFile>
|
||||
<CsWinRTCommand>$(CsWinrtExe) %40"$(CsWinRTResponseFile)"</CsWinRTCommand>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<CsWinRTParams>
|
||||
-verbose
|
||||
-in 10.0.18362.0
|
||||
-out "$(ProjectDir)Generated Files"
|
||||
-include Windows
|
||||
# Exclude causality types colliding with those in System.Private.CoreLib.dll
|
||||
-exclude Windows.Foundation.Diagnostics
|
||||
# Exclude Windows.UI, Windows.UI.Text, Windows.UI.Xaml per Microsoft.Windows.SDK.WinUI.Contracts NuGet
|
||||
-include Windows.UI.Popups
|
||||
-exclude Windows.UI.Colors
|
||||
-exclude Windows.UI.IColors
|
||||
-exclude Windows.UI.ColorHelper
|
||||
-exclude Windows.UI.IColorHelper
|
||||
#-exclude Windows.UI.Text (must include Windows.UI.Text to work around WinUI nuget issues)
|
||||
-exclude Windows.UI.Xaml
|
||||
-exclude Windows.ApplicationModel.Store.Preview
|
||||
# Allow Windows.UI.Text, Windows.UI.Xaml types used in other namespaces
|
||||
-include Windows.UI.Text.FontStretch
|
||||
-include Windows.UI.Text.FontStyle
|
||||
-include Windows.UI.Text.FontWeight
|
||||
-include Windows.UI.Text.UnderlineType
|
||||
-include Windows.UI.Xaml.Media.Animation.ConditionallyIndependentlyAnimatableAttribute
|
||||
</CsWinRTParams>
|
||||
</PropertyGroup>
|
||||
<MakeDir Directories="$(ProjectDir)Generated Files" />
|
||||
<WriteLinesToFile File="$(CsWinRTResponseFile)" Lines="$(CsWinRTParams)" Overwrite="true" WriteOnlyWhenDifferent="true" />
|
||||
<Message Text="$(CsWinRTCommand)" Importance="$(CsWinRTVerbosity)" />
|
||||
<Exec Command="$(CsWinRTCommand)" />
|
||||
</Target>
|
||||
|
||||
<Target Name="IncludeProjection" BeforeTargets="CoreCompile" AfterTargets="GenerateProjection">
|
||||
<ItemGroup>
|
||||
<Compile Include="$(ProjectDir)Generated Files/*.cs" Exclude="@(Compile)" />
|
||||
</ItemGroup>
|
||||
</Target>
|
||||
|
||||
</Project>
|
|
@ -73,7 +73,7 @@
|
|||
<ClInclude Include="StaticClass.h" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="Generated Files\module.g.cpp" />
|
||||
<ClCompile Include="$(GeneratedFilesDir)module.g.cpp" />
|
||||
<ClCompile Include="pch.cpp">
|
||||
<PrecompiledHeader>Create</PrecompiledHeader>
|
||||
</ClCompile>
|
||||
|
|
|
@ -1,9 +0,0 @@
|
|||
<!--NOTE: Directory.Build.* files are temporary until C#/WinRT nuget contains msbuild support-->
|
||||
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
|
||||
<Import Project="$([MSBuild]::GetPathOfFileAbove('Directory.Build.props', '$(MSBuildThisFileDirectory)../'))" />
|
||||
|
||||
<PropertyGroup Condition="'$(TargetFramework)' != 'net5.0'">
|
||||
<DefineConstants>$(DefineConstants);MANUAL_IUNKNOWN</DefineConstants>
|
||||
</PropertyGroup>
|
||||
</Project>
|
|
@ -1,96 +0,0 @@
|
|||
<!--NOTE: Directory.Build.* files are temporary until C#/WinRT nuget contains msbuild support-->
|
||||
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
|
||||
<PropertyGroup>
|
||||
<GenerateTestProjection Condition="'$(GenerateTestProjection)$(Configuration)' == 'Release'">$(IsCrossTargetingBuild)</GenerateTestProjection>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<Content Include="xunit.runner.json" CopyToOutputDirectory="PreserveNewest" />
|
||||
</ItemGroup>
|
||||
|
||||
<Target Name="CopyTestComponent" BeforeTargets="CopyFilesToOutputDirectory">
|
||||
<ItemGroup>
|
||||
<Content Include="
|
||||
$(BuildOutDir)TestComponent\bin\TestComponent.dll;
|
||||
$(BuildOutDir)TestComponent\bin\TestComponent.pdb;
|
||||
$(BuildOutDir)TestComponentCSharp\bin\TestComponentCSharp\TestComponentCSharp.dll;
|
||||
$(BuildOutDir)TestComponentCSharp\bin\TestComponentCSharp\TestComponentCSharp.pdb"
|
||||
CopyToOutputDirectory="PreserveNewest" />
|
||||
</ItemGroup>
|
||||
</Target>
|
||||
|
||||
<Target Name="GenerateProjection" BeforeTargets="DispatchToInnerBuilds;Build" Condition="'$(GenerateTestProjection)' == 'true'">
|
||||
<PropertyGroup>
|
||||
<!--PkgMicrosoft_WinUI is set in in obj\*.csproj.nuget.g.props with TargetFramework condition, doesn't support multi-targeting-->
|
||||
<PkgMicrosoft_WinUI Condition="'$(PkgMicrosoft_WinUI)'==''">$([MSBuild]::NormalizeDirectory('$(NuGetPackageRoot)', 'microsoft.winui', '$(MicrosoftWinUIVersion)'))</PkgMicrosoft_WinUI>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<!--PkgMicrosoft_WinUI is defined by Nuget reference-->
|
||||
<WinUIWinMDs Include="$(PkgMicrosoft_WinUI)/**/*.winmd" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<UnitTestWinMDs Include="$(BuildOutDir)TestComponent\bin\TestComponent.winmd" />
|
||||
<UnitTestWinMDs Include="$(BuildOutDir)TestComponentCSharp\bin\TestComponentCSharp\TestComponentCSharp.winmd" />
|
||||
</ItemGroup>
|
||||
<PropertyGroup>
|
||||
<CsWinRTVerbosity>high</CsWinRTVerbosity>
|
||||
<CsWinRTResponseFile>$(IntermediateOutputPath)cswinrt_unittest.rsp</CsWinRTResponseFile>
|
||||
<CsWinRTCommand>$(CsWinrtExe) %40"$(CsWinRTResponseFile)"</CsWinRTCommand>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<CsWinRTParams>
|
||||
-verbose
|
||||
-in 10.0.18362.0
|
||||
-in @(WinUIWinMDs->'"%(FullPath)"', ' ')
|
||||
-in @(UnitTestWinMDs->'"%(FullPath)"', ' ')
|
||||
-out "$(ProjectDir)Generated Files"
|
||||
-include TestComponentCSharp
|
||||
-include TestComponent
|
||||
-include Windows.Foundation
|
||||
-include Windows.UI.Popups
|
||||
-include Windows.UI.Color
|
||||
-include Microsoft.UI.Xaml.CornerRadius
|
||||
-include Microsoft.UI.Xaml.Duration
|
||||
-include Microsoft.UI.Xaml.DurationType
|
||||
-include Microsoft.UI.Xaml.GridLength
|
||||
-include Microsoft.UI.Xaml.GridUnitType
|
||||
-include Microsoft.UI.Xaml.Thickness
|
||||
-include Microsoft.UI.Xaml.Controls.Primitives.GeneratorPosition
|
||||
-include Microsoft.UI.Xaml.Interop
|
||||
-include Microsoft.UI.Xaml.Media.Matrix
|
||||
-exclude Microsoft.UI.Xaml.Media.MatrixTransform
|
||||
-exclude Microsoft.UI.Xaml.Media.Matrix3DProjection
|
||||
-include Microsoft.UI.Xaml.Media.Animation.KeyTime
|
||||
-include Microsoft.UI.Xaml.Media.Animation.RepeatBehavior
|
||||
-include Microsoft.UI.Xaml.Media.Animation.RepeatBehaviorType
|
||||
-include Microsoft.UI.Xaml.Media.Media3D.Matrix3D
|
||||
-include Microsoft.UI.Xaml.WinUIContract
|
||||
# Exclude causality types colliding with those in System.Private.CoreLib.dll
|
||||
-exclude Windows.Foundation.Diagnostics
|
||||
# Exclude types per Microsoft.Windows.SDK.WinUI.Contracts NuGet
|
||||
-exclude Windows.UI.Colors
|
||||
-exclude Windows.UI.IColors
|
||||
-exclude Windows.UI.ColorHelper
|
||||
-exclude Windows.UI.IColorHelper
|
||||
# The current WinUI nuget incorrectly references several Windows.* types that should be
|
||||
# Microsoft.* types instead. Temporarily include these to enable the build
|
||||
-include Windows.UI.Xaml.Interop.NotifyCollectionChangedAction
|
||||
</CsWinRTParams>
|
||||
</PropertyGroup>
|
||||
<WriteLinesToFile
|
||||
File="$(CsWinRTResponseFile)" Lines="$(CsWinRTParams)"
|
||||
Overwrite="true" WriteOnlyWhenDifferent="true" />
|
||||
<Message Text="$(CsWinRTCommand)" Importance="$(CsWinRTVerbosity)" />
|
||||
<Exec Command="$(CsWinRTCommand)" />
|
||||
</Target>
|
||||
|
||||
<Target Name="IncludeProjection" BeforeTargets="CoreCompile" AfterTargets="GenerateProjection">
|
||||
<ItemGroup>
|
||||
<Compile Include="$(ProjectDir)Generated Files/*.cs" Exclude="@(Compile)" />
|
||||
</ItemGroup>
|
||||
</Target>
|
||||
|
||||
<Import Project="$([MSBuild]::GetPathOfFileAbove('Directory.Build.targets', '$(MSBuildThisFileDirectory)../'))" />
|
||||
|
||||
</Project>
|
|
@ -24,11 +24,11 @@ using WinRT.Interop;
|
|||
|
||||
namespace UnitTest
|
||||
{
|
||||
public class TestComp
|
||||
public class TestCSharp
|
||||
{
|
||||
public Class TestObject { get; private set; }
|
||||
|
||||
public TestComp()
|
||||
public TestCSharp()
|
||||
{
|
||||
TestObject = new Class();
|
||||
}
|
||||
|
|
|
@ -9,11 +9,11 @@ using Xunit;
|
|||
|
||||
namespace UnitTest
|
||||
{
|
||||
public class TestComponent
|
||||
public class TestWinRT
|
||||
{
|
||||
public ITests Tests { get; private set; }
|
||||
|
||||
public TestComponent()
|
||||
public TestWinRT()
|
||||
{
|
||||
Tests = TestRunner.MakeTests();
|
||||
}
|
||||
|
|
|
@ -15,12 +15,11 @@
|
|||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\Projections\Windows\Windows.csproj" />
|
||||
<ProjectReference Include="..\Projections\WinUI\WinUI.csproj" />
|
||||
<ProjectReference Include="..\Projections\Test\Test.csproj" />
|
||||
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.0.1" />
|
||||
<PackageReference Include="Microsoft.VCRTForwarders.140" Version="1.0.1-rc" />
|
||||
<!-- Exclude compile and build time assets so we don't think we're building a real WinUI App -->
|
||||
<PackageReference Include="Microsoft.WinUI" Version="$(MicrosoftWinUIVersion)" GeneratePathProperty="true">
|
||||
<ExcludeAssets>compile; build</ExcludeAssets>
|
||||
</PackageReference>
|
||||
<PackageReference Include="Microsoft.VCRTForwarders.140" Version="1.0.5" />
|
||||
<PackageReference Include="System.Collections" Version="4.3.0" />
|
||||
<PackageReference Include="System.Runtime.InteropServices" Version="4.3.0" />
|
||||
<PackageReference Include="System.Diagnostics.Debug" Version="4.3.0" />
|
||||
|
@ -44,15 +43,22 @@
|
|||
<PackageReference Include="XunitXml.TestLogger" Version="2.1.26" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\cswinrt\cswinrt.vcxproj" />
|
||||
<ProjectReference Include="..\TestComponentCSharp\TestComponentCSharp.vcxproj" />
|
||||
<ProjectReference Include="..\TestWinRT\TestComponent\TestComponent.vcxproj" />
|
||||
<ProjectReference Include="..\WinRT.Runtime\WinRT.Runtime.csproj" />
|
||||
<ItemGroup Condition="'$(TargetFramework)' == 'netcoreapp2.0'">
|
||||
<Compile Remove="**/*.net5.cs" />
|
||||
<None Include="**/*.net5.cs" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<Folder Include="Generated Files\" />
|
||||
<ItemGroup Condition="'$(TargetFramework)' == 'netcoreapp5.0'">
|
||||
<Compile Remove="**/*.netcoreapp2.0.cs" />
|
||||
<None Include="**/*.netcoreapp2.0.cs" />
|
||||
</ItemGroup>
|
||||
|
||||
<Target Name="FilterProjection" BeforeTargets="CoreCompile">
|
||||
<ItemGroup>
|
||||
<!--Remove references to projection source winmds to prevent compile conflict warnings-->
|
||||
<ReferencePathWithRefAssemblies Remove="@(ReferencePathWithRefAssemblies)" Condition="%(ReferencePathWithRefAssemblies.Filename) == 'TestComponent'" />
|
||||
<ReferencePathWithRefAssemblies Remove="@(ReferencePathWithRefAssemblies)" Condition="%(ReferencePathWithRefAssemblies.Filename) == 'TestComponentCSharp'" />
|
||||
</ItemGroup>
|
||||
</Target>
|
||||
|
||||
</Project>
|
||||
|
|
|
@ -1,4 +1,3 @@
|
|||
// WinUI projection smoke test (compile only)
|
||||
using System;
|
||||
using System.Diagnostics;
|
||||
using System.Linq;
|
||||
|
@ -10,25 +9,25 @@ using WinRT;
|
|||
using Windows.Foundation;
|
||||
using Windows.Foundation.Collections;
|
||||
|
||||
namespace WinUITest
|
||||
namespace UnitTest
|
||||
{
|
||||
public class TestProjection
|
||||
public class TestWinUI
|
||||
{
|
||||
public TestProjection()
|
||||
public TestWinUI()
|
||||
{
|
||||
}
|
||||
|
||||
public class TestApp : Microsoft.UI.Xaml.Application
|
||||
public class App : Microsoft.UI.Xaml.Application
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void TestSomeWinUI()
|
||||
public void TestApp()
|
||||
{
|
||||
WinrtModule module = new WinrtModule();
|
||||
|
||||
var app = new TestApp();
|
||||
var app = new App();
|
||||
// TODO: load up some MUX!
|
||||
//Assert.Equal(true, true);
|
||||
}
|
|
@ -71,9 +71,15 @@ namespace ABI.WinRT.Interop
|
|||
public ComCallData* userData;
|
||||
}
|
||||
|
||||
private const int RPC_E_DISCONNECTED = unchecked((int)0x80010108);
|
||||
|
||||
public unsafe void ContextCallback(global::WinRT.Interop.PFNCONTEXTCALL pfnCallback, ComCallData* pParam, Guid riid, int iMethod)
|
||||
{
|
||||
Marshal.ThrowExceptionForHR(_obj.Vftbl.ContextCallback_4(ThisPtr, pfnCallback, pParam, ref riid, iMethod, IntPtr.Zero));
|
||||
var result = _obj.Vftbl.ContextCallback_4(ThisPtr, pfnCallback, pParam, ref riid, iMethod, IntPtr.Zero);
|
||||
if (result != RPC_E_DISCONNECTED)
|
||||
{
|
||||
Marshal.ThrowExceptionForHR(result);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,9 +0,0 @@
|
|||
<!--NOTE: Directory.Build.* files are temporary until C#/WinRT nuget contains msbuild support-->
|
||||
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
|
||||
<Import Project="$([MSBuild]::GetPathOfFileAbove('Directory.Build.props', '$(MSBuildThisFileDirectory)../'))" />
|
||||
|
||||
<PropertyGroup Condition="'$(TargetFramework)' != 'net5.0'">
|
||||
<DefineConstants>$(DefineConstants);MANUAL_IUNKNOWN</DefineConstants>
|
||||
</PropertyGroup>
|
||||
</Project>
|
|
@ -1,14 +0,0 @@
|
|||
This project simply generates and compiles a complete projection of Windows SDK and WinUI metadata.
|
||||
|
||||
With a release cswinrt.exe, it takes < 1s to generate all of the projection sources.
|
||||
With debug, it takes a minute. So only release builds create the projection by default.
|
||||
This can be overridden by explicitly setting the BuildTestProjection property.
|
||||
|
||||
This project assumes a private nuget source has been created, pointing to:
|
||||
https://microsoft.pkgs.visualstudio.com/_packaging/WinUI-Xaml-CI@IXP/nuget/v3/index.json
|
||||
|
||||
For usability (until the cswinrt nuget has msbuild support), this and the UnitTest projects
|
||||
both make use of Directory.Build.* files to create the projection, stage binaries, etc.
|
||||
|
||||
WinUITest uses a response file to generate the projection, which can be supplied as a
|
||||
debugging parameter to the cswinrt project.
|
|
@ -1,10 +0,0 @@
|
|||
<!--NOTE: Directory.Build.* files are temporary until C#/WinRT nuget contains msbuild support-->
|
||||
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
|
||||
<ItemGroup>
|
||||
<Content Include="xunit.runner.json" CopyToOutputDirectory="PreserveNewest" />
|
||||
</ItemGroup>
|
||||
|
||||
<Import Condition="'$(CsWinRTPath)'==''" Project="$([MSBuild]::GetPathOfFileAbove('Directory.Build.targets', '$(MSBuildThisFileDirectory)../'))" />
|
||||
|
||||
</Project>
|
|
@ -1,8 +0,0 @@
|
|||
{
|
||||
"profiles": {
|
||||
"UnitTest": {
|
||||
"commandName": "Project",
|
||||
"nativeDebugging": false
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,39 +0,0 @@
|
|||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>net5.0</TargetFramework>
|
||||
<IsPackable>false</IsPackable>
|
||||
<Platforms>x64;x86</Platforms>
|
||||
<RunPostBuildEvent>Always</RunPostBuildEvent>
|
||||
<ProjectName>WinUITest</ProjectName>
|
||||
<LangVersion>8</LangVersion>
|
||||
</PropertyGroup>
|
||||
|
||||
<PropertyGroup>
|
||||
<NoWarn>1701;1702;0436;1658</NoWarn>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.0.1" />
|
||||
|
||||
<PackageReference Include="Microsoft.VCRTForwarders.140" Version="1.0.1-rc" />
|
||||
<PackageReference Include="System.Memory" Version="4.5.3" />
|
||||
<PackageReference Include="xunit" Version="2.4.1" />
|
||||
<PackageReference Include="xunit.runner.console" Version="2.4.1">
|
||||
<PrivateAssets>all</PrivateAssets>
|
||||
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
||||
</PackageReference>
|
||||
<PackageReference Include="xunit.runner.visualstudio" Version="2.4.1">
|
||||
<PrivateAssets>all</PrivateAssets>
|
||||
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
||||
</PackageReference>
|
||||
<PackageReference Include="XunitXml.TestLogger" Version="2.1.26" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\..\cswinrt\cswinrt.vcxproj" />
|
||||
<ProjectReference Include="..\..\WinRT.Runtime\WinRT.Runtime.csproj" />
|
||||
<ProjectReference Include="..\WinUIProjection\WinUIProjection.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
|
@ -1,4 +0,0 @@
|
|||
{
|
||||
"$schema": "https://xunit.net/schema/current/xunit.runner.schema.json",
|
||||
"shadowCopy": false
|
||||
}
|
|
@ -3,7 +3,7 @@
|
|||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
xmlns:local="NetCoreDesktopSample"
|
||||
xmlns:local="WinUIDesktopSample"
|
||||
mc:Ignorable="d"
|
||||
Height="450" Width="800">
|
||||
<Grid>
|
|
@ -22,12 +22,14 @@
|
|||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Microsoft.VCRTForwarders.140" Version="1.0.5" />
|
||||
<ProjectReference Include="..\Projections\Windows\Windows.csproj" />
|
||||
<ProjectReference Include="..\Projections\WinUI\WinUI.csproj" />
|
||||
<!--
|
||||
Exclude compile time assets so we don't pick up the interop assembly from the WinUI Nuget
|
||||
since we are building our own in the WinUIProjection project
|
||||
-->
|
||||
<PackageReference Include="Microsoft.WinUI" Version="$(MicrosoftWinUIVersion)" GeneratePathProperty="true">
|
||||
<ExcludeAssets>compile;</ExcludeAssets>
|
||||
<ExcludeAssets>compile; runtime</ExcludeAssets>
|
||||
</PackageReference>
|
||||
</ItemGroup>
|
||||
|
||||
|
@ -42,9 +44,4 @@
|
|||
</ItemGroup>
|
||||
</Target>
|
||||
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\..\WinRT.Runtime\WinRT.Runtime.csproj" />
|
||||
<ProjectReference Include="..\WinUIProjection\WinUIProjection.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
|
@ -104,6 +104,7 @@ if ErrorLevel 1 (
|
|||
exit /b !ErrorLevel!
|
||||
)
|
||||
|
||||
rem todo remove all this
|
||||
:package
|
||||
set cswinrt_bin_dir=%~dp0_build\%cswinrt_platform%\%cswinrt_configuration%\cswinrt\bin\
|
||||
set cswinrt_exe=%cswinrt_bin_dir%cswinrt.exe
|
||||
|
|
130
cswinrt.sln
130
cswinrt.sln
|
@ -11,8 +11,11 @@ EndProject
|
|||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "UnitTest", "UnitTest\UnitTest.csproj", "{9A9F52CA-F624-43A4-B5EF-C50861F584C2}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "cswinrt", "cswinrt\cswinrt.vcxproj", "{6ACFD2B2-E8AA-4CD4-AAD8-213CE8BB2637}"
|
||||
ProjectSection(ProjectDependencies) = postProject
|
||||
{25244CED-966E-45F2-9711-1F51E951FF89} = {25244CED-966E-45F2-9711-1F51E951FF89}
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Files", "Solution Files", "{96495AB4-2D86-47D1-A174-27D0B436DC98}"
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Files", "Files", "{96495AB4-2D86-47D1-A174-27D0B436DC98}"
|
||||
ProjectSection(SolutionItems) = preProject
|
||||
.gitignore = .gitignore
|
||||
build.cmd = build.cmd
|
||||
|
@ -30,13 +33,26 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "TestComponent", "TestWinRT\
|
|||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WinRT.Runtime", "WinRT.Runtime\WinRT.Runtime.csproj", "{25244CED-966E-45F2-9711-1F51E951FF89}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "WinUI", "WinUI", "{325B6B80-4029-45FA-9429-004C1214B3EB}"
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WinUIDesktopSample", "WinUIDesktopSample\WinUIDesktopSample.csproj", "{8E6FBCB2-B0C1-4E92-8AEB-2A11564E6E0D}"
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WinUIDesktopSample", "WinUI\WinUIDesktopSample\WinUIDesktopSample.csproj", "{B04E3F7C-BE25-4384-8D6F-7E450DBDBC70}"
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Test", "Projections\Test\Test.csproj", "{C6D580C5-7037-4733-B933-916FF400AFE2}"
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WinUIProjection", "WinUI\WinUIProjection\WinUIProjection.csproj", "{DAFC85B3-27AF-43EA-8F83-207E303BE7EF}"
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Projections", "Projections", "{6D41796B-9904-40B8-BBCB-40B2D1BAE44B}"
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WinUITest", "WinUI\WinUITest\WinUITest.csproj", "{B2CCF56D-27A9-427A-BA82-6CA11774DA90}"
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Windows", "Projections\Windows\Windows.csproj", "{FFA9A78B-F53F-43EE-AF87-24A80F4C330A}"
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WinUI", "Projections\WinUI\WinUI.csproj", "{0A991D5F-BFEE-4D2F-9AAD-6AD06470A5DF}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Nuget", "Nuget", "{5A94EFDF-A6AC-494D-A731-A0A8A37F1F6C}"
|
||||
ProjectSection(SolutionItems) = preProject
|
||||
nuget\LICENSE = nuget\LICENSE
|
||||
nuget\Microsoft.Windows.CsWinRT.nuspec = nuget\Microsoft.Windows.CsWinRT.nuspec
|
||||
nuget\Microsoft.Windows.CsWinRT.props = nuget\Microsoft.Windows.CsWinRT.props
|
||||
nuget\Microsoft.Windows.CsWinRT.targets = nuget\Microsoft.Windows.CsWinRT.targets
|
||||
nuget\readme.md = nuget\readme.md
|
||||
nuget\readme.txt = nuget\readme.txt
|
||||
nuget\SignConfig.xml = nuget\SignConfig.xml
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
|
@ -136,56 +152,70 @@ Global
|
|||
{25244CED-966E-45F2-9711-1F51E951FF89}.Release|x64.Build.0 = Release|Any CPU
|
||||
{25244CED-966E-45F2-9711-1F51E951FF89}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{25244CED-966E-45F2-9711-1F51E951FF89}.Release|x86.Build.0 = Release|Any CPU
|
||||
{B04E3F7C-BE25-4384-8D6F-7E450DBDBC70}.Debug|Any CPU.ActiveCfg = Debug|x86
|
||||
{B04E3F7C-BE25-4384-8D6F-7E450DBDBC70}.Debug|ARM.ActiveCfg = Debug|x86
|
||||
{B04E3F7C-BE25-4384-8D6F-7E450DBDBC70}.Debug|ARM64.ActiveCfg = Debug|x86
|
||||
{B04E3F7C-BE25-4384-8D6F-7E450DBDBC70}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{B04E3F7C-BE25-4384-8D6F-7E450DBDBC70}.Debug|x64.Build.0 = Debug|x64
|
||||
{B04E3F7C-BE25-4384-8D6F-7E450DBDBC70}.Debug|x86.ActiveCfg = Debug|x86
|
||||
{B04E3F7C-BE25-4384-8D6F-7E450DBDBC70}.Debug|x86.Build.0 = Debug|x86
|
||||
{B04E3F7C-BE25-4384-8D6F-7E450DBDBC70}.Release|Any CPU.ActiveCfg = Release|x86
|
||||
{B04E3F7C-BE25-4384-8D6F-7E450DBDBC70}.Release|ARM.ActiveCfg = Release|x86
|
||||
{B04E3F7C-BE25-4384-8D6F-7E450DBDBC70}.Release|ARM64.ActiveCfg = Release|x86
|
||||
{B04E3F7C-BE25-4384-8D6F-7E450DBDBC70}.Release|x64.ActiveCfg = Release|x64
|
||||
{B04E3F7C-BE25-4384-8D6F-7E450DBDBC70}.Release|x64.Build.0 = Release|x64
|
||||
{B04E3F7C-BE25-4384-8D6F-7E450DBDBC70}.Release|x86.ActiveCfg = Release|x86
|
||||
{B04E3F7C-BE25-4384-8D6F-7E450DBDBC70}.Release|x86.Build.0 = Release|x86
|
||||
{DAFC85B3-27AF-43EA-8F83-207E303BE7EF}.Debug|Any CPU.ActiveCfg = Debug|x86
|
||||
{DAFC85B3-27AF-43EA-8F83-207E303BE7EF}.Debug|ARM.ActiveCfg = Debug|x86
|
||||
{DAFC85B3-27AF-43EA-8F83-207E303BE7EF}.Debug|ARM64.ActiveCfg = Debug|x86
|
||||
{DAFC85B3-27AF-43EA-8F83-207E303BE7EF}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{DAFC85B3-27AF-43EA-8F83-207E303BE7EF}.Debug|x64.Build.0 = Debug|x64
|
||||
{DAFC85B3-27AF-43EA-8F83-207E303BE7EF}.Debug|x86.ActiveCfg = Debug|x86
|
||||
{DAFC85B3-27AF-43EA-8F83-207E303BE7EF}.Debug|x86.Build.0 = Debug|x86
|
||||
{DAFC85B3-27AF-43EA-8F83-207E303BE7EF}.Release|Any CPU.ActiveCfg = Release|x86
|
||||
{DAFC85B3-27AF-43EA-8F83-207E303BE7EF}.Release|ARM.ActiveCfg = Release|x86
|
||||
{DAFC85B3-27AF-43EA-8F83-207E303BE7EF}.Release|ARM64.ActiveCfg = Release|x86
|
||||
{DAFC85B3-27AF-43EA-8F83-207E303BE7EF}.Release|x64.ActiveCfg = Release|x64
|
||||
{DAFC85B3-27AF-43EA-8F83-207E303BE7EF}.Release|x64.Build.0 = Release|x64
|
||||
{DAFC85B3-27AF-43EA-8F83-207E303BE7EF}.Release|x86.ActiveCfg = Release|x86
|
||||
{DAFC85B3-27AF-43EA-8F83-207E303BE7EF}.Release|x86.Build.0 = Release|x86
|
||||
{B2CCF56D-27A9-427A-BA82-6CA11774DA90}.Debug|Any CPU.ActiveCfg = Debug|x86
|
||||
{B2CCF56D-27A9-427A-BA82-6CA11774DA90}.Debug|ARM.ActiveCfg = Debug|x86
|
||||
{B2CCF56D-27A9-427A-BA82-6CA11774DA90}.Debug|ARM64.ActiveCfg = Debug|x86
|
||||
{B2CCF56D-27A9-427A-BA82-6CA11774DA90}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{B2CCF56D-27A9-427A-BA82-6CA11774DA90}.Debug|x64.Build.0 = Debug|x64
|
||||
{B2CCF56D-27A9-427A-BA82-6CA11774DA90}.Debug|x86.ActiveCfg = Debug|x86
|
||||
{B2CCF56D-27A9-427A-BA82-6CA11774DA90}.Debug|x86.Build.0 = Debug|x86
|
||||
{B2CCF56D-27A9-427A-BA82-6CA11774DA90}.Release|Any CPU.ActiveCfg = Release|x86
|
||||
{B2CCF56D-27A9-427A-BA82-6CA11774DA90}.Release|ARM.ActiveCfg = Release|x86
|
||||
{B2CCF56D-27A9-427A-BA82-6CA11774DA90}.Release|ARM64.ActiveCfg = Release|x86
|
||||
{B2CCF56D-27A9-427A-BA82-6CA11774DA90}.Release|x64.ActiveCfg = Release|x64
|
||||
{B2CCF56D-27A9-427A-BA82-6CA11774DA90}.Release|x64.Build.0 = Release|x64
|
||||
{B2CCF56D-27A9-427A-BA82-6CA11774DA90}.Release|x86.ActiveCfg = Release|x86
|
||||
{B2CCF56D-27A9-427A-BA82-6CA11774DA90}.Release|x86.Build.0 = Release|x86
|
||||
{8E6FBCB2-B0C1-4E92-8AEB-2A11564E6E0D}.Debug|Any CPU.ActiveCfg = Debug|x86
|
||||
{8E6FBCB2-B0C1-4E92-8AEB-2A11564E6E0D}.Debug|ARM.ActiveCfg = Debug|x86
|
||||
{8E6FBCB2-B0C1-4E92-8AEB-2A11564E6E0D}.Debug|ARM64.ActiveCfg = Debug|x86
|
||||
{8E6FBCB2-B0C1-4E92-8AEB-2A11564E6E0D}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{8E6FBCB2-B0C1-4E92-8AEB-2A11564E6E0D}.Debug|x64.Build.0 = Debug|x64
|
||||
{8E6FBCB2-B0C1-4E92-8AEB-2A11564E6E0D}.Debug|x86.ActiveCfg = Debug|x86
|
||||
{8E6FBCB2-B0C1-4E92-8AEB-2A11564E6E0D}.Debug|x86.Build.0 = Debug|x86
|
||||
{8E6FBCB2-B0C1-4E92-8AEB-2A11564E6E0D}.Release|Any CPU.ActiveCfg = Release|x86
|
||||
{8E6FBCB2-B0C1-4E92-8AEB-2A11564E6E0D}.Release|ARM.ActiveCfg = Release|x86
|
||||
{8E6FBCB2-B0C1-4E92-8AEB-2A11564E6E0D}.Release|ARM64.ActiveCfg = Release|x86
|
||||
{8E6FBCB2-B0C1-4E92-8AEB-2A11564E6E0D}.Release|x64.ActiveCfg = Release|x64
|
||||
{8E6FBCB2-B0C1-4E92-8AEB-2A11564E6E0D}.Release|x64.Build.0 = Release|x64
|
||||
{8E6FBCB2-B0C1-4E92-8AEB-2A11564E6E0D}.Release|x86.ActiveCfg = Release|x86
|
||||
{8E6FBCB2-B0C1-4E92-8AEB-2A11564E6E0D}.Release|x86.Build.0 = Release|x86
|
||||
{C6D580C5-7037-4733-B933-916FF400AFE2}.Debug|Any CPU.ActiveCfg = Debug|x86
|
||||
{C6D580C5-7037-4733-B933-916FF400AFE2}.Debug|ARM.ActiveCfg = Debug|x86
|
||||
{C6D580C5-7037-4733-B933-916FF400AFE2}.Debug|ARM64.ActiveCfg = Debug|x86
|
||||
{C6D580C5-7037-4733-B933-916FF400AFE2}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{C6D580C5-7037-4733-B933-916FF400AFE2}.Debug|x64.Build.0 = Debug|x64
|
||||
{C6D580C5-7037-4733-B933-916FF400AFE2}.Debug|x86.ActiveCfg = Debug|x86
|
||||
{C6D580C5-7037-4733-B933-916FF400AFE2}.Debug|x86.Build.0 = Debug|x86
|
||||
{C6D580C5-7037-4733-B933-916FF400AFE2}.Release|Any CPU.ActiveCfg = Release|x86
|
||||
{C6D580C5-7037-4733-B933-916FF400AFE2}.Release|ARM.ActiveCfg = Release|x86
|
||||
{C6D580C5-7037-4733-B933-916FF400AFE2}.Release|ARM64.ActiveCfg = Release|x86
|
||||
{C6D580C5-7037-4733-B933-916FF400AFE2}.Release|x64.ActiveCfg = Release|x64
|
||||
{C6D580C5-7037-4733-B933-916FF400AFE2}.Release|x64.Build.0 = Release|x64
|
||||
{C6D580C5-7037-4733-B933-916FF400AFE2}.Release|x86.ActiveCfg = Release|x86
|
||||
{C6D580C5-7037-4733-B933-916FF400AFE2}.Release|x86.Build.0 = Release|x86
|
||||
{FFA9A78B-F53F-43EE-AF87-24A80F4C330A}.Debug|Any CPU.ActiveCfg = Debug|x86
|
||||
{FFA9A78B-F53F-43EE-AF87-24A80F4C330A}.Debug|ARM.ActiveCfg = Debug|x86
|
||||
{FFA9A78B-F53F-43EE-AF87-24A80F4C330A}.Debug|ARM64.ActiveCfg = Debug|x86
|
||||
{FFA9A78B-F53F-43EE-AF87-24A80F4C330A}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{FFA9A78B-F53F-43EE-AF87-24A80F4C330A}.Debug|x64.Build.0 = Debug|x64
|
||||
{FFA9A78B-F53F-43EE-AF87-24A80F4C330A}.Debug|x86.ActiveCfg = Debug|x86
|
||||
{FFA9A78B-F53F-43EE-AF87-24A80F4C330A}.Debug|x86.Build.0 = Debug|x86
|
||||
{FFA9A78B-F53F-43EE-AF87-24A80F4C330A}.Release|Any CPU.ActiveCfg = Release|x86
|
||||
{FFA9A78B-F53F-43EE-AF87-24A80F4C330A}.Release|ARM.ActiveCfg = Release|x86
|
||||
{FFA9A78B-F53F-43EE-AF87-24A80F4C330A}.Release|ARM64.ActiveCfg = Release|x86
|
||||
{FFA9A78B-F53F-43EE-AF87-24A80F4C330A}.Release|x64.ActiveCfg = Release|x64
|
||||
{FFA9A78B-F53F-43EE-AF87-24A80F4C330A}.Release|x64.Build.0 = Release|x64
|
||||
{FFA9A78B-F53F-43EE-AF87-24A80F4C330A}.Release|x86.ActiveCfg = Release|x86
|
||||
{FFA9A78B-F53F-43EE-AF87-24A80F4C330A}.Release|x86.Build.0 = Release|x86
|
||||
{0A991D5F-BFEE-4D2F-9AAD-6AD06470A5DF}.Debug|Any CPU.ActiveCfg = Debug|x86
|
||||
{0A991D5F-BFEE-4D2F-9AAD-6AD06470A5DF}.Debug|ARM.ActiveCfg = Debug|x86
|
||||
{0A991D5F-BFEE-4D2F-9AAD-6AD06470A5DF}.Debug|ARM64.ActiveCfg = Debug|x86
|
||||
{0A991D5F-BFEE-4D2F-9AAD-6AD06470A5DF}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{0A991D5F-BFEE-4D2F-9AAD-6AD06470A5DF}.Debug|x64.Build.0 = Debug|x64
|
||||
{0A991D5F-BFEE-4D2F-9AAD-6AD06470A5DF}.Debug|x86.ActiveCfg = Debug|x86
|
||||
{0A991D5F-BFEE-4D2F-9AAD-6AD06470A5DF}.Debug|x86.Build.0 = Debug|x86
|
||||
{0A991D5F-BFEE-4D2F-9AAD-6AD06470A5DF}.Release|Any CPU.ActiveCfg = Release|x86
|
||||
{0A991D5F-BFEE-4D2F-9AAD-6AD06470A5DF}.Release|ARM.ActiveCfg = Release|x86
|
||||
{0A991D5F-BFEE-4D2F-9AAD-6AD06470A5DF}.Release|ARM64.ActiveCfg = Release|x86
|
||||
{0A991D5F-BFEE-4D2F-9AAD-6AD06470A5DF}.Release|x64.ActiveCfg = Release|x64
|
||||
{0A991D5F-BFEE-4D2F-9AAD-6AD06470A5DF}.Release|x64.Build.0 = Release|x64
|
||||
{0A991D5F-BFEE-4D2F-9AAD-6AD06470A5DF}.Release|x86.ActiveCfg = Release|x86
|
||||
{0A991D5F-BFEE-4D2F-9AAD-6AD06470A5DF}.Release|x86.Build.0 = Release|x86
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
GlobalSection(NestedProjects) = preSolution
|
||||
{B04E3F7C-BE25-4384-8D6F-7E450DBDBC70} = {325B6B80-4029-45FA-9429-004C1214B3EB}
|
||||
{DAFC85B3-27AF-43EA-8F83-207E303BE7EF} = {325B6B80-4029-45FA-9429-004C1214B3EB}
|
||||
{B2CCF56D-27A9-427A-BA82-6CA11774DA90} = {325B6B80-4029-45FA-9429-004C1214B3EB}
|
||||
{C6D580C5-7037-4733-B933-916FF400AFE2} = {6D41796B-9904-40B8-BBCB-40B2D1BAE44B}
|
||||
{FFA9A78B-F53F-43EE-AF87-24A80F4C330A} = {6D41796B-9904-40B8-BBCB-40B2D1BAE44B}
|
||||
{0A991D5F-BFEE-4D2F-9AAD-6AD06470A5DF} = {6D41796B-9904-40B8-BBCB-40B2D1BAE44B}
|
||||
EndGlobalSection
|
||||
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||
SolutionGuid = {5AE8C9D7-2613-4E1A-A4F2-579BAC28D0A2}
|
||||
|
|
|
@ -0,0 +1,5 @@
|
|||
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
|
||||
<Import Project="$([MSBuild]::GetPathOfFileAbove('Directory.Build.targets', '$(MSBuildThisFileDirectory)../'))" />
|
||||
|
||||
</Project>
|
|
@ -1,6 +1,6 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<Import Project="..\packages\Microsoft.Windows.WinMD.1.0.191017.1\build\native\Microsoft.Windows.WinMD.props" Condition="Exists('..\packages\Microsoft.Windows.WinMD.1.0.191017.1\build\native\Microsoft.Windows.WinMD.props')" />
|
||||
<Import Project="..\packages\Microsoft.Windows.WinMD.1.0.191022.1\build\native\Microsoft.Windows.WinMD.props" Condition="Exists('..\packages\Microsoft.Windows.WinMD.1.0.191022.1\build\native\Microsoft.Windows.WinMD.props')" />
|
||||
<PropertyGroup Label="Globals">
|
||||
<VCProjectVersion>15.0</VCProjectVersion>
|
||||
<ProjectGuid>{6acfd2b2-e8aa-4cd4-aad8-213ce8bb2637}</ProjectGuid>
|
||||
|
@ -66,6 +66,7 @@
|
|||
<ResourceCompile Include="version.rc" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Directory.Build.targets" />
|
||||
<None Include="packages.config" />
|
||||
<None Include="strings\additions\Windows.Foundation\AsyncInfo.cs" />
|
||||
<None Include="strings\additions\Windows.Foundation\AsyncInfoIdGenerator.cs" />
|
||||
|
@ -110,8 +111,8 @@
|
|||
<ImportGroup Label="ExtensionTargets" />
|
||||
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
|
||||
<PropertyGroup>
|
||||
<ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
|
||||
<ErrorText>This project references NuGet package(s) that are missing on this computer. Enable NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105.The missing file is {0}.</ErrorText>
|
||||
</PropertyGroup>
|
||||
<Error Condition="!Exists('..\packages\Microsoft.Windows.WinMD.1.0.191017.1\build\native\Microsoft.Windows.WinMD.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Microsoft.Windows.WinMD.1.0.191017.1\build\native\Microsoft.Windows.WinMD.props'))" />
|
||||
<Error Condition="!Exists('..\packages\Microsoft.Windows.WinMD.1.0.191022.1\build\native\Microsoft.Windows.WinMD.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Microsoft.Windows.WinMD.1.0.191022.1\build\native\Microsoft.Windows.WinMD.props'))" />
|
||||
</Target>
|
||||
</Project>
|
|
@ -169,5 +169,6 @@
|
|||
<None Include="strings\additions\Microsoft.UI.Xaml\Microsoft.UI.Xaml.SR.cs">
|
||||
<Filter>strings\additions\Microsoft.UI.Xaml</Filter>
|
||||
</None>
|
||||
<None Include="Directory.Build.targets" />
|
||||
</ItemGroup>
|
||||
</Project>
|
|
@ -1,5 +1,8 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<configuration>
|
||||
<config>
|
||||
<add key="globalPackagesFolder" value=".nuget/packages" />
|
||||
</config>
|
||||
<packageSources>
|
||||
<!--To inherit the global NuGet package sources remove the <clear/> line below -->
|
||||
<clear />
|
||||
|
|
|
@ -5,8 +5,9 @@ Copyright (C) Microsoft Corporation. All rights reserved.
|
|||
-->
|
||||
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
|
||||
<PropertyGroup>
|
||||
<CsWinRTPath Condition="'$(CsWinRTPath)'==''">$([MSBuild]::NormalizeDirectory('$(MSBuildThisFileDirectory)', '..'))</CsWinRTPath>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<CsWinRTPath Condition="'$(CsWinRTPath)'==''">$([MSBuild]::NormalizeDirectory('$(MSBuildThisFileDirectory)', '..'))</CsWinRTPath>
|
||||
<CsWinRTExe>$(CsWinRTPath)cswinrt.exe</CsWinRTExe>
|
||||
</PropertyGroup>
|
||||
|
||||
</Project>
|
||||
|
|
|
@ -1,10 +1,14 @@
|
|||
<!--NOTE: Directory.Build.* files are temporary until C#/WinRT nuget contains msbuild support-->
|
||||
<!--
|
||||
***********************************************************************************************
|
||||
Copyright (C) Microsoft Corporation. All rights reserved.
|
||||
***********************************************************************************************
|
||||
-->
|
||||
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
|
||||
<!--Remove Windows.Winmd reference to prevent compile collisions-->
|
||||
<PropertyGroup>
|
||||
<ResolveAssemblyReferencesDependsOn Condition="'$(RemoveWindowsReference)'=='true'">$(ResolveAssemblyReferencesDependsOn);RemoveWindowsReference</ResolveAssemblyReferencesDependsOn>
|
||||
</PropertyGroup>
|
||||
|
||||
<!--Remove Windows.Winmd reference to prevent compile collisions-->
|
||||
<Target Name="RemoveWindowsReference" Outputs="@(Reference)">
|
||||
<ItemGroup>
|
||||
<Reference Remove="Windows"/>
|
||||
|
|
Загрузка…
Ссылка в новой задаче