[ARM64] Installer Bootstrapper (#18241)

* [ARM64] Cleanup PowerToys solution configuration

* [ARM64] Add Bootstrapper support

known issues:
- wix doesn't have arm platform -> using x86 instead, resulting in wrong default installation dir and inability to detect 605
- current winappsdk 1.0.3 installer is corrupted -> contains x64 packages
- we're still using hardcoded vcredist for some modules

* Remove duplicate Stylecop PackageReference

* [ARM64] Cleanup StylesReportTool configuration

* [ARM64] fix configurations for bootstrapper

* fixes

* [ARM64] VCM fix

* [ARM64] Fix LinkIncremental conditional in StylesReportTool

* fix #2

* perfect forwarding

* [ARM64] Switch to call vformat to compile with later MSVC toolkits

* Updated expect

Co-authored-by: Jeremy Sinclair <4016293+snickler@users.noreply.github.com>
This commit is contained in:
Andrey Nekrasov
2022-05-13 18:55:39 +03:00
committed by GitHub
parent 5f4a26ebba
commit 3443c73d0e
38 changed files with 225 additions and 268 deletions

View File

@@ -5,7 +5,6 @@
<TargetFramework>net6.0-windows</TargetFramework>
<RuntimeIdentifiers>win-x64;win-arm64</RuntimeIdentifiers>
<UseWPF>true</UseWPF>
<Platforms>x64;ARM64</Platforms>
<AssemblyName>PowerToys.Common.UI</AssemblyName>
</PropertyGroup>

View File

@@ -5,7 +5,6 @@
<PropertyGroup>
<TargetFramework>net6.0-windows</TargetFramework>
<RuntimeIdentifiers>win-x64;win-arm64</RuntimeIdentifiers>
<Platforms>x64;ARM64</Platforms>
<Version>$(Version).0</Version>
<Authors>Microsoft Corporation</Authors>
<Product>PowerToys</Product>

View File

@@ -4,7 +4,6 @@
<PropertyGroup>
<TargetFramework>net6.0-windows</TargetFramework>
<RuntimeIdentifiers>win-x64;win-arm64</RuntimeIdentifiers>
<Platforms>x64;ARM64</Platforms>
<Version>$(Version).0</Version>
<Authors>Microsoft Corporation</Authors>
<Product>PowerToys</Product>

View File

@@ -11,7 +11,6 @@
<AssemblyName>Microsoft.Interop.Tests</AssemblyName>
<AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
<AppendRuntimeIdentifierToOutputPath>false</AppendRuntimeIdentifierToOutputPath>
<Platforms>x64;ARM64</Platforms>
<AssemblyTitle>interop-tests</AssemblyTitle>
</PropertyGroup>

View File

@@ -3,10 +3,9 @@
<PropertyGroup>
<OutputType>WinExe</OutputType>
<TargetFramework>net6.0-windows10.0.18362.0</TargetFramework>
<RuntimeIdentifiers>win-x64;win-arm64</RuntimeIdentifiers>
<RuntimeIdentifiers>win-x64;win-arm64</RuntimeIdentifiers>
<OutputPath>$(SolutionDir)$(Platform)\$(Configuration)\modules\Awake</OutputPath>
<Nullable>enable</Nullable>
<Platforms>x64;ARM64</Platforms>
<AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
<AppendRuntimeIdentifierToOutputPath>false</AppendRuntimeIdentifierToOutputPath>
<UseWindowsForms>true</UseWindowsForms>
@@ -20,8 +19,6 @@
<RepositoryUrl>https://github.com/microsoft/powertoys</RepositoryUrl>
<EnableNETAnalyzers>true</EnableNETAnalyzers>
<AnalysisMode>Recommended</AnalysisMode>
<PlatformTarget>$(Platform)</PlatformTarget>
<Platforms>$(Platform)</Platforms>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)'=='Debug'">

View File

@@ -7,8 +7,6 @@
<AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
<AppendRuntimeIdentifierToOutputPath>false</AppendRuntimeIdentifierToOutputPath>
<UseWPF>true</UseWPF>
<PlatformTarget>$(Platform)</PlatformTarget>
<Platforms>$(Platform)</Platforms>
<StartupObject>ColorPicker.Program</StartupObject>
</PropertyGroup>
<PropertyGroup>

View File

@@ -9,8 +9,6 @@
<Nullable>enable</Nullable>
<LangVersion>8.0</LangVersion>
<OutputType>Library</OutputType>
<PlatformTarget>$(Platform)</PlatformTarget>
<Platforms>$(Platform)</Platforms>
<Version>$(Version).0</Version>
</PropertyGroup>

View File

@@ -10,8 +10,6 @@
<UseWindowsForms>true</UseWindowsForms>
<AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
<AppendRuntimeIdentifierToOutputPath>false</AppendRuntimeIdentifierToOutputPath>
<PlatformTarget>$(Platform)</PlatformTarget>
<Platforms>$(Platform)</Platforms>
<OutputPath>$(SolutionDir)$(Platform)\$(Configuration)\modules\FancyZones</OutputPath>
</PropertyGroup>

View File

@@ -11,8 +11,6 @@
<Version>$(Version).0</Version>
<OutputPath>$(SolutionDir)$(Platform)\$(Configuration)\modules\ImageResizer\$(AssemblyName)\</OutputPath>
<IntermediateOutputPath>$(SolutionDir)$(Platform)\$(Configuration)\obj\$(AssemblyName)\</IntermediateOutputPath>
<PlatformTarget>$(Platform)</PlatformTarget>
<Platforms>$(Platform)</Platforms>
</PropertyGroup>
<ItemGroup>

View File

@@ -17,8 +17,6 @@
<TargetFramework>net6.0-windows10.0.18362.0</TargetFramework>
<ProjectTypeGuids>{60dc8134-eba5-43b8-bcc9-bb4bc16c2548};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
<IntermediateOutputPath>$(SolutionDir)$(Platform)\$(Configuration)\obj\$(AssemblyName)\</IntermediateOutputPath>
<PlatformTarget>$(Platform)</PlatformTarget>
<Platforms>$(Platform)</Platforms>
</PropertyGroup>
<PropertyGroup>

View File

@@ -3,8 +3,6 @@
<PropertyGroup>
<TargetFramework>net6.0-windows</TargetFramework>
<IsPackable>false</IsPackable>
<PlatformTarget>$(Platform)</PlatformTarget>
<Platforms>$(Platform)</Platforms>
</PropertyGroup>
<ItemGroup>

View File

@@ -5,8 +5,6 @@
<IsPackable>false</IsPackable>
<RootNamespace>Microsoft.Plugin.Folder.UnitTests</RootNamespace>
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
<PlatformTarget>$(Platform)</PlatformTarget>
<Platforms>$(Platform)</Platforms>
</PropertyGroup>
<ItemGroup>

View File

@@ -4,8 +4,6 @@
<TargetFramework>net6.0-windows10.0.18362.0</TargetFramework>
<IsPackable>false</IsPackable>
<ApplicationManifest>AppxManifests\developmentApp\AppxManifest.xml</ApplicationManifest>
<PlatformTarget>$(Platform)</PlatformTarget>
<Platforms>$(Platform)</Platforms>
</PropertyGroup>
<ItemGroup>

View File

@@ -5,8 +5,6 @@
<IsPackable>false</IsPackable>
<RootNamespace>Microsoft.Plugin.Uri.UnitTests</RootNamespace>
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
<PlatformTarget>$(Platform)</PlatformTarget>
<Platforms>$(Platform)</Platforms>
</PropertyGroup>
<ItemGroup>

View File

@@ -4,8 +4,6 @@
<TargetFramework>net6.0-windows</TargetFramework>
<IsPackable>false</IsPackable>
<RootNamespace>Microsoft.Plugin.WindowWalker.UnitTests</RootNamespace>
<PlatformTarget>$(Platform)</PlatformTarget>
<Platforms>$(Platform)</Platforms>
</PropertyGroup>
<ItemGroup>
@@ -31,11 +29,6 @@
</AdditionalFiles>
</ItemGroup>
<ItemGroup>
<PackageReference Include="StyleCop.Analyzers">
<Version>1.1.118</Version>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
<PrivateAssets>all</PrivateAssets>
</PackageReference>
<PackageReference Include="Microsoft.CodeAnalysis.NetAnalyzers" Version="6.0.0">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>

View File

@@ -5,8 +5,6 @@
<IsPackable>false</IsPackable>
<RootNamespace>Microsoft.PowerToys.Run.Plugin.Calculator.UnitTests</RootNamespace>
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
<PlatformTarget>$(Platform)</PlatformTarget>
<Platforms>$(Platform)</Platforms>
</PropertyGroup>
<ItemGroup>

View File

@@ -4,8 +4,6 @@
<TargetFramework>net6.0-windows</TargetFramework>
<Nullable>enable</Nullable>
<IsPackable>false</IsPackable>
<PlatformTarget>$(Platform)</PlatformTarget>
<Platforms>$(Platform)</Platforms>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)'=='Debug'">

View File

@@ -3,8 +3,6 @@
<PropertyGroup>
<TargetFramework>net6.0-windows</TargetFramework>
<IsPackable>false</IsPackable>
<PlatformTarget>$(Platform)</PlatformTarget>
<Platforms>$(Platform)</Platforms>
<RootNamespace>Microsoft.PowerToys.Run.Plugin.System.UnitTests</RootNamespace>
</PropertyGroup>
@@ -31,11 +29,6 @@
</AdditionalFiles>
</ItemGroup>
<ItemGroup>
<PackageReference Include="StyleCop.Analyzers">
<Version>1.1.118</Version>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
<PrivateAssets>all</PrivateAssets>
</PackageReference>
<PackageReference Include="Microsoft.CodeAnalysis.NetAnalyzers" Version="6.0.0">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>

View File

@@ -3,8 +3,6 @@
<PropertyGroup>
<TargetFramework>net6.0-windows</TargetFramework>
<IsPackable>false</IsPackable>
<PlatformTarget>$(Platform)</PlatformTarget>
<Platforms>$(Platform)</Platforms>
<RootNamespace>Microsoft.PowerToys.Run.Plugin.TimeDate.UnitTests</RootNamespace>
</PropertyGroup>
@@ -31,11 +29,6 @@
</AdditionalFiles>
</ItemGroup>
<ItemGroup>
<PackageReference Include="StyleCop.Analyzers">
<Version>1.1.118</Version>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
<PrivateAssets>all</PrivateAssets>
</PackageReference>
<PackageReference Include="Microsoft.CodeAnalysis.NetAnalyzers" Version="6.0.0">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>

View File

@@ -4,8 +4,6 @@
<TargetFramework>net6.0-windows10.0.18362.0</TargetFramework>
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
<IsPackable>false</IsPackable>
<PlatformTarget>$(Platform)</PlatformTarget>
<Platforms>$(Platform)</Platforms>
</PropertyGroup>
<ItemGroup>

View File

@@ -12,8 +12,6 @@
<RuntimeIdentifiers>win-x64;win-arm64</RuntimeIdentifiers>
<AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
<AppendRuntimeIdentifierToOutputPath>false</AppendRuntimeIdentifierToOutputPath>
<PlatformTarget>$(Platform)</PlatformTarget>
<Platforms>$(Platform)</Platforms>
<AssetTargetFallback>uap10.0.18362</AssetTargetFallback>
<Version>$(Version).0</Version>
<Authors>Microsoft Corporation</Authors>

View File

@@ -12,8 +12,6 @@
<ApplicationIcon />
<StartupObject />
<OutputPath>..\..\..\..\$(Platform)\$(Configuration)\modules\launcher\WoxTest</OutputPath>
<PlatformTarget>$(Platform)</PlatformTarget>
<Platforms>$(Platform)</Platforms>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)' == 'Debug'">

View File

@@ -11,8 +11,6 @@
<CopyLocalLockFileAssemblies>true</CopyLocalLockFileAssemblies>
<RuntimeIdentifiers>win10-x64;win10-arm64</RuntimeIdentifiers>
<TargetFramework>net6.0-windows10.0.18362.0</TargetFramework>
<PlatformTarget>$(Platform)</PlatformTarget>
<Platforms>$(Platform)</Platforms>
</PropertyGroup>
<PropertyGroup>

View File

@@ -8,8 +8,6 @@
<AppendRuntimeIdentifierToOutputPath>false</AppendRuntimeIdentifierToOutputPath>
<CopyLocalLockFileAssemblies>true</CopyLocalLockFileAssemblies>
<RuntimeIdentifiers>win10-x64;win10-arm64</RuntimeIdentifiers>
<PlatformTarget>$(Platform)</PlatformTarget>
<Platforms>$(Platform)</Platforms>
</PropertyGroup>
<Import Project="..\..\..\Version.props" />

View File

@@ -11,8 +11,6 @@
<CopyLocalLockFileAssemblies>true</CopyLocalLockFileAssemblies>
<RuntimeIdentifiers>win10-x64;win10-arm64</RuntimeIdentifiers>
<TargetFramework>net6.0-windows10.0.18362.0</TargetFramework>
<PlatformTarget>$(Platform)</PlatformTarget>
<Platforms>$(Platform)</Platforms>
</PropertyGroup>
<PropertyGroup>

View File

@@ -16,8 +16,6 @@
<AppendRuntimeIdentifierToOutputPath>false</AppendRuntimeIdentifierToOutputPath>
<CopyLocalLockFileAssemblies>true</CopyLocalLockFileAssemblies>
<RuntimeIdentifiers>win10-x64;win10-arm64</RuntimeIdentifiers>
<PlatformTarget>$(Platform)</PlatformTarget>
<Platforms>$(Platform)</Platforms>
</PropertyGroup>
<Import Project="..\..\..\Version.props" />

View File

@@ -9,8 +9,6 @@
<AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
<AppendRuntimeIdentifierToOutputPath>false</AppendRuntimeIdentifierToOutputPath>
<CopyLocalLockFileAssemblies>true</CopyLocalLockFileAssemblies>
<PlatformTarget>$(Platform)</PlatformTarget>
<Platforms>$(Platform)</Platforms>
</PropertyGroup>
<PropertyGroup>

View File

@@ -490,8 +490,11 @@ void toggleProxyCamRegistration(const bool enable)
auto vcmRoot = fs::path{ get_module_folderpath() } / "modules";
vcmRoot /= "VideoConference";
#if defined(_M_ARM64)
std::array<fs::path, 2> proxyFilters = { vcmRoot / "PowerToys.VideoConferenceProxyFilter_ARM64.dll", vcmRoot / "PowerToys.VideoConferenceProxyFilter_x86.dll" };
#else
std::array<fs::path, 2> proxyFilters = { vcmRoot / "PowerToys.VideoConferenceProxyFilter_x64.dll", vcmRoot / "PowerToys.VideoConferenceProxyFilter_x86.dll" };
#endif
for (const auto filter : proxyFilters)
{
std::wstring params{ L"/s " };

View File

@@ -15,8 +15,6 @@
<ApplicationIcon>icon.ico</ApplicationIcon>
<!-- OutputPath looks like this because it has to be called both by settings and publish.cmd -->
<OutputPath>..\..\..\$(Platform)\$(Configuration)\Settings</OutputPath>
<PlatformTarget>$(Platform)</PlatformTarget>
<Platforms>$(Platform)</Platforms>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)'=='Debug'">