瀏覽代碼

Merge pull request #30463 from neikeq/fix-search-dirs

Fix export templates ignoring assemblies in 'res://.mono/assemblies'
Rémi Verschelde 6 年之前
父節點
當前提交
d2e620b8fc
共有 2 個文件被更改,包括 12 次插入23 次删除
  1. 5 5
      modules/mono/build_scripts/solution_builder.py
  2. 7 18
      modules/mono/mono_gd/gd_mono_assembly.cpp

+ 5 - 5
modules/mono/build_scripts/solution_builder.py

@@ -112,6 +112,11 @@ def find_msbuild_windows(env):
     mono_bin_dir = os.path.join(mono_root, 'bin')
     msbuild_mono = os.path.join(mono_bin_dir, 'msbuild.bat')
 
+    msbuild_tools_path = find_msbuild_tools_path_reg()
+
+    if msbuild_tools_path:
+        return (os.path.join(msbuild_tools_path, 'MSBuild.exe'), framework_path, {})
+
     if os.path.isfile(msbuild_mono):
         # The (Csc/Vbc/Fsc)ToolExe environment variables are required when
         # building with Mono's MSBuild. They must point to the batch files
@@ -123,11 +128,6 @@ def find_msbuild_windows(env):
         }
         return (msbuild_mono, framework_path, mono_msbuild_env)
 
-    msbuild_tools_path = find_msbuild_tools_path_reg()
-
-    if msbuild_tools_path:
-        return (os.path.join(msbuild_tools_path, 'MSBuild.exe'), framework_path, {})
-
     return None
 
 

+ 7 - 18
modules/mono/mono_gd/gd_mono_assembly.cpp

@@ -46,20 +46,6 @@ bool GDMonoAssembly::in_preload = false;
 
 Vector<String> GDMonoAssembly::search_dirs;
 
-static String _get_expected_api_build_config() {
-#ifdef TOOLS_ENABLED
-	return "Debug";
-#else
-
-#ifdef DEBUG_ENABLED
-	return "Debug";
-#else
-	return "Release";
-#endif
-
-#endif
-}
-
 void GDMonoAssembly::fill_search_dirs(Vector<String> &r_search_dirs, const String &p_custom_config, const String &p_custom_bcl_dir) {
 
 	String framework_dir;
@@ -81,11 +67,14 @@ void GDMonoAssembly::fill_search_dirs(Vector<String> &r_search_dirs, const Strin
 		r_search_dirs.push_back(GodotSharpDirs::get_res_temp_assemblies_dir());
 	}
 
-	String api_config = p_custom_config.empty() ? _get_expected_api_build_config() :
-												  (p_custom_config == "Release" ? "Release" : "Debug");
-	r_search_dirs.push_back(GodotSharpDirs::get_res_assemblies_base_dir().plus_file(api_config));
+	if (p_custom_config.empty()) {
+		r_search_dirs.push_back(GodotSharpDirs::get_res_assemblies_dir());
+	} else {
+		String api_config = p_custom_config == "Release" ? "Release" : "Debug";
+		r_search_dirs.push_back(GodotSharpDirs::get_res_assemblies_base_dir().plus_file(api_config));
+	}
 
-	r_search_dirs.push_back(GodotSharpDirs::get_res_assemblies_dir());
+	r_search_dirs.push_back(GodotSharpDirs::get_res_assemblies_base_dir());
 	r_search_dirs.push_back(OS::get_singleton()->get_resource_dir());
 	r_search_dirs.push_back(OS::get_singleton()->get_executable_path().get_base_dir());