Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/monodevelop.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MSBuild')
-rw-r--r--main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MSBuild/MSBuildFileFormat.cs2
-rw-r--r--main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MSBuild/MSBuildProjectHandler.cs3
-rw-r--r--main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MSBuild/MSBuildProjectService.cs14
-rw-r--r--main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MSBuild/RemoteProjectBuilder.cs2
-rw-r--r--main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MSBuild/SlnFileFormat.cs2
5 files changed, 14 insertions, 9 deletions
diff --git a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MSBuild/MSBuildFileFormat.cs b/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MSBuild/MSBuildFileFormat.cs
index 05314dfdb7..814935bdbb 100644
--- a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MSBuild/MSBuildFileFormat.cs
+++ b/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MSBuild/MSBuildFileFormat.cs
@@ -347,7 +347,7 @@ namespace MonoDevelop.Projects.Formats.MSBuild
protected override bool SupportsToolsVersion (string version)
{
- return version == "4.0" || version == "12.0";
+ return version == "4.0" || version == "12.0" || version == "14.0";
}
}
}
diff --git a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MSBuild/MSBuildProjectHandler.cs b/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MSBuild/MSBuildProjectHandler.cs
index 8f1a2ac0de..fe62395a0d 100644
--- a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MSBuild/MSBuildProjectHandler.cs
+++ b/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MSBuild/MSBuildProjectHandler.cs
@@ -119,6 +119,7 @@ namespace MonoDevelop.Projects.Formats.MSBuild
return SolutionFormat;
return new MSBuildFileFormatVS12 ();
case "12.0":
+ case "14.0":
return new MSBuildFileFormatVS12 ();
default:
throw new Exception ("Unknown ToolsVersion '" + ToolsVersion + "'");
@@ -312,7 +313,7 @@ namespace MonoDevelop.Projects.Formats.MSBuild
newContext = new TargetEvaluationContext (newContext);
var res = RunTarget (monitor, target, configuration, (TargetEvaluationContext) newContext);
CallContext.SetData ("MonoDevelop.Projects.TargetEvaluationResult", res);
- return res.BuildResult;
+ return res != null ? res.BuildResult : null;
} finally {
if (newContext != currentContext)
CallContext.SetData ("MonoDevelop.Projects.ProjectOperationContext", currentContext);
diff --git a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MSBuild/MSBuildProjectService.cs b/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MSBuild/MSBuildProjectService.cs
index 51013f182a..c8efc96d0c 100644
--- a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MSBuild/MSBuildProjectService.cs
+++ b/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MSBuild/MSBuildProjectService.cs
@@ -504,12 +504,16 @@ namespace MonoDevelop.Projects.Formats.MSBuild
internal static RemoteProjectBuilder GetProjectBuilder (TargetRuntime runtime, string minToolsVersion, string file, string solutionFile)
{
lock (builders) {
- //attempt to use 12.0 builder first if available
- string toolsVersion = "12.0";
- string binDir = runtime.GetMSBuildBinPath ("12.0");
+ //attempt to use 14.0 builder first if available
+ string toolsVersion = "14.0";
+ string binDir = runtime.GetMSBuildBinPath ("14.0");
if (binDir == null) {
- //fall back to 4.0, we know it's always available
- toolsVersion = "4.0";
+ toolsVersion = "12.0";
+ binDir = runtime.GetMSBuildBinPath ("12.0");
+ if (binDir == null) {
+ //fall back to 4.0, we know it's always available
+ toolsVersion = "4.0";
+ }
}
//check the ToolsVersion we found can handle the project
diff --git a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MSBuild/RemoteProjectBuilder.cs b/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MSBuild/RemoteProjectBuilder.cs
index ab59a88e1d..57f2e797e5 100644
--- a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MSBuild/RemoteProjectBuilder.cs
+++ b/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MSBuild/RemoteProjectBuilder.cs
@@ -159,7 +159,7 @@ namespace MonoDevelop.Projects.Formats.MSBuild
void CheckDisconnected ()
{
- if (engine.CheckDisconnected ()) {
+ if (engine != null && engine.CheckDisconnected ()) {
if (Disconnected != null)
Disconnected (this, EventArgs.Empty);
}
diff --git a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MSBuild/SlnFileFormat.cs b/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MSBuild/SlnFileFormat.cs
index b1aacadd0e..0ebb7f4c4a 100644
--- a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MSBuild/SlnFileFormat.cs
+++ b/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MSBuild/SlnFileFormat.cs
@@ -80,7 +80,7 @@ namespace MonoDevelop.Projects.Formats.MSBuild
monitor.BeginTask (GettextCatalog.GetString ("Saving solution: {0}", file), 1);
try {
if (File.Exists (file))
- tmpfilename = Path.GetTempFileName ();
+ tmpfilename = Path.GetDirectoryName (file) + Path.DirectorySeparatorChar + ".#" + Path.GetFileName (file);
} catch (IOException) {
}