diff --git a/.azure/pipelines/ci.yml b/.azure/pipelines/ci.yml
index cfe4287e9f78a9ea69a72d42664a08797244d42a..5c1c7a7bef67d3131e381794eb64c4ef54723706 100644
--- a/.azure/pipelines/ci.yml
+++ b/.azure/pipelines/ci.yml
@@ -749,56 +749,13 @@ stages:
           includeForks: true
 
   # Source build
-  - job: Source_Build
-    displayName: 'Test: Linux Source Build'
-    container: centos:7
-    pool:
-      vmImage: 'ubuntu-18.04'
-    variables:
-      LC_ALL: 'en_US.UTF-8'
-      LANG: 'en_US.UTF-8'
-      LANGUAGE: 'en_US.UTF-8'
-      DotNetCoreSdkDir: $(Agent.ToolsDirectory)/dotnet
-      # This isn't needed in the path because build does not need to _use_ global tools.
-      DOTNET_CLI_HOME: $(System.DefaultWorkingDirectory)
-      DOTNET_SYSTEM_GLOBALIZATION_INVARIANT: true
-    steps:
-    - script: |
-        source eng/common/native/common-library.sh
-        mkdir -p $(System.DefaultWorkingDirectory)/.tools
-        GetFile https://github.com/stedolan/jq/releases/download/jq-1.6/jq-linux64 $(System.DefaultWorkingDirectory)/.tools/jq
-        chmod +x $(System.DefaultWorkingDirectory)/.tools/jq
-        echo "##vso[task.prependpath]$(System.DefaultWorkingDirectory)/.tools"
-      displayName: Install jq
-    - ${{ if ne(variables['System.TeamProject'], 'public') }}:
-        - task: Bash@3
-          displayName: Setup Private Feeds Credentials
-          inputs:
-            filePath: $(Build.SourcesDirectory)/eng/common/SetupNugetSources.sh
-            arguments: $(Build.SourcesDirectory)/NuGet.config $Token
-          env:
-            Token: $(dn-bot-dnceng-artifact-feeds-rw)
-    - script: ./eng/scripts/ci-source-build.sh --ci --nobl --configuration Release /p:BuildManaged=true /p:BuildNodeJs=false $(_InternalRuntimeDownloadArgs)
-      displayName: Run ci-source-build.sh
-    - task: PublishBuildArtifacts@1
-      displayName: Upload logs
-      condition: always()
-      continueOnError: true
-      inputs:
-        pathtoPublish: artifacts/log/
-        artifactName: Source_Build_Logs
-        artifactType: Container
-        parallel: true
-    - task: PublishBuildArtifacts@1
-      displayName: Upload package artifacts
-      # Only capture source build artifacts in PRs for the sake of inspecting
-      # changes that impact source-build. The artifacts from this build pipeline are never actually used.
-      condition: and(succeeded(), in(variables['Build.Reason'], 'PullRequest'))
-      inputs:
-        pathtoPublish: artifacts/packages/
-        artifactName: Source_Build_Packages
-        artifactType: Container
-        parallel: true
+  - template: /eng/common/templates/job/source-build.yml
+    parameters:
+      platform:
+        name: 'Managed'
+        container: 'mcr.microsoft.com/dotnet-buildtools/prereqs:centos-7-f39df28-20191023143754'
+        buildScript: './eng/build.sh'
+        skipPublishValidation: true
 
   # Publish to the BAR
   - ${{ if and(ne(variables['System.TeamProject'], 'public'), notin(variables['Build.Reason'], 'PullRequest')) }}:
@@ -827,7 +784,7 @@ stages:
             - Linux_musl_arm_build
             - Linux_musl_arm64_build
           # In addition to the dependencies above, ensure the build was successful overall.
-          - Source_Build
+          - Source_Build_Managed
         pool:
           vmImage: vs2017-win2016
         publishUsingPipelines: ${{ variables._PublishUsingPipelines }}
diff --git a/Directory.Build.props b/Directory.Build.props
index b6d0b7b7b775ea7f5a81fe6e71a5851a8f2703ac..ba1c1675a0994f3aad0b7b2ba4954ac4f87de814 100644
--- a/Directory.Build.props
+++ b/Directory.Build.props
@@ -29,7 +29,7 @@
         ( $(MSBuildProjectName.EndsWith('Tests')) OR
           $(MSBuildProjectName.EndsWith('.Test')) OR
           $(MSBuildProjectName.EndsWith('.FunctionalTest')) ) ">true</IsUnitTestProject>
-    <IsTestAssetProject Condition=" $(RepoRelativeProjectDir.Contains('testassets')) ">true</IsTestAssetProject>
+    <IsTestAssetProject Condition=" $(RepoRelativeProjectDir.Contains('testassets')) OR $(MSBuildProjectName.Contains('TestCommon'))">true</IsTestAssetProject>
     <IsSampleProject Condition=" $(RepoRelativeProjectDir.ToUpperInvariant().Contains('SAMPLE')) ">true</IsSampleProject>
     <IsAnalyzersProject Condition="$(MSBuildProjectName.EndsWith('.Analyzers'))">true</IsAnalyzersProject>
     <IsShipping Condition=" '$(IsSampleProject)' == 'true' OR
@@ -171,7 +171,8 @@
       linux-musl-arm64;
       linux-x64;
       linux-arm;
-      linux-arm64
+      linux-arm64;
+      freebsd-x64
     </SupportedRuntimeIdentifiers>
 
     <!-- Make error messages clickable in VS Code's console -->
diff --git a/eng/Build.props b/eng/Build.props
index 8805c438ebe26472d55a8fccb5c3865f1daf8b51..b7cccd17b611652249670b029412fd43791ae9e2 100644
--- a/eng/Build.props
+++ b/eng/Build.props
@@ -134,6 +134,14 @@
         <ProjectToBuild Condition=" '$(BuildNodeJS)' == 'true'" Include="@(NodeJsProjects)" Exclude="@(ProjectToExclude)" />
         <ProjectToExclude Condition=" '$(BuildNodeJS)' != 'true'" Include="@(NodeJsProjects)" />
 
+        <YarnMSBuildProjects Include="
+                          $(RepoRoot)src\Components\test\E2ETest\Microsoft.AspNetCore.Components.E2ETests.csproj;
+                          $(RepoRoot)src\Components\WebAssembly\Authentication.Msal\src\Microsoft.Authentication.WebAssembly.Msal.csproj;
+                          $(RepoRoot)src\Components\WebAssembly\WebAssembly.Authentication\src\Microsoft.AspNetCore.Components.WebAssembly.Authentication.csproj;
+                          "
+                        Exclude="@(ProjectToExclude)" />
+        <ProjectToExclude Condition=" '$(DotNetBuildFromSource)' == 'true'" Include="@(YarnMSBuildProjects)" />
+
         <JavaProjects Include="$(RepoRoot)src\SignalR\**\*.javaproj"
                       Exclude="@(ProjectToExclude)" />
 
diff --git a/eng/Common.props b/eng/Common.props
index 7c489b15a9dccaea969acdeb493ec6b4e5063859..a9a69bde9f22cb4ec20109235924bd4439b65459 100644
--- a/eng/Common.props
+++ b/eng/Common.props
@@ -3,6 +3,7 @@
     <TargetOsName Condition=" '$(TargetOsName)' == '' AND $([MSBuild]::IsOSPlatform('Windows'))">win</TargetOsName>
     <TargetOsName Condition=" '$(TargetOsName)' == '' AND $([MSBuild]::IsOSPlatform('OSX'))">osx</TargetOsName>
     <TargetOsName Condition=" '$(TargetOsName)' == '' AND $([MSBuild]::IsOSPlatform('Linux'))">linux</TargetOsName>
+    <TargetOsName Condition=" '$(TargetOsName)' == '' AND $([MSBuild]::IsOSPlatform('FreeBSD'))">freebsd</TargetOsName>
     <TargetArchitecture Condition="'$(TargetArchitecture)' == ''">x64</TargetArchitecture>
     <TargetRuntimeIdentifier Condition="'$(TargetRuntimeIdentifier)' == ''">$(TargetOsName)-$(TargetArchitecture)</TargetRuntimeIdentifier>
   </PropertyGroup>
diff --git a/eng/SourceBuild.props b/eng/SourceBuild.props
index 98f9b244c2afd896117994009f5e4f6c890bb06e..27cbe920367a516136494bcaea672ded51847b05 100644
--- a/eng/SourceBuild.props
+++ b/eng/SourceBuild.props
@@ -6,18 +6,12 @@
     <CloneSubmodulesToInnerSourceBuildRepo>false</CloneSubmodulesToInnerSourceBuildRepo>
   </PropertyGroup>
 
-  <Target Name="ApplySourceBuildPatchFiles"
+  <Target Name="PrepareGlobalJsonForSourceBuild"
           AfterTargets="PrepareInnerSourceBuildRepoRoot"
           BeforeTargets="RunInnerSourceBuildCommand">
-
-    <ItemGroup>
-      <SourceBuildPatchFile Include="$(RepositoryEngineeringDir)source-build-patches\*.patch" />
-    </ItemGroup>
-
     <Exec
-      Command="git apply --ignore-whitespace --whitespace=nowarn &quot;%(SourceBuildPatchFile.FullPath)&quot;"
-      WorkingDirectory="$(InnerSourceBuildRepoRoot)"
-      Condition="'@(SourceBuildPatchFile)' != ''" />
+      Command="./eng/scripts/prepare-sourcebuild-globaljson.sh"
+      WorkingDirectory="$(InnerSourceBuildRepoRoot)" />
   </Target>
 
   <!--
diff --git a/eng/Versions.props b/eng/Versions.props
index 26bd4f59f89c2a56dcb8e4dc496aa401c90493ba..092e1e4ed1d5aefdf141eacf3384839477d4e81e 100644
--- a/eng/Versions.props
+++ b/eng/Versions.props
@@ -183,6 +183,8 @@
     <MicrosoftBuildVersion>16.9.0</MicrosoftBuildVersion>
     <MicrosoftAzureSignalRVersion>1.2.0</MicrosoftAzureSignalRVersion>
     <MicrosoftBuildFrameworkVersion>16.9.0</MicrosoftBuildFrameworkVersion>
+    <MicrosoftBuildTaskCoreVersion>16.9.0</MicrosoftBuildTaskCoreVersion>
+    <MicrosoftBuildUtilitiesCoreVersion>16.9.0</MicrosoftBuildUtilitiesCoreVersion>
     <MicrosoftBuildLocatorVersion>1.2.6</MicrosoftBuildLocatorVersion>
     <MicrosoftBuildUtilitiesCoreVersion>16.9.0</MicrosoftBuildUtilitiesCoreVersion>
     <MicrosoftCodeAnalysisCommonVersion>3.8.0</MicrosoftCodeAnalysisCommonVersion>
@@ -201,6 +203,7 @@
     <MicrosoftWebWebView2Version>1.0.705.50</MicrosoftWebWebView2Version>
     <MicrosoftWebXdtVersion>1.4.0</MicrosoftWebXdtVersion>
     <SystemIdentityModelTokensJwtVersion>6.10.0</SystemIdentityModelTokensJwtVersion>
+    <NuGetPackagingVersion>5.10.0-rc.7240</NuGetPackagingVersion>
     <NuGetVersioningVersion>5.10.0-rc.7240</NuGetVersioningVersion>
     <NuGetFrameworksVersion>5.10.0-rc.7240</NuGetFrameworksVersion>
     <SystemComponentModelAnnotationsVersion>5.0.0</SystemComponentModelAnnotationsVersion>
diff --git a/eng/build.sh b/eng/build.sh
index 4466bcce1128c5a5efaf148f65393d10a6bbc239..311734c91cffa953260807a2c8f8bae7a3b438f3 100755
--- a/eng/build.sh
+++ b/eng/build.sh
@@ -342,6 +342,7 @@ if [[ "$binary_log" == true ]]; then
     if [[ "$found" == false ]]; then
         msbuild_args[${#msbuild_args[*]}]="/bl:$log_dir/Build.binlog"
     fi
+    toolset_build_args[${#toolset_build_args[*]}]="/bl:$log_dir/Build.repotasks.binlog"
 elif [[ "$ci" == true ]]; then
     # Ensure the artifacts/log directory isn't empty to avoid warnings.
     touch "$log_dir/empty.log"
diff --git a/eng/scripts/ci-source-build.sh b/eng/scripts/ci-source-build.sh
deleted file mode 100755
index 96516d187a6052e485a1b11892f20f3269a8aa85..0000000000000000000000000000000000000000
--- a/eng/scripts/ci-source-build.sh
+++ /dev/null
@@ -1,113 +0,0 @@
-#!/usr/bin/env bash
-
- #
-# This script is meant for testing source build by imitating some of the input parameters and conditions.
-#
-
-set -euo pipefail
-
-scriptroot="$( cd -P "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
-reporoot="$(dirname "$(dirname "$scriptroot")")"
-
-#
-# This commented out section is used for servicing branches
-#
-# For local development, make a backup copy of this file first
-# if [ ! -f "$reporoot/global.bak.json" ]; then
-#    mv "$reporoot/global.json" "$reporoot/global.bak.json"
-# fi
-
-# Detect the current version of .NET Core installed
-# export SDK_VERSION=$(dotnet --version)
-# echo "The ambient version of .NET Core SDK version = $SDK_VERSION"
-
-# Update the global.json file to match the current .NET environment
-# cat "$reporoot/global.bak.json" | \
-#    jq '.sdk.version=env.SDK_VERSION' | \
-#    jq '.tools.dotnet=env.SDK_VERSION' | \
-#    jq 'del(.tools.runtimes)' \
-#    > "$reporoot/global.json"
-
-# Restore the original global.json file
-#trap "{
-#    mv "$reporoot/global.bak.json" "$reporoot/global.json"
-#}" EXIT
-
-runtime_source_feed=''
-runtime_source_feed_key=''
-other_args=()
-
-#
-# Functions
-#
-__usage() {
-    echo "Usage: $(basename "${BASH_SOURCE[0]}") [options] [[--] <Arguments>...]
-
-Arguments:
-    <Arguments>...                    Arguments passed to the command. Variable number of arguments allowed.
-
-    --runtime-source-feed             Additional feed that can be used when downloading .NET runtimes and SDKs
-    --runtime-source-feed-key         Key for feed that can be used when downloading .NET runtimes and SDKs
-
-Description:
-   This script is meant for testing source build by imitating some of the input parameters and conditions.
-"
-
-    if [[ "${1:-}" != '--no-exit' ]]; then
-        exit 2
-    fi
-}
-
-__error() {
-    echo -e "${RED}error: $*${RESET}" 1>&2
-}
-
-#
-# main
-#
-
-while [[ $# -gt 0 ]]; do
-    opt="$(echo "${1/#--/-}" | awk '{print tolower($0)}')"
-    case "$opt" in
-        -\?|-h|-help)
-            __usage --no-exit
-            exit 0
-            ;;
-        -dotnet-runtime-source-feed|-dotnetruntimesourcefeed|-runtime_source_feed|-runtimesourcefeed)
-            shift
-            [ -z "${1:-}" ] && __error "Missing value for parameter --runtime-source-feed" && __usage
-            runtime_source_feed="${1:-}"
-            ;;
-        -dotnet-runtime-source-feed-key|-dotnetruntimesourcefeedkey|-runtime_source_feed_key|-runtimesourcefeedkey)
-            shift
-            [ -z "${1:-}" ] && __error "Missing value for parameter --runtime-source-feed-key" && __usage
-            runtime_source_feed_key="${1:-}"
-            ;;
-        *)
-            other_args[${#other_args[*]}]="$1"
-            ;;
-    esac
-    shift
-done
-
-# Set up additional runtime args
-runtime_feed_args=()
-if [ ! -z "$runtime_source_feed$runtime_source_feed_key" ]; then
-    runtime_feed_args[${#runtime_feed_args[*]}]="-runtimesourcefeed"
-    runtime_feed_args[${#runtime_feed_args[*]}]="$runtime_source_feed"
-    runtime_feed_args[${#runtime_feed_args[*]}]="-runtimesourcefeedKey"
-    runtime_feed_args[${#runtime_feed_args[*]}]="$runtime_source_feed_key"
-
-    runtimeFeedArg="/p:DotNetRuntimeSourceFeed=$runtime_source_feed"
-    runtimeFeedKeyArg="/p:DotNetRuntimeSourceFeedKey=$runtime_source_feed_key"
-    runtime_feed_args[${#runtime_feed_args[*]}]=$runtimeFeedArg
-    runtime_feed_args[${#runtime_feed_args[*]}]=$runtimeFeedKeyArg
-fi
-
-# Build repo tasks
-"$reporoot/eng/common/build.sh" --restore --build --ci --configuration Release /p:ProjectToBuild=$reporoot/eng/tools/RepoTasks/RepoTasks.csproj ${runtime_feed_args[@]+"${runtime_feed_args[@]}"}
-
-export DotNetBuildFromSource='true'
-
-# Build projects
-"$reporoot/eng/common/build.sh" --restore --build --ci --pack ${other_args[@]+"${other_args[@]}"} ${runtime_feed_args[@]+"${runtime_feed_args[@]}"}
diff --git a/eng/scripts/prepare-sourcebuild-globaljson.sh b/eng/scripts/prepare-sourcebuild-globaljson.sh
new file mode 100755
index 0000000000000000000000000000000000000000..20f64da9df16200f1848ce30d3be7994ad256279
--- /dev/null
+++ b/eng/scripts/prepare-sourcebuild-globaljson.sh
@@ -0,0 +1,24 @@
+#!/usr/bin/env bash
+
+set -euo pipefail
+
+DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
+
+while IFS= read -r line
+do
+    # Remove dotnet/x64 runtimes
+    if [[ "$line" == *"dotnet/x86"* ]]
+    then
+        while IFS= read -r removeLine
+        do
+            if [[ "$removeLine" == *"]"* ]]
+            then
+                break
+            fi
+        done
+    else
+        # Change dotnet/x64 to dotnet
+        echo "${line/dotnet\/x64/dotnet}"
+    fi
+done < $DIR/../../global.json > global.json.swap
+mv global.json.swap $DIR/../../global.json
diff --git a/eng/source-build-patches/0002-Conditionally-set-PackAsToolShimRID.patch b/eng/source-build-patches/0002-Conditionally-set-PackAsToolShimRID.patch
deleted file mode 100644
index 99a6483e9403ebf314618e46c8ab83c016c0cc38..0000000000000000000000000000000000000000
--- a/eng/source-build-patches/0002-Conditionally-set-PackAsToolShimRID.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From 64d2efe24308d9e8b99fdea60c92ee1115259506 Mon Sep 17 00:00:00 2001
-From: dseefeld <dseefeld@microsoft.com>
-Date: Thu, 31 Oct 2019 20:38:26 +0000
-Subject: [PATCH 02/14] Conditionally set PackAsToolShimRID
-
----
- Directory.Build.targets | 5 +++++
- 1 file changed, 5 insertions(+)
-
-diff --git a/Directory.Build.targets b/Directory.Build.targets
-index 4b72a52947..1a3b01e858 100644
---- a/Directory.Build.targets
-+++ b/Directory.Build.targets
-@@ -52,6 +52,11 @@
-     <SuppressDependenciesWhenPacking Condition="'$(SuppressDependenciesWhenPacking)' == '' AND '$(IsAnalyzersProject)' == 'true'">true</SuppressDependenciesWhenPacking>
-   </PropertyGroup>
- 
-+  <PropertyGroup Condition="'$(PackAsTool)' == 'true' AND '$(IsShippingPackage)' == 'true' AND '$(DotNetBuildFromSource)' != 'true'">
-+    <!-- This is a requirement for Microsoft tool packages only. -->
-+    <PackAsToolShimRuntimeIdentifiers>win-x64;win-x86</PackAsToolShimRuntimeIdentifiers>
-+  </PropertyGroup>
-+
-   <PropertyGroup Condition=" '$(MSBuildProjectExtension)' == '.csproj' ">
-     <PackageId Condition=" '$(PackageId)' == '' ">$(AssemblyName)</PackageId>
-     <IsPackable
--- 
-2.18.0
-
diff --git a/eng/source-build-patches/0003-Exclude-some-projects-from-source-build.patch b/eng/source-build-patches/0003-Exclude-some-projects-from-source-build.patch
deleted file mode 100644
index f92f6fe3e98a1c2ed2e8eb239439c458c50f116a..0000000000000000000000000000000000000000
--- a/eng/source-build-patches/0003-Exclude-some-projects-from-source-build.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From 6f903f6870011b6a11074d93a03481faac6a35dc Mon Sep 17 00:00:00 2001
-From: dseefeld <dseefeld@microsoft.com>
-Date: Thu, 4 Feb 2021 15:18:11 +0000
-Subject: [PATCH] Exclude some projects from source-build
-
----
- Directory.Build.props | 4 +++-
- 1 file changed, 3 insertions(+), 1 deletion(-)
-
-diff --git a/Directory.Build.props b/Directory.Build.props
-index 50d30f12fd..85c2f2428b 100644
---- a/Directory.Build.props
-+++ b/Directory.Build.props
-@@ -27,7 +27,9 @@
-         '$(IsTestAssetProject)' == 'true' OR
-         '$(IsBenchmarkProject)' == 'true' OR
-         '$(IsUnitTestProject)' == 'true'">false</IsShipping>
--
-+    <IsOtherTestProject Condition="$(MSBuildProjectName.Contains('IntegrationTesting')) or $(MSBuildProjectName.Contains('TestCommon'))">true</IsOtherTestProject>
-+    <ExcludeFromSourceBuild Condition="'$(IsSampleProject)' == 'true' or '$(IsTestAssetProject)' == 'true' or '$(IsBenchmarkProject)' == 'true' or '$(IsUnitTestProject)' == 'true' or '$(IsSpecificationTestProject)' == 'true' or '$(IsOtherTestProject)' == 'true'">true</ExcludeFromSourceBuild>
-+
-     <!--
-       Following logic mimics core-setup approach as well as
-       https://github.com/dotnet/arcade/blob/694d59f090b743f894779d04a7ffe11cbaf352e7/src/Microsoft.DotNet.Arcade.Sdk/tools/Publish.proj#L30-L31
--- 
-2.21.3
-
diff --git a/eng/source-build-patches/0004-Remove-Yarn-dependency-not-used-in-source-build.patch b/eng/source-build-patches/0004-Remove-Yarn-dependency-not-used-in-source-build.patch
deleted file mode 100644
index a047f721cf3ebd502592a1b3aacece9f3697435a..0000000000000000000000000000000000000000
--- a/eng/source-build-patches/0004-Remove-Yarn-dependency-not-used-in-source-build.patch
+++ /dev/null
@@ -1,77 +0,0 @@
-From 83c0f95c563fa6eb9b446f09166cac2c62ab6390 Mon Sep 17 00:00:00 2001
-From: dseefeld <dseefeld@microsoft.com>
-Date: Thu, 14 May 2020 16:29:28 +0000
-Subject: [PATCH 04/14] Remove Yarn dependency - not used in source-build
-
----
- eng/targets/Npm.Common.targets                                 | 3 ---
- global.json                                                    | 1 -
- .../src/Microsoft.Authentication.WebAssembly.Msal.csproj       | 2 --
- ...oft.AspNetCore.Components.WebAssembly.Authentication.csproj | 2 --
- src/Shared/E2ETesting/E2ETesting.targets                       | 3 ---
- 5 files changed, 11 deletions(-)
-
-diff --git a/eng/targets/Npm.Common.targets b/eng/targets/Npm.Common.targets
-index 696d23402b..6086dd0843 100644
---- a/eng/targets/Npm.Common.targets
-+++ b/eng/targets/Npm.Common.targets
-@@ -1,8 +1,5 @@
- <Project DefaultTargets="Build" InitialTargets="_CheckForInvalidConfiguration">
- 
--  <!-- Version of this SDK is set in global.json -->
--  <Sdk Name="Yarn.MSBuild" />
--
-   <PropertyGroup>
-     <NormalizedPackageId>$(PackageId.Replace('@','').Replace('/','-'))</NormalizedPackageId>
-     <PackageFileName>$(NormalizedPackageId)-$(PackageVersion).tgz</PackageFileName>
-diff --git a/global.json b/global.json
-index 501ba161bf..ee9dcaf4fa 100644
---- a/global.json
-+++ b/global.json
-@@ -29,7 +29,6 @@
-     "xcopy-msbuild": "16.5.0-alpha"
-   },
-   "msbuild-sdks": {
--    "Yarn.MSBuild": "1.22.10",
-    "Microsoft.DotNet.Arcade.Sdk": "6.0.0-beta.21167.3",
-    "Microsoft.DotNet.Helix.Sdk": "6.0.0-beta.21167.3"
-   }
-diff --git a/src/Components/WebAssembly/Authentication.Msal/src/Microsoft.Authentication.WebAssembly.Msal.csproj b/src/Components/WebAssembly/Authentication.Msal/src/Microsoft.Authentication.WebAssembly.Msal.csproj
-index 939ba16f88..ea2c849ea3 100644
---- a/src/Components/WebAssembly/Authentication.Msal/src/Microsoft.Authentication.WebAssembly.Msal.csproj
-+++ b/src/Components/WebAssembly/Authentication.Msal/src/Microsoft.Authentication.WebAssembly.Msal.csproj
-@@ -1,7 +1,5 @@
- <Project Sdk="Microsoft.NET.Sdk.Razor">
- 
--  <Sdk Name="Yarn.MSBuild" />
--
-   <PropertyGroup>
-     <TargetFramework>$(DefaultNetCoreTargetFramework)</TargetFramework>
-     <Description>Authenticate your Blazor webassembly applications with Azure Active Directory and Azure Active Directory B2C</Description>
-diff --git a/src/Components/WebAssembly/WebAssembly.Authentication/src/Microsoft.AspNetCore.Components.WebAssembly.Authentication.csproj b/src/Components/WebAssembly/WebAssembly.Authentication/src/Microsoft.AspNetCore.Components.WebAssembly.Authentication.csproj
-index 21a2efba4e..b4a6a75446 100644
---- a/src/Components/WebAssembly/WebAssembly.Authentication/src/Microsoft.AspNetCore.Components.WebAssembly.Authentication.csproj
-+++ b/src/Components/WebAssembly/WebAssembly.Authentication/src/Microsoft.AspNetCore.Components.WebAssembly.Authentication.csproj
-@@ -1,7 +1,5 @@
- <Project Sdk="Microsoft.NET.Sdk.Razor">
- 
--  <Sdk Name="Yarn.MSBuild" />
--
-   <PropertyGroup>
-     <TargetFramework>$(DefaultNetCoreTargetFramework)</TargetFramework>
-     <Description>Build client-side authentication for single-page applications (SPAs).</Description>
-diff --git a/src/Shared/E2ETesting/E2ETesting.targets b/src/Shared/E2ETesting/E2ETesting.targets
-index 76ced2cce9..eaecb913a9 100644
---- a/src/Shared/E2ETesting/E2ETesting.targets
-+++ b/src/Shared/E2ETesting/E2ETesting.targets
-@@ -1,7 +1,4 @@
- <Project>
--  <!-- Version of this SDK is set in global.json -->
--  <Sdk Name="Yarn.MSBuild" />
--
-   <!-- Make sure the settings files get copied to the test output folder. -->
-   <ItemGroup>
-     <None Update="e2eTestSettings*.json">
--- 
-2.18.0
-
diff --git a/eng/source-build-patches/0005-Revert-to-reference-versions-of-source-built-package.patch b/eng/source-build-patches/0005-Revert-to-reference-versions-of-source-built-package.patch
deleted file mode 100644
index 41a435e42bc81256a7522d7041dbf4ffbf245756..0000000000000000000000000000000000000000
--- a/eng/source-build-patches/0005-Revert-to-reference-versions-of-source-built-package.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-From adef97cd8923986914006454777f9f96d48c3a42 Mon Sep 17 00:00:00 2001
-From: Chris Rummel <crummel@microsoft.com>
-Date: Sun, 28 Jun 2020 18:41:22 +0000
-Subject: [PATCH 09/14] Use source-built version of MSBuild.
-
----
- eng/Versions.props                   | 1 +
- eng/tools/RepoTasks/RepoTasks.csproj | 6 +++---
- 2 files changed, 4 insertions(+), 3 deletions(-)
-
-diff --git a/eng/Versions.props b/eng/Versions.props
-index 90bb9be..2266be5 100644
---- a/eng/Versions.props
-+++ b/eng/Versions.props
-@@ -186,6 +186,7 @@
-     <!-- Partner teams -->
-     <MicrosoftBclAsyncInterfacesVersion>1.0.0</MicrosoftBclAsyncInterfacesVersion>
-     <MicrosoftBuildVersion>16.9.0</MicrosoftBuildVersion>
-+    <MicrosoftBuildFrameworkPackageVersion>16.9.0</MicrosoftBuildFrameworkPackageVersion>
-     <MicrosoftAzureSignalRVersion>1.2.0</MicrosoftAzureSignalRVersion>
-     <MicrosoftBuildFrameworkVersion>16.9.0</MicrosoftBuildFrameworkVersion>
-     <MicrosoftBuildLocatorVersion>1.2.6</MicrosoftBuildLocatorVersion>
-diff --git a/eng/tools/RepoTasks/RepoTasks.csproj b/eng/tools/RepoTasks/RepoTasks.csproj
-index 7fa9957..3664366 100644
---- a/eng/tools/RepoTasks/RepoTasks.csproj
-+++ b/eng/tools/RepoTasks/RepoTasks.csproj
-@@ -20,9 +20,9 @@
-   </ItemGroup>
-
-   <ItemGroup Condition="'$(TargetFramework)' == '$(DefaultNetCoreTargetFramework)'">
--    <PackageReference Include="Microsoft.Build.Framework" Version="16.9.0" />
--    <PackageReference Include="Microsoft.Build.Tasks.Core" Version="16.9.0" />
--    <PackageReference Include="Microsoft.Build.Utilities.Core" Version="16.9.0" />
-+    <PackageReference Include="Microsoft.Build.Framework" Version="$(MicrosoftBuildFrameworkPackageVersion)" />
-+    <PackageReference Include="Microsoft.Build.Tasks.Core" Version="$(MicrosoftBuildFrameworkPackageVersion)" />
-+    <PackageReference Include="Microsoft.Build.Utilities.Core" Version="$(MicrosoftBuildFrameworkPackageVersion)" />
-   </ItemGroup>
-
-   <ItemGroup Condition="'$(TargetFramework)' == 'net472'">
--- 
-2.18.0
-
diff --git a/eng/source-build-patches/0006-Add-FreeBSD.patch b/eng/source-build-patches/0006-Add-FreeBSD.patch
deleted file mode 100644
index ea1212f66b7886e831dff29f116057fadae3a3c6..0000000000000000000000000000000000000000
--- a/eng/source-build-patches/0006-Add-FreeBSD.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-From d67aa83be72cbb1ca37aba992633da87235f397b Mon Sep 17 00:00:00 2001
-From: Tomas Weinfurt <tweinfurt@yahoo.com>
-Date: Wed, 13 Nov 2019 22:32:02 -0800
-Subject: [PATCH 06/14] Add FreeBSD
-
----
- Directory.Build.props | 1 +
- eng/Common.props      | 1 +
- 2 files changed, 2 insertions(+)
-
-diff --git a/Directory.Build.props b/Directory.Build.props
-index cd2dabcdba..53d90f2903 100644
---- a/Directory.Build.props
-+++ b/Directory.Build.props
-@@ -159,6 +159,7 @@
-       win-arm64;
-       osx-x64;
-       osx-arm64;
-+      freebsd-x64;
-       linux-musl-x64;
-       linux-musl-arm;
-       linux-musl-arm64;
-diff --git a/eng/Common.props b/eng/Common.props
-index 7c489b15a9..a9a69bde9f 100644
---- a/eng/Common.props
-+++ b/eng/Common.props
-@@ -3,6 +3,7 @@
-     <TargetOsName Condition=" '$(TargetOsName)' == '' AND $([MSBuild]::IsOSPlatform('Windows'))">win</TargetOsName>
-     <TargetOsName Condition=" '$(TargetOsName)' == '' AND $([MSBuild]::IsOSPlatform('OSX'))">osx</TargetOsName>
-     <TargetOsName Condition=" '$(TargetOsName)' == '' AND $([MSBuild]::IsOSPlatform('Linux'))">linux</TargetOsName>
-+    <TargetOsName Condition=" '$(TargetOsName)' == '' AND $([MSBuild]::IsOSPlatform('FreeBSD'))">freebsd</TargetOsName>
-     <TargetArchitecture Condition="'$(TargetArchitecture)' == ''">x64</TargetArchitecture>
-     <TargetRuntimeIdentifier Condition="'$(TargetRuntimeIdentifier)' == ''">$(TargetOsName)-$(TargetArchitecture)</TargetRuntimeIdentifier>
-   </PropertyGroup>
--- 
-2.18.0
-
diff --git a/eng/source-build-patches/0007-Support-global.json-on-arm64-as-well.patch b/eng/source-build-patches/0007-Support-global.json-on-arm64-as-well.patch
deleted file mode 100644
index d54f0281c15adc9ef55f07da69079d89ca1feb16..0000000000000000000000000000000000000000
--- a/eng/source-build-patches/0007-Support-global.json-on-arm64-as-well.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-From ca706cd8670d14fae05b36ee83de716fa19d95ba Mon Sep 17 00:00:00 2001
-From: Omair Majid <omajid@redhat.com>
-Date: Wed, 23 Oct 2019 15:43:57 -0400
-Subject: [PATCH 07/14] Support global.json on arm64 as well
-
-arcade uses the runtime section of global.json to decide which
-architecture + runtime combination needs to be installed.
-
-With https://github.com/dotnet/arcade/pull/4132 arcade can install
-foreign SDKs in separate locations correctly.
-
-This change, suggested by @dougbu, makes arcade always install the
-runtime for the local architecture (which means it should work on arm64
-and x64) as well as the x86 architecture (skipped on Linux).
-
-This gets us a working SDK/Runtime combo on arm64.
----
- global.json | 5 +----
- 1 file changed, 1 insertion(+), 4 deletions(-)
-
-diff --git a/global.json b/global.json
-index ee9dcaf4fa..053e92ebee 100644
---- a/global.json
-+++ b/global.json
-@@ -5,13 +5,10 @@
-   "tools": {
-     "dotnet": "6.0.100-preview.3.21168.19",
-     "runtimes": {
--      "dotnet/x64": [
-+      "dotnet": [
-         "2.1.25",
-         "$(MicrosoftNETCoreBrowserDebugHostTransportVersion)"
-       ],
--      "dotnet/x86": [
--        "$(MicrosoftNETCoreBrowserDebugHostTransportVersion)"
--      ],
-       "aspnetcore/x64": [
-         "3.1.13"
-       ]
--- 
-2.18.0
-
diff --git a/eng/source-build-patches/0008-use-sourcebuildRID-to-find-clrjit.patch b/eng/source-build-patches/0008-use-sourcebuildRID-to-find-clrjit.patch
deleted file mode 100644
index 77f17bb5a9728b4a33ff01ec94bc8404876d3e9e..0000000000000000000000000000000000000000
--- a/eng/source-build-patches/0008-use-sourcebuildRID-to-find-clrjit.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From 2ac4c152b5c4409025dcbaf473b89a6094453e97 Mon Sep 17 00:00:00 2001
-From: adaggarwal <aditya.aggarwal@microsoft.com>
-Date: Sat, 8 Feb 2020 06:43:48 +0000
-Subject: [PATCH 08/14] use-sourcebuildRID-to-find-clrjit
-
----
- .../App.Runtime/src/Microsoft.AspNetCore.App.Runtime.csproj     | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.csproj b/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.csproj
-index 4199691fdb..6387557d8f 100644
---- a/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.csproj
-+++ b/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.csproj
-@@ -411,7 +411,7 @@ This package is an internal implementation of the .NET Core SDK and is not meant
-     <PropertyGroup>
-       <!-- Pick the right coreclr jit based on whether we are cross-compiling or not. -->
-       <CoreCLRJitPath
--          Condition="'$(CrossCompileDirectory)' == ''">$(RuntimePackageRoot)runtimes\$(RuntimeIdentifier)\native\$(LibPrefix)clrjit$(LibExtension)</CoreCLRJitPath>
-+          Condition="'$(CrossCompileDirectory)' == ''">$(RuntimePackageRoot)runtimes\$(SourceBuildRuntimeIdentifier)\native\$(LibPrefix)clrjit$(LibExtension)</CoreCLRJitPath>
-       <CoreCLRJitPath
-           Condition="'$(CrossCompileDirectory)' != ''">$(RuntimePackageRoot)runtimes\$(CrossCompileDirectory)\native\$(LibPrefix)clrjit$(LibExtension)</CoreCLRJitPath>
-     </PropertyGroup>
--- 
-2.18.0
-
diff --git a/eng/source-build-patches/0011-Fix-a-couple-issues.patch b/eng/source-build-patches/0011-Fix-a-couple-issues.patch
deleted file mode 100644
index f32be5bebbd5a4c14d3c0a6ca25ed04c948e8296..0000000000000000000000000000000000000000
--- a/eng/source-build-patches/0011-Fix-a-couple-issues.patch
+++ /dev/null
@@ -1,96 +0,0 @@
-From 594c716ad8993df91b4cbade593b9bee7cacae47 Mon Sep 17 00:00:00 2001
-From: Chris Rummel <crummel@microsoft.com>
-Date: Thu, 3 Sep 2020 06:29:25 -0500
-Subject: [PATCH 11/14] Fix a couple issues.
-
----
- AspNetCore.sln                                |  2 -
- src/Components/Components.slnf                |  1 -
- src/Components/ComponentsNoDeps.slnf          |  1 -
- .../Driver/Wasm.Performance.Driver.csproj     | 37 -------------------
- 4 files changed, 41 deletions(-)
- delete mode 100644 src/Components/benchmarkapps/Wasm.Performance/Driver/Wasm.Performance.Driver.csproj
-
-diff --git a/AspNetCore.sln b/AspNetCore.sln
-index 06f5b1b4c6..4a7c2e59a8 100644
---- a/AspNetCore.sln
-+++ b/AspNetCore.sln
-@@ -475,8 +475,6 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "benchmarkapps", "benchmarka
- EndProject
- Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Wasm.Performance", "Wasm.Performance", "{6276A9A0-791B-49C1-AD8F-50AC47CDC196}"
- EndProject
--Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Wasm.Performance.Driver", "src\Components\benchmarkapps\Wasm.Performance\Driver\Wasm.Performance.Driver.csproj", "{B81C7FA1-870F-4F21-A928-A5BE18754E6E}"
--EndProject
- Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Wasm.Performance.TestApp", "src\Components\benchmarkapps\Wasm.Performance\TestApp\Wasm.Performance.TestApp.csproj", "{2AEACF69-7F68-414A-B49D-2C627D37D0F6}"
- EndProject
- Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Components.WebAssembly.Server.Tests", "src\Components\WebAssembly\Server\test\Microsoft.AspNetCore.Components.WebAssembly.Server.Tests.csproj", "{0C610220-E00C-4752-98A0-44A3D4B96A21}"
-diff --git a/src/Components/Components.slnf b/src/Components/Components.slnf
-index d023481b95..a28aa122b1 100644
---- a/src/Components/Components.slnf
-+++ b/src/Components/Components.slnf
-@@ -37,7 +37,6 @@
-       "src\\Components\\WebAssembly\\testassets\\WasmLinkerTest.csproj",
-       "src\\Components\\Web\\src\\Microsoft.AspNetCore.Components.Web.csproj",
-       "src\\Components\\Web\\test\\Microsoft.AspNetCore.Components.Web.Tests.csproj",
--      "src\\Components\\benchmarkapps\\Wasm.Performance\\Driver\\Wasm.Performance.Driver.csproj",
-       "src\\Components\\benchmarkapps\\Wasm.Performance\\TestApp\\Wasm.Performance.TestApp.csproj",
-       "src\\Components\\test\\E2ETest\\Microsoft.AspNetCore.Components.E2ETests.csproj",
-       "src\\Components\\test\\testassets\\BasicTestApp\\BasicTestApp.csproj",
-diff --git a/src/Components/ComponentsNoDeps.slnf b/src/Components/ComponentsNoDeps.slnf
-index 7cf830b329..82e51fba83 100644
---- a/src/Components/ComponentsNoDeps.slnf
-+++ b/src/Components/ComponentsNoDeps.slnf
-@@ -39,7 +39,6 @@
-       "src\\Components\\Web\\src\\Microsoft.AspNetCore.Components.Web.csproj",
-       "src\\Components\\Web\\test\\Microsoft.AspNetCore.Components.Web.Tests.csproj",
-       "src\\Components\\benchmarkapps\\Wasm.Performance\\ConsoleHost\\Wasm.Performance.ConsoleHost.csproj",
--      "src\\Components\\benchmarkapps\\Wasm.Performance\\Driver\\Wasm.Performance.Driver.csproj",
-       "src\\Components\\benchmarkapps\\Wasm.Performance\\TestApp\\Wasm.Performance.TestApp.csproj",
-       "src\\Components\\test\\E2ETest\\Microsoft.AspNetCore.Components.E2ETests.csproj",
-       "src\\Components\\test\\testassets\\BasicTestApp\\BasicTestApp.csproj",
-diff --git a/src/Components/benchmarkapps/Wasm.Performance/Driver/Wasm.Performance.Driver.csproj b/src/Components/benchmarkapps/Wasm.Performance/Driver/Wasm.Performance.Driver.csproj
-deleted file mode 100644
-index 346ddc48f1..0000000000
---- a/src/Components/benchmarkapps/Wasm.Performance/Driver/Wasm.Performance.Driver.csproj
-+++ /dev/null
-@@ -1,37 +0,0 @@
--<Project Sdk="Microsoft.NET.Sdk.Web">
--
--  <PropertyGroup>
--    <TargetFramework>$(DefaultNetCoreTargetFramework)</TargetFramework>
--    <OutputType>exe</OutputType>
--
--    <IsShippingPackage>false</IsShippingPackage>
--    <!-- WebDriver is not strong-named, so this test project cannot be strong named either. -->
--    <SignAssembly>false</SignAssembly>
--    <IsTestAssetProject>true</IsTestAssetProject>
--    <RuntimeIdentifier>linux-x64</RuntimeIdentifier>
--  </PropertyGroup>
--
--  <ItemGroup>
--    <Reference Include="Microsoft.AspNetCore" />
--    <Reference Include="Microsoft.AspNetCore.Cors" />
--    <Reference Include="Microsoft.AspNetCore.Components.WebAssembly.Server" />
--    <Reference Include="Selenium.Support" />
--    <Reference Include="Selenium.WebDriver" />
--    <ProjectReference Include="..\TestApp\Wasm.Performance.TestApp.csproj" />
--  </ItemGroup>
--
--  <ItemGroup>
--    <Compile Include="..\..\..\WebAssembly\DevServer\src\Server\*.cs" />
--  </ItemGroup>
--
--  <Target Name="_AddTestProjectMetadataAttributes" BeforeTargets="BeforeCompile">
--    <ItemGroup>
--      <AssemblyAttribute
--        Include="System.Reflection.AssemblyMetadataAttribute">
--        <_Parameter1>TestAppLocatiion</_Parameter1>
--        <_Parameter2>$(MSBuildThisFileDirectory)..\TestApp\</_Parameter2>
--      </AssemblyAttribute>
--  </ItemGroup>
--  </Target>
--
--</Project>
--- 
-2.18.0
-
diff --git a/eng/source-build-patches/0012-Don-t-warn-on-CA1416.patch b/eng/source-build-patches/0012-Don-t-warn-on-CA1416.patch
deleted file mode 100644
index 87415782f6704ad398fa6938c2b91141fe445f5d..0000000000000000000000000000000000000000
--- a/eng/source-build-patches/0012-Don-t-warn-on-CA1416.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From 446691a345e68861bd653c1be4b9111aafad5613 Mon Sep 17 00:00:00 2001
-From: dseefeld <dseefeld@microsoft.com>
-Date: Thu, 8 Oct 2020 14:18:02 +0000
-Subject: [PATCH 12/14] Don't warn on CA1416
-
----
- Directory.Build.props | 3 +++
- 1 file changed, 3 insertions(+)
-
-diff --git a/Directory.Build.props b/Directory.Build.props
-index 53d90f2903..72cee68b4e 100644
---- a/Directory.Build.props
-+++ b/Directory.Build.props
-@@ -102,6 +102,9 @@
- 
-   <!-- Warnings and errors -->
-   <PropertyGroup>
-+    <!-- Don't warn on CA1416 since source-build TFM changes
-+        are causing the warning to occur -->
-+    <NoWarn>$(NoWarn);CA1416</NoWarn>
-     <!-- Ensure API docs are available. -->
-     <NoWarn>$(NoWarn.Replace('1591', ''))</NoWarn>
- 
--- 
-2.18.0
-
diff --git a/eng/source-build-patches/0013-Use-source-built-NuGet-for-repo-tasks.patch b/eng/source-build-patches/0013-Use-source-built-NuGet-for-repo-tasks.patch
deleted file mode 100644
index 8c00f50d1be55903550f5cdccb2e07508952d9c6..0000000000000000000000000000000000000000
--- a/eng/source-build-patches/0013-Use-source-built-NuGet-for-repo-tasks.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-From 1fa8097f1a6a49606c0aefad2763f3e0adf0e845 Mon Sep 17 00:00:00 2001
-From: Davis Goodin <dagood@microsoft.com>
-Date: Fri, 6 Nov 2020 10:41:33 -0600
-Subject: [PATCH 13/14] Use source-built NuGet for repo tasks
-
-This allows us to use the source-built version of NuGet when we
-have it, to avoid prebuilts.
----
- eng/Versions.props                   | 1 +
- eng/tools/RepoTasks/RepoTasks.csproj | 2 +-
- 2 files changed, 2 insertion(+), 1 deletion(-)
-
-diff --git a/eng/Versions.props b/eng/Versions.props
-index 90bb9be..20a4c8c 100644
---- a/eng/Versions.props
-+++ b/eng/Versions.props
-@@ -208,6 +208,7 @@
-     <MicrosoftWebXdtVersion>1.4.0</MicrosoftWebXdtVersion>
-     <SystemIdentityModelTokensJwtVersion>6.8.0</SystemIdentityModelTokensJwtVersion>
-     <NuGetVersioningVersion>5.9.0</NuGetVersioningVersion>
-+    <NuGetVersioningPackageVersion>5.9.0</NuGetVersioningPackageVersion>
-     <NuGetFrameworksVersion>5.9.0</NuGetFrameworksVersion>
-     <SystemNetExperimentalMsQuicVersion>5.0.0-alpha.20560.6</SystemNetExperimentalMsQuicVersion>
-     <!-- Packages from 2.1, 3.1, and 5.0 branches used for site extension build. -->
-diff --git a/eng/tools/RepoTasks/RepoTasks.csproj b/eng/tools/RepoTasks/RepoTasks.csproj
-index 2b09f16594..657974b2b0 100644
---- a/eng/tools/RepoTasks/RepoTasks.csproj
-+++ b/eng/tools/RepoTasks/RepoTasks.csproj
-@@ -15,7 +15,7 @@
-   </PropertyGroup>
-
-   <ItemGroup>
--    <PackageReference Include="NuGet.Packaging" Version="5.9.0" />
-+    <PackageReference Include="NuGet.Packaging" Version="$(NuGetVersioningPackageVersion)" />
-     <PackageReference Include="Microsoft.Extensions.DependencyModel" Version="2.1.0" />
-   </ItemGroup>
-
--- 
-2.18.0
diff --git a/eng/source-build-patches/0017-Emit-RepoTasks.binlog.patch b/eng/source-build-patches/0017-Emit-RepoTasks.binlog.patch
deleted file mode 100644
index 79cc2f7ab9e4666c9c2325e88e4b752147c11f8e..0000000000000000000000000000000000000000
--- a/eng/source-build-patches/0017-Emit-RepoTasks.binlog.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From 8f63217ad54ec431e398753b2bf745a1eb565e36 Mon Sep 17 00:00:00 2001
-From: Davis Goodin <dagood@microsoft.com>
-Date: Mon, 21 Dec 2020 14:37:58 -0600
-Subject: [PATCH] Emit RepoTasks.binlog
-
-Lets us diagnose errors that occur while building RepoTasks.csproj.
----
- eng/build.sh | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/eng/build.sh b/eng/build.sh
-index 3c3cab39ce..029bb4f0c8 100755
---- a/eng/build.sh
-+++ b/eng/build.sh
-@@ -363,6 +363,7 @@ if [ "$build_repo_tasks" = true ]; then
-         -p:Restore=$run_restore \
-         -p:Build=true \
-         -clp:NoSummary \
-+        -bl:RepoTasks.binlog \
-         ${toolset_build_args[@]+"${toolset_build_args[@]}"}
- fi
- 
--- 
-2.25.4
-
diff --git a/eng/tools/RepoTasks/RepoTasks.csproj b/eng/tools/RepoTasks/RepoTasks.csproj
index 0b7444ffb22bec571c4234c19a18228252e581c5..e723beb3531bc082201513276b22f01298d60a6f 100644
--- a/eng/tools/RepoTasks/RepoTasks.csproj
+++ b/eng/tools/RepoTasks/RepoTasks.csproj
@@ -15,14 +15,14 @@
   </PropertyGroup>
 
   <ItemGroup>
-    <PackageReference Include="NuGet.Packaging" Version="5.9.0" />
+    <PackageReference Include="NuGet.Packaging" Version="$(NuGetPackagingVersion)" />
     <PackageReference Include="Microsoft.Extensions.DependencyModel" Version="2.1.0" />
   </ItemGroup>
 
   <ItemGroup Condition="'$(TargetFramework)' == '$(DefaultNetCoreTargetFramework)'">
-    <PackageReference Include="Microsoft.Build.Framework" Version="16.9.0" />
-    <PackageReference Include="Microsoft.Build.Tasks.Core" Version="16.9.0" />
-    <PackageReference Include="Microsoft.Build.Utilities.Core" Version="16.9.0" />
+    <PackageReference Include="Microsoft.Build.Framework" Version="$(MicrosoftBuildFrameworkVersion)" />
+    <PackageReference Include="Microsoft.Build.Tasks.Core" Version="$(MicrosoftBuildTaskCoreVersion)" />
+    <PackageReference Include="Microsoft.Build.Utilities.Core" Version="$(MicrosoftBuildUtilitiesCoreVersion)" />
   </ItemGroup>
 
   <ItemGroup Condition="'$(TargetFramework)' == 'net472'">