Add Linux build to CI #740
Draft
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Important
The base PR #739 must be merged first as it contains the base CI files.
This pull request updates the build process to add support for Ubuntu in addition to Windows and macOS. It introduces steps to install Mono and NuGet on Ubuntu, and updates the
Makefileto use the appropriate NuGet executable depending on the operating system, improving cross-platform compatibility and reliability of builds.Note
This does not have tests as the tests are failing to build due to mono msbuild issues. However, this will become less of an issue once we switch to dotnet.
Build workflow improvements:
ubuntu-latestto the build matrix in.github/workflows/build.yml, enabling CI builds on Ubuntu.NUGETenvironment variable accordingly.Makefile enhancements for platform compatibility:
NUGETvariable inMakefileto select the right NuGet executable based on the operating system, supporting both Windows and Linux environments.nugetwith$(NUGET)inprepareandnugettargets, ensuring the correct executable is used for package management across platforms. [1] [2]