From 0e324517e53db4a4460d569a3c0125a51f5149cc Mon Sep 17 00:00:00 2001 From: Fredric Silberberg Date: Wed, 3 Aug 2016 14:02:08 -0700 Subject: [PATCH 1/5] Added MicroBuild dependencies --- src/Tasks/Microsoft.DotNet.Core.Build.Tasks/project.json | 1 + 1 file changed, 1 insertion(+) diff --git a/src/Tasks/Microsoft.DotNet.Core.Build.Tasks/project.json b/src/Tasks/Microsoft.DotNet.Core.Build.Tasks/project.json index 2086eeaaa96e..4bfe03861d65 100644 --- a/src/Tasks/Microsoft.DotNet.Core.Build.Tasks/project.json +++ b/src/Tasks/Microsoft.DotNet.Core.Build.Tasks/project.json @@ -1,5 +1,6 @@ { "dependencies": { + "MicroBuild.Core": "0.2.0", "NuGet.ProjectModel": "3.5.0-rc1-1697", "Microsoft.Build.Framework": "0.1.0-preview-00028-160627", "Microsoft.Build.Utilities.Core": "0.1.0-preview-00028-160627" From b9ff4403a37ac9313be5452409b9dea90bc49f74 Mon Sep 17 00:00:00 2001 From: Fredric Silberberg Date: Wed, 3 Aug 2016 14:15:30 -0700 Subject: [PATCH 2/5] Use the autocleaned staging directory on Microbuild --- build.ps1 | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/build.ps1 b/build.ps1 index 14e50f8ecac7..341d6f787a4f 100644 --- a/build.ps1 +++ b/build.ps1 @@ -26,7 +26,12 @@ $DotnetCLIVersion = Get-Content "$RepoRoot\DotnetCLIVersion.txt" # Use a repo-local install directory (but not the bin directory because that gets cleaned a lot) if (!$env:DOTNET_INSTALL_DIR) { - $env:DOTNET_INSTALL_DIR="$RepoRoot\.dotnet_cli\" + # If running on microbuild, use the auto-cleaned staging directory. + $env:DOTNET_INSTALL_DIR=$env:BUILD_STAGINGDIRECTORY + if (!$env:DOTNET_INSTALL_DIR) + { + $env:DOTNET_INSTALL_DIR="$RepoRoot\.dotnet_cli\" + } } if (!(Test-Path $env:DOTNET_INSTALL_DIR)) From e3c971fc60417f91ab25881eb5a4f5519ea27577 Mon Sep 17 00:00:00 2001 From: Fredric Silberberg Date: Thu, 4 Aug 2016 15:02:39 -0700 Subject: [PATCH 3/5] Moved MicroBuild.Core into a separate project --- .../Targets/ProducesNoOutput.Imports.targets | 12 +++++++ .../Targets/ProducesNoOutput.Settings.targets | 33 +++++++++++++++++++ core-sdk.sln | 12 +++++-- src/Dependencies/Toolset/Toolset.csproj | 13 ++++++++ src/Dependencies/Toolset/project.json | 9 +++++ .../project.json | 1 - 6 files changed, 77 insertions(+), 3 deletions(-) create mode 100644 build/Targets/ProducesNoOutput.Imports.targets create mode 100644 build/Targets/ProducesNoOutput.Settings.targets create mode 100644 src/Dependencies/Toolset/Toolset.csproj create mode 100644 src/Dependencies/Toolset/project.json diff --git a/build/Targets/ProducesNoOutput.Imports.targets b/build/Targets/ProducesNoOutput.Imports.targets new file mode 100644 index 000000000000..6cb047d297cb --- /dev/null +++ b/build/Targets/ProducesNoOutput.Imports.targets @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/build/Targets/ProducesNoOutput.Settings.targets b/build/Targets/ProducesNoOutput.Settings.targets new file mode 100644 index 000000000000..751d3fb2c320 --- /dev/null +++ b/build/Targets/ProducesNoOutput.Settings.targets @@ -0,0 +1,33 @@ + + + + + + + false + true + + + + true + bin + + + + false + false + Library + + + + .NETPortable + v4.5 + Profile7 + + + + .NETFramework + v4.6 + + + \ No newline at end of file diff --git a/core-sdk.sln b/core-sdk.sln index 3e8a4d2dc8a5..66c1894157df 100644 --- a/core-sdk.sln +++ b/core-sdk.sln @@ -1,7 +1,7 @@  Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio 14 -VisualStudioVersion = 14.0.25420.1 +# Visual Studio 15 +VisualStudioVersion = 15.0.25428.1 MinimumVisualStudioVersion = 10.0.40219.1 Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Tasks", "Tasks", "{1FEED16D-E07D-47C1-BB4C-56CD9F42B53B}" EndProject @@ -15,6 +15,10 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.DotNet.Core.Build.Tasks.UnitTests", "src\Tasks\Microsoft.DotNet.Core.Build.Tasks.UnitTests\Microsoft.DotNet.Core.Build.Tasks.UnitTests.csproj", "{6A698C1D-F604-4295-B6FC-7FC726F9FE5F}" EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Dependencies", "Dependencies", "{F4B31103-96D4-4CB9-BFF1-19AC665818DC}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Toolset", "src\Dependencies\Toolset\Toolset.csproj", "{3899F789-E072-476D-B9D6-79E641611648}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -29,6 +33,9 @@ Global {6A698C1D-F604-4295-B6FC-7FC726F9FE5F}.Debug|Any CPU.Build.0 = Debug|Any CPU {6A698C1D-F604-4295-B6FC-7FC726F9FE5F}.Release|Any CPU.ActiveCfg = Release|Any CPU {6A698C1D-F604-4295-B6FC-7FC726F9FE5F}.Release|Any CPU.Build.0 = Release|Any CPU + {3899F789-E072-476D-B9D6-79E641611648}.Debug|Any CPU.ActiveCfg = Debug|x86 + {3899F789-E072-476D-B9D6-79E641611648}.Release|Any CPU.ActiveCfg = Debug|x86 + {3899F789-E072-476D-B9D6-79E641611648}.Release|Any CPU.Build.0 = Debug|x86 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -36,5 +43,6 @@ Global GlobalSection(NestedProjects) = preSolution {DF7D2697-B3B4-45C2-8297-27245F528A99} = {1FEED16D-E07D-47C1-BB4C-56CD9F42B53B} {6A698C1D-F604-4295-B6FC-7FC726F9FE5F} = {1FEED16D-E07D-47C1-BB4C-56CD9F42B53B} + {3899F789-E072-476D-B9D6-79E641611648} = {F4B31103-96D4-4CB9-BFF1-19AC665818DC} EndGlobalSection EndGlobal diff --git a/src/Dependencies/Toolset/Toolset.csproj b/src/Dependencies/Toolset/Toolset.csproj new file mode 100644 index 000000000000..778c630c9ce4 --- /dev/null +++ b/src/Dependencies/Toolset/Toolset.csproj @@ -0,0 +1,13 @@ + + + + {3899F789-E072-476D-B9D6-79E641611648} + {FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} + NETStandard + v1.3 + + + + + + \ No newline at end of file diff --git a/src/Dependencies/Toolset/project.json b/src/Dependencies/Toolset/project.json new file mode 100644 index 000000000000..b09106c85b26 --- /dev/null +++ b/src/Dependencies/Toolset/project.json @@ -0,0 +1,9 @@ +{ + "supports" : {}, + "dependencies": { + "MicroBuild.Core": "0.2.0" + }, + "frameworks": { + "netstandard1.3": {} + } +} \ No newline at end of file diff --git a/src/Tasks/Microsoft.DotNet.Core.Build.Tasks/project.json b/src/Tasks/Microsoft.DotNet.Core.Build.Tasks/project.json index c88ff49d4dd4..e66b0277cd5e 100644 --- a/src/Tasks/Microsoft.DotNet.Core.Build.Tasks/project.json +++ b/src/Tasks/Microsoft.DotNet.Core.Build.Tasks/project.json @@ -1,6 +1,5 @@ { "dependencies": { - "MicroBuild.Core": "0.2.0", "NuGet.ProjectModel": "3.5.0-rc1-1697", "Microsoft.Extensions.DependencyModel": "1.0.1-beta-003393", "Microsoft.Build.Framework": "0.1.0-preview-00028-160627", From f5a225e4bac2679582a096dac3e0e4a9c21f8b20 Mon Sep 17 00:00:00 2001 From: Fredric Silberberg Date: Thu, 4 Aug 2016 17:04:39 -0700 Subject: [PATCH 4/5] Added new targets for correctly building the Toolset project --- .../Targets/ProducesNoOutput.Imports.targets | 32 ++++++++++++++++++ .../Targets/ProducesNoOutput.Settings.targets | 33 ------------------- build/Targets/Settings.targets | 7 ++++ core-sdk.sln | 7 ++-- src/Dependencies/Toolset/Toolset.csproj | 11 ++++++- 5 files changed, 53 insertions(+), 37 deletions(-) delete mode 100644 build/Targets/ProducesNoOutput.Settings.targets diff --git a/build/Targets/ProducesNoOutput.Imports.targets b/build/Targets/ProducesNoOutput.Imports.targets index 6cb047d297cb..edf149f1af63 100644 --- a/build/Targets/ProducesNoOutput.Imports.targets +++ b/build/Targets/ProducesNoOutput.Imports.targets @@ -1,5 +1,37 @@  + + + + VisualBasic + + + + + CSharp + + + + + + + + $(VCTargetsPath)\Microsoft.Cpp.targets + + + + + $(MSBuildExtensionsPath32)\Microsoft\Portable\$(TargetFrameworkVersion)\Microsoft.Portable.$(MSBuildTargetsLanguageName).targets + + + + + $(MSBuildToolsPath)\Microsoft.$(MSBuildTargetsLanguageName).targets + + + + + diff --git a/build/Targets/ProducesNoOutput.Settings.targets b/build/Targets/ProducesNoOutput.Settings.targets deleted file mode 100644 index 751d3fb2c320..000000000000 --- a/build/Targets/ProducesNoOutput.Settings.targets +++ /dev/null @@ -1,33 +0,0 @@ - - - - - - - false - true - - - - true - bin - - - - false - false - Library - - - - .NETPortable - v4.5 - Profile7 - - - - .NETFramework - v4.6 - - - \ No newline at end of file diff --git a/build/Targets/Settings.targets b/build/Targets/Settings.targets index ea84cb8dcc14..d481489ff4f1 100644 --- a/build/Targets/Settings.targets +++ b/build/Targets/Settings.targets @@ -2,6 +2,13 @@ + + + CSharp + VB + C++ + + $([System.IO.Path]::GetFullPath('$(MSBuildThisFileDirectory)\..\..\bin\$(Configuration)'))\ $([System.IO.Path]::GetFullPath('$(MSBuildThisFileDirectory)\..\..\bin\obj\$(MSBuildProjectName)'))\ diff --git a/core-sdk.sln b/core-sdk.sln index 66c1894157df..4de09347f650 100644 --- a/core-sdk.sln +++ b/core-sdk.sln @@ -33,9 +33,10 @@ Global {6A698C1D-F604-4295-B6FC-7FC726F9FE5F}.Debug|Any CPU.Build.0 = Debug|Any CPU {6A698C1D-F604-4295-B6FC-7FC726F9FE5F}.Release|Any CPU.ActiveCfg = Release|Any CPU {6A698C1D-F604-4295-B6FC-7FC726F9FE5F}.Release|Any CPU.Build.0 = Release|Any CPU - {3899F789-E072-476D-B9D6-79E641611648}.Debug|Any CPU.ActiveCfg = Debug|x86 - {3899F789-E072-476D-B9D6-79E641611648}.Release|Any CPU.ActiveCfg = Debug|x86 - {3899F789-E072-476D-B9D6-79E641611648}.Release|Any CPU.Build.0 = Debug|x86 + {3899F789-E072-476D-B9D6-79E641611648}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {3899F789-E072-476D-B9D6-79E641611648}.Debug|Any CPU.Build.0 = Debug|Any CPU + {3899F789-E072-476D-B9D6-79E641611648}.Release|Any CPU.ActiveCfg = Debug|Any CPU + {3899F789-E072-476D-B9D6-79E641611648}.Release|Any CPU.Build.0 = Debug|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/src/Dependencies/Toolset/Toolset.csproj b/src/Dependencies/Toolset/Toolset.csproj index 778c630c9ce4..4a9dd741cd66 100644 --- a/src/Dependencies/Toolset/Toolset.csproj +++ b/src/Dependencies/Toolset/Toolset.csproj @@ -1,10 +1,19 @@  + + false + + {3899F789-E072-476D-B9D6-79E641611648} {FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} - NETStandard + .NETStandard v1.3 + true + bin + false + false + Library From da4c48adda72c31aefba3def696029f17378ca83 Mon Sep 17 00:00:00 2001 From: Fredric Silberberg Date: Tue, 9 Aug 2016 12:35:19 -0700 Subject: [PATCH 5/5] Added Microbuild signing settings --- Directory.Build.props | 4 + build/Targets/MicroBuild.Settings.targets | 95 +++++++++++++++++++++++ src/Dependencies/Toolset/Toolset.csproj | 1 + 3 files changed, 100 insertions(+) create mode 100644 build/Targets/MicroBuild.Settings.targets diff --git a/Directory.Build.props b/Directory.Build.props index 61ed571a9b1c..a881f20982f4 100644 --- a/Directory.Build.props +++ b/Directory.Build.props @@ -14,7 +14,11 @@ $([System.IO.Path]::GetFullPath('$(RepositoryRootDirectory)bin\$(Configuration)'))\ $([System.IO.Path]::GetFullPath('$(RepositoryRootDirectory)bin\obj\$(MSBuildProjectName)'))\ + true + 1.0.0 + + $(BuildVersion) alpha-00001 $(VersionPrefix)-$(VersionSuffix) diff --git a/build/Targets/MicroBuild.Settings.targets b/build/Targets/MicroBuild.Settings.targets new file mode 100644 index 000000000000..d51e793205a6 --- /dev/null +++ b/build/Targets/MicroBuild.Settings.targets @@ -0,0 +1,95 @@ + + + + + + $([System.IO.Path]::GetFullPath('$(MSBuildThisFileDirectory)\..')) + + + + + $(BUILD_ARTIFACTSTAGINGDIRECTORY)\MicroBuild\Plugins\MicroBuild.Plugins.Signing.1.0.227\build\MicroBuild.Signing.dll + $(MicroBuildSigningLibraryV2) + true + MicrosoftShared + 002400000480000094000000060200000024000052534131000400000100010055e0217eb635f69281051f9a823e0c7edd90f28063eb6c7a742a19b4f6139778ee0af438f47aed3b6e9f99838aa8dba689c7a71ddb860c96d923830b57bbd5cd6119406ddb9b002cf1c723bf272d6acbb7129e9d6dd5a5309c94e0ff4b2c884d45a55f475cd7dba59198086f61f5a8c8b5e601c0edbf269733f6f578fc8579c2 + + + + + + + + + + + + + true + + + + + true + + + + + + + + $(VSLToolsPath)\Strong Name Keys\MSFT.snk + 002400000480000094000000060200000024000052534131000400000100010007d1fa57c4aed9f0a32e84aa0faefd0de9e8fd6aec8f87fb03766c834c99921eb23be79ad9d5dcc1dd9ad236132102900b723cf980957fc4e177108fc607774f29e8320e92ea05ece4e821c0a5efe8f1645c4c0c93c1ab99285d622caa652c1dfad63d745d6f2de5f17e5eaf0fc4963d261c8a12436518206dc093344d5ad293 + b03f5f7f11d50a3a + 67 + + + + + + $(VSLToolsPath)\Strong Name Keys\35MSSharedLib1024.snk + 0024000004800000940000000602000000240000525341310004000001000100b5fc90e7027f67871e773a8fde8938c81dd402ba65b9201d60593e96c492651e889cc13f1415ebb53fac1131ae0bd333c5ee6021672d9718ea31a8aebd0da0072f25d87dba6fc90ffd598ed4da35e44c398c454307e8e33b8426143daec9f596836f97c8f74750e5975c64e2189f45def46b2a2b1247adc3652bf5c308055da9 + 31BF3856AD364E35 + 72 + + + + + + + + + + + $(VSLToolsPath)\Strong Name Keys\RoslynInternalKey.Private.snk + false + $(RoslynInternalKey) + fc793a00266884fb + + + + + + + + + + + false + true + + + + + + Microsoft + $(StrongNameCertificateFriendlyId) + + + + \ No newline at end of file diff --git a/src/Dependencies/Toolset/Toolset.csproj b/src/Dependencies/Toolset/Toolset.csproj index 576a7fe43569..5312502de752 100644 --- a/src/Dependencies/Toolset/Toolset.csproj +++ b/src/Dependencies/Toolset/Toolset.csproj @@ -14,6 +14,7 @@ false false Library + true