diff --git a/src/Main/Base/Project/Src/Project/MSBuildBasedProject.cs b/src/Main/Base/Project/Src/Project/MSBuildBasedProject.cs index 318870b924..ef1f8a2919 100644 --- a/src/Main/Base/Project/Src/Project/MSBuildBasedProject.cs +++ b/src/Main/Base/Project/Src/Project/MSBuildBasedProject.cs @@ -332,7 +332,10 @@ namespace ICSharpCode.SharpDevelop.Project Dictionary globalProps = new Dictionary(); globalProps["Configuration"] = configuration; globalProps["Platform"] = platform; - var project = new MSBuild.Project(projectFile, globalProps, projectFile.ToolsVersion, projectCollection); + string toolsVersion = projectFile.ToolsVersion; + if (string.IsNullOrEmpty(toolsVersion)) + toolsVersion = projectCollection.DefaultToolsVersion; + var project = new MSBuild.Project(projectFile, globalProps, toolsVersion, projectCollection); return new ConfiguredProject(this, project); } catch { // Leave lock only on exceptions. diff --git a/src/Main/Base/Project/Src/Project/MSBuildEngine.cs b/src/Main/Base/Project/Src/Project/MSBuildEngine.cs index 916a667194..0ddf8a8f6b 100644 --- a/src/Main/Base/Project/Src/Project/MSBuildEngine.cs +++ b/src/Main/Base/Project/Src/Project/MSBuildEngine.cs @@ -76,7 +76,7 @@ namespace ICSharpCode.SharpDevelop.Project } - public static void StartBuild(MSBuildBasedProject project, ProjectBuildOptions options, IBuildFeedbackSink feedbackSink, IEnumerable additionalTargetFiles) + public static void StartBuild(IProject project, ProjectBuildOptions options, IBuildFeedbackSink feedbackSink, IEnumerable additionalTargetFiles) { if (project == null) throw new ArgumentNullException("project"); @@ -92,12 +92,12 @@ namespace ICSharpCode.SharpDevelop.Project engine.StartBuild(); } - MSBuildBasedProject project; + IProject project; ProjectBuildOptions options; IBuildFeedbackSink feedbackSink; IEnumerable additionalTargetFiles; - private MSBuildEngine(MSBuildBasedProject project, ProjectBuildOptions options, IBuildFeedbackSink feedbackSink) + private MSBuildEngine(IProject project, ProjectBuildOptions options, IBuildFeedbackSink feedbackSink) { this.project = project; this.options = options;