diff options
author | RĂ©mi Verschelde <remi@verschelde.fr> | 2022-09-14 19:06:39 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-09-14 19:06:39 +0200 |
commit | 5d6a719a84ae4012fd38083ecbfb681372aa0f8d (patch) | |
tree | 7fc7ae70b401ae0305225c4476744f2acc6255d3 /modules/mono | |
parent | 957aa79ce03f3918867a4fba750744fab94e0cf9 (diff) | |
parent | f4f556d198dac074091c1ecde6347321bd6ac298 (diff) |
Merge pull request #65788 from bruvzg/macos_fix_dotnet_detection
[macOS, .NET] Fix dotnet binary detection.
Diffstat (limited to 'modules/mono')
-rw-r--r-- | modules/mono/editor/GodotTools/GodotTools/Build/DotNetFinder.cs | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/modules/mono/editor/GodotTools/GodotTools/Build/DotNetFinder.cs b/modules/mono/editor/GodotTools/GodotTools/Build/DotNetFinder.cs index 7bce53308c..b437c7e742 100644 --- a/modules/mono/editor/GodotTools/GodotTools/Build/DotNetFinder.cs +++ b/modules/mono/editor/GodotTools/GodotTools/Build/DotNetFinder.cs @@ -3,6 +3,7 @@ using System.Collections.Generic; using System.Diagnostics; using System.Diagnostics.CodeAnalysis; using System.IO; +using System.Runtime.InteropServices; using JetBrains.Annotations; using OS = GodotTools.Utils.OS; @@ -16,6 +17,23 @@ namespace GodotTools.Build // In the future, this method may do more than just search in PATH. We could look in // known locations or use Godot's linked nethost to search from the hostfxr location. + if (OS.IsMacOS) + { + if (RuntimeInformation.OSArchitecture == Architecture.X64) + { + string dotnet_x64 = "/usr/local/share/dotnet/x64/dotnet"; // Look for x64 version, when running under Rosetta 2. + if (File.Exists(dotnet_x64)) + { + return dotnet_x64; + } + } + string dotnet = "/usr/local/share/dotnet/dotnet"; // Look for native version. + if (File.Exists(dotnet)) + { + return dotnet; + } + } + return OS.PathWhich("dotnet"); } |