From 7365824ddc6ed66152cfc50f4c8508368953099c Mon Sep 17 00:00:00 2001 From: Omair Majid Date: Tue, 9 Nov 2021 08:39:27 -0500 Subject: [PATCH] Also publish non-portable RID runtime symbols tarball This fixes a regression in .NET 6 source-build compared to the .NET 5 source-build. source-build wants to publish runtime symbols tarball for portable (eg, linux-x64) and non-portable (eg, fedora.33-x64) RIDs here after a build. Following .NET 5 conventions, I expected to see: ./artifacts/x64/Release/runtime/dotnet-runtime-symbols-fedora.34-x64-6.0.0.tar.gz ./artifacts/x64/Release/runtime/dotnet-runtime-symbols-linux-x64-6.0.0.tar.gz Unfortunately, only the portable RID (linux-x64) tarball is present after a full source-build in .NET 6. It turns out this is a bug in our build scripts. We try and copy binaries - including the symbol tarballs - after building each of runtime-portable and runtime. However, the target dependency is wrong: after `Build`, the intermediate package doesn't exist from the just-built repo. What ends up happening is that nothing is copied after building runtime-portable. However, after building runtime, the runtime-portable intermediate artifacts are found and copied over. So the end build has portable RID symbos, but not the non-portable ones. Fix that by changing the dependency of this target so it runs after intermediate packages are available. --- src/SourceBuild/tarball/content/repos/runtime.common.targets | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/SourceBuild/tarball/content/repos/runtime.common.targets b/src/SourceBuild/tarball/content/repos/runtime.common.targets index ca606b23d21..862b70dc832 100644 --- a/src/SourceBuild/tarball/content/repos/runtime.common.targets +++ b/src/SourceBuild/tarball/content/repos/runtime.common.targets @@ -23,7 +23,7 @@