302 lines
24 KiB
XML
302 lines
24 KiB
XML
<Project>
|
|
|
|
<!--
|
|
Warning codes:
|
|
- part of the source build: <none>
|
|
- part of SkiaSharp: SK00xx
|
|
- part of SkiaSharp.Views: SK0x0x
|
|
- part of SkiaSharp.Views.Forms: SKx00x
|
|
-->
|
|
|
|
<Import Project="SkiaSharp.Build.Override.props" Condition="Exists('SkiaSharp.Build.Override.props')" />
|
|
|
|
<PropertyGroup>
|
|
<IsWindows>$([System.Runtime.InteropServices.RuntimeInformation]::IsOSPlatform($([System.Runtime.InteropServices.OSPlatform]::Windows)))</IsWindows>
|
|
<IsMacOS>$([System.Runtime.InteropServices.RuntimeInformation]::IsOSPlatform($([System.Runtime.InteropServices.OSPlatform]::OSX)))</IsMacOS>
|
|
<IsLinux>$([System.Runtime.InteropServices.RuntimeInformation]::IsOSPlatform($([System.Runtime.InteropServices.OSPlatform]::Linux)))</IsLinux>
|
|
<IsCI Condition="'$(IsCI)' == '' and ('$(CI)' == 'true' or '$(TF_BUILD)' == 'true')">true</IsCI>
|
|
<IsCI Condition="'$(IsCI)' == ''">false</IsCI>
|
|
<IsNetTizenSupported Condition="'$(IsNetTizenSupported)' == ''">true</IsNetTizenSupported>
|
|
<IsNetTVOSSupported Condition="'$(IsNetTVOSSupported)' == ''">true</IsNetTVOSSupported>
|
|
<IsNetMacOSSupported Condition="'$(IsNetMacOSSupported)' == ''">true</IsNetMacOSSupported>
|
|
</PropertyGroup>
|
|
|
|
<PropertyGroup>
|
|
<AssemblyVersionGitSha Condition=" '$(AssemblyVersionGitSha)' == '' ">$(GIT_SHA)</AssemblyVersionGitSha>
|
|
<AssemblyVersionGitSha Condition=" '$(AssemblyVersionGitSha)' == '' ">$(GIT_COMMIT)</AssemblyVersionGitSha>
|
|
<AssemblyVersionGitBranch Condition=" '$(AssemblyVersionGitBranch)' == '' ">$(GIT_BRANCH_NAME)</AssemblyVersionGitBranch>
|
|
</PropertyGroup>
|
|
|
|
<PropertyGroup>
|
|
<SignAssembly>true</SignAssembly>
|
|
<LangVersion>latest</LangVersion>
|
|
</PropertyGroup>
|
|
|
|
<PropertyGroup>
|
|
<SkiaSharpBuildPropsImported>true</SkiaSharpBuildPropsImported>
|
|
<MDocDocumentationDirectory>$(MSBuildThisFileDirectory)..\docs\SkiaSharpAPI</MDocDocumentationDirectory>
|
|
</PropertyGroup>
|
|
|
|
<PropertyGroup>
|
|
<DotNetSdkManifestVersionRegex>\d+\.\d+\.\d+(-[a-z]+\.\d+)?</DotNetSdkManifestVersionRegex>
|
|
<DotNetSdkManifestVersion Condition="'$(MSBuildRuntimeType)' == 'Core'">$([System.Text.RegularExpressions.Regex]::Match('$(MSBuildExtensionsPath)', '$(DotNetSdkManifestVersionRegex)'))</DotNetSdkManifestVersion>
|
|
<DotNetSdkManifestVersion Condition="'$(MSBuildRuntimeType)' != 'Core'"></DotNetSdkManifestVersion>
|
|
<!-- The previous/lowest version of .NET we want to support (just the base TFM/no platforms) -->
|
|
<TFMPrevious>net6.0</TFMPrevious>
|
|
<!-- The current version of .NET that we are shipping for (all the TFMs) -->
|
|
<TFMCurrent>net8.0</TFMCurrent>
|
|
<!-- The next version (typically a preview) that we are building for (all the TFMs) -->
|
|
<TFMNext></TFMNext>
|
|
</PropertyGroup>
|
|
|
|
<!-- Target Platform Versions -->
|
|
<PropertyGroup>
|
|
<!-- Previous -->
|
|
<TPVWindowsPrevious>10.0.19041.0</TPVWindowsPrevious>
|
|
<!-- Current -->
|
|
<TPVAndroidCurrent>34.0</TPVAndroidCurrent>
|
|
<TPViOSCurrent>17.0</TPViOSCurrent>
|
|
<TPVMacCatalystCurrent>17.0</TPVMacCatalystCurrent>
|
|
<TPVtvOSCurrent>17.0</TPVtvOSCurrent>
|
|
<TPVmacOSCurrent>14.0</TPVmacOSCurrent>
|
|
<TPVTizenCurrent>7.0</TPVTizenCurrent>
|
|
<TPVWindowsCurrent>10.0.19041.0</TPVWindowsCurrent>
|
|
<!-- Next -->
|
|
<TPVAndroidNext>35.0</TPVAndroidNext>
|
|
<TPViOSNext>17.5</TPViOSNext>
|
|
<TPVMacCatalystNext>17.5</TPVMacCatalystNext>
|
|
<TPVtvOSNext>17.5</TPVtvOSNext>
|
|
<TPVmacOSNext>14.5</TPVmacOSNext>
|
|
<TPVTizenNext>7.0</TPVTizenNext>
|
|
<TPVWindowsNext>10.0.19041.0</TPVWindowsNext>
|
|
</PropertyGroup>
|
|
|
|
<!-- Try determine which .NET workloads are installed for LOCAL builds -->
|
|
<PropertyGroup Condition="!$(IsCI) and '$(BuildEverything)' != 'true'">
|
|
<DotNetWorkloadSearchManifest>microsoft.net.sdk.macos\WorkloadManifest.json</DotNetWorkloadSearchManifest>
|
|
<!-- DOTNET_INSTALL_DIR -->
|
|
<DotNetWorkloadSearchPath Condition="'$(DotNetWorkloadInstallLocation)' == ''">$([MSBuild]::NormalizeDirectory('$(DOTNET_INSTALL_DIR)\sdk-manifests\$(DotNetSdkManifestVersion)'))</DotNetWorkloadSearchPath>
|
|
<DotNetWorkloadInstallLocation Condition="'$(DotNetWorkloadInstallLocation)' == '' and Exists($([MSBuild]::NormalizePath('$(DotNetWorkloadSearchPath)', '$(DotNetWorkloadSearchManifest)')))">$(DotNetWorkloadSearchPath)</DotNetWorkloadInstallLocation>
|
|
<!-- DOTNET_ROOT -->
|
|
<DotNetWorkloadSearchPath Condition="'$(DotNetWorkloadInstallLocation)' == ''">$([MSBuild]::NormalizeDirectory('$(DOTNET_ROOT)\sdk-manifests\$(DotNetSdkManifestVersion)'))</DotNetWorkloadSearchPath>
|
|
<DotNetWorkloadInstallLocation Condition="'$(DotNetWorkloadInstallLocation)' == '' and Exists($([MSBuild]::NormalizePath('$(DotNetWorkloadSearchPath)', '$(DotNetWorkloadSearchManifest)')))">$(DotNetWorkloadSearchPath)</DotNetWorkloadInstallLocation>
|
|
<!-- ProgramFiles\dotnet -->
|
|
<DotNetWorkloadSearchPath Condition="'$(DotNetWorkloadInstallLocation)' == ''">$([MSBuild]::NormalizeDirectory('$(ProgramFiles)\dotnet\sdk-manifests\$(DotNetSdkManifestVersion)'))</DotNetWorkloadSearchPath>
|
|
<DotNetWorkloadInstallLocation Condition="'$(DotNetWorkloadInstallLocation)' == '' and Exists($([MSBuild]::NormalizePath('$(DotNetWorkloadSearchPath)', '$(DotNetWorkloadSearchManifest)')))">$(DotNetWorkloadSearchPath)</DotNetWorkloadInstallLocation>
|
|
<!-- /usr/local/share/dotnet -->
|
|
<DotNetWorkloadSearchPath Condition="'$(DotNetWorkloadInstallLocation)' == ''">$([MSBuild]::NormalizeDirectory('/usr/local/share/dotnet/sdk-manifests/$(DotNetSdkManifestVersion)'))</DotNetWorkloadSearchPath>
|
|
<DotNetWorkloadInstallLocation Condition="'$(DotNetWorkloadInstallLocation)' == '' and Exists($([MSBuild]::NormalizePath('$(DotNetWorkloadSearchPath)', '$(DotNetWorkloadSearchManifest)')))">$(DotNetWorkloadSearchPath)</DotNetWorkloadInstallLocation>
|
|
<!-- LocalAppData\Microsoft\dotnet -->
|
|
<DotNetWorkloadSearchPath Condition="'$(DotNetWorkloadInstallLocation)' == ''">$([MSBuild]::NormalizeDirectory('$(LocalAppData)\Microsoft\dotnet\sdk-manifests\$(DotNetSdkManifestVersion)'))</DotNetWorkloadSearchPath>
|
|
<DotNetWorkloadInstallLocation Condition="'$(DotNetWorkloadInstallLocation)' == '' and Exists($([MSBuild]::NormalizePath('$(DotNetWorkloadSearchPath)', '$(DotNetWorkloadSearchManifest)')))">$(DotNetWorkloadSearchPath)</DotNetWorkloadInstallLocation>
|
|
<!-- HOME\.dotnet -->
|
|
<DotNetWorkloadSearchPath Condition="'$(DotNetWorkloadInstallLocation)' == ''">$([MSBuild]::NormalizeDirectory('$(HOME)/.dotnet/sdk-manifests/$(DotNetSdkManifestVersion)'))</DotNetWorkloadSearchPath>
|
|
<DotNetWorkloadInstallLocation Condition="'$(DotNetWorkloadInstallLocation)' == '' and Exists($([MSBuild]::NormalizePath('$(DotNetWorkloadSearchPath)', '$(DotNetWorkloadSearchManifest)')))">$(DotNetWorkloadSearchPath)</DotNetWorkloadInstallLocation>
|
|
</PropertyGroup>
|
|
<PropertyGroup Condition="!$(IsCI) and '$(BuildEverything)' != 'true'">
|
|
<DotNetWorkloadVersionRegex>\d+\.\d+\.\d+(-[a-z]+[\.\d+]+)*</DotNetWorkloadVersionRegex>
|
|
<DotNetWorkloadPacksInstallLocation Condition="'$(DotNetWorkloadInstallLocation)' != ''">$(DotNetWorkloadInstallLocation)..\..\packs\</DotNetWorkloadPacksInstallLocation>
|
|
<DotNetAndroidWorkloadInstalledVersion Condition="Exists('$(DotNetWorkloadInstallLocation)microsoft.net.sdk.android\WorkloadManifest.json')">$([System.Text.RegularExpressions.Regex]::Match($([System.IO.File]::ReadAllText('$(DotNetWorkloadInstallLocation)\microsoft.net.sdk.android\WorkloadManifest.json')), $(DotNetWorkloadVersionRegex)))</DotNetAndroidWorkloadInstalledVersion>
|
|
<DotNetIOSWorkloadInstalledVersion Condition="Exists('$(DotNetWorkloadInstallLocation)microsoft.net.sdk.ios\WorkloadManifest.json')">$([System.Text.RegularExpressions.Regex]::Match($([System.IO.File]::ReadAllText('$(DotNetWorkloadInstallLocation)\microsoft.net.sdk.ios\WorkloadManifest.json')), $(DotNetWorkloadVersionRegex)))</DotNetIOSWorkloadInstalledVersion>
|
|
<DotNetMauiWorkloadInstalledVersion Condition="Exists('$(DotNetWorkloadInstallLocation)microsoft.net.sdk.maui\WorkloadManifest.json')">$([System.Text.RegularExpressions.Regex]::Match($([System.IO.File]::ReadAllText('$(DotNetWorkloadInstallLocation)\microsoft.net.sdk.maui\WorkloadManifest.json')), $(DotNetWorkloadVersionRegex)))</DotNetMauiWorkloadInstalledVersion>
|
|
<DotNetTizenWorkloadInstalledVersion Condition="Exists('$(DotNetWorkloadInstallLocation)samsung.net.sdk.tizen\WorkloadManifest.json')">$([System.Text.RegularExpressions.Regex]::Match($([System.IO.File]::ReadAllText('$(DotNetWorkloadInstallLocation)\samsung.net.sdk.tizen\WorkloadManifest.json')), $(DotNetWorkloadVersionRegex)))</DotNetTizenWorkloadInstalledVersion>
|
|
<DotNetTVOSWorkloadInstalledVersion Condition="Exists('$(DotNetWorkloadInstallLocation)microsoft.net.sdk.tvos\WorkloadManifest.json')">$([System.Text.RegularExpressions.Regex]::Match($([System.IO.File]::ReadAllText('$(DotNetWorkloadInstallLocation)\microsoft.net.sdk.tvos\WorkloadManifest.json')), '$(DotNetWorkloadVersionRegex)'))</DotNetTVOSWorkloadInstalledVersion>
|
|
<DotNetMacOSWorkloadInstalledVersion Condition="Exists('$(DotNetWorkloadInstallLocation)microsoft.net.sdk.macos\WorkloadManifest.json')">$([System.Text.RegularExpressions.Regex]::Match($([System.IO.File]::ReadAllText('$(DotNetWorkloadInstallLocation)\microsoft.net.sdk.macos\WorkloadManifest.json')), '$(DotNetWorkloadVersionRegex)'))</DotNetMacOSWorkloadInstalledVersion>
|
|
<DotNetTizenWorkloadIsInstalled Condition="Exists('$(DotNetWorkloadPacksInstallLocation)Samsung.Tizen.Sdk\$(DotNetTizenWorkloadInstalledVersion)\Sdk\AutoImport.props')">true</DotNetTizenWorkloadIsInstalled>
|
|
<DotNetTVOSWorkloadIsInstalled Condition="Exists('$(DotNetWorkloadPacksInstallLocation)Microsoft.tvOS.Sdk\$(DotNetTVOSWorkloadInstalledVersion)\Sdk\AutoImport.props')">true</DotNetTVOSWorkloadIsInstalled>
|
|
<DotNetMacOSWorkloadIsInstalled Condition="Exists('$(DotNetWorkloadPacksInstallLocation)Microsoft.macOS.Sdk\$(DotNetMacOSWorkloadInstalledVersion)\Sdk\AutoImport.props')">true</DotNetMacOSWorkloadIsInstalled>
|
|
<DotNetAndroidWorkloadIsInstalled Condition="Exists('$(DotNetWorkloadPacksInstallLocation)Microsoft.Android.Sdk.Windows\$(DotNetAndroidWorkloadInstalledVersion)\Sdk\AutoImport.props')">true</DotNetAndroidWorkloadIsInstalled>
|
|
<DotNetAndroidWorkloadIsInstalled Condition="Exists('$(DotNetWorkloadPacksInstallLocation)Microsoft.Android.Sdk.Darwin\$(DotNetAndroidWorkloadInstalledVersion)\Sdk\AutoImport.props')">true</DotNetAndroidWorkloadIsInstalled>
|
|
<DotNetAndroidWorkloadIsInstalled Condition="Exists('$(DotNetWorkloadPacksInstallLocation)Microsoft.Android.Sdk.Linux\$(DotNetAndroidWorkloadInstalledVersion)\Sdk\AutoImport.props')">true</DotNetAndroidWorkloadIsInstalled>
|
|
<DotNetIOSWorkloadIsInstalled Condition="Exists('$(DotNetWorkloadPacksInstallLocation)Microsoft.iOS.Sdk\$(DotNetIOSWorkloadInstalledVersion)\Sdk\AutoImport.props')">true</DotNetIOSWorkloadIsInstalled>
|
|
<DotNetMauiWorkloadIsInstalled Condition="Exists('$(DotNetWorkloadPacksInstallLocation)Microsoft.Maui.Sdk\$(DotNetMauiWorkloadInstalledVersion)\Sdk\AutoImport.props')">true</DotNetMauiWorkloadIsInstalled>
|
|
<IsNetTizenSupported Condition="'$(DotNetTizenWorkloadIsInstalled)' != 'true'">false</IsNetTizenSupported>
|
|
<IsNetTVOSSupported Condition="'$(DotNetTVOSWorkloadIsInstalled)' != 'true'">false</IsNetTVOSSupported>
|
|
<IsNetMacOSSupported Condition="'$(DotNetMacOSWorkloadIsInstalled)' != 'true'">false</IsNetMacOSSupported>
|
|
</PropertyGroup>
|
|
|
|
<!-- .NET Standard, .NET Framework and .NET -->
|
|
<PropertyGroup>
|
|
<FullFrameworkTargetFrameworks>net462</FullFrameworkTargetFrameworks>
|
|
<BasicTargetFrameworksCurrent>netstandard2.0;netstandard2.1;$(FullFrameworkTargetFrameworks);$(TFMCurrent)</BasicTargetFrameworksCurrent>
|
|
<PlatformTargetFrameworksCurrent Condition="!$(IsLinux)">$(TFMCurrent)-ios$(TPViOSCurrent);$(TFMCurrent)-maccatalyst$(TPVMacCatalystCurrent);$(TFMCurrent)-android$(TPVAndroidCurrent)</PlatformTargetFrameworksCurrent>
|
|
<PlatformTargetFrameworksCurrent Condition="!$(IsLinux) and $(IsNetTizenSupported)">$(PlatformTargetFrameworksCurrent);$(TFMCurrent)-tizen$(TPVTizenCurrent)</PlatformTargetFrameworksCurrent>
|
|
<PlatformTargetFrameworksCurrent Condition="!$(IsLinux) and $(IsNetTVOSSupported)">$(PlatformTargetFrameworksCurrent);$(TFMCurrent)-tvos$(TPVtvOSCurrent)</PlatformTargetFrameworksCurrent>
|
|
<PlatformTargetFrameworksCurrent Condition="!$(IsLinux) and $(IsNetMacOSSupported)">$(PlatformTargetFrameworksCurrent);$(TFMCurrent)-macos$(TPVmacOSCurrent)</PlatformTargetFrameworksCurrent>
|
|
<PlatformTargetFrameworksCurrent Condition="$(IsWindows)">$(PlatformTargetFrameworksCurrent);$(TFMCurrent)-windows$(TPVWindowsCurrent)</PlatformTargetFrameworksCurrent>
|
|
</PropertyGroup>
|
|
<PropertyGroup Condition="'$(TFMPrevious)' != ''">
|
|
<BasicTargetFrameworksPrevious>$(TFMPrevious)</BasicTargetFrameworksPrevious>
|
|
</PropertyGroup>
|
|
<PropertyGroup Condition="'$(TFMNext)' != ''">
|
|
<BasicTargetFrameworksNext>$(TFMNext)</BasicTargetFrameworksNext>
|
|
<PlatformTargetFrameworksNext Condition="!$(IsLinux)">$(TFMNext)-ios$(TPViOSNext);$(TFMNext)-maccatalyst$(TPVMacCatalystNext);$(TFMNext)-android$(TPVAndroidNext)</PlatformTargetFrameworksNext>
|
|
<PlatformTargetFrameworksNext Condition="!$(IsLinux) and $(IsNetTizenSupported)">$(PlatformTargetFrameworksNext);$(TFMNext)-tizen$(TPVTizenNext)</PlatformTargetFrameworksNext>
|
|
<PlatformTargetFrameworksNext Condition="!$(IsLinux) and $(IsNetTVOSSupported)">$(PlatformTargetFrameworksNext);$(TFMNext)-tvos$(TPVtvOSNext)</PlatformTargetFrameworksNext>
|
|
<PlatformTargetFrameworksNext Condition="!$(IsLinux) and $(IsNetMacOSSupported)">$(PlatformTargetFrameworksNext);$(TFMNext)-macos$(TPVmacOSNext)</PlatformTargetFrameworksNext>
|
|
<PlatformTargetFrameworksNext Condition="$(IsWindows)">$(PlatformTargetFrameworksNext);$(TFMNext)-windows$(TPVWindowsNext)</PlatformTargetFrameworksNext>
|
|
</PropertyGroup>
|
|
<PropertyGroup>
|
|
<BasicTargetFrameworks>$(BasicTargetFrameworksCurrent);$(BasicTargetFrameworksPrevious);$(BasicTargetFrameworksNext)</BasicTargetFrameworks>
|
|
<PlatformTargetFrameworks>$(PlatformTargetFrameworksCurrent);$(PlatformTargetFrameworksPrevious);$(PlatformTargetFrameworksNext)</PlatformTargetFrameworks>
|
|
<AllTargetFrameworks>$(BasicTargetFrameworks);$(PlatformTargetFrameworks)</AllTargetFrameworks>
|
|
</PropertyGroup>
|
|
|
|
<!-- Windows TFMs -->
|
|
<PropertyGroup>
|
|
<WindowsTargetFrameworksCurrent Condition="$(IsWindows)">$(TFMCurrent)-windows$(TPVWindowsCurrent)</WindowsTargetFrameworksCurrent>
|
|
<WindowsTargetFrameworksPrevious Condition="$(IsWindows) and '$(TFMPrevious)' != ''">$(TFMPrevious)-windows$(TPVWindowsPrevious)</WindowsTargetFrameworksPrevious>
|
|
<WindowsTargetFrameworksNext Condition="$(IsWindows) and '$(TFMNext)' != ''">$(TFMNext)-windows$(TPVWindowsNext)</WindowsTargetFrameworksNext>
|
|
<WindowsTargetFrameworks Condition="$(IsWindows)">$(WindowsTargetFrameworksCurrent);$(WindowsTargetFrameworksPrevious);$(WindowsTargetFrameworksNext)</WindowsTargetFrameworks>
|
|
</PropertyGroup>
|
|
|
|
<!-- Windows Desktop TFMs -->
|
|
<PropertyGroup>
|
|
<WindowsDesktopTargetFrameworks></WindowsDesktopTargetFrameworks>
|
|
<WindowsDesktopTargetFrameworks Condition="$(IsWindows)">$(WindowsDesktopTargetFrameworks);$(WindowsTargetFrameworks)</WindowsDesktopTargetFrameworks>
|
|
</PropertyGroup>
|
|
|
|
<!-- Workaround for MAUI https://github.com/dotnet/maui/pull/24263 -->
|
|
<PropertyGroup>
|
|
<TPViOSCurrent></TPViOSCurrent>
|
|
<TPVMacCatalystCurrent></TPVMacCatalystCurrent>
|
|
<TPVtvOSCurrent></TPVtvOSCurrent>
|
|
<TPVmacOSCurrent></TPVmacOSCurrent>
|
|
<TPVTizenCurrent></TPVTizenCurrent>
|
|
</PropertyGroup>
|
|
|
|
<!-- .NET MAUI -->
|
|
<PropertyGroup>
|
|
<MauiTargetFrameworksPlatformCurrent>$(TFMCurrent)-ios$(TPViOSCurrent);$(TFMCurrent)-maccatalyst$(TPVMacCatalystCurrent);$(TFMCurrent)-android$(TPVAndroidCurrent)</MauiTargetFrameworksPlatformCurrent>
|
|
<MauiTargetFrameworksPlatformCurrent Condition="$(IsNetTizenSupported)">$(MauiTargetFrameworksPlatformCurrent);$(TFMCurrent)-tizen$(TPVTizenCurrent)</MauiTargetFrameworksPlatformCurrent>
|
|
<MauiTargetFrameworksPlatformCurrent Condition="$(IsWindows)">$(MauiTargetFrameworksPlatformCurrent);$(TFMCurrent)-windows$(TPVWindowsCurrent)</MauiTargetFrameworksPlatformCurrent>
|
|
<MauiTargetFrameworksCurrent>$(TFMCurrent);$(MauiTargetFrameworksPlatformCurrent)</MauiTargetFrameworksCurrent>
|
|
</PropertyGroup>
|
|
<PropertyGroup Condition="'$(TFMNext)' != ''">
|
|
<SkipValidateMauiImplicitPackageReferences>true</SkipValidateMauiImplicitPackageReferences>
|
|
<MauiTargetFrameworksPlatformNext>$(TFMNext)-ios$(TPViOSNext);$(TFMNext)-maccatalyst$(TPVMacCatalystNext);$(TFMNext)-android$(TPVAndroidNext)</MauiTargetFrameworksPlatformNext>
|
|
<MauiTargetFrameworksPlatformNext Condition="$(IsNetTizenSupported)">$(MauiTargetFrameworksPlatformNext);$(TFMNext)-tizen$(TPVTizenNext)</MauiTargetFrameworksPlatformNext>
|
|
<MauiTargetFrameworksPlatformNext Condition="$(IsWindows)">$(MauiTargetFrameworksPlatformNext);$(TFMNext)-windows$(TPVWindowsNext)</MauiTargetFrameworksPlatformNext>
|
|
<MauiTargetFrameworksNext>$(TFMNext);$(MauiTargetFrameworksPlatformNext)</MauiTargetFrameworksNext>
|
|
</PropertyGroup>
|
|
<PropertyGroup>
|
|
<MauiTargetFrameworks>$(MauiTargetFrameworksCurrent);$(MauiTargetFrameworksNext)</MauiTargetFrameworks>
|
|
</PropertyGroup>
|
|
|
|
<!-- Undo MAUI workaround https://github.com/dotnet/maui/pull/24263 -->
|
|
<PropertyGroup>
|
|
<TPViOSCurrent>17.0</TPViOSCurrent>
|
|
<TPVMacCatalystCurrent>17.0</TPVMacCatalystCurrent>
|
|
<TPVtvOSCurrent>17.0</TPVtvOSCurrent>
|
|
<TPVmacOSCurrent>14.0</TPVmacOSCurrent>
|
|
<TPVTizenCurrent>7.0</TPVTizenCurrent>
|
|
</PropertyGroup>
|
|
|
|
<!-- .NET MAUI Apps (no TPV) -->
|
|
<PropertyGroup>
|
|
<MauiTargetFrameworksAppCurrent>$(TFMCurrent)-ios;$(TFMCurrent)-maccatalyst;$(TFMCurrent)-android</MauiTargetFrameworksAppCurrent>
|
|
<MauiTargetFrameworksAppCurrent Condition="$(IsNetTizenSupported)">$(MauiTargetFrameworksAppCurrent);$(TFMCurrent)-tizen</MauiTargetFrameworksAppCurrent>
|
|
<MauiTargetFrameworksAppCurrent Condition="$(IsWindows)">$(MauiTargetFrameworksAppCurrent);$(TFMCurrent)-windows$(TPVWindowsCurrent)</MauiTargetFrameworksAppCurrent>
|
|
</PropertyGroup>
|
|
<PropertyGroup Condition="'$(TFMNext)' != ''">
|
|
<MauiTargetFrameworksAppNext>$(TFMNext)-ios;$(TFMNext)-maccatalyst;$(TFMNext)-android</MauiTargetFrameworksAppNext>
|
|
<MauiTargetFrameworksAppNext Condition="$(IsNetTizenSupported)">$(MauiTargetFrameworksAppNext);$(TFMNext)-tizen</MauiTargetFrameworksAppNext>
|
|
<MauiTargetFrameworksAppNext Condition="$(IsWindows)">$(MauiTargetFrameworksAppNext);$(TFMNext)-windows$(TPVWindowsNext)</MauiTargetFrameworksAppNext>
|
|
</PropertyGroup>
|
|
|
|
<!-- Uno Platform -->
|
|
<PropertyGroup>
|
|
<UnoTargetFrameworksReference>$(TFMCurrent)</UnoTargetFrameworksReference>
|
|
<UnoTargetFrameworksReference Condition="'$(TFMNext)' != ''">$(UnoTargetFrameworksReference);$(TFMNext)</UnoTargetFrameworksReference>
|
|
<UnoTargetFrameworksCurrent Condition="!$(IsLinux)">$(TFMCurrent)-ios$(TPViOSCurrent);$(TFMCurrent)-maccatalyst$(TPVMacCatalystCurrent);$(TFMCurrent)-android$(TPVAndroidCurrent);$(TFMCurrent)-macos$(TPVmacOSCurrent)</UnoTargetFrameworksCurrent>
|
|
<UnoTargetFrameworksNext Condition="!$(IsLinux) and '$(TFMNext)' != ''">$(TFMNext)-ios$(TPViOSNext);$(TFMNext)-maccatalyst$(TPVMacCatalystNext);$(TFMNext)-android$(TPVAndroidNext);$(TFMNext)-macos$(TPVmacOSNext)</UnoTargetFrameworksNext>
|
|
<UnoTargetFrameworks>$(UnoTargetFrameworksReference);$(UnoTargetFrameworksCurrent);$(UnoTargetFrameworksNext);$(WindowsTargetFrameworks)</UnoTargetFrameworks>
|
|
</PropertyGroup>
|
|
|
|
<PropertyGroup>
|
|
<!-- Setup debug symbols -->
|
|
<DebugType>portable</DebugType>
|
|
<DebugSymbols>true</DebugSymbols>
|
|
<!-- We have a lot of unsafe code -->
|
|
<AllowUnsafeBlocks>True</AllowUnsafeBlocks>
|
|
<!-- We don't use the build output so don't do extra work -->
|
|
<ProduceReferenceAssembly>false</ProduceReferenceAssembly>
|
|
</PropertyGroup>
|
|
|
|
<PropertyGroup Condition=" '$(TF_BUILD)' == 'true' or '$(GITHUB_ACTIONS)' == 'true' or '$(CI)' == 'true' ">
|
|
<ContinuousIntegrationBuild>true</ContinuousIntegrationBuild>
|
|
</PropertyGroup>
|
|
|
|
<PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
|
|
<DefineConstants>$(DefineConstants);THROW_OBJECT_EXCEPTIONS</DefineConstants>
|
|
</PropertyGroup>
|
|
|
|
<PropertyGroup Condition=" '$(TargetFramework)' == '$(TFMCurrent)' or ('$(TargetFramework)' == '$(TFMPrevious)' and '$(TFMPrevious)' != '') or ('$(TargetFramework)' == '$(TFMNext)' and '$(TFMNext)' != '') ">
|
|
<DefineConstants>$(DefineConstants);NETSTANDARD</DefineConstants>
|
|
</PropertyGroup>
|
|
|
|
<PropertyGroup Condition="$(TargetFramework.Contains('-'))">
|
|
<DefineConstants>$(DefineConstants);NETPLATFORM</DefineConstants>
|
|
</PropertyGroup>
|
|
|
|
<PropertyGroup Condition="$(TargetFramework.StartsWith('net4'))">
|
|
<DependsOnNETStandard>true</DependsOnNETStandard>
|
|
</PropertyGroup>
|
|
|
|
<!-- HACK: WinUI seems to have issues without this -->
|
|
<PropertyGroup>
|
|
<GenerateLibraryLayout>true</GenerateLibraryLayout>
|
|
<DisableEmbeddedXbf>false</DisableEmbeddedXbf>
|
|
<WindowsSdkPackageVersion>10.0.19041.27</WindowsSdkPackageVersion>
|
|
</PropertyGroup>
|
|
|
|
<!-- platform version number information -->
|
|
<PropertyGroup Condition="$(TargetFramework.Contains('-ios'))">
|
|
<SupportedOSPlatformVersion>10.0</SupportedOSPlatformVersion>
|
|
<TargetPlatformMinVersion>10.0</TargetPlatformMinVersion>
|
|
</PropertyGroup>
|
|
<PropertyGroup Condition="$(TargetFramework.Contains('-tvos'))">
|
|
<SupportedOSPlatformVersion>10.0</SupportedOSPlatformVersion>
|
|
<TargetPlatformMinVersion>10.0</TargetPlatformMinVersion>
|
|
</PropertyGroup>
|
|
<PropertyGroup Condition="$(TargetFramework.Contains('-maccatalyst'))">
|
|
<SupportedOSPlatformVersion>13.1</SupportedOSPlatformVersion>
|
|
<TargetPlatformMinVersion>13.1</TargetPlatformMinVersion>
|
|
</PropertyGroup>
|
|
<PropertyGroup Condition="$(TargetFramework.Contains('-macos'))">
|
|
<SupportedOSPlatformVersion>10.14</SupportedOSPlatformVersion>
|
|
<TargetPlatformMinVersion>10.14</TargetPlatformMinVersion>
|
|
</PropertyGroup>
|
|
<PropertyGroup Condition="$(TargetFramework.Contains('-android'))">
|
|
<SupportedOSPlatformVersion>21.0</SupportedOSPlatformVersion>
|
|
<TargetPlatformMinVersion>21.0</TargetPlatformMinVersion>
|
|
</PropertyGroup>
|
|
<PropertyGroup Condition="$(TargetFramework.Contains('-windows10'))">
|
|
<SupportedOSPlatformVersion>10.0.17763.0</SupportedOSPlatformVersion>
|
|
<TargetPlatformMinVersion>10.0.17763.0</TargetPlatformMinVersion>
|
|
</PropertyGroup>
|
|
<PropertyGroup Condition="$(TargetFramework.Contains('-tizen'))">
|
|
<SupportedOSPlatformVersion>6.5</SupportedOSPlatformVersion>
|
|
<TargetPlatformMinVersion>6.5</TargetPlatformMinVersion>
|
|
</PropertyGroup>
|
|
|
|
<Target Name="PrintRID"
|
|
BeforeTargets="BeforeBuild">
|
|
<Message Text="Operating System: Windows"
|
|
Condition=" '$(IsWindows)' == 'true' " />
|
|
<Message Text="Operating System: macOS"
|
|
Condition=" '$(IsMacOS)' == 'true' " />
|
|
<Message Text="Operating System: Linux"
|
|
Condition=" '$(IsLinux)' == 'true' " />
|
|
|
|
<Message Text="Workload versions: Android ($(DotNetAndroidWorkloadInstalledVersion)), iOS ($(DotNetIOSWorkloadInstalledVersion)), macOS ($(DotNetMacOSWorkloadInstalledVersion)), tvOS ($(DotNetTVOSWorkloadInstalledVersion)), Tizen ($(DotNetTizenWorkloadInstalledVersion)), MAUI ($(DotNetMauiWorkloadInstalledVersion))" />
|
|
|
|
<Message Text="Workloads installed: Android ($(DotNetAndroidWorkloadIsInstalled)), iOS ($(DotNetIOSWorkloadIsInstalled)), macOS ($(DotNetMacOSWorkloadIsInstalled)), tvOS ($(DotNetTVOSWorkloadIsInstalled)), Tizen ($(DotNetTizenWorkloadIsInstalled)), MAUI ($(DotNetMauiWorkloadIsInstalled))" />
|
|
|
|
<Error Text="There appears to be a problem selecting the operating system. IsWindows='$(IsWindows)', IsMacOS='$(IsMacOS)', IsLinux='$(IsLinux)'"
|
|
Condition=" !$(IsWindows) and !$(IsMacOS) and !$(IsLinux) " />
|
|
</Target>
|
|
|
|
<Import Project="$(MSBuildThisFileDirectory)SkiaSharp.NuGet.props" />
|
|
|
|
</Project>
|