Selaa lähdekoodia

Workaround for bug with Mono's MSBuild and BaseIntermediateOutputPath

BaseIntermediateOutputPath seems to be empty by default. The workaround is to explicitly set it.

Also fixed passing char instead of char[] to String.Split. Why was this even working with Mono?
Ignacio Etcheverry 6 vuotta sitten
vanhempi
commit
ca8100f29f

+ 1 - 1
modules/mono/editor/GodotSharpTools/Build/BuildSystem.cs

@@ -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];
 

+ 2 - 0
modules/mono/editor/GodotSharpTools/Project/ProjectGenerator.cs

@@ -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);