diff --git a/README.md b/README.md index 82ab3df9c87..954a6f3fb09 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # #develop (short for SharpDevelop) -##Overview +## Overview #develop is a free Integrated Development Environment (IDE) for C#, VB.NET, Boo, IronPython, IronRuby and F# projects on Microsoft's @@ -9,22 +9,19 @@ you would expect in an IDE plus a few more. The #develop project started on September 11th, 2000. The project was initiated by Mike Krüger. In the course of the project, several contributors joined in. -If you want to contribute see ["Joining the team"](https://github.com/icsharpcode/SharpDevelop/wiki/Joining-the-Team). -1. [Official Website](http://www.icsharpcode.net/OpenSource/SD/Default.aspx) -2. [Forums](http://community.sharpdevelop.net/forums/) -3. [Build Artefacts (Nightly Builds)](http://build.sharpdevelop.net/BuildArtefacts) +Looking for the tech notes (Fine Art of Commenting, Coding Style Guide, and more)? These can be found as rtf files in [doc/technotes](https://github.com/icsharpcode/SharpDevelop/tree/master/doc/technotes) -##How To Compile +## How To Compile #Develop can be compiled using the supplied .bat files, or in #Develop itself. -##System Requirements (running #Develop) +## System Requirements (running #Develop) - Windows Vista or higher. - [.NET 4.5](http://www.microsoft.com/en-au/download/details.aspx?id=30653) - [Visual C++ 2008 SP1 Runtime](http://www.microsoft.com/downloads/details.aspx?familyid=A5C84275-3B97-4AB7-A40D-3802B2AF5FC2&displaylang=en) -##Extended Requirements (building #Develop) +## Extended Requirements (building #Develop) - [Microsoft Build Tools 2013](http://www.microsoft.com/en-us/download/details.aspx?id=40760) - [.NET 3.5 SP1](http://www.microsoft.com/en-au/download/details.aspx?id=22) @@ -34,7 +31,7 @@ If you want to contribute see ["Joining the team"](https://github.com/icsharpcod - [Windows PowerShell](http://www.microsoft.com/en-us/download/details.aspx?id=34595) - If you have cloned the SD git repository: git must be available on your PATH -##Libraries and Integrated tools: +## Libraries and Integrated tools: * [Avalon Dock](http://avalondock.codeplex.com/) : New BSD License (BSD) (thanks to **Adolfo Marinucci**) * [Graph#](https://graphsharp.codeplex.com/) @@ -48,7 +45,7 @@ If you want to contribute see ["Joining the team"](https://github.com/icsharpcod * [SQLite](https://sqlite.org/) * [WPFToolkit](https://wpf.codeplex.com/) -##Integrated Tools (packaged with #Develop): +## Integrated Tools (packaged with #Develop): * [IronPython](http://ironpython.net/) * [IronRuby](https://ironruby.codeplex.com/) @@ -57,7 +54,7 @@ If you want to contribute see ["Joining the team"](https://github.com/icsharpcod * [OpenCover](https://github.com/OpenCover/opencover) * [WiX](https://wix.codeplex.com/) -##Reusable Libraries (Part of #Develop): +## Reusable Libraries (Part of #Develop): * [AvalonEdit](http://avalonedit.net/) * [Debugger.Core](https://github.com/icsharpcode/SharpDevelop/tree/master/src/AddIns/Debugger/Debugger.Core) @@ -69,7 +66,7 @@ If you want to contribute see ["Joining the team"](https://github.com/icsharpcod ## #Develop Contributors -###Developers +### Developers * [Mike Krüger](https://github.com/mkrueger) (Project Founder) * [Daniel Grunwald](https://github.com/dgrunwald) (Technical Lead) @@ -79,12 +76,12 @@ If you want to contribute see ["Joining the team"](https://github.com/icsharpcod * [Siegfried Pammer](https://github.com/siegfriedpammer) * [Peter Forstmeier]( https://github.com/PeterForstmeier)(#Develop Reports) -###Non-Developers +### Non-Developers * Christoph Wille (PM) * Bernhard Spuida (Kalfaktor) -###Past Developers (Non-Exhaustive List) +### Past Developers (Non-Exhaustive List) * [Mike Krüger](https://github.com/mkrueger) (Project Founder) * Alexandre Semenov @@ -117,4 +114,4 @@ If you want to contribute see ["Joining the team"](https://github.com/icsharpcod * Tomasz Tretkowski * Troy Simpson -######Copyright 2014 AlphaSierraPapa for the SharpDevelop team. SharpDevelop is distributed under the MIT license. +###### Copyright 2014 AlphaSierraPapa for the SharpDevelop team. SharpDevelop is distributed under the MIT license. diff --git a/SharpDevelop.Tests.sln b/SharpDevelop.Tests.sln index 7437dbc313e..97f1716a68d 100644 --- a/SharpDevelop.Tests.sln +++ b/SharpDevelop.Tests.sln @@ -28,6 +28,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SharpDevelop", "src\Main\Sh EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop.BuildWorker120", "src\Main\ICSharpCode.SharpDevelop.BuildWorker120\ICSharpCode.SharpDevelop.BuildWorker120.csproj", "{6F273DA5-E10C-45A6-9071-7313ECD98C90}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop.BuildWorker140", "src\Main\ICSharpCode.SharpDevelop.BuildWorker140\ICSharpCode.SharpDevelop.BuildWorker140.csproj", "{7BA66A6B-1ED8-4B4C-970C-8928E891418B}" +EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Libraries", "Libraries", "{2A232EF1-EB95-41C6-B63A-C106E0C95D3C}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Cecil", "src\Libraries\cecil\Mono.Cecil.csproj", "{D68133BD-1E63-496E-9EDE-4FBDBF77B486}" @@ -290,6 +292,10 @@ Global {6F273DA5-E10C-45A6-9071-7313ECD98C90}.Debug|Any CPU.Build.0 = Debug|Any CPU {6F273DA5-E10C-45A6-9071-7313ECD98C90}.Release|Any CPU.ActiveCfg = Release|Any CPU {6F273DA5-E10C-45A6-9071-7313ECD98C90}.Release|Any CPU.Build.0 = Release|Any CPU + {7BA66A6B-1ED8-4B4C-970C-8928E891418B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {7BA66A6B-1ED8-4B4C-970C-8928E891418B}.Debug|Any CPU.Build.0 = Debug|Any CPU + {7BA66A6B-1ED8-4B4C-970C-8928E891418B}.Release|Any CPU.ActiveCfg = Release|Any CPU + {7BA66A6B-1ED8-4B4C-970C-8928E891418B}.Release|Any CPU.Build.0 = Release|Any CPU {D68133BD-1E63-496E-9EDE-4FBDBF77B486}.Debug|Any CPU.ActiveCfg = net_4_0_Debug|Any CPU {D68133BD-1E63-496E-9EDE-4FBDBF77B486}.Debug|Any CPU.Build.0 = net_4_0_Debug|Any CPU {D68133BD-1E63-496E-9EDE-4FBDBF77B486}.Release|Any CPU.ActiveCfg = net_4_0_Release|Any CPU @@ -666,6 +672,7 @@ Global {8035765F-D51F-4A0C-A746-2FD100E19419} = {256F5C28-532C-44C0-8AB8-D8EC5E492E01} {1152B71B-3C05-4598-B20D-823B5D40559E} = {256F5C28-532C-44C0-8AB8-D8EC5E492E01} {6F273DA5-E10C-45A6-9071-7313ECD98C90} = {256F5C28-532C-44C0-8AB8-D8EC5E492E01} + {7BA66A6B-1ED8-4B4C-970C-8928E891418B} = {256F5C28-532C-44C0-8AB8-D8EC5E492E01} {D68133BD-1E63-496E-9EDE-4FBDBF77B486} = {2A232EF1-EB95-41C6-B63A-C106E0C95D3C} {6222A3A1-83CE-47A3-A4E4-A018F82D44D8} = {2A232EF1-EB95-41C6-B63A-C106E0C95D3C} {E5A0F4D8-37FD-4A30-BEB0-4409DC4E0865} = {2A232EF1-EB95-41C6-B63A-C106E0C95D3C} diff --git a/SharpDevelop.sln b/SharpDevelop.sln index 4442f371222..1de7a8d728d 100644 --- a/SharpDevelop.sln +++ b/SharpDevelop.sln @@ -24,6 +24,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SharpDevelop", "src\Main\Sh EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop.BuildWorker120", "src\Main\ICSharpCode.SharpDevelop.BuildWorker120\ICSharpCode.SharpDevelop.BuildWorker120.csproj", "{6F273DA5-E10C-45A6-9071-7313ECD98C90}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop.BuildWorker140", "src\Main\ICSharpCode.SharpDevelop.BuildWorker140\ICSharpCode.SharpDevelop.BuildWorker140.csproj", "{7BA66A6B-1ED8-4B4C-970C-8928E891418B}" +EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Libraries", "Libraries", "{2A232EF1-EB95-41C6-B63A-C106E0C95D3C}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Cecil", "src\Libraries\cecil\Mono.Cecil.csproj", "{D68133BD-1E63-496E-9EDE-4FBDBF77B486}" @@ -237,6 +239,10 @@ Global {6F273DA5-E10C-45A6-9071-7313ECD98C90}.Debug|Any CPU.Build.0 = Debug|Any CPU {6F273DA5-E10C-45A6-9071-7313ECD98C90}.Release|Any CPU.ActiveCfg = Release|Any CPU {6F273DA5-E10C-45A6-9071-7313ECD98C90}.Release|Any CPU.Build.0 = Release|Any CPU + {7BA66A6B-1ED8-4B4C-970C-8928E891418B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {7BA66A6B-1ED8-4B4C-970C-8928E891418B}.Debug|Any CPU.Build.0 = Debug|Any CPU + {7BA66A6B-1ED8-4B4C-970C-8928E891418B}.Release|Any CPU.ActiveCfg = Release|Any CPU + {7BA66A6B-1ED8-4B4C-970C-8928E891418B}.Release|Any CPU.Build.0 = Release|Any CPU {D68133BD-1E63-496E-9EDE-4FBDBF77B486}.Debug|Any CPU.ActiveCfg = net_4_0_Debug|Any CPU {D68133BD-1E63-496E-9EDE-4FBDBF77B486}.Debug|Any CPU.Build.0 = net_4_0_Debug|Any CPU {D68133BD-1E63-496E-9EDE-4FBDBF77B486}.Release|Any CPU.ActiveCfg = net_4_0_Release|Any CPU @@ -527,6 +533,7 @@ Global {8035765F-D51F-4A0C-A746-2FD100E19419} = {256F5C28-532C-44C0-8AB8-D8EC5E492E01} {1152B71B-3C05-4598-B20D-823B5D40559E} = {256F5C28-532C-44C0-8AB8-D8EC5E492E01} {6F273DA5-E10C-45A6-9071-7313ECD98C90} = {256F5C28-532C-44C0-8AB8-D8EC5E492E01} + {7BA66A6B-1ED8-4B4C-970C-8928E891418B} = {256F5C28-532C-44C0-8AB8-D8EC5E492E01} {D68133BD-1E63-496E-9EDE-4FBDBF77B486} = {2A232EF1-EB95-41C6-B63A-C106E0C95D3C} {E5A0F4D8-37FD-4A30-BEB0-4409DC4E0865} = {2A232EF1-EB95-41C6-B63A-C106E0C95D3C} {3B2A5653-EC97-4001-BB9B-D90F1AF2C371} = {E5A0F4D8-37FD-4A30-BEB0-4409DC4E0865} diff --git a/src/AddIns/BackendBindings/CSharpBinding/Project/Resources/CSharp-Semantic.xshd b/src/AddIns/BackendBindings/CSharpBinding/Project/Resources/CSharp-Semantic.xshd index 3e1bba50c70..7845675c99c 100644 --- a/src/AddIns/BackendBindings/CSharpBinding/Project/Resources/CSharp-Semantic.xshd +++ b/src/AddIns/BackendBindings/CSharpBinding/Project/Resources/CSharp-Semantic.xshd @@ -7,6 +7,7 @@ + @@ -122,6 +123,18 @@ + + \$" + " + + + + + + + + + @[\w\d_]+ diff --git a/src/AddIns/BackendBindings/TypeScript/Project/Src/TypeScriptProject.cs b/src/AddIns/BackendBindings/TypeScript/Project/Src/TypeScriptProject.cs index 6988921370c..c36bbc41d3b 100644 --- a/src/AddIns/BackendBindings/TypeScript/Project/Src/TypeScriptProject.cs +++ b/src/AddIns/BackendBindings/TypeScript/Project/Src/TypeScriptProject.cs @@ -85,9 +85,16 @@ public IEnumerable GetTypeScriptFileNames() return project .Items .Where(item => TypeScriptParser.IsTypeScriptFileName(item.FileName)) + .Where(IsSupportedProjectItemType) .Select(item => item.FileName); } + bool IsSupportedProjectItemType(ProjectItem item) + { + return item.ItemType == ItemType.None || + item.ItemType.ItemName == "TypeScriptCompile"; + } + bool HasMSBuildProject { get { return msbuildProject != null; } } diff --git a/src/AddIns/Misc/PackageManagement/Project/Src/ProcessPackageAction.cs b/src/AddIns/Misc/PackageManagement/Project/Src/ProcessPackageAction.cs index 1dad24b1f71..a94979e3962 100644 --- a/src/AddIns/Misc/PackageManagement/Project/Src/ProcessPackageAction.cs +++ b/src/AddIns/Misc/PackageManagement/Project/Src/ProcessPackageAction.cs @@ -45,7 +45,12 @@ public ProcessPackageAction( public bool AllowPrereleaseVersions { get; set; } public FrameworkName ProjectTargetFramework { - get { return Project.TargetFramework; } + get { + if (Project != null) { + return Project.TargetFramework; + } + return null; + } } public virtual bool HasPackageScriptsToRun() diff --git a/src/AddIns/Misc/PackageManagement/Project/Src/Scripting/MSBuildProjectPropertiesMerger.cs b/src/AddIns/Misc/PackageManagement/Project/Src/Scripting/MSBuildProjectPropertiesMerger.cs index 07cba71416c..e970e6adeb8 100644 --- a/src/AddIns/Misc/PackageManagement/Project/Src/Scripting/MSBuildProjectPropertiesMerger.cs +++ b/src/AddIns/Misc/PackageManagement/Project/Src/Scripting/MSBuildProjectPropertiesMerger.cs @@ -93,7 +93,7 @@ void AddPropertyToSharpDevelopProject(ProjectPropertyElement msbuildProjectPrope void SetPropertyInSharpDevelopProject(ProjectPropertyElement msbuildProjectProperty) { - sharpDevelopProject.SetProperty(msbuildProjectProperty.Name, msbuildProjectProperty.Value); + sharpDevelopProject.SetProperty(msbuildProjectProperty.Name, msbuildProjectProperty.Value, treatPropertyValueAsLiteral: false); } bool HasMSBuildProjectPropertyBeenUpdated(ProjectPropertyElement msbuildProjectProperty, ProjectPropertyElement sharpDevelopProjectProperty) diff --git a/src/AddIns/Misc/PackageManagement/RequiredLibraries/Microsoft.Web.XmlTransform.dll b/src/AddIns/Misc/PackageManagement/RequiredLibraries/Microsoft.Web.XmlTransform.dll index d6fb3c1bf38..c94ef79caad 100644 Binary files a/src/AddIns/Misc/PackageManagement/RequiredLibraries/Microsoft.Web.XmlTransform.dll and b/src/AddIns/Misc/PackageManagement/RequiredLibraries/Microsoft.Web.XmlTransform.dll differ diff --git a/src/AddIns/Misc/PackageManagement/RequiredLibraries/NuGet.Console.Types.dll b/src/AddIns/Misc/PackageManagement/RequiredLibraries/NuGet.Console.Types.dll index 7cdc512dc5f..f3d952792b8 100644 Binary files a/src/AddIns/Misc/PackageManagement/RequiredLibraries/NuGet.Console.Types.dll and b/src/AddIns/Misc/PackageManagement/RequiredLibraries/NuGet.Console.Types.dll differ diff --git a/src/AddIns/Misc/PackageManagement/RequiredLibraries/NuGet.Core.dll b/src/AddIns/Misc/PackageManagement/RequiredLibraries/NuGet.Core.dll index da3a305ee17..b8649b3e7fe 100644 Binary files a/src/AddIns/Misc/PackageManagement/RequiredLibraries/NuGet.Core.dll and b/src/AddIns/Misc/PackageManagement/RequiredLibraries/NuGet.Core.dll differ diff --git a/src/AddIns/Misc/PackageManagement/RequiredLibraries/NuGet.exe b/src/AddIns/Misc/PackageManagement/RequiredLibraries/NuGet.exe index 324daa842c5..25e84bd78c0 100644 Binary files a/src/AddIns/Misc/PackageManagement/RequiredLibraries/NuGet.exe and b/src/AddIns/Misc/PackageManagement/RequiredLibraries/NuGet.exe differ diff --git a/src/AddIns/Misc/PackageManagement/Test/Src/ProcessPackageActionTests.cs b/src/AddIns/Misc/PackageManagement/Test/Src/ProcessPackageActionTests.cs index ffef5bc7b72..dde48600244 100644 --- a/src/AddIns/Misc/PackageManagement/Test/Src/ProcessPackageActionTests.cs +++ b/src/AddIns/Misc/PackageManagement/Test/Src/ProcessPackageActionTests.cs @@ -183,5 +183,15 @@ public void ProjectTargetFramework_ProjectTargetFrameworkIsNet40_ReturnsNet40() Assert.AreEqual(expectedTargetFramework, targetFramework); } + + [Test] + public void ProjectTargetFramework_NullProject_ReturnsNull() + { + var installAction = new InstallPackageAction(null, new FakePackageManagementEvents()); + + FrameworkName targetFramework = installAction.ProjectTargetFramework; + + Assert.IsNull(targetFramework); + } } } diff --git a/src/AddIns/Misc/PackageManagement/Test/Src/Scripting/MSBuildProjectPropertiesMergerTests.cs b/src/AddIns/Misc/PackageManagement/Test/Src/Scripting/MSBuildProjectPropertiesMergerTests.cs index 39899860812..f9fe8ba509d 100644 --- a/src/AddIns/Misc/PackageManagement/Test/Src/Scripting/MSBuildProjectPropertiesMergerTests.cs +++ b/src/AddIns/Misc/PackageManagement/Test/Src/Scripting/MSBuildProjectPropertiesMergerTests.cs @@ -260,5 +260,17 @@ public void Merge_OutputPathPropertyInDebugAndReleaseConfigurations_SharpDevelop Assert.IsFalse(propertiesMerger.Result.AnyPropertiesChanged()); } + + [Test] + public void Merge_MSBuildProjectHasNewPropertyAddedWithEncodableCharacters_PropertyAddedToSharpDevelopProjectWithoutEncodingCharacters() + { + var propertyGroup = msbuildProject.Xml.AddPropertyGroup(); + propertyGroup.SetProperty("Test", "$(Value)"); + + Merge(); + + string value = sharpDevelopProject.GetUnevalatedProperty("Test"); + Assert.AreEqual("$(Value)", value); + } } } diff --git a/src/Libraries/AvalonEdit b/src/Libraries/AvalonEdit index 19611add5ac..697ff0d38c9 160000 --- a/src/Libraries/AvalonEdit +++ b/src/Libraries/AvalonEdit @@ -1 +1 @@ -Subproject commit 19611add5ac9fea77a41a145fc85211c6c32f921 +Subproject commit 697ff0d38c95c9e5a536fbc05ae2307ec9ef2a63 diff --git a/src/Main/Base/Project/Util/DotnetDetection.cs b/src/Main/Base/Project/Util/DotnetDetection.cs index a6ae7a59e65..191c1ecb2d6 100644 --- a/src/Main/Base/Project/Util/DotnetDetection.cs +++ b/src/Main/Base/Project/Util/DotnetDetection.cs @@ -95,5 +95,16 @@ public static bool IsBuildTools2013Installed() return key != null && key.GetValue("Install") as int? >= 1; } } + + /// + /// Gets whether the Microsoft Build Tools 2015 (MSBuild 14.0) is installed. + /// + public static bool IsBuildTools2015Installed() + { + // HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DevDiv\BuildTools\Servicing\14.0 + using (var key = Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Microsoft\DevDiv\BuildTools\Servicing\14.0\MSBuild")) { + return key != null && key.GetValue("Install") as int? >= 1; + } + } } } diff --git a/src/Main/ICSharpCode.SharpDevelop.BuildWorker140/Configuration/AssemblyInfo.cs b/src/Main/ICSharpCode.SharpDevelop.BuildWorker140/Configuration/AssemblyInfo.cs new file mode 100644 index 00000000000..8787efdda9a --- /dev/null +++ b/src/Main/ICSharpCode.SharpDevelop.BuildWorker140/Configuration/AssemblyInfo.cs @@ -0,0 +1,27 @@ +// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team +// +// Permission is hereby granted, free of charge, to any person obtaining a copy of this +// software and associated documentation files (the "Software"), to deal in the Software +// without restriction, including without limitation the rights to use, copy, modify, merge, +// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons +// to whom the Software is furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in all copies or +// substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, +// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR +// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE +// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +// DEALINGS IN THE SOFTWARE. + +using System; +using System.Reflection; + +[assembly: AssemblyTitle("SharpDevelop Build Worker for MSBuild 14.0")] +[assembly: AssemblyDescription("Runs MSBuild 14.0")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] +[assembly: CLSCompliant(true)] diff --git a/src/Main/ICSharpCode.SharpDevelop.BuildWorker140/ICSharpCode.SharpDevelop.BuildWorker140.csproj b/src/Main/ICSharpCode.SharpDevelop.BuildWorker140/ICSharpCode.SharpDevelop.BuildWorker140.csproj new file mode 100644 index 00000000000..25d5ca2be7f --- /dev/null +++ b/src/Main/ICSharpCode.SharpDevelop.BuildWorker140/ICSharpCode.SharpDevelop.BuildWorker140.csproj @@ -0,0 +1,99 @@ + + + + {7BA66A6B-1ED8-4B4C-970C-8928E891418B} + Debug + AnyCPU + Exe + ICSharpCode.SharpDevelop.BuildWorker + ICSharpCode.SharpDevelop.BuildWorker140 + v4.5.1 + False + False + 4 + False + ..\..\..\bin\ + True + ..\ICSharpCode.SharpDevelop.snk + False + File + False + -Microsoft.Globalization#CA1303 + + + False + obj\$(Configuration)\ + + + true + Full + False + True + DEBUG;TRACE + obj\ + + + False + None + True + False + TRACE + + + False + Off + 4194304 + AnyCPU + 4096 + True + + + + + + + + + + + + + Configuration\GlobalAssemblyInfo.cs + + + BuildJob.cs + + + EventSource.cs + + + EventTypes.cs + + + ExtendedBinaryReader.cs + + + HostProcess.cs + + + MSBuild40.cs + + + Program.cs + + + + + + {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} + ICSharpCode.Core + false + + + + + + + + + \ No newline at end of file diff --git a/src/Main/ICSharpCode.SharpDevelop.BuildWorker140/app.config b/src/Main/ICSharpCode.SharpDevelop.BuildWorker140/app.config new file mode 100644 index 00000000000..155efda1cf0 --- /dev/null +++ b/src/Main/ICSharpCode.SharpDevelop.BuildWorker140/app.config @@ -0,0 +1,40 @@ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/Main/SharpDevelop/Project/Build/MSBuildEngine/BuildWorkerManager.cs b/src/Main/SharpDevelop/Project/Build/MSBuildEngine/BuildWorkerManager.cs index 1fd518f4bd0..8ec05b604e0 100644 --- a/src/Main/SharpDevelop/Project/Build/MSBuildEngine/BuildWorkerManager.cs +++ b/src/Main/SharpDevelop/Project/Build/MSBuildEngine/BuildWorkerManager.cs @@ -34,6 +34,7 @@ sealed class BuildWorkerManager readonly List freeWorkers = new List(); readonly string workerProcessName; + public static readonly BuildWorkerManager MSBuild140 = new BuildWorkerManager("ICSharpCode.SharpDevelop.BuildWorker140.exe"); public static readonly BuildWorkerManager MSBuild120 = new BuildWorkerManager("ICSharpCode.SharpDevelop.BuildWorker120.exe"); public static readonly BuildWorkerManager MSBuild40 = new BuildWorkerManager("ICSharpCode.SharpDevelop.BuildWorker40.exe"); public static readonly BuildWorkerManager MSBuild35 = new BuildWorkerManager("ICSharpCode.SharpDevelop.BuildWorker35.exe"); diff --git a/src/Main/SharpDevelop/Project/Build/MSBuildEngine/MSBuildEngineWorker.cs b/src/Main/SharpDevelop/Project/Build/MSBuildEngine/MSBuildEngineWorker.cs index 15a9ef4793f..0b7a983c1e2 100644 --- a/src/Main/SharpDevelop/Project/Build/MSBuildEngine/MSBuildEngineWorker.cs +++ b/src/Main/SharpDevelop/Project/Build/MSBuildEngine/MSBuildEngineWorker.cs @@ -160,7 +160,9 @@ internal Task RunBuildAsync(CancellationToken cancellationToken) tcs.SetResult(false); } } else { - if (DotnetDetection.IsBuildTools2013Installed()) { + if (DotnetDetection.IsBuildTools2015Installed()) { + BuildWorkerManager.MSBuild140.RunBuildJob(job, loggerChain, OnDone, cancellationToken); + } else if (DotnetDetection.IsBuildTools2013Installed()) { BuildWorkerManager.MSBuild120.RunBuildJob(job, loggerChain, OnDone, cancellationToken); } else { BuildWorkerManager.MSBuild40.RunBuildJob(job, loggerChain, OnDone, cancellationToken); diff --git a/src/Setup/Files.wxs b/src/Setup/Files.wxs index f1bd974e822..6517cf01ad6 100644 --- a/src/Setup/Files.wxs +++ b/src/Setup/Files.wxs @@ -318,6 +318,12 @@ + + + + + + diff --git a/src/Setup/Setup.wxs b/src/Setup/Setup.wxs index ecccbd6bf98..6798612afe1 100644 --- a/src/Setup/Setup.wxs +++ b/src/Setup/Setup.wxs @@ -196,6 +196,7 @@ +