Today there are three "target frameworks" that Xamarin.Mac can target. However, you can only target two of them in nuget packages. This causes libraries that want to support Full but need platform specific libraries\native libraries significant pain.
After the discussion here and one with @mrward I believe the following are true:
- Nuget needs a new Target Framework Identifier (TFI) set for Full projects instead of the current one to be able to to handle targettinging
- However, we have many projects in the wild with existing tags.
- A migration will be painful and likely "not worth it".
And that the following plan is feasible:
- When
UseXamMacFullFramework is true here we can change the TargetFrameworkIdentifier at build time.
- Then nuget should see the new TFI and use those bits, or fall back as described in the PR
This change would add yet another bit of complication to the already non-trivial target framework system, and the chance for regressions and complications is non-trivial. However, it is the only viable path forward to allow nuget targetting.
VS bug #778613, VS bug #779016
Today there are three "target frameworks" that Xamarin.Mac can target. However, you can only target two of them in nuget packages. This causes libraries that want to support Full but need platform specific libraries\native libraries significant pain.
After the discussion here and one with @mrward I believe the following are true:
And that the following plan is feasible:
UseXamMacFullFrameworkis true here we can change the TargetFrameworkIdentifier at build time.This change would add yet another bit of complication to the already non-trivial target framework system, and the chance for regressions and complications is non-trivial. However, it is the only viable path forward to allow nuget targetting.