lsp-bjolang/BjolangLsp.fsproj

50 lines
2.3 KiB
XML
Raw Normal View History

<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net10.0</TargetFramework>
<NuGetAudit>false</NuGetAudit>
<!-- The compiler's tokenizer recurses once per token and needs tail
calls, which F# turns off in Debug by default. -->
<Tailcalls>true</Tailcalls>
<!-- Where the Bjolang checkout is, beside this one. The server runs the
compiler in-process, and the compiler finds the standard library
and the runtime assemblies by walking up from its own binary, which
here is in this project's bin. So the checkout's path is baked in,
and BJOLANG_HOME overrides it. -->
<BjolangHome>$([System.IO.Path]::GetFullPath('$(MSBuildThisFileDirectory)../Bjolang'))</BjolangHome>
<!-- The build asks git about the repository for Source Link, and the
SDK's git reader refuses a repository whose objects are SHA-256,
as this one's are. Nothing here is published with Source Link. -->
<EnableSourceControlManagerQueries>false</EnableSourceControlManagerQueries>
</PropertyGroup>
<ItemGroup>
<AssemblyMetadata Include="BjolangHome" Value="$(BjolangHome)" />
</ItemGroup>
<ItemGroup>
<Compile Include="Rpc.fs" />
<Compile Include="Project.fs" />
<Compile Include="Expansion.fs" />
<Compile Include="Check.fs" />
<Compile Include="Symbols.fs" />
<Compile Include="Scope.fs" />
<Compile Include="Hover.fs" />
<Compile Include="Completion.fs" />
<Compile Include="Program.fs" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="$(BjolangHome)/Bjolang.fsproj" />
<!-- The compiler excludes this assembly's runtime copy, and the
exclusion does not pass through a project reference. A copy next
to the server is what its load context answers with when ASP.NET
Core asks for the assembly, and an older one makes every type that
needs it fail to load: a project that names WebApplicationBuilder
then fails to check. See the compiler's Bjolang.fsproj. -->
<PackageReference Include="Microsoft.Extensions.DependencyInjection.Abstractions" Version="7.0.0" ExcludeAssets="runtime" />
</ItemGroup>
</Project>