<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <OutputType>Exe</OutputType>
    <TargetFramework>net8.0</TargetFramework>
    <ServerGarbageCollection>true</ServerGarbageCollection>
    <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
    <IsPackable>true</IsPackable>
    <PackAsTool>true</PackAsTool>
    <InvariantGlobalization>true</InvariantGlobalization>

    <NeutralLanguage>en-US</NeutralLanguage>
    <GenerateAssemblyVersionAttribute>False</GenerateAssemblyVersionAttribute>
    <GenerateAssemblyFileVersionAttribute>False</GenerateAssemblyFileVersionAttribute>
    <GenerateAssemblyInformationalVersionAttribute>False</GenerateAssemblyInformationalVersionAttribute>
    <AssemblyName>ilspycmd</AssemblyName>
    <ToolCommandName>ilspycmd</ToolCommandName>
    <Description>Command-line decompiler using the ILSpy decompilation engine</Description>
    <PackageReadmeFile>README.md</PackageReadmeFile>
    <PackageVersion>8.0.0.0-noversion</PackageVersion>
    <Copyright>Copyright 2011-$([System.DateTime]::Now.Year) AlphaSierraPapa</Copyright>
    <PackageProjectUrl>https://github.com/icsharpcode/ILSpy/</PackageProjectUrl>
    <PackageLicenseExpression>MIT</PackageLicenseExpression>
    <PackageIcon>ILSpyCmdNuGetPackageIcon.png</PackageIcon>
    <RepositoryUrl>https://github.com/icsharpcode/ILSpy/</RepositoryUrl>
    <Company>ic#code</Company>
    <GeneratePackageOnBuild>true</GeneratePackageOnBuild>
    <Authors>ILSpy Team</Authors>
  </PropertyGroup>

  <ItemGroup>
    <None Include="README.md" Pack="true" PackagePath="\" />
  </ItemGroup>
  
  <!-- https://devblogs.microsoft.com/nuget/enable-repeatable-package-restores-using-a-lock-file/ -->
  <PropertyGroup>
    <RestorePackagesWithLockFile>true</RestorePackagesWithLockFile>
	<RestoreLockedMode Condition="'$(GITHUB_ACTIONS)' == 'true'">true</RestoreLockedMode>
  </PropertyGroup>

  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
    <TreatWarningsAsErrors>false</TreatWarningsAsErrors>
    <WarningsAsErrors>NU1605</WarningsAsErrors>
  </PropertyGroup>

  <ItemGroup>
    <None Include="ILSpyCmdNuGetPackageIcon.png" Pack="true" PackagePath="\" />
  </ItemGroup>

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

  <ItemGroup>
    <PackageReference Include="McMaster.Extensions.Hosting.CommandLine" />
    <PackageReference Include="Microsoft.Extensions.Hosting" />
    <PackageReference Include="NuGet.Protocol" />
  </ItemGroup>

  <Target Name="ILSpyUpdateAssemblyInfo" AfterTargets="ResolveProjectReferences">
    <ReadLinesFromFile ContinueOnError="true" File="..\VERSION">
      <Output TaskParameter="Lines" PropertyName="PackageVersion" />
    </ReadLinesFromFile>
  </Target>

</Project>