Iceshrimp.NET/Directory.Build.props
2024-11-19 04:35:16 +01:00

56 lines
2.4 KiB
XML

<Project>
<!-- Target framework & language version -->
<PropertyGroup>
<TargetFramework>net9.0</TargetFramework>
<LangVersion>latest</LangVersion>
</PropertyGroup>
<!-- Common build options -->
<PropertyGroup>
<Nullable>enable</Nullable>
<ImplicitUsings>enable</ImplicitUsings>
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
<InvariantGlobalization>true</InvariantGlobalization>
<SatelliteResourceLanguages>none</SatelliteResourceLanguages>
</PropertyGroup>
<!-- Except low and medium severity vulnerable dependency warnings from TreatWarningsAsErrors, leaving high and critical severity ones intact -->
<PropertyGroup>
<WarningsNotAsErrors>$(WarningsNotAsErrors),NU1901,NU1902</WarningsNotAsErrors>
</PropertyGroup>
<!-- When DependencyVulnsAsError is not set, also suppress the remaining dependency vulnerability warnings -->
<PropertyGroup Condition="'$(DependencyVulnsAsError)' != 'true'">
<WarningsNotAsErrors>$(WarningsNotAsErrors),NU1903,NU1904</WarningsNotAsErrors>
</PropertyGroup>
<!-- Version metadata -->
<PropertyGroup>
<VersionPrefix>2024.1</VersionPrefix>
<VersionSuffix>beta4</VersionSuffix>
</PropertyGroup>
<ItemGroup>
<AssemblyMetadata Include="codename" Value="phenidate" />
<AssemblyMetadata Include="edition" Value="enterprise" />
</ItemGroup>
<!-- Embed debug info instead of generating PDBs in release configuration -->
<PropertyGroup Condition=" '$(Configuration)' == 'Release' ">
<DebugType>embedded</DebugType>
</PropertyGroup>
<!-- Don't copy blazor debug files to output directory in release configuration -->
<PropertyGroup Condition=" '$(Configuration)' == 'Release' ">
<BlazorWebAssemblyOmitDebugProxyOutput>true</BlazorWebAssemblyOmitDebugProxyOutput>
<PreserveCompilationContext>false</PreserveCompilationContext>
</PropertyGroup>
<!-- Enable Blazor AOT compilation when EnableAOT build flag is set -->
<PropertyGroup Condition="'$(EnableAOT)' == 'true'">
<RunAOTCompilation>true</RunAOTCompilation>
<EmccCompileOptimizationFlag>-O3</EmccCompileOptimizationFlag>
<EmccLinkOptimizationFlag>-O3</EmccLinkOptimizationFlag>
<WasmBitcodeCompileOptimizationFlag>-O3</WasmBitcodeCompileOptimizationFlag>
</PropertyGroup>
</Project>