146 Commits
Author SHA1 Message Date
Matous Kozak 5cf6892d8d [mono][browser] Fix WASM README path (#96198) 2023-12-20 08:28:07 +01:00
Ilona Tomkowicz 076a51fda1 [docs][wasm] Merge duplicated wasm build instructions. (#93343)
* Merge duplicated wasm build instructions.

* feedback

* @pavelsavara's feedback

* @matouskozak feedback
2023-10-12 10:40:02 +02:00
Matous Kozak c7586b9c7c Correct naming of MonoEnableLLVM flag in Mono doc (#92265) 2023-09-19 12:40:32 -05:00
Fan YangandZoltan Varga 867e185209 [WASM] Add ILStrip task to wasm app build process (#88926)
* Add ILStrip task to wasm app build process

* Make it work for wasm app building workflow

* Interp: stop inlining stripped methods. ILStrip: set code size to zero for tiny methods

* [mono][aot] Avoid adding some methods to the compiled method file.

* Methods which have 'deopt' set can enter the interpreter during EH.
* Methods which have 'interp_entry_only' set are AOTed, but the AOT
  code is only used to enter the interpreter.

* Only trim the methods that interpreter is able to call the aot'ed verion of it

* Add default value and documentation for WASMStripIL

* Move jit_call_can_be_supported to interp.c

* Minor format fix

* Add a test

* For testing

* Fix typo

* Skip TestUtilities Reference

* Address review feedback

* Change it to true

* Change name to trimming eligible

* Remove testing

* Address review feedback

* Address review feedback from Kate

* Add a var for llvm_only

---------

Co-authored-by: Zoltan Varga <vargaz@gmail.com>
2023-08-10 15:45:07 -04:00
Jeremy Koritzinsky 2811e7c755 Address Sanitizer support in CoreCLR (#74623)
* Enable AddressSanitizer in CoreCLR, Libs, and Host and update runtime-sanitized to run tests with ASAN on Linux and Mac

* Unify on HAS_ADDRESS_SANITIZER define name

Centralize setting up sanitizer flags.

Remove last usage of CLR_CMAKE_ENABLE_ASAN outside of eng/native

Remove unnecessary diffs

Use the cpuid intrinsic and enable ASAN on InitJitHelpers1.

Add comments for the places where we have ASAN disabled

Undo changes to src/coreclr/jit/CMakeLists.txt

Add docs and fix the docs in the build script.

Add docs for the SkipVCEnvInit hook

* Remove CRT runtime changes. We won't need this when we finally onboard to Windows with some changes they have coming down the pipeline, so remove them for now to reduce the diff of this PR.

* Remove suppression now that we've fixed the underlying issue.

* Remove some Windows-only sanitizer CMake that we won't need when ASAN is ready for us to consume on Windows.

* Set schedule for runtime-sanitized pipeline

* Remove workaround in JIT memory set/copy helpers now that the JIT bug has been fixed.

* Add missing helix queues setup template.

* Fix missing command to build nativeaot runtime tests as nativeaot.

* Add a scenario name to trigger the extended timeout in the libraries test helix configuration.

* Remove extraneous whitespace.

* Fix using the cross-targetting ILC when sanitizers are enabled. Also pass through our TargetOS and TargetArchitecture variables to the publish command for our native sanitizers targets to correctly do their extra logic.

* Disable LSAN on the CustomMain test.

* Disable some tests on sanitized runtimes.

* Copy the sanitizer runtime for OSX NativeAOT runtime tests.

* A little cleanup to try to get the build right now that we are always doing cross-builds on Linux.

* Fix crossgen-corelib.proj syntax.

* Fix cross-os dac builds to not include the host architecture in the output path.

* Split the debugger components into a separate component and make the "unsanitized cross components" build into an "unsanitized debugger components" build as it can't be part of the regular cross-components build

* Always write out the host-arch path on Windows and update the cross-dac build script to expect that.

* Change to use the dynamic runtime on Windows, as ASAN in VS is moving to a dynamic-only model.

* Update docker images to include the sanitizer runtimes in the crossrootfs images.

* Fix explicit image tags

* The unsanitized build should be of the target architecture, not the host architecture. As a result, we still need a cross-arch build for the cross-arch use cases when sanitized, as well as an unsanitized target arch build for the debugger tools.

* Turn off using the sigaltstack for NativeAOT tests that don't use the asansupport.cpp default options

* Make sure the shared ASAN runtime is present for the nativeaot/SmokeTests/SharedLibrary test.

* Disable crossgen2 tests with sanitizers as they don't get us interesting coverage.

* Fix custom default options and disable some more crossgen2-based tests.

* Simplify lookup of asan runtime on mac and fix copying the shared runtime for the SharedLibrary NativeAOT test.

* Disable test that's failing for weird reasons.

* Fix one more alloc-dealloc mismatch that only started to show up after test merging increased allocations in the runtime

* Disable the System.Text.Json test suite on sanitized builds as it causes SO failures on Mac

* Fix test exclusion

* PR feedback.

* Fix mac build

* Do review changes

* Add libbootstrapper object files to the platform manifest now that NativeAOT has

* Disable tests that check size on sanitized builds

* Use the built-in `include_guard` option

* Disable use-after-return checking in ASAN. CoreCLR doesn't do well with parallel stacks.

* Only pass the no UAR flag on C and CXX with Clang (not AppleClang).
2023-07-17 20:32:03 -07:00
skyoxZ 7edc4f2ba6 Fix example of building a library. (#87398) 2023-07-10 15:34:06 +02:00
Fan Yang 625edd9ff2 [Mono] Update Mono build README.md (#87517)
Added one more useful switch `-p:KeepNativeSymbols=true`
2023-06-14 15:58:14 -04:00
Jan Kotas 418aa8ab6b Delete Windows arm32 support (#86065) 2023-05-10 20:02:38 -07:00
Sven Boemer 9fc6e6ff86 Update linux build instructions (#86062)
To reflect recent series of changes to our official build. This
updates the mentioned images to use floating tags, and clarifies
that the new official build containers all are designed for
cross-building.
2023-05-10 12:54:40 -07:00
Nicholas Orlowsky 1d2cd206f4 typo fix (#84485) 2023-04-07 18:17:30 -04:00
Jan Kotas dba282642c Add missing step to native AOT dev workflow instructions (#84381) 2023-04-05 14:55:43 -07:00
99815734ce Fix path for packing (#83017)
* Fix path for packing

* Apply PR feedback

* Update docs/workflow/building/libraries/README.md

Co-authored-by: Adeel Mujahid <3840695+am11@users.noreply.github.com>

* Update docs/workflow/building/libraries/README.md

Co-authored-by: Adeel Mujahid <3840695+am11@users.noreply.github.com>

---------

Co-authored-by: Viktor Hofer <viktor.hofer@microsoft.com>
Co-authored-by: Adeel Mujahid <3840695+am11@users.noreply.github.com>
2023-03-10 12:38:02 +01:00
Adeel Mujahid 3b63eb1346 Replace remaining instances of COMPlus with DOTNET (#82985)
* Replace remaining instances of COMPlus with DOTNET

* Fix heading in RyuJIT tutorial
2023-03-05 08:40:20 -08:00
Evgeniy 0aca23e9c9 Fix link to container image in linux instructions (#82409)
I suppose head of the URL was redondant — gave me "docker: invalid refence format" when I tried the original command, and worked fine when I removed the first "mcr.microsoft.com/dotnet-buildtools/prereqs:"
2023-02-20 16:28:36 -08:00
Austin Wise be84df7642 Tweak NativeAOT repro instructions (#82018)
These work regardless where you copy of dotnet/runtime is checked out.
2023-02-13 12:34:57 +09:00
Viktor Hofer 2ca7cf7140 Lowercase TargetOS (#80164)
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.
2023-01-11 17:58:32 +01:00
Gregg Miskelly 2f27364836 Add Visual Studio debugging note to libraries README (#80185)
This adds another section to docs/workflow/building/libraries/README.md to reference how to disable sign verification in Visual Studio.
2023-01-04 13:03:01 -05:00
Viktor Hofer 9166ee4384 Follow-up from NetCoreAppCurrent tfm update (#79218)
As mentioned in https://github.com/dotnet/runtime/pull/78354#discussion_r1039328223, this documentation refers to libraries tests and not `RunNativeAotTestApps` testing. Reverting the documentation change.
2022-12-05 18:03:11 -05:00
Viktor Hofer 5435aa8f72 Add KnownILCompilerPack entry to targetingpacks.targets 2022-12-02 12:16:52 +01:00
Viktor Hofer 46780fd365 Update 'net7.0' usages in the repo 2022-11-18 21:24:56 +01:00
Eriawan Kusumawardhono 689350960f update instruction to build, test, and get code coverage result to use correct folder for .NET libraries incode-coverage.md (#77643) 2022-10-29 21:00:48 -04:00
Jan KotasandTheodore Tsirpanis 3adbcf5ff9 Doc improvements (#76863)
- Use proper macOS capitalization
- Delete superfluous details

Co-authored-by: Theodore Tsirpanis <teo@tsirpanis.gr>
2022-10-11 13:35:53 -07:00
Ivan Diaz SanchezandIvan Diaz 6811cc4dcb Improvements to CoreCLR Building, Debugging, and Testing Documentation (#75569)
* Quality Week 2022: The First Step to a Better Documentation.

* Removed the Markdown Extension's additional development tags.

* Removed redundant stuff.

* Removed redundant stuff.

* Removed guide testing versions to avoid confusion that they would be the only supported versions.

* Addressed some Powershell comments, added a pointer to a yaml with links to other .NET sibling repos, and did a couple mini-corrections. Still got a few comments to address...

* Fixed a ';:' with Powershell's syntax.

* Addressed review comments: Redaction improvements, localization url's, improved code snippets, added info on individual subsets building configurations, changed COMPlus for DOTNET, and other misc improvements.

* Addressed remaining comments.

* Addressed some last comments regarding corerun, and the subset flags in the build scripts.

Co-authored-by: Ivan Diaz <bluehorizon186@gmail.com>
2022-10-10 13:39:22 -07:00
Jeremy Koritzinsky 3c99def0a5 Use AzDO Pipeline Resources to define our build Docker containers (#75473) 2022-10-07 10:47:28 -07:00
Gleb BalykovandJan Kotas 835a133322 Update docs on libraries cross build (#76614)
* Update docs on libraries cross build

* Apply suggestions from code review

* Changes after review

Co-authored-by: Jan Kotas <jkotas@microsoft.com>
2022-10-06 10:26:01 +02:00