<Project>
    <PropertyGroup>
        <CodeAnalysisRuleSet>../Custom.ruleset</CodeAnalysisRuleSet>
		    <AvaloniaVersion>11.0.11</AvaloniaVersion>
    </PropertyGroup>
    <ItemGroup>
        <PackageReference Include="StyleCop.Analyzers" Version="1.1.118" />
    </ItemGroup>
    <ItemGroup>
        <AdditionalFiles Include="../stylecop.json" />
    </ItemGroup>

  <PropertyGroup Condition="$([MSBuild]::IsOsPlatform('Windows')) AND '$([System.Runtime.InteropServices.RuntimeInformation]::OSArchitecture)' == 'X64'">
    <RuntimeIdentifier>win-x64</RuntimeIdentifier>
  </PropertyGroup>
  <PropertyGroup Condition="$([MSBuild]::IsOsPlatform('Windows')) AND '$([System.Runtime.InteropServices.RuntimeInformation]::OSArchitecture)' == 'Arm64'">
    <RuntimeIdentifier>win-arm64</RuntimeIdentifier>
  </PropertyGroup>
  <PropertyGroup Condition="$([MSBuild]::IsOsPlatform('Linux')) AND '$([System.Runtime.InteropServices.RuntimeInformation]::OSArchitecture)' == 'X64'">
    <RuntimeIdentifier>linux-x64</RuntimeIdentifier>
  </PropertyGroup>
  <PropertyGroup Condition="$([MSBuild]::IsOsPlatform('Linux')) AND '$([System.Runtime.InteropServices.RuntimeInformation]::OSArchitecture)' == 'Arm64'">
    <RuntimeIdentifier>linux-arm64</RuntimeIdentifier>
  </PropertyGroup>
  <PropertyGroup Condition="$([MSBuild]::IsOsPlatform('OSX')) AND '$([System.Runtime.InteropServices.RuntimeInformation]::OSArchitecture)' == 'X64'">
    <RuntimeIdentifier>osx-x64</RuntimeIdentifier>
  </PropertyGroup>
  <PropertyGroup Condition="$([MSBuild]::IsOsPlatform('OSX')) AND '$([System.Runtime.InteropServices.RuntimeInformation]::OSArchitecture)' == 'Arm64'">
    <RuntimeIdentifier>osx-arm64</RuntimeIdentifier>
  </PropertyGroup>

  <PropertyGroup Condition="'$(Platform)'=='x64'">
    <PlatformTarget>x64</PlatformTarget>
  </PropertyGroup>

  <PropertyGroup Condition="'$(Platform)'=='arm64'">
    <PlatformTarget>arm64</PlatformTarget>
  </PropertyGroup>

  <PropertyGroup Condition="'$(Configuration)'=='MSIX Debug'">
    <DebugType>full</DebugType>
    <DebugSymbols>true</DebugSymbols>
    <Optimize>false</Optimize>
    <DefineConstants>DEBUG;TRACE</DefineConstants>
  </PropertyGroup>

  <PropertyGroup Condition="'$(Configuration)'=='MSIX'">
    <DefineConstants>TRACE;RELEASE</DefineConstants>
    <Optimize>true</Optimize>
  </PropertyGroup>

  <PropertyGroup Condition="'$(Configuration)'=='Release'">
    <DefineConstants>TRACE;UPDATE</DefineConstants>
    <Optimize>true</Optimize>
  </PropertyGroup>

  <PropertyGroup Condition="'$(Configuration)'=='Debug'">
    <DebugType>full</DebugType>
    <DebugSymbols>true</DebugSymbols>
    <WarningLevel>0</WarningLevel>
    <DefineConstants>DEBUG;TRACE</DefineConstants>
  </PropertyGroup>

  <PropertyGroup Condition="'$(Configuration)'=='Steam'">
    <DefineConstants>TRACE;RELEASE;STEAM</DefineConstants>
    <Optimize>True</Optimize>
  </PropertyGroup>

  <PropertyGroup Condition="'$(Configuration)'=='DevSteam'">
    <DefineConstants>TRACE;RELEASE;STEAM</DefineConstants>
    <Optimize>True</Optimize>
  </PropertyGroup>

  <PropertyGroup Condition=" '$(Configuration)' == 'DevRelease' ">
    <DefineConstants>TRACE;UPDATE;RELEASE</DefineConstants>
    <Optimize>True</Optimize>
  </PropertyGroup>

  <PropertyGroup Condition="'$(RuntimeIdentifier)'=='win-x64'">
    <DefineConstants>WINDOWS</DefineConstants>
  </PropertyGroup>

  <PropertyGroup Condition="'$(RuntimeIdentifier)'=='win-arm64'">
    <DefineConstants>WINDOWS</DefineConstants>
  </PropertyGroup>

  <PropertyGroup Condition="'$(RuntimeIdentifier)'=='linux-x64'">
    <DefineConstants>LINUX</DefineConstants>
  </PropertyGroup>

  <PropertyGroup Condition="'$(RuntimeIdentifier)'=='linux-arm64'">
    <DefineConstants>LINUX</DefineConstants>
  </PropertyGroup>

  <PropertyGroup Condition="'$(RuntimeIdentifier)'=='osx-x64'">
    <DefineConstants>MACOS</DefineConstants>
  </PropertyGroup>

  <PropertyGroup Condition="'$(RuntimeIdentifier)'=='osx-arm64'">
    <DefineConstants>MACOS</DefineConstants>
  </PropertyGroup>
  
</Project>
