diff options
| author | Sean Hall <r.sean.hall@gmail.com> | 2023-01-15 19:17:29 -0600 |
|---|---|---|
| committer | Sean Hall <r.sean.hall@gmail.com> | 2023-01-18 18:10:56 -0600 |
| commit | d180bc6df297422f189ffd08a0dd558bfbeba1ca (patch) | |
| tree | 9eac5847ce2335548232480b0ccb197f5dda23a0 /src/ext/NetFx/wixext | |
| parent | 853887b4e84df1965794802b7683f3a9aca3e930 (diff) | |
| download | wix-d180bc6df297422f189ffd08a0dd558bfbeba1ca.tar.gz wix-d180bc6df297422f189ffd08a0dd558bfbeba1ca.tar.bz2 wix-d180bc6df297422f189ffd08a0dd558bfbeba1ca.zip | |
Add netfx:DotNetCoreSdkFeatureBandSearch.
7058
Diffstat (limited to 'src/ext/NetFx/wixext')
4 files changed, 260 insertions, 33 deletions
diff --git a/src/ext/NetFx/wixext/NetFxCompiler.cs b/src/ext/NetFx/wixext/NetFxCompiler.cs index 7a37cf90..c40bc77b 100644 --- a/src/ext/NetFx/wixext/NetFxCompiler.cs +++ b/src/ext/NetFx/wixext/NetFxCompiler.cs | |||
| @@ -55,6 +55,12 @@ namespace WixToolset.Netfx | |||
| 55 | case "DotNetCoreSdkSearchRef": | 55 | case "DotNetCoreSdkSearchRef": |
| 56 | this.ParseDotNetCoreSdkSearchRefElement(intermediate, section, element); | 56 | this.ParseDotNetCoreSdkSearchRefElement(intermediate, section, element); |
| 57 | break; | 57 | break; |
| 58 | case "DotNetCoreSdkFeatureBandSearch": | ||
| 59 | this.ParseDotNetCoreSdkFeatureBandSearchElement(intermediate, section, element); | ||
| 60 | break; | ||
| 61 | case "DotNetCoreSdkFeatureBandSearchRef": | ||
| 62 | this.ParseDotNetCoreSdkFeatureBandSearchRefElement(intermediate, section, element); | ||
| 63 | break; | ||
| 58 | case "DotNetCompatibilityCheck": | 64 | case "DotNetCompatibilityCheck": |
| 59 | this.ParseDotNetCompatibilityCheckElement(intermediate, section, element); | 65 | this.ParseDotNetCompatibilityCheckElement(intermediate, section, element); |
| 60 | break; | 66 | break; |
| @@ -81,6 +87,12 @@ namespace WixToolset.Netfx | |||
| 81 | case "DotNetCoreSdkSearchRef": | 87 | case "DotNetCoreSdkSearchRef": |
| 82 | this.ParseDotNetCoreSdkSearchRefElement(intermediate, section, element); | 88 | this.ParseDotNetCoreSdkSearchRefElement(intermediate, section, element); |
| 83 | break; | 89 | break; |
| 90 | case "DotNetCoreSdkFeatureBandSearch": | ||
| 91 | this.ParseDotNetCoreSdkFeatureBandSearchElement(intermediate, section, element); | ||
| 92 | break; | ||
| 93 | case "DotNetCoreSdkFeatureBandSearchRef": | ||
| 94 | this.ParseDotNetCoreSdkFeatureBandSearchRefElement(intermediate, section, element); | ||
| 95 | break; | ||
| 84 | default: | 96 | default: |
| 85 | this.ParseHelper.UnexpectedElement(parentElement, element); | 97 | this.ParseHelper.UnexpectedElement(parentElement, element); |
| 86 | break; | 98 | break; |
| @@ -267,8 +279,8 @@ namespace WixToolset.Netfx | |||
| 267 | string variable = null; | 279 | string variable = null; |
| 268 | string condition = null; | 280 | string condition = null; |
| 269 | string after = null; | 281 | string after = null; |
| 270 | NetCoreSdkSearchPlatform? platform = null; | 282 | NetCoreSearchPlatform? platform = null; |
| 271 | string version = null; | 283 | var majorVersion = CompilerConstants.IntegerNotSet; |
| 272 | 284 | ||
| 273 | foreach (var attrib in element.Attributes()) | 285 | foreach (var attrib in element.Attributes()) |
| 274 | { | 286 | { |
| @@ -293,22 +305,22 @@ namespace WixToolset.Netfx | |||
| 293 | switch (platformValue) | 305 | switch (platformValue) |
| 294 | { | 306 | { |
| 295 | case "arm64": | 307 | case "arm64": |
| 296 | platform = NetCoreSdkSearchPlatform.Arm64; | 308 | platform = NetCoreSearchPlatform.Arm64; |
| 297 | break; | 309 | break; |
| 298 | case "x64": | 310 | case "x64": |
| 299 | platform = NetCoreSdkSearchPlatform.X64; | 311 | platform = NetCoreSearchPlatform.X64; |
| 300 | break; | 312 | break; |
| 301 | case "x86": | 313 | case "x86": |
| 302 | platform = NetCoreSdkSearchPlatform.X86; | 314 | platform = NetCoreSearchPlatform.X86; |
| 303 | break; | 315 | break; |
| 304 | default: | 316 | default: |
| 305 | this.Messaging.Write(ErrorMessages.IllegalAttributeValue(sourceLineNumbers, element.Name.LocalName, "Platform", platformValue, "arm64", "x64", "x86")); | 317 | this.Messaging.Write(ErrorMessages.IllegalAttributeValue(sourceLineNumbers, element.Name.LocalName, "Platform", platformValue, "arm64", "x64", "x86")); |
| 306 | break; | 318 | break; |
| 307 | } | 319 | } |
| 308 | break; | 320 | break; |
| 309 | case "Version": | 321 | case "MajorVersion": |
| 310 | // .NET Core had a different deployment strategy before .NET Core 3.0 which would require different detection logic. | 322 | // .NET Core had a different deployment strategy before .NET Core 3.0 which would require different detection logic. |
| 311 | version = this.ParseHelper.GetAttributeVersionValue(sourceLineNumbers, attrib); | 323 | majorVersion = this.ParseHelper.GetAttributeIntegerValue(sourceLineNumbers, attrib, 3, Int32.MaxValue); |
| 312 | break; | 324 | break; |
| 313 | default: | 325 | default: |
| 314 | this.ParseHelper.UnexpectedAttribute(element, attrib); | 326 | this.ParseHelper.UnexpectedAttribute(element, attrib); |
| @@ -331,16 +343,13 @@ namespace WixToolset.Netfx | |||
| 331 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, element.Name.LocalName, "Platform")); | 343 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, element.Name.LocalName, "Platform")); |
| 332 | } | 344 | } |
| 333 | 345 | ||
| 334 | 346 | if (majorVersion == CompilerConstants.IntegerNotSet) | |
| 335 | if (String.IsNullOrEmpty(version)) | ||
| 336 | { | 347 | { |
| 337 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, element.Name.LocalName, "Version")); | 348 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, element.Name.LocalName, "MajorVersion")); |
| 338 | } | 349 | } |
| 339 | 350 | else if (majorVersion == 4) | |
| 340 | var ver = Version.Parse(version); | ||
| 341 | if (ver.Major == 4) | ||
| 342 | { | 351 | { |
| 343 | this.Messaging.Write(ErrorMessages.IllegalAttributeValue(sourceLineNumbers, element.Name.LocalName, "Version", version, "3.*", "5+.*")); | 352 | this.Messaging.Write(ErrorMessages.IllegalAttributeValue(sourceLineNumbers, element.Name.LocalName, "MajorVersion", "4", "3", "5+")); |
| 344 | } | 353 | } |
| 345 | 354 | ||
| 346 | this.ParseHelper.ParseForExtensionElements(this.Context.Extensions, intermediate, section, element); | 355 | this.ParseHelper.ParseForExtensionElements(this.Context.Extensions, intermediate, section, element); |
| @@ -358,7 +367,7 @@ namespace WixToolset.Netfx | |||
| 358 | section.AddSymbol(new NetFxNetCoreSdkSearchSymbol(sourceLineNumbers, id) | 367 | section.AddSymbol(new NetFxNetCoreSdkSearchSymbol(sourceLineNumbers, id) |
| 359 | { | 368 | { |
| 360 | Platform = platform.Value, | 369 | Platform = platform.Value, |
| 361 | Version = version, | 370 | MajorVersion = majorVersion, |
| 362 | }); | 371 | }); |
| 363 | } | 372 | } |
| 364 | } | 373 | } |
| @@ -391,6 +400,157 @@ namespace WixToolset.Netfx | |||
| 391 | this.ParseHelper.ParseForExtensionElements(this.Context.Extensions, intermediate, section, element); | 400 | this.ParseHelper.ParseForExtensionElements(this.Context.Extensions, intermediate, section, element); |
| 392 | } | 401 | } |
| 393 | 402 | ||
| 403 | private void ParseDotNetCoreSdkFeatureBandSearchElement(Intermediate intermediate, IntermediateSection section, XElement element) | ||
| 404 | { | ||
| 405 | var sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(element); | ||
| 406 | Identifier id = null; | ||
| 407 | string variable = null; | ||
| 408 | string condition = null; | ||
| 409 | string after = null; | ||
| 410 | NetCoreSearchPlatform? platform = null; | ||
| 411 | string version = null; | ||
| 412 | var majorVersion = 0; | ||
| 413 | var minorVersion = 0; | ||
| 414 | var patchVersion = 0; | ||
| 415 | |||
| 416 | foreach (var attrib in element.Attributes()) | ||
| 417 | { | ||
| 418 | if (String.IsNullOrEmpty(attrib.Name.NamespaceName) || this.Namespace == attrib.Name.Namespace) | ||
| 419 | { | ||
| 420 | switch (attrib.Name.LocalName) | ||
| 421 | { | ||
| 422 | case "Id": | ||
| 423 | id = this.ParseHelper.GetAttributeIdentifier(sourceLineNumbers, attrib); | ||
| 424 | break; | ||
| 425 | case "Variable": | ||
| 426 | variable = this.ParseHelper.GetAttributeBundleVariableNameValue(sourceLineNumbers, attrib); | ||
| 427 | break; | ||
| 428 | case "Condition": | ||
| 429 | condition = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); | ||
| 430 | break; | ||
| 431 | case "After": | ||
| 432 | after = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); | ||
| 433 | break; | ||
| 434 | case "Platform": | ||
| 435 | var platformValue = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); | ||
| 436 | switch (platformValue) | ||
| 437 | { | ||
| 438 | case "arm64": | ||
| 439 | platform = NetCoreSearchPlatform.Arm64; | ||
| 440 | break; | ||
| 441 | case "x64": | ||
| 442 | platform = NetCoreSearchPlatform.X64; | ||
| 443 | break; | ||
| 444 | case "x86": | ||
| 445 | platform = NetCoreSearchPlatform.X86; | ||
| 446 | break; | ||
| 447 | default: | ||
| 448 | this.Messaging.Write(ErrorMessages.IllegalAttributeValue(sourceLineNumbers, element.Name.LocalName, "Platform", platformValue, "arm64", "x64", "x86")); | ||
| 449 | break; | ||
| 450 | } | ||
| 451 | break; | ||
| 452 | case "Version": | ||
| 453 | version = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); | ||
| 454 | break; | ||
| 455 | default: | ||
| 456 | this.ParseHelper.UnexpectedAttribute(element, attrib); | ||
| 457 | break; | ||
| 458 | } | ||
| 459 | } | ||
| 460 | else | ||
| 461 | { | ||
| 462 | this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, element, attrib); | ||
| 463 | } | ||
| 464 | } | ||
| 465 | |||
| 466 | if (id == null) | ||
| 467 | { | ||
| 468 | id = this.ParseHelper.CreateIdentifier("dncsfbs", variable, condition, after); | ||
| 469 | } | ||
| 470 | |||
| 471 | if (!platform.HasValue) | ||
| 472 | { | ||
| 473 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, element.Name.LocalName, "Platform")); | ||
| 474 | } | ||
| 475 | |||
| 476 | if (String.IsNullOrEmpty(version)) | ||
| 477 | { | ||
| 478 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, element.Name.LocalName, "Version")); | ||
| 479 | } | ||
| 480 | else | ||
| 481 | { | ||
| 482 | if (!Version.TryParse(version, out var featureBandVersion)) | ||
| 483 | { | ||
| 484 | this.Messaging.Write(ErrorMessages.IllegalAttributeValue(sourceLineNumbers, element.Name.LocalName, "Version", version, "x.x.x00")); | ||
| 485 | } | ||
| 486 | else | ||
| 487 | { | ||
| 488 | majorVersion = featureBandVersion.Major; | ||
| 489 | minorVersion = featureBandVersion.Minor; | ||
| 490 | patchVersion = featureBandVersion.Build; | ||
| 491 | |||
| 492 | if ((patchVersion % 100) != 0 || featureBandVersion.Revision != -1) | ||
| 493 | { | ||
| 494 | this.Messaging.Write(ErrorMessages.IllegalAttributeValue(sourceLineNumbers, element.Name.LocalName, "Version", version, "x.x.x00")); | ||
| 495 | } | ||
| 496 | |||
| 497 | if (majorVersion == 4) | ||
| 498 | { | ||
| 499 | this.Messaging.Write(ErrorMessages.IllegalAttributeValue(sourceLineNumbers, element.Name.LocalName, "Version", version, "3.*", "5+.*")); | ||
| 500 | } | ||
| 501 | } | ||
| 502 | } | ||
| 503 | |||
| 504 | this.ParseHelper.ParseForExtensionElements(this.Context.Extensions, intermediate, section, element); | ||
| 505 | |||
| 506 | var bundleExtensionId = this.ParseHelper.CreateIdentifierValueFromPlatform("Wix4NetfxBundleExtension", this.Context.Platform, BurnPlatforms.X86 | BurnPlatforms.X64 | BurnPlatforms.ARM64); | ||
| 507 | if (bundleExtensionId == null) | ||
| 508 | { | ||
| 509 | this.Messaging.Write(ErrorMessages.UnsupportedPlatformForElement(sourceLineNumbers, this.Context.Platform.ToString(), element.Name.LocalName)); | ||
| 510 | } | ||
| 511 | |||
| 512 | if (!this.Messaging.EncounteredError) | ||
| 513 | { | ||
| 514 | this.ParseHelper.CreateWixSearchSymbol(section, sourceLineNumbers, element.Name.LocalName, id, variable, condition, after, bundleExtensionId); | ||
| 515 | |||
| 516 | section.AddSymbol(new NetFxNetCoreSdkFeatureBandSearchSymbol(sourceLineNumbers, id) | ||
| 517 | { | ||
| 518 | Platform = platform.Value, | ||
| 519 | MajorVersion = majorVersion, | ||
| 520 | MinorVersion = minorVersion, | ||
| 521 | PatchVersion = patchVersion, | ||
| 522 | }); | ||
| 523 | } | ||
| 524 | } | ||
| 525 | |||
| 526 | private void ParseDotNetCoreSdkFeatureBandSearchRefElement(Intermediate intermediate, IntermediateSection section, XElement element) | ||
| 527 | { | ||
| 528 | var sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(element); | ||
| 529 | |||
| 530 | foreach (var attrib in element.Attributes()) | ||
| 531 | { | ||
| 532 | if (String.IsNullOrEmpty(attrib.Name.NamespaceName) || this.Namespace == attrib.Name.Namespace) | ||
| 533 | { | ||
| 534 | switch (attrib.Name.LocalName) | ||
| 535 | { | ||
| 536 | case "Id": | ||
| 537 | var refId = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | ||
| 538 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, NetfxSymbolDefinitions.NetFxNetCoreSdkFeatureBandSearch, refId); | ||
| 539 | break; | ||
| 540 | default: | ||
| 541 | this.ParseHelper.UnexpectedAttribute(element, attrib); | ||
| 542 | break; | ||
| 543 | } | ||
| 544 | } | ||
| 545 | else | ||
| 546 | { | ||
| 547 | this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, element, attrib); | ||
| 548 | } | ||
| 549 | } | ||
| 550 | |||
| 551 | this.ParseHelper.ParseForExtensionElements(this.Context.Extensions, intermediate, section, element); | ||
| 552 | } | ||
| 553 | |||
| 394 | /// <summary> | 554 | /// <summary> |
| 395 | /// Parses a NativeImage element. | 555 | /// Parses a NativeImage element. |
| 396 | /// </summary> | 556 | /// </summary> |
diff --git a/src/ext/NetFx/wixext/Symbols/NetFxNetCoreSearchSdkFeatureBandSymbol.cs b/src/ext/NetFx/wixext/Symbols/NetFxNetCoreSearchSdkFeatureBandSymbol.cs new file mode 100644 index 00000000..ad80f9d2 --- /dev/null +++ b/src/ext/NetFx/wixext/Symbols/NetFxNetCoreSearchSdkFeatureBandSymbol.cs | |||
| @@ -0,0 +1,71 @@ | |||
| 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.Netfx | ||
| 4 | { | ||
| 5 | using WixToolset.Data; | ||
| 6 | using WixToolset.Netfx.Symbols; | ||
| 7 | |||
| 8 | public static partial class NetfxSymbolDefinitions | ||
| 9 | { | ||
| 10 | public static readonly IntermediateSymbolDefinition NetFxNetCoreSdkFeatureBandSearch = new IntermediateSymbolDefinition( | ||
| 11 | NetfxSymbolDefinitionType.NetFxNetCoreSdkFeatureBandSearch.ToString(), | ||
| 12 | new[] | ||
| 13 | { | ||
| 14 | new IntermediateFieldDefinition(nameof(NetFxNetCoreSdkFeatureBandSearchSymbolFields.Platform), IntermediateFieldType.Number), | ||
| 15 | new IntermediateFieldDefinition(nameof(NetFxNetCoreSdkFeatureBandSearchSymbolFields.MajorVersion), IntermediateFieldType.Number), | ||
| 16 | new IntermediateFieldDefinition(nameof(NetFxNetCoreSdkFeatureBandSearchSymbolFields.MinorVersion), IntermediateFieldType.Number), | ||
| 17 | new IntermediateFieldDefinition(nameof(NetFxNetCoreSdkFeatureBandSearchSymbolFields.PatchVersion), IntermediateFieldType.Number), | ||
| 18 | }, | ||
| 19 | typeof(NetFxNetCoreSdkFeatureBandSearchSymbol)); | ||
| 20 | } | ||
| 21 | } | ||
| 22 | |||
| 23 | namespace WixToolset.Netfx.Symbols | ||
| 24 | { | ||
| 25 | using WixToolset.Data; | ||
| 26 | |||
| 27 | public enum NetFxNetCoreSdkFeatureBandSearchSymbolFields | ||
| 28 | { | ||
| 29 | Platform, | ||
| 30 | MajorVersion, | ||
| 31 | MinorVersion, | ||
| 32 | PatchVersion, | ||
| 33 | } | ||
| 34 | |||
| 35 | public class NetFxNetCoreSdkFeatureBandSearchSymbol : IntermediateSymbol | ||
| 36 | { | ||
| 37 | public NetFxNetCoreSdkFeatureBandSearchSymbol() : base(NetfxSymbolDefinitions.NetFxNetCoreSdkFeatureBandSearch, null, null) | ||
| 38 | { | ||
| 39 | } | ||
| 40 | |||
| 41 | public NetFxNetCoreSdkFeatureBandSearchSymbol(SourceLineNumber sourceLineNumber, Identifier id = null) : base(NetfxSymbolDefinitions.NetFxNetCoreSdkFeatureBandSearch, sourceLineNumber, id) | ||
| 42 | { | ||
| 43 | } | ||
| 44 | |||
| 45 | public IntermediateField this[NetFxNetCoreSdkFeatureBandSearchSymbolFields index] => this.Fields[(int)index]; | ||
| 46 | |||
| 47 | public NetCoreSearchPlatform Platform | ||
| 48 | { | ||
| 49 | get => (NetCoreSearchPlatform)this.Fields[(int)NetFxNetCoreSdkFeatureBandSearchSymbolFields.Platform].AsNumber(); | ||
| 50 | set => this.Set((int)NetFxNetCoreSdkFeatureBandSearchSymbolFields.Platform, (int)value); | ||
| 51 | } | ||
| 52 | |||
| 53 | public int MajorVersion | ||
| 54 | { | ||
| 55 | get => this.Fields[(int)NetFxNetCoreSdkFeatureBandSearchSymbolFields.MajorVersion].AsNumber(); | ||
| 56 | set => this.Set((int)NetFxNetCoreSdkFeatureBandSearchSymbolFields.MajorVersion, value); | ||
| 57 | } | ||
| 58 | |||
| 59 | public int MinorVersion | ||
| 60 | { | ||
| 61 | get => this.Fields[(int)NetFxNetCoreSdkFeatureBandSearchSymbolFields.MinorVersion].AsNumber(); | ||
| 62 | set => this.Set((int)NetFxNetCoreSdkFeatureBandSearchSymbolFields.MinorVersion, value); | ||
| 63 | } | ||
| 64 | |||
| 65 | public int PatchVersion | ||
| 66 | { | ||
| 67 | get => this.Fields[(int)NetFxNetCoreSdkFeatureBandSearchSymbolFields.PatchVersion].AsNumber(); | ||
| 68 | set => this.Set((int)NetFxNetCoreSdkFeatureBandSearchSymbolFields.PatchVersion, value); | ||
| 69 | } | ||
| 70 | } | ||
| 71 | } | ||
diff --git a/src/ext/NetFx/wixext/Symbols/NetFxNetCoreSearchSdkSymbol.cs b/src/ext/NetFx/wixext/Symbols/NetFxNetCoreSearchSdkSymbol.cs index 86b750ea..a368068e 100644 --- a/src/ext/NetFx/wixext/Symbols/NetFxNetCoreSearchSdkSymbol.cs +++ b/src/ext/NetFx/wixext/Symbols/NetFxNetCoreSearchSdkSymbol.cs | |||
| @@ -12,9 +12,9 @@ namespace WixToolset.Netfx | |||
| 12 | new[] | 12 | new[] |
| 13 | { | 13 | { |
| 14 | new IntermediateFieldDefinition(nameof(NetFxNetCoreSdkSearchSymbolFields.Platform), IntermediateFieldType.Number), | 14 | new IntermediateFieldDefinition(nameof(NetFxNetCoreSdkSearchSymbolFields.Platform), IntermediateFieldType.Number), |
| 15 | new IntermediateFieldDefinition(nameof(NetFxNetCoreSdkSearchSymbolFields.Version), IntermediateFieldType.String), | 15 | new IntermediateFieldDefinition(nameof(NetFxNetCoreSdkSearchSymbolFields.MajorVersion), IntermediateFieldType.Number), |
| 16 | }, | 16 | }, |
| 17 | typeof(NetFxNetCoreSearchSymbol)); | 17 | typeof(NetFxNetCoreSdkSearchSymbol)); |
| 18 | } | 18 | } |
| 19 | } | 19 | } |
| 20 | 20 | ||
| @@ -22,21 +22,12 @@ namespace WixToolset.Netfx.Symbols | |||
| 22 | { | 22 | { |
| 23 | using WixToolset.Data; | 23 | using WixToolset.Data; |
| 24 | 24 | ||
| 25 | |||
| 26 | public enum NetCoreSdkSearchPlatform | ||
| 27 | { | ||
| 28 | X86, | ||
| 29 | X64, | ||
| 30 | Arm64, | ||
| 31 | } | ||
| 32 | |||
| 33 | public enum NetFxNetCoreSdkSearchSymbolFields | 25 | public enum NetFxNetCoreSdkSearchSymbolFields |
| 34 | { | 26 | { |
| 35 | Platform, | 27 | Platform, |
| 36 | Version, | 28 | MajorVersion, |
| 37 | } | 29 | } |
| 38 | 30 | ||
| 39 | |||
| 40 | public class NetFxNetCoreSdkSearchSymbol : IntermediateSymbol | 31 | public class NetFxNetCoreSdkSearchSymbol : IntermediateSymbol |
| 41 | { | 32 | { |
| 42 | public NetFxNetCoreSdkSearchSymbol() : base(NetfxSymbolDefinitions.NetFxNetCoreSdkSearch, null, null) | 33 | public NetFxNetCoreSdkSearchSymbol() : base(NetfxSymbolDefinitions.NetFxNetCoreSdkSearch, null, null) |
| @@ -49,16 +40,16 @@ namespace WixToolset.Netfx.Symbols | |||
| 49 | 40 | ||
| 50 | public IntermediateField this[NetFxNetCoreSdkSearchSymbolFields index] => this.Fields[(int)index]; | 41 | public IntermediateField this[NetFxNetCoreSdkSearchSymbolFields index] => this.Fields[(int)index]; |
| 51 | 42 | ||
| 52 | public NetCoreSdkSearchPlatform Platform | 43 | public NetCoreSearchPlatform Platform |
| 53 | { | 44 | { |
| 54 | get => (NetCoreSdkSearchPlatform)this.Fields[(int)NetFxNetCoreSdkSearchSymbolFields.Platform].AsNumber(); | 45 | get => (NetCoreSearchPlatform)this.Fields[(int)NetFxNetCoreSdkSearchSymbolFields.Platform].AsNumber(); |
| 55 | set => this.Set((int)NetFxNetCoreSdkSearchSymbolFields.Platform, (int)value); | 46 | set => this.Set((int)NetFxNetCoreSdkSearchSymbolFields.Platform, (int)value); |
| 56 | } | 47 | } |
| 57 | 48 | ||
| 58 | public string Version | 49 | public int MajorVersion |
| 59 | { | 50 | { |
| 60 | get => this.Fields[(int)NetFxNetCoreSdkSearchSymbolFields.Version].AsString(); | 51 | get => this.Fields[(int)NetFxNetCoreSdkSearchSymbolFields.MajorVersion].AsNumber(); |
| 61 | set => this.Set((int)NetFxNetCoreSdkSearchSymbolFields.Version, value); | 52 | set => this.Set((int)NetFxNetCoreSdkSearchSymbolFields.MajorVersion, value); |
| 62 | } | 53 | } |
| 63 | } | 54 | } |
| 64 | } | 55 | } |
diff --git a/src/ext/NetFx/wixext/Symbols/NetfxSymbolDefinitions.cs b/src/ext/NetFx/wixext/Symbols/NetfxSymbolDefinitions.cs index 00c52f9e..1db4f647 100644 --- a/src/ext/NetFx/wixext/Symbols/NetfxSymbolDefinitions.cs +++ b/src/ext/NetFx/wixext/Symbols/NetfxSymbolDefinitions.cs | |||
| @@ -10,8 +10,9 @@ namespace WixToolset.Netfx | |||
| 10 | { | 10 | { |
| 11 | NetFxNativeImage, | 11 | NetFxNativeImage, |
| 12 | NetFxNetCoreSearch, | 12 | NetFxNetCoreSearch, |
| 13 | NetFxNetCoreSdkSearch, | ||
| 14 | NetFxDotNetCompatibilityCheck, | 13 | NetFxDotNetCompatibilityCheck, |
| 14 | NetFxNetCoreSdkSearch, | ||
| 15 | NetFxNetCoreSdkFeatureBandSearch, | ||
| 15 | } | 16 | } |
| 16 | 17 | ||
| 17 | public static partial class NetfxSymbolDefinitions | 18 | public static partial class NetfxSymbolDefinitions |
| @@ -41,6 +42,9 @@ namespace WixToolset.Netfx | |||
| 41 | case NetfxSymbolDefinitionType.NetFxNetCoreSdkSearch: | 42 | case NetfxSymbolDefinitionType.NetFxNetCoreSdkSearch: |
| 42 | return NetfxSymbolDefinitions.NetFxNetCoreSdkSearch; | 43 | return NetfxSymbolDefinitions.NetFxNetCoreSdkSearch; |
| 43 | 44 | ||
| 45 | case NetfxSymbolDefinitionType.NetFxNetCoreSdkFeatureBandSearch: | ||
| 46 | return NetfxSymbolDefinitions.NetFxNetCoreSdkFeatureBandSearch; | ||
| 47 | |||
| 44 | case NetfxSymbolDefinitionType.NetFxDotNetCompatibilityCheck: | 48 | case NetfxSymbolDefinitionType.NetFxDotNetCompatibilityCheck: |
| 45 | return NetfxSymbolDefinitions.NetFxDotNetCompatibilityCheck; | 49 | return NetfxSymbolDefinitions.NetFxDotNetCompatibilityCheck; |
| 46 | 50 | ||
| @@ -53,6 +57,7 @@ namespace WixToolset.Netfx | |||
| 53 | { | 57 | { |
| 54 | NetFxNetCoreSearch.AddTag(BurnConstants.BundleExtensionSearchSymbolDefinitionTag); | 58 | NetFxNetCoreSearch.AddTag(BurnConstants.BundleExtensionSearchSymbolDefinitionTag); |
| 55 | NetFxNetCoreSdkSearch.AddTag(BurnConstants.BundleExtensionSearchSymbolDefinitionTag); | 59 | NetFxNetCoreSdkSearch.AddTag(BurnConstants.BundleExtensionSearchSymbolDefinitionTag); |
| 60 | NetFxNetCoreSdkFeatureBandSearch.AddTag(BurnConstants.BundleExtensionSearchSymbolDefinitionTag); | ||
| 56 | } | 61 | } |
| 57 | } | 62 | } |
| 58 | } | 63 | } |
