@joebigelow / wix-1 / commits / cc083c76

Support ARM64.

Bob Arnson committed May 17, 2020 at 21:03 UTC cc083c765e8b7baa239c4d800a372cc729ada9d8
15 files changed +199 -73
appveyor.cmd
+3
@@ -9,5 +9,8 @@ msbuild -p:Configuration=Release src\test\WixToolsetTest.Firewall\WixToolsetTest
9
10 msbuild -p:Configuration=Release -t:Pack src\wixext\WixToolset.Firewall.wixext.csproj
11
12 +msbuild -p:Configuration=Release src\test\WixToolsetTest.Firewall\WixToolsetTest.Firewall.csproj
13 +dotnet test -c Release --no-build src\test\WixToolsetTest.Firewall
14 +
15 @popd
16 @endlocal
\ No newline at end of file
nuget.config
+1
@@ -6,6 +6,7 @@
6 <add key="wixtoolset-extensibility" value="https://ci.appveyor.com/nuget/wixtoolset-extensibility" />
7 <add key="wixtoolset-core" value="https://ci.appveyor.com/nuget/wixtoolset-core" />
8 <add key="wixtoolset-core-native" value="https://ci.appveyor.com/nuget/wixtoolset-core-native" />
9 + <add key="wixtoolset-burn" value="https://ci.appveyor.com/nuget/wixtoolset-burn" />
10 <add key="wixtoolset-dtf" value="https://ci.appveyor.com/nuget/wixtoolset-dtf" />
11 <add key="wixtoolset-dutil" value="https://ci.appveyor.com/nuget/wixtoolset-dutil" />
12 <add key="wixtoolset-wcautil" value="https://ci.appveyor.com/nuget/wixtoolset-wcautil" />
src/ca/fwca.vcxproj
+32 -5
@@ -2,10 +2,37 @@
2 <!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. -->
3
4 <Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
5 - <Import Project="..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props" Condition="Exists('..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props')" />
6 - <Import Project="..\..\packages\WixToolset.WcaUtil.4.0.8\build\WixToolset.WcaUtil.props" Condition="Exists('..\..\packages\WixToolset.WcaUtil.4.0.8\build\WixToolset.WcaUtil.props')" />
5 + <Import Project="..\..\packages\WixToolset.DUtil.4.0.23\build\WixToolset.DUtil.props" Condition="Exists('..\..\packages\WixToolset.DUtil.4.0.23\build\WixToolset.DUtil.props')" />
6 + <Import Project="..\..\packages\WixToolset.WcaUtil.4.0.11\build\WixToolset.WcaUtil.props" Condition="Exists('..\..\packages\WixToolset.WcaUtil.4.0.11\build\WixToolset.WcaUtil.props')" />
7
8 <ItemGroup Label="ProjectConfigurations">
9 + <ProjectConfiguration Include="Debug|ARM">
10 + <Configuration>Debug</Configuration>
11 + <Platform>ARM</Platform>
12 + </ProjectConfiguration>
13 + <ProjectConfiguration Include="Release|ARM">
14 + <Configuration>Release</Configuration>
15 + <Platform>ARM</Platform>
16 + </ProjectConfiguration>
17 +
18 + <ProjectConfiguration Include="Debug|ARM64">
19 + <Configuration>Debug</Configuration>
20 + <Platform>ARM64</Platform>
21 + </ProjectConfiguration>
22 + <ProjectConfiguration Include="Release|ARM64">
23 + <Configuration>Release</Configuration>
24 + <Platform>ARM64</Platform>
25 + </ProjectConfiguration>
26 +
27 + <ProjectConfiguration Include="Debug|X64">
28 + <Configuration>Debug</Configuration>
29 + <Platform>X64</Platform>
30 + </ProjectConfiguration>
31 + <ProjectConfiguration Include="Release|X64">
32 + <Configuration>Release</Configuration>
33 + <Platform>X64</Platform>
34 + </ProjectConfiguration>
35 +
36 <ProjectConfiguration Include="Debug|Win32">
37 <Configuration>Debug</Configuration>
38 <Platform>Win32</Platform>
@@ -20,7 +47,7 @@
47 <ProjectGuid>{F72D34CA-48DA-4DFD-91A9-A0C78BEF6981}</ProjectGuid>
48 <ConfigurationType>DynamicLibrary</ConfigurationType>
49 <TargetName>fwca</TargetName>
23 - <PlatformToolset>v141</PlatformToolset>
50 + <PlatformToolset>v142</PlatformToolset>
51 <CharacterSet>Unicode</CharacterSet>
52 <ProjectModuleDefinitionFile>fwca.def</ProjectModuleDefinitionFile>
53 <Description>WiX Toolset Firewall CustomAction</Description>
@@ -57,7 +84,7 @@
84 <PropertyGroup>
85 <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>
86 </PropertyGroup>
60 - <Error Condition="!Exists('..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props'))" />
61 - <Error Condition="!Exists('..\..\packages\WixToolset.WcaUtil.4.0.8\build\WixToolset.WcaUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.WcaUtil.4.0.8\build\WixToolset.WcaUtil.props'))" />
87 + <Error Condition="!Exists('..\..\packages\WixToolset.DUtil.4.0.23\build\WixToolset.DUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.DUtil.4.0.23\build\WixToolset.DUtil.props'))" />
88 + <Error Condition="!Exists('..\..\packages\WixToolset.WcaUtil.4.0.11\build\WixToolset.WcaUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.WcaUtil.4.0.11\build\WixToolset.WcaUtil.props'))" />
89 </Target>
90 </Project>
src/ca/packages.config
+2 -2
@@ -1,5 +1,5 @@
1 <?xml version="1.0" encoding="utf-8"?>
2 <packages>
3 - <package id="WixToolset.DUtil" version="4.0.18" targetFramework="native" />
4 - <package id="WixToolset.WcaUtil" version="4.0.8" targetFramework="native" />
3 + <package id="WixToolset.DUtil" version="4.0.23" targetFramework="native" />
4 + <package id="WixToolset.WcaUtil" version="4.0.11" targetFramework="native" />
5 </packages>
\ No newline at end of file
src/test/WixToolsetTest.Firewall/FirewallExtensionFixture.cs
+39 -4
@@ -11,22 +11,57 @@ namespace WixToolsetTest.Firewall
11 public class FirewallExtensionFixture
12 {
13 [Fact]
14 - public void CanBuildUsingFileShare()
14 + public void CanBuildUsingFirewall()
15 {
16 var folder = TestData.Get(@"TestData\UsingFirewall");
17 var build = new Builder(folder, typeof(FirewallExtensionFactory), new[] { folder });
18
19 - var results = build.BuildAndQuery(Build, "WixFirewallException");
19 + var results = build.BuildAndQuery(Build, "WixFirewallException", "CustomAction");
20 Assert.Equal(new[]
21 {
22 + "CustomAction:Wix4ExecFirewallExceptionsInstall_X86\t3073\tWix4FWCA_X86\tExecFirewallExceptions\t",
23 + "CustomAction:Wix4ExecFirewallExceptionsUninstall_X86\t3073\tWix4FWCA_X86\tExecFirewallExceptions\t",
24 + "CustomAction:Wix4RollbackFirewallExceptionsInstall_X86\t3329\tWix4FWCA_X86\tExecFirewallExceptions\t",
25 + "CustomAction:Wix4RollbackFirewallExceptionsUninstall_X86\t3329\tWix4FWCA_X86\tExecFirewallExceptions\t",
26 + "CustomAction:Wix4SchedFirewallExceptionsInstall_X86\t1\tWix4FWCA_X86\tSchedFirewallExceptionsInstall\t",
27 + "CustomAction:Wix4SchedFirewallExceptionsUninstall_X86\t1\tWix4FWCA_X86\tSchedFirewallExceptionsUninstall\t",
28 + "WixFirewallException:ExampleFirewall\texample\t*\t42\t6\t\t0\t2147483647\tfilF5_pLhBuF5b4N9XEo52g_hUM5Lo\tAn example firewall",
29 + }, results);
30 + }
31 +
32 + [Fact]
33 + public void CanBuildUsingFirewallARM64()
34 + {
35 + var folder = TestData.Get(@"TestData\UsingFirewall");
36 + var build = new Builder(folder, typeof(FirewallExtensionFactory), new[] { folder });
37 +
38 + var results = build.BuildAndQuery(BuildARM64, "WixFirewallException", "CustomAction");
39 + Assert.Equal(new[]
40 + {
41 + "CustomAction:Wix4ExecFirewallExceptionsInstall_A64\t3073\tWix4FWCA_A64\tExecFirewallExceptions\t",
42 + "CustomAction:Wix4ExecFirewallExceptionsUninstall_A64\t3073\tWix4FWCA_A64\tExecFirewallExceptions\t",
43 + "CustomAction:Wix4RollbackFirewallExceptionsInstall_A64\t3329\tWix4FWCA_A64\tExecFirewallExceptions\t",
44 + "CustomAction:Wix4RollbackFirewallExceptionsUninstall_A64\t3329\tWix4FWCA_A64\tExecFirewallExceptions\t",
45 + "CustomAction:Wix4SchedFirewallExceptionsInstall_A64\t1\tWix4FWCA_A64\tSchedFirewallExceptionsInstall\t",
46 + "CustomAction:Wix4SchedFirewallExceptionsUninstall_A64\t1\tWix4FWCA_A64\tSchedFirewallExceptionsUninstall\t",
47 "WixFirewallException:ExampleFirewall\texample\t*\t42\t6\t\t0\t2147483647\tfilF5_pLhBuF5b4N9XEo52g_hUM5Lo\tAn example firewall",
48 }, results);
49 }
50
51 private static void Build(string[] args)
52 {
28 - var result = WixRunner.Execute(args)
29 - .AssertSuccess();
53 + var result = WixRunner.Execute(args);
54 + result.AssertSuccess();
55 + }
56 +
57 + private static void BuildARM64(string[] args)
58 + {
59 + var newArgs = args.ToList();
60 + newArgs.Add("-platform");
61 + newArgs.Add("arm64");
62 +
63 + var result = WixRunner.Execute(newArgs.ToArray());
64 + result.AssertSuccess();
65 }
66 }
67 }
src/wixext/FirewallCompiler.cs
+3 -12
@@ -7,6 +7,7 @@ namespace WixToolset.Firewall
7 using System.Xml.Linq;
8 using WixToolset.Data;
9 using WixToolset.Extensibility;
10 + using WixToolset.Extensibility.Data;
11 using WixToolset.Firewall.Tuples;
12
13 /// <summary>
@@ -292,18 +293,8 @@ namespace WixToolset.Firewall
293 tuple.Attributes = attributes;
294 }
295
295 - if (this.Context.Platform == Platform.ARM)
296 - {
297 - // Ensure ARM version of the CA is referenced
298 - this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, TupleDefinitions.CustomAction, "WixSchedFirewallExceptionsInstall_ARM");
299 - this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, TupleDefinitions.CustomAction, "WixSchedFirewallExceptionsUninstall_ARM");
300 - }
301 - else
302 - {
303 - // All other supported platforms use x86
304 - this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, TupleDefinitions.CustomAction, "WixSchedFirewallExceptionsInstall");
305 - this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, TupleDefinitions.CustomAction, "WixSchedFirewallExceptionsUninstall");
306 - }
296 + this.ParseHelper.CreateCustomActionReference(sourceLineNumbers, section, "SchedFirewallExceptionsInstall", this.Context.Platform, CustomActionPlatforms.ARM | CustomActionPlatforms.ARM64 | CustomActionPlatforms.X64 | CustomActionPlatforms.X86);
297 + this.ParseHelper.CreateCustomActionReference(sourceLineNumbers, section, "SchedFirewallExceptionsUninstall", this.Context.Platform, CustomActionPlatforms.ARM | CustomActionPlatforms.ARM64 | CustomActionPlatforms.X64 | CustomActionPlatforms.X86);
298 }
299 }
300
src/wixext/FirewallWindowsInstallerBackendExtension.cs
+1 -3
@@ -1,10 +1,8 @@
1 -// Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information.
1 +// Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information.
2
3 namespace WixToolset.Firewall
4 {
5 using System.Collections.Generic;
6 - using System.Linq;
7 - using System.Xml;
6 using WixToolset.Data.WindowsInstaller;
7 using WixToolset.Extensibility;
8
src/wixlib/FirewallExtension_Platform.wxi
+16 -16
@@ -2,33 +2,33 @@
2 <!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. -->
3
4 <Include xmlns="http://wixtoolset.org/schemas/v4/wxs">
5 - <?include caSuffix.wxi ?>
5 + <?include caDecor.wxi ?>
6 <Fragment>
7 <UIRef Id="WixFirewallErrors" />
8 <UI>
9 - <ProgressText Action="WixSchedFirewallExceptionsInstall$(var.Suffix)">!(loc.WixSchedFirewallExceptionsInstall)</ProgressText>
10 - <ProgressText Action="WixSchedFirewallExceptionsUninstall$(var.Suffix)">!(loc.WixSchedFirewallExceptionsUninstall)</ProgressText>
11 - <ProgressText Action="WixRollbackFirewallExceptionsInstall$(var.DeferredSuffix)">!(loc.WixRollbackFirewallExceptionsInstall)</ProgressText>
12 - <ProgressText Action="WixExecFirewallExceptionsInstall$(var.DeferredSuffix)">!(loc.WixExecFirewallExceptionsInstall)</ProgressText>
13 - <ProgressText Action="WixRollbackFirewallExceptionsUninstall$(var.DeferredSuffix)">!(loc.WixRollbackFirewallExceptionsUninstall)</ProgressText>
14 - <ProgressText Action="WixExecFirewallExceptionsUninstall$(var.DeferredSuffix)">!(loc.WixExecFirewallExceptionsUninstall)</ProgressText>
9 + <ProgressText Action="$(var.Prefix)SchedFirewallExceptionsInstall$(var.Suffix)">!(loc.WixSchedFirewallExceptionsInstall)</ProgressText>
10 + <ProgressText Action="$(var.Prefix)SchedFirewallExceptionsUninstall$(var.Suffix)">!(loc.WixSchedFirewallExceptionsUninstall)</ProgressText>
11 + <ProgressText Action="$(var.Prefix)RollbackFirewallExceptionsInstall$(var.Suffix)">!(loc.WixRollbackFirewallExceptionsInstall)</ProgressText>
12 + <ProgressText Action="$(var.Prefix)ExecFirewallExceptionsInstall$(var.Suffix)">!(loc.WixExecFirewallExceptionsInstall)</ProgressText>
13 + <ProgressText Action="$(var.Prefix)RollbackFirewallExceptionsUninstall$(var.Suffix)">!(loc.WixRollbackFirewallExceptionsUninstall)</ProgressText>
14 + <ProgressText Action="$(var.Prefix)ExecFirewallExceptionsUninstall$(var.Suffix)">!(loc.WixExecFirewallExceptionsUninstall)</ProgressText>
15 </UI>
16
17 - <CustomAction Id="WixSchedFirewallExceptionsInstall$(var.Suffix)" BinaryKey="WixFirewallCA$(var.Suffix)" DllEntry="SchedFirewallExceptionsInstall" Execute="immediate" Return="check" SuppressModularization="yes" />
18 - <CustomAction Id="WixSchedFirewallExceptionsUninstall$(var.Suffix)" BinaryKey="WixFirewallCA$(var.Suffix)" DllEntry="SchedFirewallExceptionsUninstall" Execute="immediate" Return="check" SuppressModularization="yes" />
19 - <CustomAction Id="WixRollbackFirewallExceptionsInstall$(var.DeferredSuffix)" BinaryKey="WixFirewallCA$(var.Suffix)" DllEntry="ExecFirewallExceptions" Execute="rollback" Impersonate="no" Return="check" SuppressModularization="yes" />
20 - <CustomAction Id="WixExecFirewallExceptionsInstall$(var.DeferredSuffix)" BinaryKey="WixFirewallCA$(var.Suffix)" DllEntry="ExecFirewallExceptions" Execute="deferred" Impersonate="no" Return="check" SuppressModularization="yes" />
21 - <CustomAction Id="WixRollbackFirewallExceptionsUninstall$(var.DeferredSuffix)" BinaryKey="WixFirewallCA$(var.Suffix)" DllEntry="ExecFirewallExceptions" Execute="rollback" Impersonate="no" Return="check" SuppressModularization="yes" />
22 - <CustomAction Id="WixExecFirewallExceptionsUninstall$(var.DeferredSuffix)" BinaryKey="WixFirewallCA$(var.Suffix)" DllEntry="ExecFirewallExceptions" Execute="deferred" Impersonate="no" Return="check" SuppressModularization="yes" />
17 + <CustomAction Id="$(var.Prefix)SchedFirewallExceptionsInstall$(var.Suffix)" BinaryKey="$(var.Prefix)FWCA$(var.Suffix)" DllEntry="SchedFirewallExceptionsInstall" Execute="immediate" Return="check" SuppressModularization="yes" />
18 + <CustomAction Id="$(var.Prefix)SchedFirewallExceptionsUninstall$(var.Suffix)" BinaryKey="$(var.Prefix)FWCA$(var.Suffix)" DllEntry="SchedFirewallExceptionsUninstall" Execute="immediate" Return="check" SuppressModularization="yes" />
19 + <CustomAction Id="$(var.Prefix)RollbackFirewallExceptionsInstall$(var.Suffix)" BinaryKey="$(var.Prefix)FWCA$(var.Suffix)" DllEntry="ExecFirewallExceptions" Execute="rollback" Impersonate="no" Return="check" SuppressModularization="yes" />
20 + <CustomAction Id="$(var.Prefix)ExecFirewallExceptionsInstall$(var.Suffix)" BinaryKey="$(var.Prefix)FWCA$(var.Suffix)" DllEntry="ExecFirewallExceptions" Execute="deferred" Impersonate="no" Return="check" SuppressModularization="yes" />
21 + <CustomAction Id="$(var.Prefix)RollbackFirewallExceptionsUninstall$(var.Suffix)" BinaryKey="$(var.Prefix)FWCA$(var.Suffix)" DllEntry="ExecFirewallExceptions" Execute="rollback" Impersonate="no" Return="check" SuppressModularization="yes" />
22 + <CustomAction Id="$(var.Prefix)ExecFirewallExceptionsUninstall$(var.Suffix)" BinaryKey="$(var.Prefix)FWCA$(var.Suffix)" DllEntry="ExecFirewallExceptions" Execute="deferred" Impersonate="no" Return="check" SuppressModularization="yes" />
23
24 <!--
25 We need the firewall on Windows XP SP2 or later.
26 -->
27 <InstallExecuteSequence>
28 - <Custom Action="WixSchedFirewallExceptionsUninstall$(var.Suffix)" Before="RemoveFiles" Overridable="yes">
28 + <Custom Action="$(var.Prefix)SchedFirewallExceptionsUninstall$(var.Suffix)" Before="RemoveFiles" Overridable="yes">
29 <![CDATA[ VersionNT >= 600 OR (VersionNT >= 501 AND ((MsiNTProductType = 1 AND ServicePackLevel >= 2) OR (MsiNTProductType > 1 AND ServicePackLevel >= 1))) ]]>
30 </Custom>
31 - <Custom Action="WixSchedFirewallExceptionsInstall$(var.Suffix)" After="InstallFiles" Overridable="yes">
31 + <Custom Action="$(var.Prefix)SchedFirewallExceptionsInstall$(var.Suffix)" After="InstallFiles" Overridable="yes">
32 <![CDATA[ VersionNT >= 600 OR (VersionNT >= 501 AND ((MsiNTProductType = 1 AND ServicePackLevel >= 2) OR (MsiNTProductType > 1 AND ServicePackLevel >= 1))) ]]>
33 </Custom>
34 </InstallExecuteSequence>
@@ -36,6 +36,6 @@
36
37 <!-- Firewall Custom Action DLL Definitions -->
38 <Fragment>
39 - <Binary Id="WixFirewallCA$(var.Suffix)" SourceFile="!(bindpath.$(var.platform))fwca.dll" />
39 + <Binary Id="$(var.Prefix)FWCA$(var.Suffix)" SourceFile="!(bindpath.$(var.platform))fwca.dll" />
40 </Fragment>
41 </Include>
src/wixlib/FirewallExtension_arm.wxs new
+8
@@ -0,0 +1,8 @@
1 +<?xml version="1.0"?>
2 +<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. -->
3 +
4 +
5 +<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs">
6 + <?define platform=arm ?>
7 + <?include FirewallExtension_Platform.wxi ?>
8 +</Wix>
src/wixlib/FirewallExtension_arm64.wxs new
+8
@@ -0,0 +1,8 @@
1 +<?xml version="1.0"?>
2 +<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. -->
3 +
4 +
5 +<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs">
6 + <?define platform=arm64 ?>
7 + <?include FirewallExtension_Platform.wxi ?>
8 +</Wix>
src/wixlib/FirewallExtension_x64.wxs new
+8
@@ -0,0 +1,8 @@
1 +<?xml version="1.0"?>
2 +<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. -->
3 +
4 +
5 +<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs">
6 + <?define platform=x64 ?>
7 + <?include FirewallExtension_Platform.wxi ?>
8 +</Wix>
src/wixlib/caDecor.wxi new
+40
@@ -0,0 +1,40 @@
1 +<?xml version="1.0" encoding="utf-8"?>
2 +<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. -->
3 +
4 +
5 +<Include xmlns="http://schemas.microsoft.com/wix/2006/wi">
6 + <?ifdef Prefix ?>
7 + <?undef Prefix ?>
8 + <?endif ?>
9 +
10 + <?define Prefix="Wix4" ?>
11 +
12 + <?ifndef platform ?>
13 + <?define platform="x86" ?>
14 + <?endif ?>
15 +
16 + <?if $(var.platform)="" ?>
17 + <?undef platform ?>
18 + <?define platform="x86" ?>
19 + <?endif ?>
20 +
21 + <?ifdef Suffix ?>
22 + <?undef Suffix ?>
23 + <?endif ?>
24 +
25 + <?if $(var.platform)~="x86" ?>
26 + <?define Suffix="_X86" ?>
27 + <?endif ?>
28 +
29 + <?if $(var.platform)~="x64" ?>
30 + <?define Suffix="_X64" ?>
31 + <?endif ?>
32 +
33 + <?if $(var.platform)~="arm" ?>
34 + <?define Suffix="_A32" ?>
35 + <?endif ?>
36 +
37 + <?if $(var.platform)~="arm64" ?>
38 + <?define Suffix="_A64" ?>
39 + <?endif ?>
40 +</Include>
src/wixlib/caSuffix.wxi deleted
-28
@@ -1,28 +0,0 @@
1 -<?xml version="1.0" encoding="utf-8"?>
2 -<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. -->
3 -
4 -<Include xmlns="http://wixtoolset.org/schemas/v4/wxs">
5 - <?ifndef platform ?>
6 - <?error Required value "platform" not defined in include caSuffix.wxi ?>
7 - <?endif ?>
8 -
9 - <?ifdef Suffix ?>
10 - <?undef Suffix ?>
11 - <?undef DeferredSuffix ?>
12 - <?endif ?>
13 -
14 - <?if $(var.platform)="x86" ?>
15 - <?define Suffix="" ?>
16 - <?define DeferredSuffix="" ?>
17 - <?endif ?>
18 -
19 - <?if $(var.platform)="x64" ?>
20 - <?define Suffix="_x64" ?>
21 - <?define DeferredSuffix="_64" ?>
22 - <?endif ?>
23 -
24 - <?if $(var.platform)="arm" ?>
25 - <?define Suffix="_ARM" ?>
26 - <?define DeferredSuffix="_ARM" ?>
27 - <?endif ?>
28 -</Include>
src/wixlib/firewall.wixproj
+37 -2
@@ -1,7 +1,7 @@
1 <?xml version="1.0" encoding="utf-8"?>
2 <!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. -->
3 <Project DefaultTargets="Build" InitialTargets="EnsureWixToolsetInstalled" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="15.0">
4 - <Import Project="..\..\packages\WixToolset.MSBuild.4.0.0-build-0086\build\WixToolset.MSBuild.props" Condition="Exists('..\..\packages\WixToolset.MSBuild.4.0.0-build-0086\build\WixToolset.MSBuild.props')" />
4 + <Import Project="..\..\packages\WixToolset.MSBuild.4.0.0-build-0093\build\WixToolset.MSBuild.props" Condition="Exists('..\..\packages\WixToolset.MSBuild.4.0.0-build-0093\build\WixToolset.MSBuild.props')" />
5 <Import Project="..\FindLocalWix.props" />
6 <PropertyGroup>
7 <ProjectGuid>{1acffefd-505a-41a5-acbf-a02b7b473aa2}</ProjectGuid>
@@ -13,12 +13,31 @@
13 </PropertyGroup>
14 <ItemGroup>
15 <Compile Include="FirewallExtension.wxs" />
16 + <Compile Include="FirewallExtension_arm.wxs" />
17 + <Compile Include="FirewallExtension_arm64.wxs" />
18 + <Compile Include="FirewallExtension_x64.wxs" />
19 <Compile Include="FirewallExtension_x86.wxs" />
20 <EmbeddedResource Include="en-us.wxl" />
21 <EmbeddedResource Include="es-es.wxl" />
22 <EmbeddedResource Include="ja-jp.wxl" />
23 <EmbeddedResource Include="pl-pl.wxl" />
24 </ItemGroup>
25 +
26 + <ItemGroup>
27 + <BindInputPaths Include="$(OutputPath)Win32">
28 + <BindName>x86</BindName>
29 + </BindInputPaths>
30 + <BindInputPaths Include="$(OutputPath)x64)">
31 + <BindName>x64</BindName>
32 + </BindInputPaths>
33 + <BindInputPaths Include="$(OutputPath)arm)">
34 + <BindName>arm</BindName>
35 + </BindInputPaths>
36 + <BindInputPaths Include="$(OutputPath)arm64)">
37 + <BindName>arm64</BindName>
38 + </BindInputPaths>
39 + </ItemGroup>
40 +
41 <ItemGroup>
42 <None Include="packages.config" />
43 </ItemGroup>
@@ -26,6 +45,22 @@
45 <ProjectReference Include="..\ca\fwca.vcxproj">
46 <Name>fwca</Name>
47 <Project>{F72D34CA-48DA-4DFD-91A9-A0C78BEF6981}</Project>
48 + <Properties>Platform=ARM</Properties>
49 + </ProjectReference>
50 + <ProjectReference Include="..\ca\fwca.vcxproj">
51 + <Name>fwca</Name>
52 + <Project>{F72D34CA-48DA-4DFD-91A9-A0C78BEF6981}</Project>
53 + <Properties>Platform=ARM64</Properties>
54 + </ProjectReference>
55 + <ProjectReference Include="..\ca\fwca.vcxproj">
56 + <Name>fwca</Name>
57 + <Project>{F72D34CA-48DA-4DFD-91A9-A0C78BEF6981}</Project>
58 + <Properties>Platform=x86</Properties>
59 + </ProjectReference>
60 + <ProjectReference Include="..\ca\fwca.vcxproj">
61 + <Name>fwca</Name>
62 + <Project>{F72D34CA-48DA-4DFD-91A9-A0C78BEF6981}</Project>
63 + <Properties>Platform=x64</Properties>
64 </ProjectReference>
65 </ItemGroup>
66 <Import Project="$(WixTargetsPath)" Condition=" '$(WixTargetsPath)' != '' AND Exists('$(WixTargetsPath)') " />
@@ -38,7 +73,7 @@
73 <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>
74 </PropertyGroup>
75 <Error Condition="!Exists('..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets'))" />
41 - <Error Condition="!Exists('..\..\packages\WixToolset.MSBuild.4.0.0-build-0086\build\WixToolset.MSBuild.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.MSBuild.4.0.0-build-0086\build\WixToolset.MSBuild.props'))" />
76 + <Error Condition="!Exists('..\..\packages\WixToolset.MSBuild.4.0.0-build-0093\build\WixToolset.MSBuild.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.MSBuild.4.0.0-build-0093\build\WixToolset.MSBuild.props'))" />
77 </Target>
78 <Import Project="..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets" Condition="Exists('..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets')" />
79 </Project>
\ No newline at end of file
src/wixlib/packages.config
+1 -1
@@ -1,5 +1,5 @@
1 <?xml version="1.0" encoding="utf-8"?>
2 <packages>
3 <package id="Nerdbank.GitVersioning" version="2.1.65" developmentDependency="true" targetFramework="net40" />
4 - <package id="WixToolset.MSBuild" version="4.0.0-build-0086" developmentDependency="true" targetFramework="net40" />
4 + <package id="WixToolset.MSBuild" version="4.0.0-build-0093" developmentDependency="true" targetFramework="net40" />
5 </packages>
\ No newline at end of file