Plugin engines (Opus55, Qwen, Terra) each add two projects at the repo root, and more are coming; at a dozen they would outnumber the core projects. They are also a different kind of thing: out-of-solution, runtime-loaded plugins. Grouping them under Engines/ keeps the root readable. Engines/Directory.Build.props now holds the shared TFM, nullable and implicit-usings settings and the OpenNest.Engine reference, so a new engine's csproj is nearly empty. The tests/ compile exclusion lives in Directory.Build.targets because a removal in .props runs before the SDK adds its default Compile glob and has no effect. Build-Engines.ps1 replaces the per-README manual build-and-copy steps for deploying engines into the benchmark's runtime Engines/ folder. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
18 lines
694 B
XML
18 lines
694 B
XML
<Project Sdk="Microsoft.NET.Sdk">
|
|
<PropertyGroup>
|
|
<IsPackable>false</IsPackable>
|
|
<IsTestProject>true</IsTestProject>
|
|
</PropertyGroup>
|
|
<ItemGroup>
|
|
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.8.0" />
|
|
<PackageReference Include="xunit" Version="2.5.3" />
|
|
<PackageReference Include="xunit.runner.visualstudio" Version="2.5.3" />
|
|
</ItemGroup>
|
|
<ItemGroup>
|
|
<Using Include="Xunit" />
|
|
<ProjectReference Include="../OpenNest.Engine.Opus55.csproj" />
|
|
<!-- The benchmark's NestValidator is the arbiter the engine is scored by. -->
|
|
<ProjectReference Include="../../../OpenNest.Benchmark/OpenNest.Benchmark.csproj" />
|
|
</ItemGroup>
|
|
</Project>
|