From 2187d99d8ab590b202dd851f9681578fe234134c Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Wed, 29 Jan 2025 14:59:43 -0800 Subject: [PATCH 1/4] Remove controls from DotNetBuild.props that are no longer used by the VMR. --- Directory.Build.props | 5 ----- eng/DotNetBuild.props | 6 ------ eng/Subsets.props | 3 +-- 3 files changed, 1 insertion(+), 13 deletions(-) diff --git a/Directory.Build.props b/Directory.Build.props index 5eeb3ed7f86822..ce5c6e9173bc81 100644 --- a/Directory.Build.props +++ b/Directory.Build.props @@ -190,11 +190,6 @@ $([MSBuild]::NormalizeDirectory($(WasmProjectRoot), 'build')) - - true - true - - true android+browser+wasi diff --git a/eng/DotNetBuild.props b/eng/DotNetBuild.props index 223eae78ef3ee3..72842bbc36f7b7 100644 --- a/eng/DotNetBuild.props +++ b/eng/DotNetBuild.props @@ -34,12 +34,8 @@ true true true - - true true - - true $(InnerBuildArgs) /p:AdditionalRuntimeIdentifierParent=$(BaseOS) /p:BaseOS=$(BaseOS) $(InnerBuildArgs) /p:WasmEnableThreads=true - $(InnerBuildArgs) /p:DotNetBuildRuntimeNativeAOTRuntimePack=$(DotNetBuildRuntimeNativeAOTRuntimePack) $(InnerBuildArgs) /p:MonoEnableLLVM=$(DotNetBuildMonoEnableLLVM) $(InnerBuildArgs) /p:MonoAOTEnableLLVM=$(DotNetBuildMonoAOTEnableLLVM) $(InnerBuildArgs) /p:MonoBundleLLVMOptimizer=$(DotNetBuildMonoBundleLLVMOptimizer) - $(InnerBuildArgs) /p:DotNetBuildMonoCrossAOT=$(DotNetBuildMonoCrossAOT) $(InnerBuildArgs) /p:DotNetBuildAllRuntimePacks=$(DotNetBuildAllRuntimePacks) $(InnerBuildArgs) $(FlagParameterPrefix)pgoinstrument diff --git a/eng/Subsets.props b/eng/Subsets.props index 266add7128805c..e492f49e6e8aab 100644 --- a/eng/Subsets.props +++ b/eng/Subsets.props @@ -66,7 +66,6 @@ clr.nativeaotruntime+clr.nativeaotlibs+libs+packs clr+libs+tools+host+packs - clr.nativeaotlibs+clr.nativeaotruntime+libs+packs mono+packs @@ -85,7 +84,7 @@ <_subset Condition="'$(Subset)' != ''">+$(Subset.ToLowerInvariant())+ <_subset Condition="'$(Subset)' == ''">+$(DefaultSubsets)+ - + CoreCLR From 90c1a6fa2c67c3272c4ed368f81671ce84ed9451 Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Wed, 29 Jan 2025 15:04:18 -0800 Subject: [PATCH 2/4] BuildNativeAOTRuntimePack controls asset selection only now, not build mode. --- eng/Subsets.props | 11 +++++------ src/installer/pkg/projects/nativeaot-packages.proj | 2 +- .../Microsoft.NETCore.App.Ref.sfxproj | 4 ---- 3 files changed, 6 insertions(+), 11 deletions(-) diff --git a/eng/Subsets.props b/eng/Subsets.props index e492f49e6e8aab..50f75b082ea808 100644 --- a/eng/Subsets.props +++ b/eng/Subsets.props @@ -604,11 +604,10 @@ - <_BuildCoreCLRRuntimePack Condition="'$(RuntimeFlavor)' == 'CoreCLR' and '$(CoreCLRSupported)' == 'true' and '$(BuildNativeAOTRuntimePack)' != 'true'">true - <_BuildMonoRuntimePack Condition="'$(RuntimeFlavor)' == 'Mono' and '$(MonoSupported)' == 'true' and '$(BuildNativeAOTRuntimePack)' != 'true'">true - <_BuildNativeAOTRuntimePack Condition="'$(BuildNativeAOTRuntimePack)' == 'true'">true - <_BuildHostPack Condition="'$(RuntimeFlavor)' == '$(PrimaryRuntimeFlavor)' and '$(TargetsMobile)' != 'true' and '$(BuildNativeAOTRuntimePack)' != 'true'">true - <_BuildBundle Condition="'$(BuildNativeAOTRuntimePack)' != 'true' and '$(RuntimeFlavor)' == '$(PrimaryRuntimeFlavor)' and '$(TargetsMobile)' != 'true'">true + <_BuildCoreCLRRuntimePack Condition="'$(RuntimeFlavor)' == 'CoreCLR' and '$(CoreCLRSupported)' == 'true'">true + <_BuildMonoRuntimePack Condition="'$(RuntimeFlavor)' == 'Mono' and '$(MonoSupported)' == 'true'">true + <_BuildHostPack Condition="'$(RuntimeFlavor)' == '$(PrimaryRuntimeFlavor)' and '$(TargetsMobile)' != 'true'">true + <_BuildBundle Condition="'$(RuntimeFlavor)' == '$(PrimaryRuntimeFlavor)' and '$(TargetsMobile)' != 'true'">true @@ -631,7 +630,7 @@ - + diff --git a/src/installer/pkg/projects/nativeaot-packages.proj b/src/installer/pkg/projects/nativeaot-packages.proj index fc00d78b0c5b12..b595925188db96 100644 --- a/src/installer/pkg/projects/nativeaot-packages.proj +++ b/src/installer/pkg/projects/nativeaot-packages.proj @@ -1,7 +1,7 @@ - + diff --git a/src/installer/pkg/sfx/Microsoft.NETCore.App/Microsoft.NETCore.App.Ref.sfxproj b/src/installer/pkg/sfx/Microsoft.NETCore.App/Microsoft.NETCore.App.Ref.sfxproj index 43c28ec1015bbf..8692e3050a0b26 100644 --- a/src/installer/pkg/sfx/Microsoft.NETCore.App/Microsoft.NETCore.App.Ref.sfxproj +++ b/src/installer/pkg/sfx/Microsoft.NETCore.App/Microsoft.NETCore.App.Ref.sfxproj @@ -10,10 +10,6 @@ A set of .NET APIs that are included in the default .NET application model. Contains reference assemblies, documentation, and other design-time assets. - - true - - From 4fbfd7c26aff9e28a2ed32c2d3aef2a5452b429f Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Wed, 29 Jan 2025 15:52:02 -0800 Subject: [PATCH 3/4] Don't override the InnerSourceBuildCommand and remove a ton of property sets we had to do to work around overriding it. --- eng/DotNetBuild.props | 37 ++----------------------------------- 1 file changed, 2 insertions(+), 35 deletions(-) diff --git a/eng/DotNetBuild.props b/eng/DotNetBuild.props index 72842bbc36f7b7..38270a115efd64 100644 --- a/eng/DotNetBuild.props +++ b/eng/DotNetBuild.props @@ -5,9 +5,6 @@ runtime - .\build.cmd - ./build.sh - <_hostRid>$([System.Runtime.InteropServices.RuntimeInformation]::RuntimeIdentifier) $(_hostRid) @@ -45,18 +42,11 @@ This allows to build the repository using './build.sh /p:DotNetBuildSourceOnly=true'. Properties that control flags from the VMR build, and the expected output for the VMR build should be added to this file. --> - - $(InnerBuildArgs) $(FlagParameterPrefix)restore $(FlagParameterPrefix)build $(FlagParameterPrefix)publish - $(InnerBuildArgs) $(FlagParameterPrefix)sign - $(InnerBuildArgs) $(FlagParameterPrefix)pack + + $(InnerBuildArgs) $(FlagParameterPrefix)pack $(InnerBuildArgs) $(FlagParameterPrefix)arch $(TargetArch) $(InnerBuildArgs) $(FlagParameterPrefix)os $(TargetOS) - $(InnerBuildArgs) $(FlagParameterPrefix)cross - $(InnerBuildArgs) $(FlagParameterPrefix)configuration $(Configuration) - $(InnerBuildArgs) $(FlagParameterPrefix)verbosity $(LogVerbosity) - $(InnerBuildArgs) $(FlagParameterPrefix)nodereuse $(ArcadeFalseBoolBuildArg) - $(InnerBuildArgs) $(FlagParameterPrefix)warnAsError $(ArcadeFalseBoolBuildArg) $(InnerBuildArgs) $(FlagParameterPrefix)usemonoruntime $(InnerBuildArgs) --outputrid $(TargetRid) @@ -71,26 +61,6 @@ $(InnerBuildArgs) /p:MonoEnableLLVM=$(DotNetBuildMonoEnableLLVM) $(InnerBuildArgs) /p:MonoAOTEnableLLVM=$(DotNetBuildMonoAOTEnableLLVM) $(InnerBuildArgs) /p:MonoBundleLLVMOptimizer=$(DotNetBuildMonoBundleLLVMOptimizer) - $(InnerBuildArgs) /p:DotNetBuildAllRuntimePacks=$(DotNetBuildAllRuntimePacks) - $(InnerBuildArgs) $(FlagParameterPrefix)pgoinstrument - - - $(InnerBuildArgs) /p:DotNetBuildRepo=true - $(InnerBuildArgs) /p:DotNetBuildOrchestrator=true - $(InnerBuildArgs) /p:OfficialBuildId=$(OfficialBuildId) - $(InnerBuildArgs) /p:ContinuousIntegrationBuild=$(ContinuousIntegrationBuild) - $(InnerBuildArgs) /p:PortableBuild=$(PortableBuild) - $(InnerBuildArgs) /p:RestoreConfigFile=$(RestoreConfigFile) - $(InnerBuildArgs) /p:ForceDryRunSigning=$(ForceDryRunSigning) - $(InnerBuildArgs) /p:DefaultArtifactVisibility=$(DefaultArtifactVisibility) - - - $(InnerBuildArgs) /p:SourceBuiltAssetsDir=$(SourceBuiltAssetsDir) - $(InnerBuildArgs) /p:SourceBuiltShippingPackagesDir=$(SourceBuiltShippingPackagesDir) - $(InnerBuildArgs) /p:SourceBuiltNonShippingPackagesDir=$(SourceBuiltNonShippingPackagesDir) - $(InnerBuildArgs) /p:SourceBuiltAssetManifestsDir=$(SourceBuiltAssetManifestsDir) - $(InnerBuildArgs) /p:SourceBuiltSymbolsDir=$(SourceBuiltSymbolsDir) - $(InnerBuildArgs) /p:GitHubRepositoryName=$(GitHubRepositoryName) +$(UseSystemLibs)+ @@ -100,9 +70,6 @@ $(InnerBuildArgs) --cmakeargs -DCLR_CMAKE_USE_SYSTEM_RAPIDJSON=true $(InnerBuildArgs) --cmakeargs -DCLR_CMAKE_USE_SYSTEM_ZLIB=true - - - $(InnerBuildArgs) /p:NetCoreAppToolCurrentVersion=$(NetCoreAppToolCurrentVersion) From f6d0b8af533395712481ea656b709a9cb3f20d6e Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Thu, 30 Jan 2025 10:56:16 -0800 Subject: [PATCH 4/4] Revert "Don't override the InnerSourceBuildCommand and remove a ton of property sets we had to do to work around overriding it." This reverts commit 4fbfd7c26aff9e28a2ed32c2d3aef2a5452b429f. --- eng/DotNetBuild.props | 37 +++++++++++++++++++++++++++++++++++-- 1 file changed, 35 insertions(+), 2 deletions(-) diff --git a/eng/DotNetBuild.props b/eng/DotNetBuild.props index 38270a115efd64..72842bbc36f7b7 100644 --- a/eng/DotNetBuild.props +++ b/eng/DotNetBuild.props @@ -5,6 +5,9 @@ runtime + .\build.cmd + ./build.sh + <_hostRid>$([System.Runtime.InteropServices.RuntimeInformation]::RuntimeIdentifier) $(_hostRid) @@ -42,11 +45,18 @@ This allows to build the repository using './build.sh /p:DotNetBuildSourceOnly=true'. Properties that control flags from the VMR build, and the expected output for the VMR build should be added to this file. --> - - $(InnerBuildArgs) $(FlagParameterPrefix)pack + + $(InnerBuildArgs) $(FlagParameterPrefix)restore $(FlagParameterPrefix)build $(FlagParameterPrefix)publish + $(InnerBuildArgs) $(FlagParameterPrefix)sign + $(InnerBuildArgs) $(FlagParameterPrefix)pack $(InnerBuildArgs) $(FlagParameterPrefix)arch $(TargetArch) $(InnerBuildArgs) $(FlagParameterPrefix)os $(TargetOS) + $(InnerBuildArgs) $(FlagParameterPrefix)cross + $(InnerBuildArgs) $(FlagParameterPrefix)configuration $(Configuration) + $(InnerBuildArgs) $(FlagParameterPrefix)verbosity $(LogVerbosity) + $(InnerBuildArgs) $(FlagParameterPrefix)nodereuse $(ArcadeFalseBoolBuildArg) + $(InnerBuildArgs) $(FlagParameterPrefix)warnAsError $(ArcadeFalseBoolBuildArg) $(InnerBuildArgs) $(FlagParameterPrefix)usemonoruntime $(InnerBuildArgs) --outputrid $(TargetRid) @@ -61,6 +71,26 @@ $(InnerBuildArgs) /p:MonoEnableLLVM=$(DotNetBuildMonoEnableLLVM) $(InnerBuildArgs) /p:MonoAOTEnableLLVM=$(DotNetBuildMonoAOTEnableLLVM) $(InnerBuildArgs) /p:MonoBundleLLVMOptimizer=$(DotNetBuildMonoBundleLLVMOptimizer) + $(InnerBuildArgs) /p:DotNetBuildAllRuntimePacks=$(DotNetBuildAllRuntimePacks) + $(InnerBuildArgs) $(FlagParameterPrefix)pgoinstrument + + + $(InnerBuildArgs) /p:DotNetBuildRepo=true + $(InnerBuildArgs) /p:DotNetBuildOrchestrator=true + $(InnerBuildArgs) /p:OfficialBuildId=$(OfficialBuildId) + $(InnerBuildArgs) /p:ContinuousIntegrationBuild=$(ContinuousIntegrationBuild) + $(InnerBuildArgs) /p:PortableBuild=$(PortableBuild) + $(InnerBuildArgs) /p:RestoreConfigFile=$(RestoreConfigFile) + $(InnerBuildArgs) /p:ForceDryRunSigning=$(ForceDryRunSigning) + $(InnerBuildArgs) /p:DefaultArtifactVisibility=$(DefaultArtifactVisibility) + + + $(InnerBuildArgs) /p:SourceBuiltAssetsDir=$(SourceBuiltAssetsDir) + $(InnerBuildArgs) /p:SourceBuiltShippingPackagesDir=$(SourceBuiltShippingPackagesDir) + $(InnerBuildArgs) /p:SourceBuiltNonShippingPackagesDir=$(SourceBuiltNonShippingPackagesDir) + $(InnerBuildArgs) /p:SourceBuiltAssetManifestsDir=$(SourceBuiltAssetManifestsDir) + $(InnerBuildArgs) /p:SourceBuiltSymbolsDir=$(SourceBuiltSymbolsDir) + $(InnerBuildArgs) /p:GitHubRepositoryName=$(GitHubRepositoryName) +$(UseSystemLibs)+ @@ -70,6 +100,9 @@ $(InnerBuildArgs) --cmakeargs -DCLR_CMAKE_USE_SYSTEM_RAPIDJSON=true $(InnerBuildArgs) --cmakeargs -DCLR_CMAKE_USE_SYSTEM_ZLIB=true + + + $(InnerBuildArgs) /p:NetCoreAppToolCurrentVersion=$(NetCoreAppToolCurrentVersion)