<?xml version="1.0" encoding="utf-8"?>
<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <AssemblyName>ILSpy.ReadyToRun.Plugin</AssemblyName>
    <TargetFramework>net8.0-windows</TargetFramework>
    <RuntimeIdentifiers>win-x64;win-arm64</RuntimeIdentifiers>
    <GenerateAssemblyInfo>False</GenerateAssemblyInfo>
    <NeutralResourcesLanguage>en-US</NeutralResourcesLanguage>
    <CopyLocalLockFileAssemblies>true</CopyLocalLockFileAssemblies>
    <UseWpf>true</UseWpf>
    <IsPackable>false</IsPackable>
    <EnableWindowsTargeting>true</EnableWindowsTargeting>
  </PropertyGroup>

  <PropertyGroup Condition="'$(Configuration)' == 'Debug'">
    <DebugType>full</DebugType>
    <DebugSymbols>true</DebugSymbols>
    <CheckForOverflowUnderflow>True</CheckForOverflowUnderflow>
  </PropertyGroup>

  <PropertyGroup Condition="'$(Configuration)' == 'Release'">
    <DebugType>pdbonly</DebugType>
    <DebugSymbols>true</DebugSymbols>
  </PropertyGroup>

  <PropertyGroup>
    <OutputPath>..\ILSpy\bin\$(Configuration)\</OutputPath>
  </PropertyGroup>

  <ItemGroup>
    <ProjectReference Include="..\ILSpy\ILSpy.csproj" />
    <ProjectReference Include="..\ICSharpCode.Decompiler\ICSharpCode.Decompiler.csproj" />
  </ItemGroup>

  <ItemGroup>
    <PackageReference Include="Iced" />
    <PackageReference Include="ILCompiler.Reflection.ReadyToRun.Experimental" />
    <!-- ILCompiler.Reflection.ReadyToRun has dependencies on System.Reflection.Metadata and
         System.Runtime.CompilerServices.Unsafe. Because the AddIn compiles into ILSpy's output
         directory, we're at risk of overwriting our dependencies with different versions.
         So ensure NuGet uses consistent versions (from our packages.props) for these.
         -->
    <PackageReference Include="System.Reflection.Metadata" />
    <PackageReference Include="System.Runtime.CompilerServices.Unsafe" />
  </ItemGroup>

</Project>