Follow-up on #32451
Follow-up on #80074
In #43651, the "Windows" OS name was lowercased to achieve target frameworks with RIDs in them. At that time, the original plan was to lowercase all TargetOS values but that had to be cut because of resources. This PR finishes that and updates build systems, YML, markdowns and managed components.
To not break existing developer workflows, the passed-in -os value is automatically lower-cased in the script entry points and validated in the msbuild entry point.
* [tests] If -debug is LLDB, add separator before corerun and args
For runtime test shell scripts, if a debugger is specified with `-debug=/usr/bin/lddb` or the like, add a separator so that `lldb` doesn't try to interpret `-p` as a PID argument.
Also update mono workflow doc
* Also support gdb as the debugger
New tests that extend the System.Private.CoreLib API should add to the ref assemblies in src/libraries and the tests themselves should be library tests.
Updated the workflow doc: the Clr.Native subset is all that is need if we're interested in testing Mono.
Contributes to https://github.com/dotnet/runtime/issues/58266
* [tests] Use RuntimeFlavor to build ReferenceSystemPrivateCoreLib tests
When building tests that reference System.Private.CoreLib, use the one from the specified RuntimeFlavor (or fall back to coreclr if it's unset - although src/tests/build.sh sets it always)
* Update docs: We only need to build the Clr.Native subset if we're interested in testing Mono.
* flavor the pipelines to build the runtime-specific System.Private.CoreLib for the runtime tests.
* Don't build ReferenceSystemPrivateCoreLib tests with Mono
We should avoid adding new ReferenceSystemPrivateCoreLib tests
* Update instructions for running runtime tests on Android
* Update docs/workflow/testing/mono/testing.md
Co-authored-by: Juan Hoyos <juan.hoyos@microsoft.com>
Co-authored-by: Juan Hoyos <juan.hoyos@microsoft.com>
The current framework relays on CoreCLR to create the Core_Root and then patch it with mono runtime. So building CoreCLR is required before building runtime tests for desktop Mono
* Trim trailing whitespaces
* Match raw with rendered
* Delete extra asterisks and |
* Update ELT Hooks - tail calls.md
Co-authored-by: Jan Kotas <jkotas@microsoft.com>
* Implicitly build when invoking the test target
To get closer to the VSTest behavior this changes the Test target to
implicitly invoke the Build target unless /p:TestNoBuild is passed in.
(VSTest uses VSTestNoBuild which is controlled by the
dotnet test --no-build flag)
* Fix error logging for test outputs
* Update dotnet msbuild to build docs
* Update ReportGenerator global tool version
Updating ReportGenerator's version to 4.5.0 which removes unnecessary
logging (args passed in).
* Update documentation to cover also Mono runtime
* Updated requirements for mac and linux to include mono's
* Update System.Private.CoreLib/src/README.md
* Added initial mono building doc
* Added library testing steps for mono
* A bit of rewording based on feedback
* Add some scripts coloring