<Project Sdk="Microsoft.NET.Sdk">
    <PropertyGroup>
        <OutputType>WinExe</OutputType>
        <TargetFramework>net8.0</TargetFramework>
        <Nullable>enable</Nullable>
        <BuiltInComInteropSupport>true</BuiltInComInteropSupport>
        <!-- Uncomment below to enable Native AOT compilation-->
        <!--
        <PublishAot>true</PublishAot>
        <IncludeNativeLibrariesForSelfExtract>true</IncludeNativeLibrariesForSelfExtract>
        -->
    </PropertyGroup>

    <PropertyGroup Condition="$([MSBuild]::IsTargetFrameworkCompatible('$(TargetFramework)', 'net8.0'))">
        <IsTrimmable>true</IsTrimmable>
        <PublishTrimmed>true</PublishTrimmed>
    </PropertyGroup>

    <PropertyGroup>
        <ApplicationManifest>app.manifest</ApplicationManifest>
    </PropertyGroup>

    <ItemGroup>
        <TrimmerRootDescriptor Include="Roots.xml" />
    </ItemGroup>

    <ItemGroup>
        <PackageReference Include="Avalonia.Desktop" Version="$(AvaloniaVersion)" />
        <!--Condition below is needed to remove Avalonia.Diagnostics package from build output in Release configuration.-->
        <PackageReference Condition="'$(Configuration)' == 'Debug'" Include="Avalonia.Diagnostics" Version="$(AvaloniaVersion)" />
        <PackageReference Include="Avalonia.LinuxFramebuffer" Version="$(AvaloniaVersion)" />
    </ItemGroup>

    <ItemGroup>
        <ProjectReference Include="..\Semi.Avalonia.Demo\Semi.Avalonia.Demo.csproj" />
    </ItemGroup>
</Project>
