Skip to content

Commit

Permalink
add arm64 support
Browse files Browse the repository at this point in the history
  • Loading branch information
robmikh committed Nov 24, 2019
1 parent b23634b commit 7f4c610
Show file tree
Hide file tree
Showing 6 changed files with 52 additions and 15 deletions.
10 changes: 8 additions & 2 deletions CompositionSurfaceFactory.sln
Original file line number Diff line number Diff line change
@@ -1,28 +1,34 @@

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 15
VisualStudioVersion = 15.0.28307.329
# Visual Studio Version 16
VisualStudioVersion = 16.0.29519.161
MinimumVisualStudioVersion = 10.0.40219.1
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "CompositionSurfaceFactory", "CompositionSurfaceFactory\CompositionSurfaceFactory.vcxproj", "{155CA046-B55D-43FD-A222-5FEE8EACAF07}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|ARM = Debug|ARM
Debug|ARM64 = Debug|ARM64
Debug|x64 = Debug|x64
Debug|x86 = Debug|x86
Release|ARM = Release|ARM
Release|ARM64 = Release|ARM64
Release|x64 = Release|x64
Release|x86 = Release|x86
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{155CA046-B55D-43FD-A222-5FEE8EACAF07}.Debug|ARM.ActiveCfg = Debug|ARM
{155CA046-B55D-43FD-A222-5FEE8EACAF07}.Debug|ARM.Build.0 = Debug|ARM
{155CA046-B55D-43FD-A222-5FEE8EACAF07}.Debug|ARM64.ActiveCfg = Debug|ARM64
{155CA046-B55D-43FD-A222-5FEE8EACAF07}.Debug|ARM64.Build.0 = Debug|ARM64
{155CA046-B55D-43FD-A222-5FEE8EACAF07}.Debug|x64.ActiveCfg = Debug|x64
{155CA046-B55D-43FD-A222-5FEE8EACAF07}.Debug|x64.Build.0 = Debug|x64
{155CA046-B55D-43FD-A222-5FEE8EACAF07}.Debug|x86.ActiveCfg = Debug|Win32
{155CA046-B55D-43FD-A222-5FEE8EACAF07}.Debug|x86.Build.0 = Debug|Win32
{155CA046-B55D-43FD-A222-5FEE8EACAF07}.Release|ARM.ActiveCfg = Release|ARM
{155CA046-B55D-43FD-A222-5FEE8EACAF07}.Release|ARM.Build.0 = Release|ARM
{155CA046-B55D-43FD-A222-5FEE8EACAF07}.Release|ARM64.ActiveCfg = Release|ARM64
{155CA046-B55D-43FD-A222-5FEE8EACAF07}.Release|ARM64.Build.0 = Release|ARM64
{155CA046-B55D-43FD-A222-5FEE8EACAF07}.Release|x64.ActiveCfg = Release|x64
{155CA046-B55D-43FD-A222-5FEE8EACAF07}.Release|x64.Build.0 = Release|x64
{155CA046-B55D-43FD-A222-5FEE8EACAF07}.Release|x86.ActiveCfg = Release|Win32
Expand Down
36 changes: 30 additions & 6 deletions CompositionSurfaceFactory/CompositionSurfaceFactory.vcxproj
Original file line number Diff line number Diff line change
@@ -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.CppWinRT.2.0.190620.2\build\native\Microsoft.Windows.CppWinRT.props" Condition="Exists('..\packages\Microsoft.Windows.CppWinRT.2.0.190620.2\build\native\Microsoft.Windows.CppWinRT.props')" />
<Import Project="..\packages\Microsoft.Windows.CppWinRT.2.0.191111.2\build\native\Microsoft.Windows.CppWinRT.props" Condition="Exists('..\packages\Microsoft.Windows.CppWinRT.2.0.191111.2\build\native\Microsoft.Windows.CppWinRT.props')" />
<PropertyGroup Label="Globals">
<CppWinRTEnabled>true</CppWinRTEnabled>
<MinimalCoreWin>true</MinimalCoreWin>
Expand All @@ -21,6 +21,10 @@
<Configuration>Debug</Configuration>
<Platform>ARM</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Debug|ARM64">
<Configuration>Debug</Configuration>
<Platform>ARM64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
<Platform>Win32</Platform>
Expand All @@ -33,6 +37,10 @@
<Configuration>Release</Configuration>
<Platform>ARM</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|ARM64">
<Configuration>Release</Configuration>
<Platform>ARM64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
Expand Down Expand Up @@ -81,9 +89,15 @@
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<TargetName>$(RootNamespace)</TargetName>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">
<TargetName>$(RootNamespace)</TargetName>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<TargetName>$(RootNamespace)</TargetName>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">
<TargetName>$(RootNamespace)</TargetName>
</PropertyGroup>
<ItemDefinitionGroup>
<ClCompile>
<PrecompiledHeader>Use</PrecompiledHeader>
Expand All @@ -107,8 +121,10 @@
<ControlFlowGuard Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">Guard</ControlFlowGuard>
<ControlFlowGuard Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Guard</ControlFlowGuard>
<ControlFlowGuard Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Guard</ControlFlowGuard>
<ControlFlowGuard Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">Guard</ControlFlowGuard>
<DebugInformationFormat Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">ProgramDatabase</DebugInformationFormat>
<DebugInformationFormat Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">ProgramDatabase</DebugInformationFormat>
<DebugInformationFormat Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<OutputFile Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
Expand All @@ -122,8 +138,11 @@
</Link>
<Link>
<OutputFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
<OutputFile Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
<ProgramDatabaseFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(OutDir)$(TargetName).pdb</ProgramDatabaseFile>
<ProgramDatabaseFile Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">$(OutDir)$(TargetName).pdb</ProgramDatabaseFile>
<AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">/PDBALTPATH:Robmikh.CompositionSurfaceFactory.pdb %(AdditionalOptions)</AdditionalOptions>
<AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">/PDBALTPATH:Robmikh.CompositionSurfaceFactory.pdb %(AdditionalOptions)</AdditionalOptions>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)'=='Release'">
Expand All @@ -132,7 +151,9 @@
<ControlFlowGuard Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">Guard</ControlFlowGuard>
<ControlFlowGuard Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Guard</ControlFlowGuard>
<ControlFlowGuard Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Guard</ControlFlowGuard>
<ControlFlowGuard Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">Guard</ControlFlowGuard>
<GenerateXMLDocumentationFiles Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</GenerateXMLDocumentationFiles>
<GenerateXMLDocumentationFiles Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">true</GenerateXMLDocumentationFiles>
<GenerateXMLDocumentationFiles Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">true</GenerateXMLDocumentationFiles>
<GenerateXMLDocumentationFiles Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</GenerateXMLDocumentationFiles>
</ClCompile>
Expand All @@ -148,8 +169,11 @@
</Link>
<Link>
<OutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
<OutputFile Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
<ProgramDatabaseFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(OutDir)$(TargetName).pdb</ProgramDatabaseFile>
<ProgramDatabaseFile Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">$(OutDir)$(TargetName).pdb</ProgramDatabaseFile>
<AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">/PDBALTPATH:Robmikh.CompositionSurfaceFactory.pdb %(AdditionalOptions)</AdditionalOptions>
<AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">/PDBALTPATH:Robmikh.CompositionSurfaceFactory.pdb %(AdditionalOptions)</AdditionalOptions>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
Expand Down Expand Up @@ -189,15 +213,15 @@
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
<Import Project="..\packages\Win2D.uwp.1.23.0\build\native\Win2D.uwp.targets" Condition="Exists('..\packages\Win2D.uwp.1.23.0\build\native\Win2D.uwp.targets')" />
<Import Project="..\packages\Microsoft.Windows.CppWinRT.2.0.190620.2\build\native\Microsoft.Windows.CppWinRT.targets" Condition="Exists('..\packages\Microsoft.Windows.CppWinRT.2.0.190620.2\build\native\Microsoft.Windows.CppWinRT.targets')" />
<Import Project="..\packages\Microsoft.Windows.CppWinRT.2.0.191111.2\build\native\Microsoft.Windows.CppWinRT.targets" Condition="Exists('..\packages\Microsoft.Windows.CppWinRT.2.0.191111.2\build\native\Microsoft.Windows.CppWinRT.targets')" />
<Import Project="..\packages\Win2D.uwp.1.24.0\build\native\Win2D.uwp.targets" Condition="Exists('..\packages\Win2D.uwp.1.24.0\build\native\Win2D.uwp.targets')" />
</ImportGroup>
<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>
</PropertyGroup>
<Error Condition="!Exists('..\packages\Win2D.uwp.1.23.0\build\native\Win2D.uwp.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Win2D.uwp.1.23.0\build\native\Win2D.uwp.targets'))" />
<Error Condition="!Exists('..\packages\Microsoft.Windows.CppWinRT.2.0.190620.2\build\native\Microsoft.Windows.CppWinRT.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Microsoft.Windows.CppWinRT.2.0.190620.2\build\native\Microsoft.Windows.CppWinRT.props'))" />
<Error Condition="!Exists('..\packages\Microsoft.Windows.CppWinRT.2.0.190620.2\build\native\Microsoft.Windows.CppWinRT.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Microsoft.Windows.CppWinRT.2.0.190620.2\build\native\Microsoft.Windows.CppWinRT.targets'))" />
<Error Condition="!Exists('..\packages\Microsoft.Windows.CppWinRT.2.0.191111.2\build\native\Microsoft.Windows.CppWinRT.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Microsoft.Windows.CppWinRT.2.0.191111.2\build\native\Microsoft.Windows.CppWinRT.props'))" />
<Error Condition="!Exists('..\packages\Microsoft.Windows.CppWinRT.2.0.191111.2\build\native\Microsoft.Windows.CppWinRT.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Microsoft.Windows.CppWinRT.2.0.191111.2\build\native\Microsoft.Windows.CppWinRT.targets'))" />
<Error Condition="!Exists('..\packages\Win2D.uwp.1.24.0\build\native\Win2D.uwp.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Win2D.uwp.1.24.0\build\native\Win2D.uwp.targets'))" />
</Target>
</Project>
4 changes: 2 additions & 2 deletions CompositionSurfaceFactory/packages.config
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="Microsoft.Windows.CppWinRT" version="2.0.190620.2" targetFramework="native" />
<package id="Win2D.uwp" version="1.23.0" targetFramework="native" />
<package id="Microsoft.Windows.CppWinRT" version="2.0.191111.2" targetFramework="native" />
<package id="Win2D.uwp" version="1.24.0" targetFramework="native" />
</packages>
9 changes: 8 additions & 1 deletion nuget/CompositionSurfaceFactory.nuspec
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,9 @@
<requireLicenseAcceptance>true</requireLicenseAcceptance>
<description>CompositionSurfaceFactory is a surface factory intended for use with the Windows.UI.Composition API based on Win2D and written with C++/WinRT. Automatic image loading and text.</description>
<releaseNotes>Release notes:
Version 0.8.3:
* Add ARM64 support

Version 0.8.2:
* Minor fixes to C++/WinRT version
* First C++/WinRT-based release!
Expand All @@ -25,7 +28,7 @@ Version 0.8.0-prerelease:
</releaseNotes>
<copyright>Copyright 2016</copyright>
<dependencies>
<dependency id="Win2D.uwp" version="1.23.0" />
<dependency id="Win2D.uwp" version="1.24.0" />
</dependencies>
</metadata>
<files>
Expand All @@ -39,6 +42,10 @@ Version 0.8.0-prerelease:
<file target="runtimes\win10-arm\native" src="..\ARM\Release\CompositionSurfaceFactory\Robmikh.CompositionSurfaceFactory.pri" />
<file target="runtimes\win10-arm\native\Robmikh.CompositionSurfaceFactory.pdb" src="..\ARM\Release\CompositionSurfaceFactory\Robmikh.CompositionSurfaceFactory.pdb" />

<file target="runtimes\win10-arm64\native\Robmikh.CompositionSurfaceFactory.dll" src="..\ARM64\Release\CompositionSurfaceFactory\Robmikh.CompositionSurfaceFactory.dll" />
<file target="runtimes\win10-arm64\native" src="..\ARM64\Release\CompositionSurfaceFactory\Robmikh.CompositionSurfaceFactory.pri" />
<file target="runtimes\win10-arm64\native\Robmikh.CompositionSurfaceFactory.pdb" src="..\ARM64\Release\CompositionSurfaceFactory\Robmikh.CompositionSurfaceFactory.pdb" />

<file target="runtimes\win10-x86\native\Robmikh.CompositionSurfaceFactory.dll" src="..\Release\CompositionSurfaceFactory\Robmikh.CompositionSurfaceFactory.dll" />
<file target="runtimes\win10-x86\native" src="..\Release\CompositionSurfaceFactory\Robmikh.CompositionSurfaceFactory.pri" />
<file target="runtimes\win10-x86\native\Robmikh.CompositionSurfaceFactory.pdb" src="..\Release\CompositionSurfaceFactory\Robmikh.CompositionSurfaceFactory.pdb" />
Expand Down
6 changes: 3 additions & 3 deletions nuget/CompositionSurfaceFactory.targets
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,14 @@
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">

<Target Name="PlatformCheck" BeforeTargets="InjectReference"
Condition=" ( ('$(Platform)' != 'x86') AND ('$(Platform)' != 'ARM') AND ('$(Platform)' != 'x64') )">
Condition=" ( ('$(Platform)' != 'x86') AND ('$(Platform)' != 'ARM') AND ('$(Platform)' != 'x64') AND ('$(Platform)' != 'ARM64') )">
<Error Text="$(MSBuildThisFileName) does not work correctly on '$(Platform)'
platform. You need to specify platform (x86 / x64 or ARM)." />
platform. You need to specify platform (x86, x64, ARM, or ARM64)." />
</Target>

<Target Name="InjectReference" BeforeTargets="ResolveAssemblyReferences">

<ItemGroup Condition=" '$(Platform)' == 'x86' or '$(Platform)' == 'x64' or '$(Platform)' == 'ARM'">
<ItemGroup Condition=" '$(Platform)' == 'x86' or '$(Platform)' == 'x64' or '$(Platform)' == 'ARM' or '$(Platform)' == 'ARM64'">
<Reference Include="Robmikh.CompositionSurfaceFactory">
<HintPath>$(MSBuildThisFileDirectory)$(Platform)\Robmikh.CompositionSurfaceFactory.winmd</HintPath>
</Reference>
Expand Down
2 changes: 1 addition & 1 deletion nuget/VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
0.8.2
0.8.3

0 comments on commit 7f4c610

Please sign in to comment.