summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIgnacio Roldán Etcheverry <ignalfonsore@gmail.com>2022-08-25 20:04:23 +0200
committerIgnacio Roldán Etcheverry <ignalfonsore@gmail.com>2022-08-25 20:05:42 +0200
commit09af583e105a82918b72d20602ea7dd060c8e950 (patch)
tree79b72d13430e480681c54cd6af74a7cb3039645d
parent88145e81e2562be8379f199e02af7ec253551392 (diff)
C#: Fix buildsystem when `dotnet --info` does not specify arch
For some installations the architecture information is not printed.
-rw-r--r--modules/mono/build_scripts/mono_configure.py10
1 files changed, 9 insertions, 1 deletions
diff --git a/modules/mono/build_scripts/mono_configure.py b/modules/mono/build_scripts/mono_configure.py
index 8141bc2422..3277f9beeb 100644
--- a/modules/mono/build_scripts/mono_configure.py
+++ b/modules/mono/build_scripts/mono_configure.py
@@ -287,6 +287,10 @@ def find_dotnet_executable(arch):
os.path.join(dir, "arm32"),
] # search subfolders for cross compiling
+ # `dotnet --info` may not specify architecture. In such cases,
+ # we fallback to the first one we find without architecture.
+ sdk_path_unknown_arch = ""
+
for dir in search_dirs:
path = os.path.join(dir, "dotnet")
@@ -298,10 +302,14 @@ def find_dotnet_executable(arch):
sdk_arch = find_dotnet_arch(path_with_ext)
if sdk_arch == arch or arch == "":
return path_with_ext
+ elif sdk_arch == "":
+ sdk_path_unknown_arch = path_with_ext
else:
if os.path.isfile(path) and os.access(path, os.X_OK):
sdk_arch = find_dotnet_arch(path)
if sdk_arch == arch or arch == "":
return path
+ elif sdk_arch == "":
+ sdk_path_unknown_arch = path
- return ""
+ return sdk_path_unknown_arch