Skip to content
This repository was archived by the owner on Apr 20, 2023. It is now read-only.

Commit 3a61ba1

Browse files
committed
Add Microsoft.NET.Build.Extensions and corresponding DLLs in CLI layout
1 parent 6e122ed commit 3a61ba1

File tree

6 files changed

+72
-21
lines changed

6 files changed

+72
-21
lines changed

Microsoft.DotNet.Cli.sln

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
Microsoft Visual Studio Solution File, Format Version 12.00
22
# Visual Studio 15
3-
VisualStudioVersion = 15.0.26419.0
3+
VisualStudioVersion = 15.0.26510.0
44
MinimumVisualStudioVersion = 10.0.40219.1
55
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{ED2FE3E2-F7E7-4389-8231-B65123F2076F}"
66
EndProject
@@ -30,7 +30,6 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "build", "build", "{89905EC4
3030
build\BuildDefaults.props = build\BuildDefaults.props
3131
build\BuildInfo.targets = build\BuildInfo.targets
3232
build\BundledRuntimes.props = build\BundledRuntimes.props
33-
build\BundledSdks.proj = build\BundledSdks.proj
3433
build\BundledSdks.props = build\BundledSdks.props
3534
build\BundledTemplates.proj = build\BundledTemplates.proj
3635
build\BundledTemplates.props = build\BundledTemplates.props
@@ -48,10 +47,12 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "build", "build", "{89905EC4
4847
build\InstallerInfo.props = build\InstallerInfo.props
4948
build\Microsoft.DotNet.Cli.tasks = build\Microsoft.DotNet.Cli.tasks
5049
build\MSBuildExtensions.props = build\MSBuildExtensions.props
50+
build\MSBuildExtensions.targets = build\MSBuildExtensions.targets
5151
build\OutputDirectories.props = build\OutputDirectories.props
5252
build\Package.targets = build\Package.targets
5353
build\Prepare.targets = build\Prepare.targets
5454
build\Publish.targets = build\Publish.targets
55+
build\RestoreDependency.proj = build\RestoreDependency.proj
5556
build\sdks\sdks.csproj = build\sdks\sdks.csproj
5657
build\Signing.proj = build\Signing.proj
5758
build\Stage0.props = build\Stage0.props

build/DependencyVersions.props

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,10 @@
66
<CLI_Roslyn_Version>2.3.0-beta2-61716-09</CLI_Roslyn_Version>
77
<CLI_DiaSymNative_Version>1.6.0-beta2-25304</CLI_DiaSymNative_Version>
88
<CLI_FSharp_Version>4.2.0-rc-170602-0</CLI_FSharp_Version>
9-
<CLI_NETSDK_Version>2.0.0-preview2-20170602-1</CLI_NETSDK_Version>
9+
<CLI_NETSDK_Version>2.0.0-preview2-20170606-4</CLI_NETSDK_Version>
1010
<CLI_NuGet_Version>4.3.0-preview3-4146</CLI_NuGet_Version>
11+
<CLI_MSBuildExtensions_Version>2.0.0-preview2-20170606-4</CLI_MSBuildExtensions_Version>
12+
<CLI_NETStandardLibraryNETFrameworkVersion>2.0.0-preview2-25331-02</CLI_NETStandardLibraryNETFrameworkVersion>
1113
<CLI_WEBSDK_Version>2.0.0-rel-20170518-512</CLI_WEBSDK_Version>
1214
<CLI_TestPlatform_Version>15.3.0-preview-20170601-03</CLI_TestPlatform_Version>
1315
<SharedFrameworkVersion>$(CLI_SharedFrameworkVersion)</SharedFrameworkVersion>

build/MSBuildExtensions.targets

Lines changed: 43 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,54 @@
11
<Project>
22
<Target Name="GenerateMSBuildExtensions"
3-
DependsOnTargets="GenerateBundledVersionsProps">
3+
DependsOnTargets="GenerateBundledVersionsProps;RestoreMSBuildExtensionsPackages">
44

55
<ItemGroup>
66
<MSBuildExtensionsContent Include="$(GeneratedMSBuildExtensionsDirectory)/**/*" />
7+
8+
<MSBuildExtensionsContent Include="$(MSBuildExtensionsNuPkgPath)\msbuildExtensions\**\*.*"
9+
Exclude="$(MSBuildExtensionsNuPkgPath)\msbuildExtensions\Microsoft.NET.Build.Extensions\net*\**" />
10+
<MSBuildExtensionsContent Include="$(MSBuildExtensionsNuPkgPath)\msbuildExtensions-ver\**\*.*"
11+
DeploymentSubpath="$(MSBuildExtensionsVersionSubfolder)/" />
12+
<MSBuildExtensionsContent Include="$(NETStandardLibraryNETFrameworkNuPkgPath)\build\**\*.*"
13+
Exclude="$(NETStandardLibraryNETFrameworkNuPkgPath)\build\**\*.props;$(NETStandardLibraryNETFrameworkNuPkgPath)\build\**\*.targets"
14+
DeploymentSubpath="Microsoft.NET.Build.Extensions/" />
715
</ItemGroup>
816
</Target>
917

18+
<Target Name="PrepareMSBuildExtensionsProps">
19+
<PropertyGroup>
20+
<MSBuildExtensionsPackageName>Microsoft.NET.Build.Extensions</MSBuildExtensionsPackageName>
21+
<MSBuildExtensionsVersionSubfolder>15.0</MSBuildExtensionsVersionSubfolder>
22+
<MSBuildExtensionsNuPkgPath>$(NuGetPackagesDir)/$(MSBuildExtensionsPackageName.ToLower())/$(CLI_MSBuildExtensions_Version.ToLower())</MSBuildExtensionsNuPkgPath>
23+
24+
<NETStandardLibraryNETFrameworkPackageName>NETStandard.Library.NETFramework</NETStandardLibraryNETFrameworkPackageName>
25+
<NETStandardLibraryNETFrameworkNuPkgPath>$(NuGetPackagesDir)/$(NETStandardLibraryNETFrameworkPackageName.ToLower())/$(CLI_NETStandardLibraryNETFrameworkVersion.ToLower())</NETStandardLibraryNETFrameworkNuPkgPath>
26+
</PropertyGroup>
27+
</Target>
28+
29+
<Target Name="RestoreMSBuildExtensionsPackages"
30+
DependsOnTargets="PrepareMSBuildExtensionsProps">
31+
<ItemGroup>
32+
<ExtensionPackageToRestore Include="$(MSBuildExtensionsPackageName)" Version="$(CLI_MSBuildExtensions_Version)"/>
33+
<ExtensionPackageToRestore Include="$(NETStandardLibraryNETFrameworkPackageName)" Version="$(CLI_NETStandardLibraryNETFrameworkVersion)"/>
34+
35+
<ExtensionRestore Include="$(RepoRoot)/build/RestoreDependency.proj">
36+
<Properties>
37+
CLIBuildDll=$(CLIBuildDll);
38+
NuGetPackagesDir=$(NuGetPackagesDir);
39+
DependencyPackageName=%(ExtensionPackageToRestore.Identity);
40+
DependencyPackageVersion=%(ExtensionPackageToRestore.Version);
41+
Stage0Directory=$(Stage0Directory)
42+
</Properties>
43+
</ExtensionRestore>
44+
</ItemGroup>
45+
46+
<MSBuild
47+
BuildInParallel="False"
48+
Projects="@(ExtensionRestore)">
49+
</MSBuild>
50+
</Target>
51+
1052
<Target Name="GenerateBundledVersionsProps">
1153
<PropertyGroup>
1254
<BundledVersionsPropsFileName>Microsoft.NETCoreSdk.BundledVersions.props</BundledVersionsPropsFileName>
Lines changed: 13 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -9,37 +9,38 @@
99
<UsingTask TaskName="DotNetRestore" AssemblyFile="$(CLIBuildDllPath)" />
1010

1111
<Target Name="CopySdkToOutput"
12-
DependsOnTargets="PrepareBundledSdksProps;
13-
EnsureSdkRestored;
12+
DependsOnTargets="PrepareBundledDependencyProps;
13+
EnsureDependencyRestored;
1414
GetSdkItemsToCopy"
15+
Condition="'$(SdkLayoutDirectory)' != ''"
1516
Inputs="@(SdkContent)"
1617
Outputs="@(SdkContent->'$(SdkLayoutDirectory)/%(RecursiveDir)%(FileName)%(Extension)')">
1718
<Copy SourceFiles="@(SdkContent)"
1819
DestinationFiles="@(SdkContent->'$(SdkLayoutDirectory)/%(RecursiveDir)%(FileName)%(Extension)')" />
1920

20-
<Message Text="Copied Sdk $(SdkPackageName) from $(SdkNuPkgPath) to $(SdkLayoutDirectory)."
21+
<Message Text="Copied Sdk $(DependencyPackageName) from $(DependencyNuPkgPath) to $(SdkLayoutDirectory)."
2122
Importance="High" />
2223
</Target>
2324

2425
<Target Name="GetSdkItemsToCopy">
2526
<ItemGroup>
26-
<SdkContent Include="$(SdkNuPkgPath)/**/*"
27-
Exclude="$(SdkNuPkgPath)/$(SdkPackageName).nuspec;
28-
$(SdkNuPkgPath)/$(SdkPackageName).$(SdkPackageVersion).nupkg;
29-
$(SdkNuPkgPath)/$(SdkPackageName).$(SdkPackageVersion).nupkg.sha512" />
27+
<SdkContent Include="$(DependencyNuPkgPath)/**/*"
28+
Exclude="$(DependencyNuPkgPath)/$(DependencyPackageName).nuspec;
29+
$(DependencyNuPkgPath)/$(DependencyPackageName).$(DependencyPackageVersion).nupkg;
30+
$(DependencyNuPkgPath)/$(DependencyPackageName).$(DependencyPackageVersion).nupkg.sha512" />
3031
</ItemGroup>
3132
</Target>
3233

33-
<Target Name="EnsureSdkRestored"
34-
Condition="!Exists('$(SdkNuPkgPath)/$(SdkPackageName.ToLower()).nuspec')">
34+
<Target Name="EnsureDependencyRestored"
35+
Condition="!Exists('$(DependencyNuPkgPath)/$(DependencyPackageName.ToLower()).nuspec')">
3536
<DotNetRestore ToolPath="$(Stage0Directory)"
3637
ProjectPath="$(MSBuildThisFileDirectory)/sdks/sdks.csproj"
37-
AdditionalParameters="/p:SdkPackageName=$(SdkPackageName) /p:SdkPackageVersion=$(SdkPackageVersion)" />
38+
AdditionalParameters="/p:DependencyPackageName=$(DependencyPackageName) /p:DependencyPackageVersion=$(DependencyPackageVersion)" />
3839
</Target>
3940

40-
<Target Name="PrepareBundledSdksProps">
41+
<Target Name="PrepareBundledDependencyProps">
4142
<PropertyGroup>
42-
<SdkNuPkgPath>$(NuGetPackagesDir)/$(SdkPackageName.ToLower())/$(SdkPackageVersion.ToLower())</SdkNuPkgPath>
43+
<DependencyNuPkgPath>$(NuGetPackagesDir)/$(DependencyPackageName.ToLower())/$(DependencyPackageVersion.ToLower())</DependencyNuPkgPath>
4344
</PropertyGroup>
4445
</Target>
4546
</Project>

build/sdks/sdks.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
</PropertyGroup>
99

1010
<ItemGroup>
11-
<PackageReference Include="$(SdkPackageName)" Version="$(SdkPackageVersion)" />
11+
<PackageReference Include="$(DependencyPackageName)" Version="$(DependencyPackageVersion)" />
1212
</ItemGroup>
1313

1414
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />

src/redist/redist.csproj

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -112,9 +112,14 @@
112112
DependsOnTargets="GenerateMSBuildExtensions"
113113
AfterTargets="Publish"
114114
BeforeTargets="GenerateCliRuntimeConfigurationFiles">
115+
<ItemGroup>
116+
<MSBuildExtensionsContent Update="@(MSBuildExtensionsContent)">
117+
<DestinationPath Condition="'%(MSBuildExtensionsContent.DestinationPath)' == ''">$(PublishDir)/%(MSBuildExtensionsContent.DeploymentSubpath)%(RecursiveDir)%(Filename)%(Extension)</DestinationPath>
118+
</MSBuildExtensionsContent>
119+
</ItemGroup>
115120

116121
<Copy SourceFiles="@(MSBuildExtensionsContent)"
117-
DestinationFolder="$(PublishDir)/%(RecursiveDir)" />
122+
DestinationFiles="%(MSBuildExtensionsContent.DestinationPath)" />
118123

119124
<PropertyGroup>
120125
<MSBuildTargetsDirectory>$(PublishDir)/runtimes/any/native</MSBuildTargetsDirectory>
@@ -140,13 +145,13 @@
140145
<Target Name="PublishSdks"
141146
AfterTargets="Publish">
142147
<ItemGroup>
143-
<SdksToBundle Include="$(RepoRoot)/build/BundledSdks.proj">
148+
<SdksToBundle Include="$(RepoRoot)/build/RestoreDependency.proj">
144149
<Properties>
145150
CLIBuildDll=$(CLIBuildDll);
146151
NuGetPackagesDir=$(NuGetPackagesDir);
147152
SdkLayoutDirectory=$(SdkOutputDirectory)/Sdks/%(BundledSdk.Identity);
148-
SdkPackageName=%(BundledSdk.Identity);
149-
SdkPackageVersion=%(BundledSdk.Version);
153+
DependencyPackageName=%(BundledSdk.Identity);
154+
DependencyPackageVersion=%(BundledSdk.Version);
150155
Stage0Directory=$(Stage0Directory)
151156
</Properties>
152157
</SdksToBundle>

0 commit comments

Comments
 (0)