Skip to content

Commit b84f667

Browse files
mattleibowjeromelabanghuntleyMartinZikmund
authored
Add WASM Support for Uno Platform (mono#1333)
Co-authored-by: Jérôme Laban <[email protected]> Co-authored-by: Geoffrey Huntley <[email protected]> Co-authored-by: Martin Zikmund <[email protected]>
1 parent 99356f9 commit b84f667

39 files changed

+1001
-14
lines changed

.editorconfig

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ indent_style = space
99
# (Please don't specify an indent_size here; that has too many unintended consequences.)
1010

1111
# Code files
12-
[*.{cs,csx,vb,vbx}]
12+
[*.{cs,csx,vb,vbx,ts}]
1313
indent_style = tab
1414
indent_size = 4
1515
insert_final_newline = true

nuget/SkiaSharp.Views.Uno.nuspec

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,11 @@ Please visit https://go.microsoft.com/fwlink/?linkid=868517 to view the release
2727
<copyright>© Microsoft Corporation. All rights reserved.</copyright>
2828

2929
<dependencies>
30+
<group targetFramework="netstandard2.0">
31+
<dependency id="Uno.UI" version="2.0.532" />
32+
<dependency id="SkiaSharp" version="1.0.0" />
33+
<dependency id="SkiaSharp.NativeAssets.WebAssembly" version="1.0.0" />
34+
</group>
3035
<group targetFramework="monoandroid1.0">
3136
<dependency id="Uno.UI" version="2.0.532" />
3237
<dependency id="SkiaSharp" version="1.0.0" />
@@ -50,15 +55,18 @@ Please visit https://go.microsoft.com/fwlink/?linkid=868517 to view the release
5055
<files>
5156

5257
<!-- SkiaSharp.Views.UWP.dll -->
58+
<file src="lib/netstandard2.0/SkiaSharp.Views.UWP.dll" />
59+
<file src="lib/netstandard2.0/SkiaSharp.Views.UWP.xml" />
5360
<file platform="macos,windows" src="lib/monoandroid1.0/SkiaSharp.Views.UWP.dll" />
5461
<file platform="macos,windows" src="lib/monoandroid1.0/SkiaSharp.Views.UWP.xml" />
5562
<file platform="macos" src="lib/xamarinios1.0/SkiaSharp.Views.UWP.dll" />
5663
<file platform="macos" src="lib/xamarinios1.0/SkiaSharp.Views.UWP.xml" />
5764
<file platform="macos" src="lib/xamarinmac2.0/SkiaSharp.Views.UWP.dll" />
5865
<file platform="macos" src="lib/xamarinmac2.0/SkiaSharp.Views.UWP.xml" />
66+
<file src="_._" target="lib/uap10.0/_._" />
5967

6068
<!-- the build bits -->
61-
<file src="_._" target="lib/uap10.0/_._" />
69+
<file src="build/netstandard2.0/SkiaSharp.Views.Uno.targets" />
6270

6371
<!-- legal -->
6472
<file src="LICENSE.txt" />

samples/Basic/Uno/SkiaSharpSample.Linux.sln

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,17 +5,30 @@ VisualStudioVersion = 16.0.30229.9
55
MinimumVisualStudioVersion = 10.0.40219.1
66
Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "SkiaSharpSample.Shared", "SkiaSharpSample.Shared\SkiaSharpSample.Shared.shproj", "{6279C845-92F8-4333-AB99-3D213163593C}"
77
EndProject
8+
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SkiaSharpSample.Wasm", "SkiaSharpSample.Wasm\SkiaSharpSample.Wasm.csproj", "{9726301D-8A93-4A06-88DF-92BA01CF80AD}"
9+
EndProject
10+
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SkiaSharp.Views.Uno.Wasm", "..\..\..\source\SkiaSharp.Views.Uno\SkiaSharp.Views.Uno.Wasm\SkiaSharp.Views.Uno.Wasm.csproj", "{1787D9BF-9815-4E1D-BDEB-9994859FE91E}"
11+
EndProject
812
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SkiaSharp", "..\..\..\binding\SkiaSharp\SkiaSharp.csproj", "{409AF271-D8B7-4F79-B293-02F562A51955}"
913
EndProject
1014
Global
1115
GlobalSection(SharedMSBuildProjectFiles) = preSolution
1216
SkiaSharpSample.Shared\SkiaSharpSample.Shared.projitems*{6279c845-92f8-4333-ab99-3d213163593c}*SharedItemsImports = 13
17+
SkiaSharpSample.Shared\SkiaSharpSample.Shared.projitems*{9726301d-8a93-4a06-88df-92ba01cf80ad}*SharedItemsImports = 5
1318
EndGlobalSection
1419
GlobalSection(SolutionConfigurationPlatforms) = preSolution
1520
Debug|Any CPU = Debug|Any CPU
1621
Release|Any CPU = Release|Any CPU
1722
EndGlobalSection
1823
GlobalSection(ProjectConfigurationPlatforms) = postSolution
24+
{9726301D-8A93-4A06-88DF-92BA01CF80AD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
25+
{9726301D-8A93-4A06-88DF-92BA01CF80AD}.Debug|Any CPU.Build.0 = Debug|Any CPU
26+
{9726301D-8A93-4A06-88DF-92BA01CF80AD}.Release|Any CPU.ActiveCfg = Release|Any CPU
27+
{9726301D-8A93-4A06-88DF-92BA01CF80AD}.Release|Any CPU.Build.0 = Release|Any CPU
28+
{1787D9BF-9815-4E1D-BDEB-9994859FE91E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
29+
{1787D9BF-9815-4E1D-BDEB-9994859FE91E}.Debug|Any CPU.Build.0 = Debug|Any CPU
30+
{1787D9BF-9815-4E1D-BDEB-9994859FE91E}.Release|Any CPU.ActiveCfg = Release|Any CPU
31+
{1787D9BF-9815-4E1D-BDEB-9994859FE91E}.Release|Any CPU.Build.0 = Release|Any CPU
1932
{409AF271-D8B7-4F79-B293-02F562A51955}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
2033
{409AF271-D8B7-4F79-B293-02F562A51955}.Debug|Any CPU.Build.0 = Debug|Any CPU
2134
{409AF271-D8B7-4F79-B293-02F562A51955}.Release|Any CPU.ActiveCfg = Release|Any CPU
Loading
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
<linker>
2+
<assembly fullname="SkiaSharp" />
3+
<assembly fullname="SkiaSharp.Views.UWP" />
4+
<assembly fullname="SkiaSharpSample.Wasm" />
5+
<assembly fullname="Uno.Foundation" />
6+
<assembly fullname="System.Core">
7+
<!-- This is required by Json.NET and any expression.Compile caller -->
8+
<type fullname="System.Linq.Expressions*" />
9+
</assembly>
10+
</linker>
Lines changed: 78 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,78 @@
1+
using Microsoft.Extensions.Logging;
2+
using Uno.Extensions;
3+
using Uno.UI;
4+
using Windows.UI.Xaml;
5+
6+
namespace SkiaSharpSample
7+
{
8+
public class Program
9+
{
10+
private static App _app;
11+
12+
static int Main(string[] args)
13+
{
14+
FeatureConfiguration.UIElement.AssignDOMXamlName = true;
15+
16+
ConfigureFilters(LogExtensionPoint.AmbientLoggerFactory);
17+
18+
Application.Start(_ => _app = new App());
19+
20+
return 0;
21+
}
22+
23+
static void ConfigureFilters(ILoggerFactory factory)
24+
{
25+
factory
26+
.WithFilter(new FilterLoggerSettings
27+
{
28+
{ "Uno", LogLevel.Warning },
29+
{ "Windows", LogLevel.Warning },
30+
{ "nVentive.Umbrella", LogLevel.Warning },
31+
{ "SkiaSharp", LogLevel.Warning },
32+
33+
// View Navigation related messages
34+
// { "nVentive.Umbrella.Views.Navigation", LogLevel.Debug },
35+
// { "nVentive.Umbrella.Presentation.Light.ViewModelRegistry", LogLevel.Debug },
36+
37+
// All presentation related messages
38+
// { "nVentive.Umbrella.Presentation.Light", LogLevel.Debug },
39+
40+
// ViewModel related messages
41+
// { "nVentive.Umbrella.Presentation.Light.ViewModelBase", LogLevel.Debug },
42+
43+
// Dynamic properties related messages
44+
// { "nVentive.Umbrella.Presentation.Light.DynamicProperties", LogLevel.Debug },
45+
46+
// AVVM/AVP Related messages
47+
// { "nVentive.Umbrella.Presentation.Light.Extensions.AsyncValueViewModel", LogLevel.Debug },
48+
// { "nVentive.Umbrella.Views.Controls.AsyncValuePresenter", LogLevel.Debug },
49+
// { "nVentive.Umbrella.Views.Controls.IfDataContext", LogLevel.Debug },
50+
51+
// Layouter specific messages
52+
// { "Windows.UI.Xaml.Controls", LogLevel.Debug },
53+
// { "Windows.UI.Xaml.Controls.Layouter", LogLevel.Debug },
54+
// { "Windows.UI.Xaml.Controls.Panel", LogLevel.Debug },
55+
56+
// Binding related messages
57+
// { "Windows.UI.Xaml.Data", LogLevel.Debug },
58+
// { "Windows.UI.Xaml.Data", LogLevel.Debug },
59+
60+
// Binder memory references tracking
61+
// { "ReferenceHolder", LogLevel.Debug },
62+
63+
// Web Queries related messages
64+
// gManager.SetLoggerLevel("nVentive.Umbrella.Web", LogLevel.Debug },
65+
66+
// Location service messages
67+
// { "nVentive.Umbrella.Services.Location", LogLevel.Debug },
68+
69+
// Map Component messages
70+
// { "nVentive.Umbrella.Components.Maps", LogLevel.Debug },
71+
72+
// ApplicationViewState
73+
// { "nVentive.Umbrella.Views.Services.ApplicationViewState.ApplicationViewStateService", LogLevel.Debug },
74+
})
75+
.AddConsole(LogLevel.Debug);
76+
}
77+
}
78+
}
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
{
2+
"iisSettings": {
3+
"windowsAuthentication": false,
4+
"anonymousAuthentication": true,
5+
"iisExpress": {
6+
"applicationUrl": "http://localhost:63559/",
7+
"sslPort": 0
8+
}
9+
},
10+
"profiles": {
11+
"IIS Express": {
12+
"commandName": "IISExpress",
13+
"launchBrowser": true,
14+
"environmentVariables": {
15+
"ASPNETCORE_ENVIRONMENT": "Development"
16+
}
17+
},
18+
"SkiaSharpSample.Wasm": {
19+
"commandName": "Project",
20+
"launchBrowser": true,
21+
"environmentVariables": {
22+
"ASPNETCORE_ENVIRONMENT": "Development"
23+
},
24+
"applicationUrl": "http://localhost:5000"
25+
}
26+
}
27+
}
Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<Project Sdk="Microsoft.NET.Sdk.Web">
3+
<Import Project="..\SkiaSharpSample.Shared\SkiaSharpSample.Shared.projitems" Label="Shared" />
4+
<Import Project="..\..\..\..\output\SkiaSharp\nuget\build\wasm\SkiaSharp.props" Condition="Exists('..\..\..\..\output\SkiaSharp\nuget\build\wasm\SkiaSharp.props')" />
5+
<PropertyGroup>
6+
<OutputType>Exe</OutputType>
7+
<TargetFramework>netstandard2.0</TargetFramework>
8+
<WasmHead>true</WasmHead>
9+
<DefineConstants>$(DefineConstants);__WASM__</DefineConstants>
10+
<LangVersion>8.0</LangVersion>
11+
<WasmShellILLinkerEnabled>true</WasmShellILLinkerEnabled>
12+
<WasmShellForceDisableWSL Condition="'$(OS)' != 'Unix' and ('$(CI)' == 'true' or '$(BUILD_BUILDID)' != '')">true</WasmShellForceDisableWSL>
13+
</PropertyGroup>
14+
<PropertyGroup Condition="'$(Configuration)'=='Debug'">
15+
<MonoRuntimeDebuggerEnabled>true</MonoRuntimeDebuggerEnabled>
16+
<DebugType>portable</DebugType>
17+
<DebugSymbols>true</DebugSymbols>
18+
<WasmShellMonoRuntimeExecutionMode>Interpreter</WasmShellMonoRuntimeExecutionMode>
19+
</PropertyGroup>
20+
<PropertyGroup Condition="'$(Configuration)'=='Release'">
21+
<WasmShellMonoRuntimeExecutionMode>FullAOT</WasmShellMonoRuntimeExecutionMode>
22+
</PropertyGroup>
23+
<ItemGroup>
24+
<PackageReference Include="Microsoft.Extensions.Logging.Console" Version="1.1.1" />
25+
<PackageReference Include="Microsoft.Extensions.Logging.Filter" Version="1.1.1" />
26+
<PackageReference Include="Uno.UI" Version="2.4.4" />
27+
</ItemGroup>
28+
<!-- workaround for https://github.com/unoplatform/Uno.Wasm.Bootstrap/issues/253 -->
29+
<ItemGroup Condition=" '$(WasmShellForceDisableWSL)' != 'true' ">
30+
<PackageReference Include="Uno.Wasm.Bootstrap" Version="1.4.0-dev.9" />
31+
<PackageReference Include="Uno.Wasm.Bootstrap.DevServer" Version="1.4.0-dev.9" />
32+
</ItemGroup>
33+
<ItemGroup>
34+
<ProjectReference Include="..\..\..\..\binding\SkiaSharp\SkiaSharp.csproj" />
35+
<ProjectReference Include="..\..\..\..\source\SkiaSharp.Views.Uno\SkiaSharp.Views.Uno.Wasm\SkiaSharp.Views.Uno.Wasm.csproj" />
36+
</ItemGroup>
37+
<ItemGroup>
38+
<Content Include="Assets\**\*" />
39+
<EmbeddedResource Include="WasmCSS\*.css" />
40+
<EmbeddedResource Include="WasmScripts\*.js" />
41+
<LinkerDescriptor Include="LinkerConfig.xml" />
42+
</ItemGroup>
43+
<Import Project="..\..\..\..\output\SkiaSharp.Views.Uno\nuget\build\netstandard2.0\SkiaSharp.Views.Uno.targets" Condition="Exists('..\..\..\..\output\SkiaSharp.Views.Uno\nuget\build\netstandard2.0\SkiaSharp.Views.Uno.targets')" />
44+
</Project>

samples/Basic/Uno/SkiaSharpSample.Wasm/WasmCSS/Fonts.css

Lines changed: 10 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
var UnoAppManifest = {
2+
splashScreenImage: "Assets/SplashScreen.png",
3+
splashScreenColor: "#F8F8F8",
4+
displayName: "SkiaSharp for WebAssembly"
5+
}
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+

Lines changed: 78 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,78 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<configuration>
3+
<system.web>
4+
<customErrors mode="Off"/>
5+
</system.web>
6+
7+
<system.webServer>
8+
9+
<!-- Disable compression as we're doing it throuh pre-compressed files -->
10+
<urlCompression doStaticCompression="false" doDynamicCompression="false" dynamicCompressionBeforeCache="false" />
11+
12+
<staticContent>
13+
<remove fileExtension=".dll" />
14+
<remove fileExtension=".wasm" />
15+
<remove fileExtension=".woff" />
16+
<remove fileExtension=".woff2" />
17+
<mimeMap fileExtension=".wasm" mimeType="application/wasm" />
18+
<mimeMap fileExtension=".clr" mimeType="application/octet-stream" />
19+
<mimeMap fileExtension=".pdb" mimeType="application/octet-stream" />
20+
<mimeMap fileExtension=".woff" mimeType="application/font-woff" />
21+
<mimeMap fileExtension=".woff2" mimeType="application/font-woff" />
22+
23+
<!-- Required for PWAs -->
24+
<mimeMap fileExtension=".json" mimeType="application/octet-stream" />
25+
</staticContent>
26+
27+
<rewrite>
28+
<rules>
29+
<rule name="Lookup for pre-compressed brotli file" stopProcessing="true">
30+
<match url="(.*)$"/>
31+
<conditions>
32+
<!-- Match brotli requests -->
33+
<add input="{HTTP_ACCEPT_ENCODING}" pattern="br" />
34+
35+
<!-- Match all but pre-compressed files -->
36+
<add input="{REQUEST_URI}" pattern="^(?!/_compressed_br/)(.*)$" />
37+
38+
<!-- Check if the pre-compressed file exists on the disk -->
39+
<add input="{DOCUMENT_ROOT}/_compressed_br/{C:0}" matchType="IsFile" negate="false" />
40+
</conditions>
41+
<action type="Rewrite" url="/_compressed_br{C:0}" />
42+
</rule>
43+
44+
<rule name="Lookup for pre-compressed gzip file" stopProcessing="true">
45+
<match url="(.*)$"/>
46+
<conditions>
47+
<!-- Match gzip requests -->
48+
<add input="{HTTP_ACCEPT_ENCODING}" pattern="gzip" />
49+
50+
<!-- Match all but pre-compressed files -->
51+
<add input="{REQUEST_URI}" pattern="^(?!/_compressed_gz/)(.*)$" />
52+
53+
<!-- Check if the pre-compressed file exists on the disk -->
54+
<add input="{DOCUMENT_ROOT}/_compressed_gz/{C:0}" matchType="IsFile" negate="false" />
55+
</conditions>
56+
<action type="Rewrite" url="/_compressed_gz{C:0}" />
57+
</rule>
58+
</rules>
59+
60+
<outboundRules>
61+
<rule name="Adjust content encoding for gzip pre-compressed files" enabled="true" stopProcessing="true">
62+
<match serverVariable="RESPONSE_CONTENT_ENCODING" pattern="" />
63+
<conditions>
64+
<add input="{REQUEST_URI}" pattern="/_compressed_gz/.*$" />
65+
</conditions>
66+
<action type="Rewrite" value="gzip"/>
67+
</rule>
68+
<rule name="Adjust content encoding for brotli pre-compressed files" enabled="true" stopProcessing="true">
69+
<match serverVariable="RESPONSE_CONTENT_ENCODING" pattern="" />
70+
<conditions>
71+
<add input="{REQUEST_URI}" pattern="/_compressed_br/.*$" />
72+
</conditions>
73+
<action type="Rewrite" value="br"/>
74+
</rule>
75+
</outboundRules>
76+
</rewrite>
77+
</system.webServer>
78+
</configuration>

samples/Basic/Uno/SkiaSharpSample.Windows.sln

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,12 +17,17 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SkiaSharp.Views.UWP", "..\.
1717
EndProject
1818
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SkiaSharp.UWP", "..\..\..\binding\SkiaSharp.UWP\SkiaSharp.UWP.csproj", "{6FF6B08F-0A69-41A4-8F53-8FE9B7FB4A67}"
1919
EndProject
20+
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SkiaSharpSample.Wasm", "SkiaSharpSample.Wasm\SkiaSharpSample.Wasm.csproj", "{9726301D-8A93-4A06-88DF-92BA01CF80AD}"
21+
EndProject
22+
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SkiaSharp.Views.Uno.Wasm", "..\..\..\source\SkiaSharp.Views.Uno\SkiaSharp.Views.Uno.Wasm\SkiaSharp.Views.Uno.Wasm.csproj", "{1787D9BF-9815-4E1D-BDEB-9994859FE91E}"
23+
EndProject
2024
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SkiaSharp", "..\..\..\binding\SkiaSharp\SkiaSharp.csproj", "{409AF271-D8B7-4F79-B293-02F562A51955}"
2125
EndProject
2226
Global
2327
GlobalSection(SharedMSBuildProjectFiles) = preSolution
2428
SkiaSharpSample.Shared\SkiaSharpSample.Shared.projitems*{6279c845-92f8-4333-ab99-3d213163593c}*SharedItemsImports = 13
2529
SkiaSharpSample.Shared\SkiaSharpSample.Shared.projitems*{8b8db39e-c0ff-4edc-83a6-0b6a4ab763ee}*SharedItemsImports = 4
30+
SkiaSharpSample.Shared\SkiaSharpSample.Shared.projitems*{9726301d-8a93-4a06-88df-92ba01cf80ad}*SharedItemsImports = 5
2631
SkiaSharpSample.Shared\SkiaSharpSample.Shared.projitems*{ae39aa1d-32c8-482b-9395-ad5493c98f7e}*SharedItemsImports = 4
2732
EndGlobalSection
2833
GlobalSection(SolutionConfigurationPlatforms) = preSolution
@@ -178,6 +183,46 @@ Global
178183
{6FF6B08F-0A69-41A4-8F53-8FE9B7FB4A67}.Release|x64.Build.0 = Release|Any CPU
179184
{6FF6B08F-0A69-41A4-8F53-8FE9B7FB4A67}.Release|x86.ActiveCfg = Release|Any CPU
180185
{6FF6B08F-0A69-41A4-8F53-8FE9B7FB4A67}.Release|x86.Build.0 = Release|Any CPU
186+
{9726301D-8A93-4A06-88DF-92BA01CF80AD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
187+
{9726301D-8A93-4A06-88DF-92BA01CF80AD}.Debug|Any CPU.Build.0 = Debug|Any CPU
188+
{9726301D-8A93-4A06-88DF-92BA01CF80AD}.Debug|ARM.ActiveCfg = Debug|Any CPU
189+
{9726301D-8A93-4A06-88DF-92BA01CF80AD}.Debug|ARM.Build.0 = Debug|Any CPU
190+
{9726301D-8A93-4A06-88DF-92BA01CF80AD}.Debug|ARM64.ActiveCfg = Debug|Any CPU
191+
{9726301D-8A93-4A06-88DF-92BA01CF80AD}.Debug|ARM64.Build.0 = Debug|Any CPU
192+
{9726301D-8A93-4A06-88DF-92BA01CF80AD}.Debug|x64.ActiveCfg = Debug|Any CPU
193+
{9726301D-8A93-4A06-88DF-92BA01CF80AD}.Debug|x64.Build.0 = Debug|Any CPU
194+
{9726301D-8A93-4A06-88DF-92BA01CF80AD}.Debug|x86.ActiveCfg = Debug|Any CPU
195+
{9726301D-8A93-4A06-88DF-92BA01CF80AD}.Debug|x86.Build.0 = Debug|Any CPU
196+
{9726301D-8A93-4A06-88DF-92BA01CF80AD}.Release|Any CPU.ActiveCfg = Release|Any CPU
197+
{9726301D-8A93-4A06-88DF-92BA01CF80AD}.Release|Any CPU.Build.0 = Release|Any CPU
198+
{9726301D-8A93-4A06-88DF-92BA01CF80AD}.Release|ARM.ActiveCfg = Release|Any CPU
199+
{9726301D-8A93-4A06-88DF-92BA01CF80AD}.Release|ARM.Build.0 = Release|Any CPU
200+
{9726301D-8A93-4A06-88DF-92BA01CF80AD}.Release|ARM64.ActiveCfg = Release|Any CPU
201+
{9726301D-8A93-4A06-88DF-92BA01CF80AD}.Release|ARM64.Build.0 = Release|Any CPU
202+
{9726301D-8A93-4A06-88DF-92BA01CF80AD}.Release|x64.ActiveCfg = Release|Any CPU
203+
{9726301D-8A93-4A06-88DF-92BA01CF80AD}.Release|x64.Build.0 = Release|Any CPU
204+
{9726301D-8A93-4A06-88DF-92BA01CF80AD}.Release|x86.ActiveCfg = Release|Any CPU
205+
{9726301D-8A93-4A06-88DF-92BA01CF80AD}.Release|x86.Build.0 = Release|Any CPU
206+
{1787D9BF-9815-4E1D-BDEB-9994859FE91E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
207+
{1787D9BF-9815-4E1D-BDEB-9994859FE91E}.Debug|Any CPU.Build.0 = Debug|Any CPU
208+
{1787D9BF-9815-4E1D-BDEB-9994859FE91E}.Debug|ARM.ActiveCfg = Debug|Any CPU
209+
{1787D9BF-9815-4E1D-BDEB-9994859FE91E}.Debug|ARM.Build.0 = Debug|Any CPU
210+
{1787D9BF-9815-4E1D-BDEB-9994859FE91E}.Debug|ARM64.ActiveCfg = Debug|Any CPU
211+
{1787D9BF-9815-4E1D-BDEB-9994859FE91E}.Debug|ARM64.Build.0 = Debug|Any CPU
212+
{1787D9BF-9815-4E1D-BDEB-9994859FE91E}.Debug|x64.ActiveCfg = Debug|Any CPU
213+
{1787D9BF-9815-4E1D-BDEB-9994859FE91E}.Debug|x64.Build.0 = Debug|Any CPU
214+
{1787D9BF-9815-4E1D-BDEB-9994859FE91E}.Debug|x86.ActiveCfg = Debug|Any CPU
215+
{1787D9BF-9815-4E1D-BDEB-9994859FE91E}.Debug|x86.Build.0 = Debug|Any CPU
216+
{1787D9BF-9815-4E1D-BDEB-9994859FE91E}.Release|Any CPU.ActiveCfg = Release|Any CPU
217+
{1787D9BF-9815-4E1D-BDEB-9994859FE91E}.Release|Any CPU.Build.0 = Release|Any CPU
218+
{1787D9BF-9815-4E1D-BDEB-9994859FE91E}.Release|ARM.ActiveCfg = Release|Any CPU
219+
{1787D9BF-9815-4E1D-BDEB-9994859FE91E}.Release|ARM.Build.0 = Release|Any CPU
220+
{1787D9BF-9815-4E1D-BDEB-9994859FE91E}.Release|ARM64.ActiveCfg = Release|Any CPU
221+
{1787D9BF-9815-4E1D-BDEB-9994859FE91E}.Release|ARM64.Build.0 = Release|Any CPU
222+
{1787D9BF-9815-4E1D-BDEB-9994859FE91E}.Release|x64.ActiveCfg = Release|Any CPU
223+
{1787D9BF-9815-4E1D-BDEB-9994859FE91E}.Release|x64.Build.0 = Release|Any CPU
224+
{1787D9BF-9815-4E1D-BDEB-9994859FE91E}.Release|x86.ActiveCfg = Release|Any CPU
225+
{1787D9BF-9815-4E1D-BDEB-9994859FE91E}.Release|x86.Build.0 = Release|Any CPU
181226
{409AF271-D8B7-4F79-B293-02F562A51955}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
182227
{409AF271-D8B7-4F79-B293-02F562A51955}.Debug|Any CPU.Build.0 = Debug|Any CPU
183228
{409AF271-D8B7-4F79-B293-02F562A51955}.Debug|ARM.ActiveCfg = Debug|Any CPU

0 commit comments

Comments
 (0)