From d070660282eb5f78497310f77093638744112e03 Mon Sep 17 00:00:00 2001 From: Matt Mitchell Date: Mon, 26 Feb 2024 02:51:44 -0800 Subject: [PATCH] Enable installer and SDK repos in VMR build (#18632) Co-authored-by: Viktor Hofer --- Directory.Build.props | 2 +- eng/SourceBuild.props | 15 +- eng/restore-toolset.ps1 | 2 +- eng/restore-toolset.sh | 2 +- src/SourceBuild/content/Directory.Build.props | 9 +- .../repo-projects/Directory.Build.props | 9 +- .../repo-projects/Directory.Build.targets | 1 - .../content/repo-projects/installer.proj | 29 ++-- src/core-sdk-tasks/core-sdk-tasks.csproj | 4 +- src/finalizer/CMakeLists.txt | 2 +- src/redist/redist.csproj | 6 +- src/redist/targets/BundledManifests.targets | 12 +- src/redist/targets/BundledTemplates.targets | 30 ++-- src/redist/targets/Crossgen.targets | 4 +- src/redist/targets/GenerateArchives.targets | 13 -- .../targets/GenerateBundledVersions.targets | 12 +- src/redist/targets/GenerateLayout.targets | 130 ++++++++++-------- src/redist/targets/GeneratePKG.targets | 4 +- 18 files changed, 145 insertions(+), 141 deletions(-) diff --git a/Directory.Build.props b/Directory.Build.props index 5d0198439..c40c8555e 100644 --- a/Directory.Build.props +++ b/Directory.Build.props @@ -8,7 +8,7 @@ - $([System.Runtime.InteropServices.RuntimeInformation]::ProcessArchitecture.ToString().ToLowerInvariant()) + $([System.Runtime.InteropServices.RuntimeInformation]::ProcessArchitecture.ToString().ToLowerInvariant()) $(BuildArchitecture) $(BuildArchitecture) $(BuildArchitecture) diff --git a/eng/SourceBuild.props b/eng/SourceBuild.props index e6c924d5b..9e4078adf 100644 --- a/eng/SourceBuild.props +++ b/eng/SourceBuild.props @@ -8,7 +8,7 @@ - + $(InnerBuildArgs) /p:SkipBuildingInstallers=true $(InnerBuildArgs) /p:IncludeAdditionalSharedFrameworks=false $(InnerBuildArgs) /p:DISABLE_CROSSGEN=true @@ -16,4 +16,17 @@ + + + + + + + + + + + diff --git a/eng/restore-toolset.ps1 b/eng/restore-toolset.ps1 index 893a96111..e3862f0e9 100644 --- a/eng/restore-toolset.ps1 +++ b/eng/restore-toolset.ps1 @@ -5,7 +5,7 @@ function InitializeCustomSDKToolset { # The following frameworks and tools are used only for testing. # Do not attempt to install them in source build. - if ($env:DotNetBuildFromSource -eq "true") { + if ($productBuild -or $properties -like "*DotNetBuildRepo=true*") { return } diff --git a/eng/restore-toolset.sh b/eng/restore-toolset.sh index cd17755d5..f4352ac20 100644 --- a/eng/restore-toolset.sh +++ b/eng/restore-toolset.sh @@ -5,7 +5,7 @@ function InitializeCustomSDKToolset { # The following frameworks and tools are used only for testing. # Do not attempt to install them in source build. - if [[ "${DotNetBuildFromSource:-}" == "true" ]]; then + if [[ $product_build == true || $properties == *"DotNetBuildRepo=true"* ]]; then return fi diff --git a/src/SourceBuild/content/Directory.Build.props b/src/SourceBuild/content/Directory.Build.props index e587e6ac4..52bed0835 100644 --- a/src/SourceBuild/content/Directory.Build.props +++ b/src/SourceBuild/content/Directory.Build.props @@ -34,12 +34,15 @@ runtime + + $([System.Runtime.InteropServices.RuntimeInformation]::ProcessArchitecture.ToString().ToLowerInvariant) - $(BuildArchitecture) - - + $(BuildArchitecture) + + $(TargetArchitecture) AnyCPU diff --git a/src/SourceBuild/content/repo-projects/Directory.Build.props b/src/SourceBuild/content/repo-projects/Directory.Build.props index 12d20f5b7..0a2a25dc8 100644 --- a/src/SourceBuild/content/repo-projects/Directory.Build.props +++ b/src/SourceBuild/content/repo-projects/Directory.Build.props @@ -240,8 +240,8 @@ - - + + @@ -249,11 +249,6 @@ - - - - diff --git a/src/SourceBuild/content/repo-projects/Directory.Build.targets b/src/SourceBuild/content/repo-projects/Directory.Build.targets index 906f06f57..241a76523 100644 --- a/src/SourceBuild/content/repo-projects/Directory.Build.targets +++ b/src/SourceBuild/content/repo-projects/Directory.Build.targets @@ -742,7 +742,6 @@ - diff --git a/src/SourceBuild/content/repo-projects/installer.proj b/src/SourceBuild/content/repo-projects/installer.proj index b2fc88012..518ca8aad 100644 --- a/src/SourceBuild/content/repo-projects/installer.proj +++ b/src/SourceBuild/content/repo-projects/installer.proj @@ -4,24 +4,21 @@ false - - $(TargetOS) - $(TargetRid.Substring(0, $(TargetRid.IndexOf("-")))) - $(ProjectDirectory)build$(ShellExtension) $(FlagParameterPrefix)pack $(FlagParameterPrefix)publish - $(BuildArgs) $(FlagParameterPrefix)runtime-id $(TargetRid) - $(BuildArgs) /p:NETCoreAppMaximumVersion=99.9 - $(BuildArgs) /p:OSName=$(OSNameOverride) + + $(BuildArgs) /p:OSName=$(TargetRid.Substring(0, $(TargetRid.IndexOf("-")))) $(BuildArgs) /p:PortableOSName=$(__PortableTargetOS) $(BuildArgs) /p:Rid=$(TargetRid) $(BuildArgs) /p:Architecture=$(TargetArchitecture) @@ -30,10 +27,13 @@ $(BuildArgs) /p:AspNetCoreInstallerRid=$(TargetRid) $(BuildArgs) /p:PortableBuild=true - $(BuildArgs) /p:CoreSetupRid=$(TargetRid) + $(BuildArgs) /p:NetRuntimeRid=$(TargetRid) + + $(BuildArgs) /p:SkipBuildingInstallers=true $(BuildArgs) /p:PublicBaseURL=file:%2F%2F$(ArtifactsAssetsDir) - + + $(BuildArgs) /p:FallbackPublicBaseURL=https://dotnetbuilds.blob.core.windows.net/public/ $(BuildArgs) /p:UsePortableLinuxSharedFramework=false $(BuildArgs) /p:PgoInstrument=true @@ -74,15 +74,8 @@ - - - + + $(CoreSdkTargetFramework) true Microsoft.DotNet.Cli.Build - $(DefineConstants);SOURCE_BUILD + $(DefineConstants);SOURCE_BUILD true true @@ -16,7 +16,7 @@ - + diff --git a/src/finalizer/CMakeLists.txt b/src/finalizer/CMakeLists.txt index 80c5be98d..17b27a104 100644 --- a/src/finalizer/CMakeLists.txt +++ b/src/finalizer/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.15.5) +cmake_minimum_required(VERSION 3.20) # Create project named finalizer, this will # will generate Finalizer.vcxproj diff --git a/src/redist/redist.csproj b/src/redist/redist.csproj index 9a6e21871..8006710cd 100644 --- a/src/redist/redist.csproj +++ b/src/redist/redist.csproj @@ -6,7 +6,7 @@ false true none - true + true @@ -15,8 +15,8 @@ RuntimeFrameworkVersion="$(MicrosoftNETCoreAppRuntimePackageVersion)" /> - - + + diff --git a/src/redist/targets/BundledManifests.targets b/src/redist/targets/BundledManifests.targets index b17e885e4..fbe03b6e4 100644 --- a/src/redist/targets/BundledManifests.targets +++ b/src/redist/targets/BundledManifests.targets @@ -3,12 +3,12 @@ 8.0.100 - - - - - - + + + + + + diff --git a/src/redist/targets/BundledTemplates.targets b/src/redist/targets/BundledTemplates.targets index 760318166..a13289946 100644 --- a/src/redist/targets/BundledTemplates.targets +++ b/src/redist/targets/BundledTemplates.targets @@ -24,8 +24,8 @@ - - + + @@ -36,8 +36,8 @@ - - + + @@ -46,8 +46,8 @@ - - + + @@ -59,8 +59,8 @@ - - + + @@ -73,8 +73,8 @@ - - + + @@ -89,16 +89,16 @@ - - + + - - + + @@ -129,7 +129,7 @@ - + diff --git a/src/redist/targets/Crossgen.targets b/src/redist/targets/Crossgen.targets index 4121ddb9c..4a996f927 100644 --- a/src/redist/targets/Crossgen.targets +++ b/src/redist/targets/Crossgen.targets @@ -2,7 +2,7 @@ @@ -147,7 +147,7 @@ - + diff --git a/src/redist/targets/GenerateArchives.targets b/src/redist/targets/GenerateArchives.targets index 814abbe71..ac662ab94 100644 --- a/src/redist/targets/GenerateArchives.targets +++ b/src/redist/targets/GenerateArchives.targets @@ -20,25 +20,12 @@ DestinationArchive="$(ArtifactsShippingPackagesDir)$(ArtifactNameWithVersionCombinedHostHostFxrFrameworkSdk).zip" OverwriteDestination="true" /> - - - - diff --git a/src/redist/targets/GenerateBundledVersions.targets b/src/redist/targets/GenerateBundledVersions.targets index 6c5a7a912..bd36c5e06 100644 --- a/src/redist/targets/GenerateBundledVersions.targets +++ b/src/redist/targets/GenerateBundledVersions.targets @@ -247,7 +247,7 @@ <_KnownRuntimeIdentiferPlatforms Include="any;aot;freebsd;illumos;solaris;unix" /> - <_ExcludedKnownRuntimeIdentiferPlatforms Include="rhel.6;tizen.4.0.0;tizen.5.0.0" Condition="'$(DotNetBuildFromSource)' != 'true'" /> - <_ExcludedKnownRuntimeIdentiferPlatforms Include="rhel.6" Condition="'$(DotNetBuildFromSource)' == 'true' and !$(ProductMonikerRid.StartsWith('rhel.6-'))" /> - <_ExcludedKnownRuntimeIdentiferPlatforms Include="tizen.4.0.0" Condition="'$(DotNetBuildFromSource)' == 'true' and !$(ProductMonikerRid.StartsWith('tizen.4.0.0-'))" /> - <_ExcludedKnownRuntimeIdentiferPlatforms Include="tizen.5.0.0" Condition="'$(DotNetBuildFromSource)' == 'true' and !$(ProductMonikerRid.StartsWith('tizen.5.0.0-'))" /> + <_ExcludedKnownRuntimeIdentiferPlatforms Include="rhel.6;tizen.4.0.0;tizen.5.0.0" Condition="'$(DotNetBuildSourceOnly)' != 'true'" /> + <_ExcludedKnownRuntimeIdentiferPlatforms Include="rhel.6" Condition="'$(DotNetBuildSourceOnly)' == 'true' and !$(ProductMonikerRid.StartsWith('rhel.6-'))" /> + <_ExcludedKnownRuntimeIdentiferPlatforms Include="tizen.4.0.0" Condition="'$(DotNetBuildSourceOnly)' == 'true' and !$(ProductMonikerRid.StartsWith('tizen.4.0.0-'))" /> + <_ExcludedKnownRuntimeIdentiferPlatforms Include="tizen.5.0.0" Condition="'$(DotNetBuildSourceOnly)' == 'true' and !$(ProductMonikerRid.StartsWith('tizen.5.0.0-'))" /> - + $(VSRedistCommonAspNetCoreSharedFrameworkx6490PackageVersion) - $(MicrosoftAspNetCoreAppRuntimePackageVersion) + $(MicrosoftAspNetCoreAppRuntimePackageVersion) - $(VSRedistCommonNetCoreSharedFrameworkx6490PackageVersion) - $(MicrosoftNETCoreAppRuntimePackageVersion) + $(VSRedistCommonNetCoreSharedFrameworkx6490PackageVersion) + $(MicrosoftNETCoreAppRuntimePackageVersion) $(VSRedistCommonWindowsDesktopSharedFrameworkx6490PackageVersion) + $(MicrosoftWindowsDesktopAppRuntimePackageVersion) - - - $(VSRedistCommonNetCoreTargetingPackx6490PackageVersion) - - $(MicrosoftAspNetCoreAppRefInternalPackageVersion) - $(VSRedistCommonWindowsDesktopTargetingPackx6490PackageVersion) 3.0.0 @@ -34,11 +27,13 @@ true https://dotnetbuilds.blob.core.windows.net/internal/ - https://dotnetcli.blob.core.windows.net/dotnet/ + + https://dotnetcli.blob.core.windows.net/dotnet/ + $(OfficialBaseURL) - $(HostRid) - $(OSName)-$(Architecture) - $(HostRid.Replace('mariner.2.0', 'cm.2')) + $(HostRid) + $(OSName)-$(Architecture) + $(HostRid.Replace('mariner.2.0', 'cm.2')) -internal @@ -46,14 +41,14 @@ - $(CoreSetupRid) + $(NetRuntimeRid) $(InstallerTargetArchitecture) - $(CoreSetupRid) + $(NetRuntimeRid) $(Architecture) $(OSName)-$(InstallerTargetArchitecture) - rhel.7-aarch64 + rhel.7-aarch64 x64 x86 @@ -77,7 +72,7 @@ netstandard$(NETStandardLibraryRefPackageVersion.Split('.')[0])$(NETStandardLibraryRefPackageVersion.Split('.')[1]) - $(CoreSetupRid) + $(NetRuntimeRid) $(ProductMonikerRid) linux-$(Architecture) dotnet-runtime-$(MicrosoftNETCoreAppRuntimePackageVersion)-$(SharedFrameworkRid)$(ArchiveExtension) @@ -85,7 +80,7 @@ windowsdesktop-runtime-$(MicrosoftWindowsDesktopAppRuntimePackageVersion)-$(SharedFrameworkRid)$(ArchiveExtension) $(HostOSName)-$(BuildArchitecture) - $(SharedFrameworkRid) + $(SharedFrameworkRid) $(SharedFrameworkRid) linux-x64 @@ -106,16 +101,31 @@ aspnetcore_base_runtime.version + + - $(PublicBaseURL)Runtime/ - $(PublicBaseURL) - $(PublicBaseURL)aspnetcore/Runtime/ - $(PublicBaseURL) - $(PublicBaseURL)WindowsDesktop/ - $(IntermediateDirectory)/coreSetupDownload/$(MicrosoftNETCoreAppRuntimePackageVersion) - $(CoreSetupDownloadDirectory)/combinedSharedHostAndFrameworkArchive$(ArchiveExtension) + $(PublicBaseURL)Runtime/$(NetRuntimeBlobVersion) + $(PublicBaseURL) + + $(OfficialBaseURL)Runtime/$(NETStandardTargetingPackBlobVersion) + + $(PublicBaseURL)aspnetcore/Runtime/$(AspNetCoreBlobVersion) + $(PublicBaseURL) + + $(FallbackPublicBaseURL)aspnetcore/Runtime/$(AspNetCoreBlobVersion) + + $(PublicBaseURL)WindowsDesktop/$(WindowsDesktopBlobVersion) + $(PublicBaseURL) + + $(PublicBaseURL)Sdk/$(MicrosoftDotnetToolsetInternalPackageVersion) + $(PublicBaseURL) + + $(IntermediateDirectory)/coreSetupDownload/$(MicrosoftNETCoreAppRuntimePackageVersion) + $(NetRuntimeDownloadDirectory)/combinedSharedHostAndFrameworkArchive$(ArchiveExtension) + + win-$(AlternateArchitecture) win-arm64 @@ -128,8 +138,7 @@ - $(CoreSetupRootUrl)$(CoreSetupBlobVersion) - $(CoreSetupRootUrl) + $(NetRuntimeRootUrl) $(CombinedFrameworkHostArchiveFileName) @@ -199,69 +208,76 @@ - $(CoreSetupRootUrl)$(CoreSetupBlobVersion) + $(NetRuntimeRootUrl) $(DownloadedRuntimeDepsInstallerFileName) - $(CoreSetupRootUrl)$(CoreSetupBlobVersion) + $(NetRuntimeRootUrl) $(DownloadedSharedFrameworkInstallerFileName) - $(CoreSetupRootUrl)$(CoreSetupBlobVersion) + $(NetRuntimeRootUrl) $(DownloadedSharedHostInstallerFileName) - $(CoreSetupRootUrl)$(CoreSetupBlobVersion) + $(NetRuntimeRootUrl) $(DownloadedHostFxrInstallerFileName) - $(CoreSetupRootUrl)$(NETCoreAppTargetingPackBlobVersion) + $(NetRuntimeRootUrl) $(DownloadedNetCoreAppTargetingPackInstallerFileName) - $(CoreSetupRootUrl)$(NETCoreAppTargetingPackBlobVersion) - $(CoreSetupRootUrl)3.0.0 + $(NetStandardTargetingPackRootUrl) $(DownloadedNetStandardTargetingPackInstallerFileName) - $(CoreSetupRootUrl)$(CoreSetupBlobVersion) + $(NetRuntimeRootUrl) $(DownloadedNetCoreAppHostPackInstallerFileName) + - $(CoreSetupRootUrl)$(CoreSetupBlobVersion) + Condition="'$(SkipBuildingInstallers)' != 'true' And '$(InstallerExtension)' == '.msi' And !$(Architecture.StartsWith('arm'))"> + $(NetRuntimeRootUrl) + + $(FallbackPublicBaseURL)Runtime/$(NetRuntimeBlobVersion) $(DownloadedAlternateNetCoreAppHostPackInstallerFileName) - $(CoreSetupRootUrl)$(CoreSetupBlobVersion) + $(NetRuntimeRootUrl) + + $(FallbackPublicBaseURL)Runtime/$(NetRuntimeBlobVersion) $(DownloadedArm64NetCoreAppHostPackInstallerFileName) - $(WinFormsAndWpfSharedFxRootUrl)$(WindowsDesktopTargetingPackBlobVersion) + $(WinFormsAndWpfSharedFxRootUrl) $(DownloadedWindowsDesktopTargetingPackInstallerFileName) - $(PublicBaseURL)Sdk/$(MicrosoftDotnetToolsetInternalPackageVersion) - $(PublicBaseURL) + $(ToolsetArchiveRootUrl) dotnet-toolset-internal-$(MicrosoftDotnetToolsetInternalPackageVersion).zip sdk/$(Version) @@ -269,8 +285,7 @@ - $(AspNetCoreSharedFxRootUrl)$(AspNetCoreBlobVersion) - $(AspNetCoreSharedFxRootUrl) + $(AspNetCoreSharedFxRootUrl) $(AspNetCoreSharedFxArchiveFileName) shared/Microsoft.AspNetCore.App @@ -280,39 +295,38 @@ https://github.com/aspnet/AspNetCore/issues/8806 --> - $(AspNetCoreSharedFxRootUrl)$(AspNetCoreTargetingPackBlobVersion) + $(AspNetCoreSharedFxRootUrl) $(AspNetTargetingPackArchiveFileName) - $(AspNetCoreSharedFxRootUrl)$(AspNetCoreTargetingPackBlobVersion) + $(AspNetCoreSharedFxRootUrl) $(DownloadedAspNetTargetingPackInstallerFileName) - $(AspNetCoreSharedFxRootUrl)$(AspNetCoreBlobVersion) + $(AspNetCoreSharedFxRootUrl) $(DownloadedAspNetCoreSharedFxInstallerFileName) - $(AspNetCoreSharedFxRootUrl)$(AspNetCoreBlobVersion) + $(AspNetCoreSharedFxRootUrl) $(DownloadedAspNetCoreSharedFxWixLibFileName) - $(AspNetCoreSharedFxRootUrl)$(AspNetCoreBlobVersion) + $(AspNetCoreSharedFxRootUrl) $(DownloadedAspNetCoreV2ModuleInstallerFileName) - $(AspNetCoreSharedFxRootUrl)$(AspNetCoreBlobVersion) - $(AspNetCoreSharedFxRootUrl) + $(AspNetCoreSharedFxRootUrl) $(AspNetCoreSharedFxBaseRuntimeVersionFileName) @@ -332,14 +346,14 @@ - $(WinFormsAndWpfSharedFxRootUrl)$(WindowsDesktopBlobVersion) + $(WinFormsAndWpfSharedFxRootUrl) $(WinFormsAndWpfSharedFxArchiveFileName) shared/Microsoft.WindowsDesktop.App - $(WinFormsAndWpfSharedFxRootUrl)$(WindowsDesktopBlobVersion) + $(WinFormsAndWpfSharedFxRootUrl) $(DownloadedWinFormsAndWpfSharedFrameworkInstallerFileName) @@ -380,7 +394,7 @@ For example, the dotnetbuilds uri for 'file:///vmr/dotnet2/artifacts/obj/x64/Release/blob-feed/assets//aspnetcore_base_runtime.version' would end up 'https://dotnetbuilds.blob.core.windows.net/public//dotnet-runtime-8.0.0-rc.1.23381.3-centos.8-x64.tar.gz'. This is missing the runtime version number directory. --> - + %(ComponentToDownload.ShouldDownload) @@ -502,7 +516,7 @@ + Condition="'$(DotNetBuildSourceOnly)' == 'true'"> diff --git a/src/redist/targets/GeneratePKG.targets b/src/redist/targets/GeneratePKG.targets index 9cab8a0a9..9886c88c8 100644 --- a/src/redist/targets/GeneratePKG.targets +++ b/src/redist/targets/GeneratePKG.targets @@ -145,7 +145,7 @@ Inputs="@(GenerateSdkPkgInputs)" Outputs="$(SdkPKGInstallerFile)" DependsOnTargets="GenerateLayout;SetupPkgInputsOutputs" - Condition=" '$(OSName)' == 'osx' and '$(DotNetBuildFromSource)' != 'true' "> + Condition=" '$(OSName)' == 'osx' and '$(DotNetBuildSourceOnly)' != 'true' "> @@ -197,7 +197,7 @@ Inputs="@(GenerateSdkProductArchiveInputs)" Outputs="$(CombinedFrameworkSdkHostPKGInstallerFile)" DependsOnTargets="GenerateSdkPkg" - Condition=" '$(OSName)' == 'osx' and '$(DotNetBuildFromSource)' != 'true' "> + Condition=" '$(OSName)' == 'osx' and '$(DotNetBuildSourceOnly)' != 'true' ">