diff --git a/Directory.Build.props b/Directory.Build.props
index 251506303..d22528dda 100644
--- a/Directory.Build.props
+++ b/Directory.Build.props
@@ -13,6 +13,8 @@
true
netcoreapp3.0
+
+ $(ArtifactsDir)symbols\$(Configuration)\Shipping
diff --git a/old/build_projects/dotnet-cli-build/AddMetadataIsPE.cs b/src/core-sdk-tasks/AddMetadataIsPE.cs
similarity index 100%
rename from old/build_projects/dotnet-cli-build/AddMetadataIsPE.cs
rename to src/core-sdk-tasks/AddMetadataIsPE.cs
diff --git a/old/build_projects/dotnet-cli-build/Crossgen.cs b/src/core-sdk-tasks/Crossgen.cs
similarity index 100%
rename from old/build_projects/dotnet-cli-build/Crossgen.cs
rename to src/core-sdk-tasks/Crossgen.cs
diff --git a/src/core-sdk-tasks/core-sdk-tasks.csproj b/src/core-sdk-tasks/core-sdk-tasks.csproj
index 9c9cdd890..c2ee30446 100644
--- a/src/core-sdk-tasks/core-sdk-tasks.csproj
+++ b/src/core-sdk-tasks/core-sdk-tasks.csproj
@@ -10,6 +10,7 @@
+
diff --git a/src/redist/redist.csproj b/src/redist/redist.csproj
index c49bc5099..fc3f8d2a8 100644
--- a/src/redist/redist.csproj
+++ b/src/redist/redist.csproj
@@ -17,6 +17,7 @@
+
diff --git a/src/redist/targets/BuildCoreSdkTasks.targets b/src/redist/targets/BuildCoreSdkTasks.targets
index 9b51419bf..dd25cf282 100644
--- a/src/redist/targets/BuildCoreSdkTasks.targets
+++ b/src/redist/targets/BuildCoreSdkTasks.targets
@@ -32,5 +32,7 @@
+
+
diff --git a/src/redist/targets/Crossgen.targets b/src/redist/targets/Crossgen.targets
new file mode 100644
index 000000000..dc4c4228c
--- /dev/null
+++ b/src/redist/targets/Crossgen.targets
@@ -0,0 +1,148 @@
+
+
+
+
+ runtime.$(SharedFrameworkRid).microsoft.netcore.app
+ <_crossDir Condition="'$(Architecture)' == 'arm64'">/x64_arm64
+ <_crossDir Condition="'$(Architecture)' == 'arm' And '$(OSName)' == 'win'">/x86_arm
+ <_crossDir Condition="'$(Architecture)' == 'arm' And '$(OSName)' == 'linux'">/x64_arm
+ $(NuGetPackageRoot)/$(RuntimeNETCoreAppPackageName)/$(MicrosoftNETCoreAppPackageVersion)/tools$(_crossDir)/crossgen$(ExeExtension)
+ $(SharedFrameworkRid)
+ x64_arm64
+ x86_arm
+ x64_arm
+ $(NuGetPackageRoot)/$(RuntimeNETCoreAppPackageName)/$(MicrosoftNETCoreAppPackageVersion)/runtimes/$(LibCLRJitRid)/native/$(DynamicLibPrefix)clrjit$(DynamicLibExtension)
+ $(RedistLayoutPath)shared/$(SharedFrameworkName)/$(MicrosoftNETCoreAppPackageVersion)
+
+
+
+
+
+
+ PackageToRestore=$(RuntimeNETCoreAppPackageName);
+ PackageVersionToRestore=$(MicrosoftNETCoreAppPackageVersion);
+ TargetFramework=$(TargetFramework)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ true
+ false
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/redist/targets/DownloadPackage.csproj b/src/redist/targets/DownloadPackage.csproj
new file mode 100644
index 000000000..a316ea118
--- /dev/null
+++ b/src/redist/targets/DownloadPackage.csproj
@@ -0,0 +1,12 @@
+
+
+
+ Library
+ false
+
+
+
+
+
+
+
diff --git a/src/redist/targets/GenerateLayout.targets b/src/redist/targets/GenerateLayout.targets
index ce59c552c..4bc8244bb 100644
--- a/src/redist/targets/GenerateLayout.targets
+++ b/src/redist/targets/GenerateLayout.targets
@@ -226,7 +226,8 @@
GenerateBundledVersions;
LayoutTemplates;
LayoutBundledTools;
- RetargetTools"
+ RetargetTools;
+ CrossgenLayout"
AfterTargets="Build">