[build] Remove Mono dependency.#24736
Conversation
We no longer need it.
There was a problem hiding this comment.
Pull request overview
This PR removes the Mono runtime dependency from the xamarin-macios build system. As the project has fully transitioned to .NET, the Mono Framework (classic Mono runtime) is no longer required for building or running the tools and projects.
Changes:
- Removed Mono provisioning and installation logic from build/provisioning scripts
- Removed Mono-related variables and paths from build configuration
- Deprecated the
--no-mono-pathbgen option (hidden no-op until XAMCORE_5_0)
Reviewed changes
Copilot reviewed 14 out of 14 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| tools/devops/provision-shared.in.csx | Removed ProvisionMono function |
| tools/devops/build-provisioning.csx | Removed call to ProvisionMono |
| tools/devops/automation/templates/windows/reserve-mac.yml | Removed duplicate --ignore-mono flags from system-dependencies.sh call |
| tools/devops/Makefile | Removed MONO_PACKAGE substitution from provisioning script generation |
| tests/test-dependencies.sh | Removed --provision-mono flag |
| tests/generator/Makefile | Removed MSBUILD_EXE_PATH export pointing to Mono MSBuild |
| tests/dotnet/size-comparison/common.mk | Removed MSBUILD_EXE_PATH export for oldnet builds |
| tests/common/mac/ProjectTestHelpers.cs | Removed MONO_PATH environment variable clearing |
| tests/Makefile | Removed SYSTEM_MONO from test configuration files |
| system-dependencies.sh | Removed all Mono checking, provisioning, and installation logic |
| src/bgen/BindingTouch.cs | Deprecated --no-mono-path option (hidden no-op, conditionally compiled out in XAMCORE_5_0) |
| msbuild/Makefile | Removed SYSTEM_MONO export |
| mk/mono.mk | Deleted entire file containing Mono version/branch/directory configuration |
| Make.config | Removed Mono version requirements, paths, and related variables |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
✅ [CI Build #09b23b2] Build passed (Build packages) ✅Pipeline on Agent |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
✅ [CI Build #09b23b2] Build passed (Build macOS tests) ✅Pipeline on Agent |
This comment has been minimized.
This comment has been minimized.
✅ [PR Build #09b23b2] Build passed (Detect API changes) ✅Pipeline on Agent |
|
🔥 Failed to compare API and create generator diff 🔥 Error: The system requirements for the hash to compare against (0d0f787) are different than for the current hash. Comparison is currently not supported in this scenario. Pipeline on Agent |
🚀 [CI Build #09b23b2] Test results 🚀Test results✅ All tests passed on VSTS: test results. 🎉 All 156 tests passed 🎉 Tests counts✅ cecil: All 1 tests passed. Html Report (VSDrops) Download macOS tests✅ Tests on macOS Monterey (12): All 5 tests passed. Html Report (VSDrops) Download Pipeline on Agent |
We no longer need it.