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