Roslyn Source generators are not supposed to access I/O. To get around this we have to use `AdditionalFiles` to give the analyzer access to read/load the schema files. To write the schema files we have to use a separate program altogether. - [X] Adds SerializationSchemaGenerator - [X] Splits out the SerializationGenerator code
51 lines
3.5 KiB
XML
51 lines
3.5 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<Project Sdk="Microsoft.NET.Sdk" ToolsVersion="Current">
|
|
<PropertyGroup>
|
|
<RootNamespace>Server</RootNamespace>
|
|
<AssemblyName>UOContent</AssemblyName>
|
|
<Product>ModernUO Content</Product>
|
|
<PublishDir>..\..\Distribution\Assemblies</PublishDir>
|
|
<OutDir>..\..\Distribution\Assemblies</OutDir>
|
|
<EmitCompilerGeneratedFiles>true</EmitCompilerGeneratedFiles>
|
|
<CompilerGeneratedFilesOutputPath>Generated</CompilerGeneratedFilesOutputPath>
|
|
</PropertyGroup>
|
|
<Target Name="CleanPub" AfterTargets="Clean">
|
|
<Message Text="Removing distribution assemblies..." />
|
|
<Delete Files="..\..\Distribution\Assemblies\Argon2.Bindings.dll" ContinueOnError="true" />
|
|
<Delete Files="..\..\Distribution\Assemblies\BouncyCastle.Crypto.dll" ContinueOnError="true" />
|
|
<Delete Files="..\..\Distribution\Assemblies\MailKit.dll" ContinueOnError="true" />
|
|
<Delete Files="..\..\Distribution\Assemblies\MimeKit.dll" ContinueOnError="true" />
|
|
<Delete Files="..\..\Distribution\Assemblies\Microsoft.Toolkit.HighPerformance.dll" ContinueOnError="true" />
|
|
<Delete Files="..\..\Distribution\Assemblies\System.Security.Cryptography.Pkcs.dll" ContinueOnError="true" />
|
|
<Delete Files="..\..\Distribution\Assemblies\$(AssemblyName).dll" ContinueOnError="true" />
|
|
<Delete Files="..\..\Distribution\Assemblies\ref\$(AssemblyName).dll" ContinueOnError="true" />
|
|
<Delete Files="..\..\Distribution\Assemblies\$(AssemblyName).deps.json" ContinueOnError="true" />
|
|
<Delete Files="..\..\Distribution\Assemblies\$(AssemblyName).pdb" ContinueOnError="true" />
|
|
<Delete Files="..\..\Distribution\Assemblies\libargon2.dll" ContinueOnError="true" />
|
|
<Delete Files="..\..\Distribution\Assemblies\libargon2.dylib" ContinueOnError="true" />
|
|
<Delete Files="..\..\Distribution\Assemblies\libargon2.so" ContinueOnError="true" />
|
|
<Delete Files="..\..\Distribution\Assemblies\zlib.dll" ContinueOnError="true" />
|
|
<Delete Files="..\..\Distribution\Assemblies\libz.dylib" ContinueOnError="true" />
|
|
<Delete Files="..\..\Distribution\Assemblies\libz.so" ContinueOnError="true" />
|
|
<Delete Files="..\..\Distribution\Assemblies\ZLib.Bindings.dll" ContinueOnError="true" />
|
|
<RemoveDir Directories="Generated" />
|
|
</Target>
|
|
<ItemGroup>
|
|
<ProjectReference Include="..\Server\Server.csproj" Private="false" PrivateAssets="All" IncludeAssets="None">
|
|
<IncludeInPackage>false</IncludeInPackage>
|
|
</ProjectReference>
|
|
<PackageReference Include="MailKit" Version="2.12.0" />
|
|
<PackageReference Include="Microsoft.Toolkit.HighPerformance" Version="7.0.2" />
|
|
<PackageReference Include="Zlib.Bindings" Version="1.5.0" />
|
|
<PackageReference Include="Argon2.Bindings" Version="1.9.1" />
|
|
</ItemGroup>
|
|
<ItemGroup>
|
|
<AdditionalFiles Include="Migrations/*.v*.json" />
|
|
</ItemGroup>
|
|
<!-- <Target Name="GenerateMigrationSchemas" AfterTargets="AfterBuild">-->
|
|
<!-- <Message Importance="high" Text="Building serialization schema generator" />-->
|
|
<!-- <Exec Command="dotnet build -c Release $(ProjectDir)../SerializationSchemaGenerator/SerializationSchemaGenerator.csproj" />-->
|
|
<!-- <Message Importance="high" Text="Generating serialization schemas" />-->
|
|
<!-- <Exec Command="dotnet $(ProjectDir)../SerializationSchemaGenerator/Output/SerializationSchemaGenerator.dll $(ProjectDir)../../ModernUO.sln" />-->
|
|
<!-- </Target>-->
|
|
</Project>
|