Merge pull request #25177 from neikeq/nn
Workaround for bug with Mono's MSBuild and BaseIntermediateOutputPath
This commit is contained in:
commit
0babbca67e
3 changed files with 12 additions and 1 deletions
|
@ -257,7 +257,7 @@ namespace GodotSharpTools.Build
|
|||
if (null == Parameters)
|
||||
throw new LoggerException("Log directory was not set.");
|
||||
|
||||
string[] parameters = Parameters.Split(';');
|
||||
string[] parameters = Parameters.Split(new[] { ';' });
|
||||
|
||||
string logDir = parameters[0];
|
||||
|
||||
|
|
|
@ -21,6 +21,7 @@ namespace GodotSharpTools.Project
|
|||
mainGroup.AddProperty("DocumentationFile", Path.Combine("$(OutputPath)", "$(AssemblyName).xml"));
|
||||
mainGroup.SetProperty("RootNamespace", "Godot");
|
||||
mainGroup.SetProperty("ProjectGuid", CoreApiProjectGuid);
|
||||
mainGroup.SetProperty("BaseIntermediateOutputPath", "obj");
|
||||
|
||||
GenAssemblyInfoFile(root, dir, CoreApiProjectName,
|
||||
new string[] { "[assembly: InternalsVisibleTo(\"" + EditorApiProjectName + "\")]" },
|
||||
|
@ -46,6 +47,7 @@ namespace GodotSharpTools.Project
|
|||
mainGroup.AddProperty("DocumentationFile", Path.Combine("$(OutputPath)", "$(AssemblyName).xml"));
|
||||
mainGroup.SetProperty("RootNamespace", "Godot");
|
||||
mainGroup.SetProperty("ProjectGuid", EditorApiProjectGuid);
|
||||
mainGroup.SetProperty("BaseIntermediateOutputPath", "obj");
|
||||
|
||||
GenAssemblyInfoFile(root, dir, EditorApiProjectName);
|
||||
|
||||
|
|
|
@ -228,6 +228,15 @@ Error generate_scripts_metadata(const String &p_project_path, const String &p_ou
|
|||
if (new_dict.size()) {
|
||||
String json = JSON::print(new_dict, "", false);
|
||||
|
||||
String base_dir = p_output_path.get_base_dir();
|
||||
|
||||
if (!DirAccess::exists(base_dir)) {
|
||||
DirAccessRef da = DirAccess::create(DirAccess::ACCESS_RESOURCES);
|
||||
|
||||
Error err = da->make_dir_recursive(base_dir);
|
||||
ERR_FAIL_COND_V(err != OK, ERR_CANT_CREATE);
|
||||
}
|
||||
|
||||
Error ferr;
|
||||
FileAccess *f = FileAccess::open(p_output_path, FileAccess::WRITE, &ferr);
|
||||
ERR_EXPLAIN("Cannot open file for writing: " + p_output_path);
|
||||
|
|
Loading…
Reference in a new issue