xamarin-macios/dotnet/package/microsoft.sdk.csproj

9 строки
399 B
XML
Исходник Постоянная ссылка Обычный вид История

<Project>
<PropertyGroup>
[dotnet] Rename packs to contain target framework. (#19765) This is the first step towards [multi-targeting support][1]. In order to support multi-targeting, it must be possible to install several versions of our packs simultaneously, and that also means that it becomes a lot easier to visualize and work with the version we want to support if the packs were named in a helpful way. In particular, this PR changes the sdk, ref and runtime pack names to contain the target framework + target platform version. This will be the new names: * iOS * Microsoft.iOS.Sdk.net8.0_17.2 * Microsoft.iOS.Ref.net8.0_17.2 * Microsoft.iOS.Runtime.ios-arm64.net8.0_17.2 * Microsoft.iOS.Runtime.iossimulator-arm64.net8.0_17.2 * Microsoft.iOS.Runtime.iossimulator-x64.net8.0_17.2 * tvOS * Microsoft.tvOS.Sdk.net8.0_17.2 * Microsoft.tvOS.Ref.net8.0_17.2 * Microsoft.tvOS.Runtime.ios-arm64.net8.0_17.2 * Microsoft.tvOS.Runtime.iossimulator-arm64.net8.0_17.2 * Microsoft.tvOS.Runtime.iossimulator-x64.net8.0_17.2 * Mac Catalyst * Microsoft.MacCatalyst.Sdk.net8.0_17.2 * Microsoft.MacCatalyst.Ref.net8.0_17.2 * Microsoft.MacCatalyst.Runtime.maccatalyst-x64.net8.0_17.2 * Microsoft.MacCatalyst.Runtime.maccatalyst-arm64.net8.0_17.2 * macOS * Microsoft.macOS.Sdk.net8.0_14.2 * Microsoft.macOS.Ref.net8.0_14.2 * Microsoft.macOS.Runtime.osx-x64.net8.0_14.2 * Microsoft.macOS.Runtime.osx-arm64.net8.0_14.2 There are two main benefits to renaming the packs: * It becomes a lot easier to understand which versions we support when we support multi-targeting. For example, say we want to support: * net8.0-ios17.0 * net8.0-ios17.2 * net9.0-ios18.0 In this case we'd ship packs for `Microsoft.iOS.Sdk.net8.0_17.0`, `Microsoft.iOS.Sdk.net8.0_17.2`, `Microsoft.iOS.Sdk.net9.0_18.0` (the exact version number for each pack wouldn't be important). If we didn't change the pack names, we'd need to track the exact versions of the Microsoft.iOS.Sdk pack, mapping them to the correct target framework + target platform version we want to support. * It'll be possible to add maestro subscriptions between versions. Given the previous example: * net8.0-ios17.0 * net8.0-ios17.2 * net9.0-ios18.0 The branch producing `net9.0-ios8.0` could have a maestro subscription on the branches producing `net7.0-ios17.0` and `net7.0-ios17.2`, automatically bumping the versions whenever those branches have any changes. This would be rather annoying to keep track of and bump manually. [1]: https://github.com/xamarin/xamarin-macios/blob/main/docs/multi-target-framework.md
2024-02-19 15:14:20 +03:00
<PackageId>Microsoft.$(_PlatformName).Sdk.$(PackageOSTargetVersion)</PackageId>
<PackageId Condition="'$(IsWindowsPack)' == 'true'">Microsoft.$(_PlatformName).Windows.Sdk.$(PackageOSTargetVersion)</PackageId>
<Description>Managed Tools and Bindings for the $(_PlatformName) SDK</Description>
</PropertyGroup>
<Import Project="common.csproj" />
</Project>