@@ -35,8 +35,17 @@ class UnitySetupInstance {
35
35
[string ]$Path
36
36
37
37
UnitySetupInstance([string ]$path ) {
38
+
39
+ # Windows
40
+ if ((-not $global :PSVersionTable.Platform ) -or ($global :PSVersionTable.Platform -eq " Win32NT" )) {
41
+ $ivyPath = ' Editor\Data\UnityExtensions\Unity\Networking\ivy.xml'
42
+ }
43
+ # Mac or Linux
44
+ else {
45
+ $ivyPath = ' Unity.app/Contents/UnityExtensions/Unity/Networking/ivy.xml'
46
+ }
38
47
39
- $ivyPath = [io.path ]::Combine(" $path " , ' Editor\Data\UnityExtensions\Unity\Networking\ivy.xml ' );
48
+ $ivyPath = [io.path ]::Combine(" $path " , $ivyPath );
40
49
if (! (Test-Path $ivyPath )) { throw " Path is not a Unity setup: $path " }
41
50
[xml ]$xmlDoc = Get-Content $ivyPath
42
51
@@ -48,21 +57,40 @@ class UnitySetupInstance {
48
57
$this.Version = $xmlDoc .' ivy-module' .info.unityVersion
49
58
$this.Components = [UnitySetupComponent ]::Setup
50
59
51
- $componentTests = @ {
52
- [UnitySetupComponent ]::Documentation = , " $Path \Editor\Data\Documentation" ;
53
- [UnitySetupComponent ]::StandardAssets = , " $Path \Editor\Standard Assets" ;
54
- [UnitySetupComponent ]::Windows_IL2CPP = , " $Path \Editor\Data\PlaybackEngines\windowsstandalonesupport\Variations\win32_development_il2cpp" ;
55
- [UnitySetupComponent ]::Metro = " $Path \Editor\Data\PlaybackEngines\MetroSupport\Templates\UWP_.NET_D3D" ,
56
- " $Path \Editor\Data\PlaybackEngines\MetroSupport\Templates\UWP_D3D" ;
57
- [UnitySetupComponent ]::UWP_IL2CPP = , " $Path \Editor\Data\PlaybackEngines\MetroSupport\Templates\UWP_IL2CPP_D3D" ;
58
- [UnitySetupComponent ]::Android = , " $Path \Editor\Data\PlaybackEngines\AndroidPlayer" ;
59
- [UnitySetupComponent ]::iOS = , " $Path \Editor\Data\PlaybackEngines\iOSSupport" ;
60
- [UnitySetupComponent ]::AppleTV = , " $Path \Editor\Data\PlaybackEngines\AppleTVSupport" ;
61
- [UnitySetupComponent ]::Facebook = , " $Path \Editor\Data\PlaybackEngines\Facebook" ;
62
- [UnitySetupComponent ]::Linux = , " $Path \Editor\Data\PlaybackEngines\LinuxStandaloneSupport" ;
63
- [UnitySetupComponent ]::Mac = , " $Path \Editor\Data\PlaybackEngines\MacStandaloneSupport" ;
64
- [UnitySetupComponent ]::Vuforia = , " $Path \Editor\Data\PlaybackEngines\VuforiaSupport" ;
65
- [UnitySetupComponent ]::WebGL = , " $Path \Editor\Data\PlaybackEngines\WebGLSupport" ;
60
+ # Windows
61
+ if ((-not $global :PSVersionTable.Platform ) -or ($global :PSVersionTable.Platform -eq " Win32NT" )) {
62
+ $componentTests = @ {
63
+ [UnitySetupComponent ]::Documentation = , [io.path ]::Combine(" $Path " , " Editor\Data\Documentation" );
64
+ [UnitySetupComponent ]::StandardAssets = , [io.path ]::Combine(" $Path " , " Editor\Standard Assets" );
65
+ [UnitySetupComponent ]::Windows_IL2CPP = , [io.path ]::Combine(" $Path " , " Editor\Data\PlaybackEngines\windowsstandalonesupport\Variations\win32_development_il2cpp" );
66
+ [UnitySetupComponent ]::Metro = [io.path ]::Combine(" $Path " , " Editor\Data\PlaybackEngines\MetroSupport\Templates\UWP_.NET_D3D" ),
67
+ [io.path ]::Combine(" $Path " , " Editor\Data\PlaybackEngines\MetroSupport\Templates\UWP_D3D" );
68
+ [UnitySetupComponent ]::UWP_IL2CPP = , [io.path ]::Combine(" $Path " , " Editor\Data\PlaybackEngines\MetroSupport\Templates\UWP_IL2CPP_D3D" );
69
+ [UnitySetupComponent ]::Android = , [io.path ]::Combine(" $Path " , " Editor\Data\PlaybackEngines\AndroidPlayer" );
70
+ [UnitySetupComponent ]::iOS = , [io.path ]::Combine(" $Path " , " Editor\Data\PlaybackEngines\iOSSupport" );
71
+ [UnitySetupComponent ]::AppleTV = , [io.path ]::Combine(" $Path " , " Editor\Data\PlaybackEngines\AppleTVSupport" );
72
+ [UnitySetupComponent ]::Facebook = , [io.path ]::Combine(" $Path " , " Editor\Data\PlaybackEngines\Facebook" );
73
+ [UnitySetupComponent ]::Linux = , [io.path ]::Combine(" $Path " , " Editor\Data\PlaybackEngines\LinuxStandaloneSupport" );
74
+ [UnitySetupComponent ]::Mac = , [io.path ]::Combine(" $Path " , " Editor\Data\PlaybackEngines\MacStandaloneSupport" );
75
+ [UnitySetupComponent ]::Vuforia = , [io.path ]::Combine(" $Path " , " Editor\Data\PlaybackEngines\VuforiaSupport" );
76
+ [UnitySetupComponent ]::WebGL = , [io.path ]::Combine(" $Path " , " Editor\Data\PlaybackEngines\WebGLSupport" );
77
+ }
78
+ }
79
+ # Mac or Linux
80
+ else {
81
+ $componentTests = @ {
82
+ [UnitySetupComponent ]::Documentation = , [io.path ]::Combine(" $Path " , " Documentation" );
83
+ [UnitySetupComponent ]::StandardAssets = , [io.path ]::Combine(" $Path " , " Standard Assets" );
84
+ [UnitySetupComponent ]::Android = , [io.path ]::Combine(" $Path " , " PlaybackEngines/AndroidPlayer" );
85
+ [UnitySetupComponent ]::iOS = , [io.path ]::Combine(" $Path " , " PlaybackEngines/iOSSupport" );
86
+ [UnitySetupComponent ]::AppleTV = , [io.path ]::Combine(" $Path " , " PlaybackEngines/AppleTVSupport" );
87
+ [UnitySetupComponent ]::Facebook = , [io.path ]::Combine(" $Path " , " PlaybackEngines/Facebook" );
88
+ [UnitySetupComponent ]::Linux = , [io.path ]::Combine(" $Path " , " PlaybackEngines/LinuxStandaloneSupport" );
89
+ [UnitySetupComponent ]::Windows = , [io.path ]::Combine(" $Path " , " PlaybackEngines/WindowsStandaloneSupport" );
90
+ [UnitySetupComponent ]::Mac = , [io.path ]::Combine(" $Path " , " Unity.app/Contents/PlaybackEngines/MacStandaloneSupport" );
91
+ [UnitySetupComponent ]::Vuforia = , [io.path ]::Combine(" $Path " , " PlaybackEngines/VuforiaSupport" );
92
+ [UnitySetupComponent ]::WebGL = , [io.path ]::Combine(" $Path " , " PlaybackEngines/WebGLSupport" );
93
+ }
66
94
}
67
95
68
96
$componentTests.Keys | ForEach-Object {
0 commit comments