-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathServerHub.csproj
More file actions
61 lines (52 loc) · 2.39 KB
/
Copy pathServerHub.csproj
File metadata and controls
61 lines (52 loc) · 2.39 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net10.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
<RootNamespace>ServerHub</RootNamespace>
<!-- Single-file self-contained publish -->
<PublishSingleFile>true</PublishSingleFile>
<SelfContained>true</SelfContained>
<!-- Trimming disabled for local dev - CI overrides with -p:PublishTrimmed=true for x64 -->
<PublishTrimmed>false</PublishTrimmed>
<IncludeNativeLibrariesForSelfExtract>true</IncludeNativeLibrariesForSelfExtract>
</PropertyGroup>
<ItemGroup>
<!-- YAML configuration -->
<PackageReference Include="YamlDotNet" Version="18.0.0" />
<!-- Command line parsing - System.CommandLine for AOT compatibility -->
<PackageReference Include="System.CommandLine" Version="2.0.8" />
<!-- SQLite database -->
<PackageReference Include="Microsoft.Data.Sqlite" Version="10.0.8" />
<!-- SQLite native bundle for single-file - embeds native library -->
<PackageReference Include="SQLitePCLRaw.bundle_e_sqlite3" Version="3.0.3" />
</ItemGroup>
<!-- Local development: use project reference if available -->
<ItemGroup Condition="Exists('../ConsoleEx/SharpConsoleUI/SharpConsoleUI.csproj')">
<ProjectReference Include="../ConsoleEx/SharpConsoleUI/SharpConsoleUI.csproj" />
</ItemGroup>
<!-- Production/CI: use NuGet package -->
<ItemGroup Condition="!Exists('../ConsoleEx/SharpConsoleUI/SharpConsoleUI.csproj')">
<PackageReference Include="SharpConsoleUI" Version="2.5.12" />
</ItemGroup>
<!-- Exclude generated files from auto-discovery, we'll add them explicitly -->
<ItemGroup>
<Compile Remove="src/Config/*.g.cs" />
<Compile Remove="tests/**/*.cs" />
</ItemGroup>
<!-- Generate bundled widget checksums before compilation -->
<Target Name="GenerateChecksums" BeforeTargets="CoreCompile">
<Exec Command="bash $(ProjectDir)generate-checksums.sh" />
<ItemGroup>
<Compile Include="src/Config/BundledWidgets.g.cs" />
</ItemGroup>
</Target>
<!-- Generate default config from config.yaml before compilation -->
<Target Name="GenerateDefaultConfig" BeforeTargets="CoreCompile">
<Exec Command="bash $(ProjectDir)generate-default-config.sh" />
<ItemGroup>
<Compile Include="src/Config/DefaultConfig.g.cs" />
</ItemGroup>
</Target>
</Project>