From df8cf532fb8f77947664b95901122b8b47fe562b Mon Sep 17 00:00:00 2001 From: Bob Arnson Date: Sun, 17 May 2020 17:30:46 -0400 Subject: Add missing ARM64 cases & random fixes. --- src/WixToolset.Core/Compiler_2.cs | 45 ++++++++++++++++++++++----------------- 1 file changed, 26 insertions(+), 19 deletions(-) (limited to 'src/WixToolset.Core/Compiler_2.cs') diff --git a/src/WixToolset.Core/Compiler_2.cs b/src/WixToolset.Core/Compiler_2.cs index 85fb9e4c..c5f3fb6f 100644 --- a/src/WixToolset.Core/Compiler_2.cs +++ b/src/WixToolset.Core/Compiler_2.cs @@ -632,23 +632,27 @@ namespace WixToolset.Core switch (this.CurrentPlatform) { - case Platform.X86: - platform = "Intel"; - break; - case Platform.X64: - platform = "x64"; - msiVersion = 200; - break; - case Platform.IA64: - platform = "Intel64"; - msiVersion = 200; - break; - case Platform.ARM: - platform = "Arm"; - msiVersion = 500; - break; - default: - throw new ArgumentException("Unknown platform enumeration '{0}' encountered.", this.CurrentPlatform.ToString()); + case Platform.X86: + platform = "Intel"; + break; + case Platform.X64: + platform = "x64"; + msiVersion = 200; + break; + case Platform.IA64: + platform = "Intel64"; + msiVersion = 200; + break; + case Platform.ARM: + platform = "Arm"; + msiVersion = 500; + break; + case Platform.ARM64: + platform = "Arm64"; + msiVersion = 500; + break; + default: + throw new ArgumentException("Unknown platform enumeration '{0}' encountered.", this.CurrentPlatform.ToString()); } foreach (var attrib in node.Attributes()) @@ -768,6 +772,9 @@ namespace WixToolset.Core case "arm": platform = "Arm"; break; + case "arm64": + platform = "Arm64"; + break; case "": break; default: @@ -813,13 +820,13 @@ namespace WixToolset.Core this.Core.Write(ErrorMessages.IllegalAttributeWithOtherAttribute(sourceLineNumbers, node.Name.LocalName, "InstallPrivileges", "InstallScope")); } - if ((0 != String.Compare(platform, "Intel", StringComparison.OrdinalIgnoreCase)) && 200 > msiVersion) + if ((String.Equals(platform, "X64", StringComparison.OrdinalIgnoreCase) || String.Equals(platform, "Intel64", StringComparison.OrdinalIgnoreCase)) && 200 > msiVersion) { msiVersion = 200; this.Core.Write(WarningMessages.RequiresMsi200for64bitPackage(sourceLineNumbers)); } - if ((0 == String.Compare(platform, "Arm", StringComparison.OrdinalIgnoreCase)) && 500 > msiVersion) + if ((String.Equals(platform, "Arm", StringComparison.OrdinalIgnoreCase) || String.Equals(platform, "Arm64", StringComparison.OrdinalIgnoreCase)) && 500 > msiVersion) { msiVersion = 500; this.Core.Write(WarningMessages.RequiresMsi500forArmPackage(sourceLineNumbers)); -- cgit v1.2.3-55-g6feb