|
9 | 9 | Specifies the MultiTarget TFM(s) to include for building the components. The default value is 'all'. |
10 | 10 |
|
11 | 11 | .PARAMETER ExcludeMultiTargets |
12 | | - Specifies the MultiTarget TFM(s) to exclude for building the components. The default value excludes targets that require additional tooling or workloads to build. Run uno-check to install the required workloads. |
| 12 | + Specifies the MultiTarget TFM(s) to exclude for building the components. The default value excludes targets that require additional tooling or workloads to build: 'wpf', 'linuxgtk', 'macos', 'ios', and 'android'. Run uno-check to install the required workloads. |
13 | 13 |
|
14 | 14 | .PARAMETER Heads |
15 | 15 | The heads to include in the build. Default is 'Uwp', 'Wasdk', 'Wasm'. |
|
46 | 46 | Date: 2/19/2024 |
47 | 47 | #> |
48 | 48 | Param ( |
49 | | - [ValidateSet('all', 'wasm', 'uwp', 'wasdk', 'macos', 'ios', 'android', 'netstandard')] |
| 49 | + [ValidateSet('all', 'wasm', 'uwp', 'wasdk', 'wpf', 'linuxgtk', 'macos', 'ios', 'android', 'netstandard')] |
50 | 50 | [Alias("mt")] |
51 | 51 | [string[]]$MultiTargets = @('uwp', 'wasdk', 'wasm'), # default settings |
52 | 52 |
|
53 | | - [ValidateSet('wasm', 'uwp', 'wasdk', 'macos', 'ios', 'android', 'netstandard')] |
| 53 | + [ValidateSet('wasm', 'uwp', 'wasdk', 'wpf', 'linuxgtk', 'macos', 'ios', 'android', 'netstandard')] |
54 | 54 | [string[]]$ExcludeMultiTargets = @(), # default settings |
55 | 55 |
|
56 | 56 | [ValidateSet('all', 'Uwp', 'Wasdk', 'Wasm', 'Tests.Uwp', 'Tests.Wasdk')] |
@@ -87,19 +87,22 @@ if ($null -eq $ExcludeMultiTargets) |
87 | 87 | $ExcludeMultiTargets = @() |
88 | 88 | } |
89 | 89 |
|
90 | | -# WinUI 2 only builds native UWP (Uno.UI dropped in Uno 6). |
91 | | -# WinUI 3 excludes UWP. Both uwp and wasdk share a targetframework and cannot be enabled at once. |
92 | | -if ($WinUIMajorVersion -eq 2) |
| 90 | +# Both uwp and wasdk share a targetframework. Both cannot be enabled at once. |
| 91 | +# If both are supplied, remove one based on WinUIMajorVersion. |
| 92 | +if ($MultiTargets.Contains('uwp') -and $MultiTargets.Contains('wasdk')) |
93 | 93 | { |
94 | | - $ExcludeMultiTargets = $ExcludeMultiTargets + 'wasdk' + 'wasm' + 'macos' + 'ios' + 'android' |
95 | | -} |
96 | | -else |
97 | | -{ |
98 | | - $ExcludeMultiTargets = $ExcludeMultiTargets + 'uwp' |
| 94 | + if ($WinUIMajorVersion -eq 2) |
| 95 | + { |
| 96 | + $ExcludeMultiTargets = $ExcludeMultiTargets + 'wasdk' |
| 97 | + } |
| 98 | + else |
| 99 | + { |
| 100 | + $ExcludeMultiTargets = $ExcludeMultiTargets + 'uwp' |
| 101 | + } |
99 | 102 | } |
100 | 103 |
|
101 | 104 | if ($MultiTargets -eq 'all') { |
102 | | - $MultiTargets = @('wasm', 'uwp', 'wasdk', 'macos', 'ios', 'android', 'netstandard') |
| 105 | + $MultiTargets = @('wasm', 'uwp', 'wasdk', 'wpf', 'linuxgtk', 'macos', 'ios', 'android', 'netstandard') |
103 | 106 | } |
104 | 107 |
|
105 | 108 | if ($ExcludeMultiTargets) { |
|
0 commit comments