Yes, this is a large PR. I tried to make each commit its own story, so in reviewing this you should probably go through each commit rather than trying to look at the whole.
This PR moves Binding Tools for Swift from Mono to .NET 7.0
The changes fall into a few categories:
updating various constants to reflect the current build environment
updating makefiles to use dotnet to build things
updating code to use dotnet to compile C# code
updating library code to use [UnmanagedCallersOnly]
updating generation code to use [UnmanagedCallersOnly]
updating generation code to use delegate *unmanaged<...> syntax
updating dynamo to make changes easier
In its current state 1416 tests pass and 175 fail. Those that fail fall into the following categories:
crashing when running as a macOS app (cause TBD)
tests that require tables for generic types: [UnmanagedCallersOnly] can't appear in generic types
tests that was NativeHandle for ClassHandle
tests that are looking for the wrong SDK
tests that are not finding XamGlue (yet)
In addition iPhone/iPad tests don't happen (yet). At this point, I want to get this PR in so I focus on getting things running so I don't hold up @kotlarmilos
Yes, this is a large PR. I tried to make each commit its own story, so in reviewing this you should probably go through each commit rather than trying to look at the whole.
This PR moves Binding Tools for Swift from Mono to .NET 7.0 The changes fall into a few categories:
dotnet
to build thingsdotnet
to compile C# code[UnmanagedCallersOnly]
[UnmanagedCallersOnly]
delegate *unmanaged<...>
syntaxIn its current state 1416 tests pass and 175 fail. Those that fail fall into the following categories:
[UnmanagedCallersOnly]
can't appear in generic typesNativeHandle
forClassHandle
In addition iPhone/iPad tests don't happen (yet). At this point, I want to get this PR in so I focus on getting things running so I don't hold up @kotlarmilos