-
Notifications
You must be signed in to change notification settings - Fork 1k
Expand file tree
/
Copy pathRuntime.csproj
More file actions
50 lines (43 loc) · 2.87 KB
/
Runtime.csproj
File metadata and controls
50 lines (43 loc) · 2.87 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
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<AssemblyName>SpacetimeDB.Runtime</AssemblyName>
<Version>2.2.0</Version>
<Title>SpacetimeDB Module Runtime</Title>
<Description>The SpacetimeDB Runtime implements the database runtime bindings for writing SpacetimeDB modules in C#.</Description>
</PropertyGroup>
<PropertyGroup>
<TargetFramework>net8.0</TargetFramework>
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
<RootNamespace>SpacetimeDB</RootNamespace>
<EmitCompilerGeneratedFiles>true</EmitCompilerGeneratedFiles>
<RestoreAdditionalProjectSources Condition="'$(EXPERIMENTAL_WASM_AOT)' == '1'">https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-experimental/nuget/v3/index.json;$(RestoreAdditionalProjectSources)</RestoreAdditionalProjectSources>
</PropertyGroup>
<ItemGroup>
<!-- Note: BSATN.Codegen is included in the BSATN.Runtime NuGet package. -->
<ProjectReference Include="../BSATN.Runtime/BSATN.Runtime.csproj" />
<!-- ...But we also need BSATN.Codegen to transform `[SpacetimeDB.Type]` usages in source of Runtime itself. -->
<!-- For that, it has to be included as an explicit private dependency. -->
<ProjectReference Include="../BSATN.Codegen/BSATN.Codegen.csproj" OutputItemType="Analyzer" ReferenceOutputAssembly="false" />
<!-- Codegen package must be built before this one so that it's included in NuGet Runtime package, but we don't depend on it. -->
<!-- (*not* with OutputItemType=analyzer because we don't want to use that source generator on source of Runtime itself) -->
<ProjectReference Include="../Codegen/Codegen.csproj" ReferenceOutputAssembly="false" />
</ItemGroup>
<!-- These must be explicit package dependencies so NuGet consumers can resolve the LLVM toolchain. -->
<ItemGroup Condition="'$(EXPERIMENTAL_WASM_AOT)' == '1'">
<PackageReference Include="Microsoft.DotNet.ILCompiler.LLVM" Version="8.0.0-*" IncludeAssets="All" />
<PackageReference Include="runtime.$(NETCoreSdkPortableRuntimeIdentifier).Microsoft.DotNet.ILCompiler.LLVM" Version="8.0.0-*" IncludeAssets="All" />
<PackageReference Include="Microsoft.NET.ILLink.Tasks" Version="8.0.0-*" Condition="'$(ILLinkTargetsPath)' == ''" IncludeAssets="All" />
</ItemGroup>
<ItemGroup>
<None Include="README.md" Pack="true" PackagePath="" />
<None Include="build/*" Pack="true" PackagePath="build" />
<None Include="bindings.c" Pack="true" PackagePath="" />
<None Include="driver.h" Pack="true" PackagePath="" />
<!-- We want all users who depends on Runtime to automatically get the Roslyn codegen component as well. -->
<None Include="../Codegen/bin/$(Configuration)/netstandard2.0/SpacetimeDB.Codegen.dll" Pack="true" PackagePath="analyzers/dotnet/cs" />
</ItemGroup>
<ItemGroup>
<UpToDateCheckInput Include="bindings.c" />
<UpToDateCheckInput Include="driver.h" />
</ItemGroup>
</Project>