There is an option to build corefx against live coreclr bits, passed to build.cmd as -- /p:CoreCLROverridePath=<path>. This option has been used in a CI testing scenario in the dotnet/coreclr repo, which (1) builds coreclr, (2) clones corefx and builds it using that option. This very frequently leads to failures in these CI jobs due to breaking changes. To make these tests more reliable, the CI job is changing (with dotnet/coreclr#16263) to build corefx as-is, without the /p:CoreCLROverridePath argument, and then overwrite the generated runtime files (which were copied from downloaded packages) with built coreclr files. The idea is that there will be fewer failures with this method, for several reasons: (1) there should never be a build break since corefx is building as it does in the CI, (2) test breaks due to breaking changes might not occur, or should be minor, as new apis are added or changed in coreclr.
Ideally, corefx could provide an argument like /p:CoreCLROverridePath to do what our run-corefx-tests.py script is now going to do: that is, copy coreclr binaries to the generated runtime directory AFTER the corefx build, and NOT build against them. This would encapsulate the information about where this runtime directory lives in the right place -- the corefx scripts.
There is an option to build corefx against live coreclr bits, passed to build.cmd as
-- /p:CoreCLROverridePath=<path>. This option has been used in a CI testing scenario in the dotnet/coreclr repo, which (1) builds coreclr, (2) clones corefx and builds it using that option. This very frequently leads to failures in these CI jobs due to breaking changes. To make these tests more reliable, the CI job is changing (with dotnet/coreclr#16263) to build corefx as-is, without the/p:CoreCLROverridePathargument, and then overwrite the generated runtime files (which were copied from downloaded packages) with built coreclr files. The idea is that there will be fewer failures with this method, for several reasons: (1) there should never be a build break since corefx is building as it does in the CI, (2) test breaks due to breaking changes might not occur, or should be minor, as new apis are added or changed in coreclr.Ideally, corefx could provide an argument like
/p:CoreCLROverridePathto do what our run-corefx-tests.py script is now going to do: that is, copy coreclr binaries to the generated runtime directory AFTER the corefx build, and NOT build against them. This would encapsulate the information about where this runtime directory lives in the right place -- the corefx scripts.