<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <TargetFramework>net10.0</TargetFramework>
    <Nullable>enable</Nullable>
    <ImplicitUsings>enable</ImplicitUsings>
    <IsPackable>false</IsPackable>
    <IsTestProject>true</IsTestProject>
    <!-- Suppress SDK auto-generated AssemblyInfo to avoid CS0579 collisions
         with hand-checked-in Properties/AssemblyInfo.cs in consumer e2e dirs. -->
    <GenerateAssemblyInfo>false</GenerateAssemblyInfo>
    <!-- Enable native asset resolution for P/Invoke. Detect platform + arch at build time. -->
    <UseRuntimeIdentifier>true</UseRuntimeIdentifier>
    <RuntimeIdentifier Condition="$([System.Runtime.InteropServices.RuntimeInformation]::IsOSPlatform($([System.Runtime.InteropServices.OSPlatform]::OSX))) And '$([System.Runtime.InteropServices.RuntimeInformation]::OSArchitecture)' == 'X64'">osx-x64</RuntimeIdentifier>
    <RuntimeIdentifier Condition="$([System.Runtime.InteropServices.RuntimeInformation]::IsOSPlatform($([System.Runtime.InteropServices.OSPlatform]::OSX))) And '$([System.Runtime.InteropServices.RuntimeInformation]::OSArchitecture)' == 'Arm64'">osx-arm64</RuntimeIdentifier>
    <RuntimeIdentifier Condition="$([System.Runtime.InteropServices.RuntimeInformation]::IsOSPlatform($([System.Runtime.InteropServices.OSPlatform]::Linux))) And '$([System.Runtime.InteropServices.RuntimeInformation]::OSArchitecture)' == 'X64'">linux-x64</RuntimeIdentifier>
    <RuntimeIdentifier Condition="$([System.Runtime.InteropServices.RuntimeInformation]::IsOSPlatform($([System.Runtime.InteropServices.OSPlatform]::Linux))) And '$([System.Runtime.InteropServices.RuntimeInformation]::OSArchitecture)' == 'Arm64'">linux-arm64</RuntimeIdentifier>
    <RuntimeIdentifier Condition="$([System.Runtime.InteropServices.RuntimeInformation]::IsOSPlatform($([System.Runtime.InteropServices.OSPlatform]::Windows))) And '$([System.Runtime.InteropServices.RuntimeInformation]::OSArchitecture)' == 'X64'">win-x64</RuntimeIdentifier>
    <RuntimeIdentifier Condition="$([System.Runtime.InteropServices.RuntimeInformation]::IsOSPlatform($([System.Runtime.InteropServices.OSPlatform]::Windows))) And '$([System.Runtime.InteropServices.RuntimeInformation]::OSArchitecture)' == 'Arm64'">win-arm64</RuntimeIdentifier>
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="Microsoft.NET.Test.Sdk" Version="{{ microsoft_net_test_sdk_version }}" />
    <PackageReference Include="xunit" Version="{{ xunit_version }}" />
    <PackageReference Include="xunit.runner.visualstudio" Version="{{ xunit_runner_version }}" />
{% if extras_block %}
{{ extras_block }}
{% endif %}
  </ItemGroup>

  <ItemGroup>
{{ pkg_ref }}
  </ItemGroup>

  <ItemGroup>
    <None Include="../../packages/csharp/{{ namespace }}/runtimes/osx-x64/native/*"
          Condition="$([System.Runtime.InteropServices.RuntimeInformation]::IsOSPlatform($([System.Runtime.InteropServices.OSPlatform]::OSX))) And '$([System.Runtime.InteropServices.RuntimeInformation]::OSArchitecture)' == 'X64'"
          CopyToOutputDirectory="PreserveNewest"
          Link="%(Filename)%(Extension)" />
    <None Include="../../packages/csharp/{{ namespace }}/runtimes/osx-arm64/native/*"
          Condition="$([System.Runtime.InteropServices.RuntimeInformation]::IsOSPlatform($([System.Runtime.InteropServices.OSPlatform]::OSX))) And '$([System.Runtime.InteropServices.RuntimeInformation]::OSArchitecture)' == 'Arm64'"
          CopyToOutputDirectory="PreserveNewest"
          Link="%(Filename)%(Extension)" />
    <None Include="../../packages/csharp/{{ namespace }}/runtimes/linux-x64/native/*"
          Condition="$([System.Runtime.InteropServices.RuntimeInformation]::IsOSPlatform($([System.Runtime.InteropServices.OSPlatform]::Linux))) And '$([System.Runtime.InteropServices.RuntimeInformation]::OSArchitecture)' == 'X64'"
          CopyToOutputDirectory="PreserveNewest"
          Link="%(Filename)%(Extension)" />
    <None Include="../../packages/csharp/{{ namespace }}/runtimes/linux-arm64/native/*"
          Condition="$([System.Runtime.InteropServices.RuntimeInformation]::IsOSPlatform($([System.Runtime.InteropServices.OSPlatform]::Linux))) And '$([System.Runtime.InteropServices.RuntimeInformation]::OSArchitecture)' == 'Arm64'"
          CopyToOutputDirectory="PreserveNewest"
          Link="%(Filename)%(Extension)" />
    <None Include="../../packages/csharp/{{ namespace }}/runtimes/win-x64/native/*"
          Condition="$([System.Runtime.InteropServices.RuntimeInformation]::IsOSPlatform($([System.Runtime.InteropServices.OSPlatform]::Windows))) And '$([System.Runtime.InteropServices.RuntimeInformation]::OSArchitecture)' == 'X64'"
          CopyToOutputDirectory="PreserveNewest"
          Link="%(Filename)%(Extension)" />
    <None Include="../../packages/csharp/{{ namespace }}/runtimes/win-arm64/native/*"
          Condition="$([System.Runtime.InteropServices.RuntimeInformation]::IsOSPlatform($([System.Runtime.InteropServices.OSPlatform]::Windows))) And '$([System.Runtime.InteropServices.RuntimeInformation]::OSArchitecture)' == 'Arm64'"
          CopyToOutputDirectory="PreserveNewest"
          Link="%(Filename)%(Extension)" />
  </ItemGroup>
</Project>
