Preparatory changes for implementing Crossgen2 pipeline (dotnet/coreclr#26908)
1) Modify CoreCLR pipelines to use the zipping / unzipping templates
for manipulating the product build.
2) Pass the crossgen option to product build so that it crossgens the
framework assemblies.
3) After my recent split of native vs. managed test artifact build
build-job and xplat-test-job ended up with quite a few variable
duplications. I have just modified the two jobs
needing the common variables (build-job and
crossgen-comparison-job) to use the more specialized template
xplat-test-job instead of xplat-job they used before.
4) Optimize the pipeline to reuse *nix managed artifacts across
architectures. For Windows we're currently splitting managed
artifacts by bitness which matters for some reason I'll investigate
next.
Thanks
Tomas
Commit migrated from https://github.com/dotnet/coreclr/commit/
6ab52d607a3e2a65030b8668a759f717a7bf6ee8