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:
authorAnkit Jain <radical@gmail.com>2019-04-03 13:49:52 +0300
committerRodrigo Moya <rodrigo.moya@xamarin.com>2019-04-05 20:46:17 +0300
commitd48091aec7f2113fb2811da21c9302f9c1ff8539 (patch)
tree4e1ba0644ddc9d5b6b5697587040fd5e5260d2c0
parent75512ea5578cd73ccef354cb35a9c85d44e74c0b (diff)
[msbuild] Update to work with ToolsVersion=`Current`
- the recent msbuild update changed the toolsVersion from `15.0` to `Current`. - we add a second toolset `Current` to the app.config for the remote builder. - VSMac still tries to pick `15.0` - with older mono, msbuild will use the 15.0 toolset - with newer mono, vsmac asks for 15.0 but msbuild picks `current` instead. - VSMac needs to pick `Current` for newer mono, which will be fixed in a follow up PR.
-rw-r--r--main/src/core/MonoDevelop.Core/MonoDevelop.Projects.MSBuild/RemoteBuildEngineManager.cs5
-rw-r--r--main/src/core/MonoDevelop.Projects.Formats.MSBuild/app.config16
2 files changed, 18 insertions, 3 deletions
diff --git a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.MSBuild/RemoteBuildEngineManager.cs b/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.MSBuild/RemoteBuildEngineManager.cs
index d9d2e29b79..5e18e203db 100644
--- a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.MSBuild/RemoteBuildEngineManager.cs
+++ b/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.MSBuild/RemoteBuildEngineManager.cs
@@ -561,8 +561,7 @@ namespace MonoDevelop.Projects.MSBuild
ConfigFileUtilities.SetOrAppendSubelementAttributeValue (runtimeElement, "AppContextSwitchOverrides", "value", "Switch.System.IO.UseLegacyPathHandling=false");
}
- var toolset = doc.Root.Elements ("msbuildToolsets").FirstOrDefault ()?.Elements ("toolset")?.FirstOrDefault ();
- if (toolset != null) {
+ foreach (var toolset in doc.Root.Elements ("msbuildToolsets").FirstOrDefault ()?.Elements ("toolset")) {
// This is required for MSBuild to properly load the searchPaths element (@radical knows why)
SetMSBuildConfigProperty (toolset, "MSBuildBinPath", binDir, append: false, insertBefore: true);
@@ -728,4 +727,4 @@ namespace MonoDevelop.Projects.MSBuild
return Task.CompletedTask;
}
}
-} \ No newline at end of file
+}
diff --git a/main/src/core/MonoDevelop.Projects.Formats.MSBuild/app.config b/main/src/core/MonoDevelop.Projects.Formats.MSBuild/app.config
index 71ab6f0220..98fcdc78cc 100644
--- a/main/src/core/MonoDevelop.Projects.Formats.MSBuild/app.config
+++ b/main/src/core/MonoDevelop.Projects.Formats.MSBuild/app.config
@@ -47,6 +47,22 @@
</searchPaths>
</projectImportSearchPaths>
</toolset>
+ <toolset toolsVersion="Current">
+ <property name="MSBuildRuntimeVersion" value="4.0.30319" />
+ <property name="MSBuildToolsPath" value="$(MSBuildBinPath)" />
+ <property name="MSBuildToolsPath32" value="$(MSBuildBinPath)" />
+ <property name="MSBuildToolsPath64" value="$(MSBuildBinPath)" />
+ <property name="RoslynTargetsPath" value="$(MSBuildToolsPath)\Roslyn" />
+ <property name="TargetFrameworkRootPathSearchPathsOSX" value="/Library/Frameworks/Mono.framework/External/xbuild-frameworks/" />
+ <property name="VisualStudioVersion" value="16.0" />
+ <projectImportSearchPaths>
+ <searchPaths os="osx">
+ <property name="MSBuildExtensionsPath" value="/Library/Frameworks/Mono.framework/External/xbuild/"/>
+ <property name="MSBuildExtensionsPath32" value="/Library/Frameworks/Mono.framework/External/xbuild/"/>
+ <property name="MSBuildExtensionsPath64" value="/Library/Frameworks/Mono.framework/External/xbuild/"/>
+ </searchPaths>
+ </projectImportSearchPaths>
+ </toolset>
</msbuildToolsets>
</configuration>