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

  <PropertyGroup>
    <TargetFramework>net48</TargetFramework>
    <OutputType>Exe</OutputType>
    <Nullable>disable</Nullable>
    <ImplicitUsings>disable</ImplicitUsings>
    <LangVersion>latest</LangVersion>
    <WarningsAsErrors></WarningsAsErrors>
    <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
    <Version>4.11.4.1</Version>
    <ApplicationIcon>app.ico</ApplicationIcon>
    <AssemblyName>TeslaLauncherService</AssemblyName>
    <RootNamespace>Tesla.Launcher.Service</RootNamespace>
  </PropertyGroup>

  <ItemGroup>
    <!-- Exclude the Agent source — it belongs to TeslaLauncherAgent.csproj only -->
    <Compile Remove="TeslaLauncherAgent.cs" />
  </ItemGroup>

  <ItemGroup>
    <!-- net48 reference assemblies + GAC refs the framework-dependent build needs. -->
    <PackageReference Include="Microsoft.NETFramework.ReferenceAssemblies" Version="1.0.3" PrivateAssets="all" />
    <Reference Include="System.IO.Compression" />
    <Reference Include="System.IO.Compression.FileSystem" />
    <Reference Include="System.ServiceProcess" />
  </ItemGroup>

  <ItemGroup>
    <!-- Generic host on .NET Framework: Microsoft.Extensions.Hosting(.WindowsServices)
         8.x ship a net462 target, so they run on net48 unchanged. -->
    <PackageReference Include="Microsoft.Extensions.Hosting"                  Version="8.*" />
    <PackageReference Include="Microsoft.Extensions.Hosting.WindowsServices"  Version="8.*" />
    <PackageReference Include="Microsoft.Extensions.Logging.EventLog"         Version="8.*" />
    <PackageReference Include="System.Text.Json"                              Version="8.0.5" />
    <!-- COM2 / PlasmaIO serial output in SecureConfig.cs -->
    <PackageReference Include="System.IO.Ports"                               Version="8.0.0" />
  </ItemGroup>

  <ItemGroup>
    <ProjectReference Include="..\Contract\Tesla.Contract.csproj" />
  </ItemGroup>

</Project>
