chore(deps): update asf-ui digest to 28133ae
[ArchiSteamFarm.git] / Directory.Build.props
blob617935282a21d0ec16685bada0ce14d97de652f6
1 <Project>
2         <PropertyGroup>
3                 <Version>6.1.0.2</Version>
4         </PropertyGroup>
6         <PropertyGroup>
7                 <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
8                 <AnalysisMode>AllEnabledByDefault</AnalysisMode>
9                 <ApplicationIcon>../resources/ASF.ico</ApplicationIcon>
10                 <Authors>JustArchi</Authors>
11                 <CheckForOverflowUnderflow>true</CheckForOverflowUnderflow>
12                 <Company>JustArchiNET</Company>
13                 <Copyright>Copyright © 2015-$([System.DateTime]::UtcNow.Year) $(Company)</Copyright>
14                 <Description>ASF is a C# application with primary purpose of idling Steam cards from multiple accounts simultaneously.</Description>
15                 <Deterministic>true</Deterministic>
16                 <ErrorReport>none</ErrorReport>
17                 <LangVersion>latest</LangVersion>
18                 <ManagePackageVersionsCentrally>true</ManagePackageVersionsCentrally>
19                 <NeutralLanguage>en</NeutralLanguage>
20                 <NoWarn>CS1591</NoWarn>
21                 <Nullable>enable</Nullable>
22                 <PackageIcon>../resources/ASF.ico</PackageIcon>
23                 <PackageLicenseExpression>Apache-2.0</PackageLicenseExpression>
24                 <PackageProjectUrl>https://github.com/$(Company)/ArchiSteamFarm</PackageProjectUrl>
25                 <PackageReadmeFile>README.md</PackageReadmeFile>
26                 <PackageReleaseNotes>$(PackageProjectUrl)/releases</PackageReleaseNotes>
27                 <RepositoryBranch>main</RepositoryBranch>
28                 <RepositoryType>Git</RepositoryType>
29                 <RepositoryUrl>$(PackageProjectUrl).git</RepositoryUrl>
30                 <RollForward>LatestMajor</RollForward>
31                 <RuntimeIdentifiers>linux-arm;linux-arm64;linux-x64;osx-arm64;osx-x64;win-arm64;win-x64</RuntimeIdentifiers>
32                 <TargetFramework>net9.0</TargetFramework>
33                 <TargetLatestRuntimePatch>true</TargetLatestRuntimePatch>
34         </PropertyGroup>
36         <PropertyGroup Condition="'$(ASFVariant)' != ''">
37                 <DefineConstants>$(DefineConstants);ASF_VARIANT_$(ASFVariant.Replace('-', '_').ToUpperInvariant())</DefineConstants>
38         </PropertyGroup>
40         <PropertyGroup Condition="'$(PublishTrimmed)' == 'true'">
41                 <DefineConstants>$(DefineConstants);ASF_RUNTIME_TRIMMED</DefineConstants>
43                 <!-- Required for protobuf-net -->
44                 <_DefaultValueAttributeSupport>true</_DefaultValueAttributeSupport>
45         </PropertyGroup>
47         <!-- Default configuration for fast-debugging builds -->
48         <PropertyGroup Condition="'$(Configuration)' == 'DebugFast'">
49                 <AnalysisMode>AllDisabledByDefault</AnalysisMode>
50                 <DefineConstants>$(DefineConstants);DEBUG</DefineConstants>
51         </PropertyGroup>
53         <!-- Default configuration for release builds -->
54         <PropertyGroup Condition="'$(Configuration)' == 'Release'">
55                 <CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
56                 <DebugSymbols>false</DebugSymbols>
57                 <DebugType>none</DebugType>
58                 <TreatWarningsAsErrors>true</TreatWarningsAsErrors>
59                 <WarningsAsErrors />
60                 <WarningsNotAsErrors>CS8002,IL2026,IL2104,NU1901,NU1902,NU1903,NU1904</WarningsNotAsErrors>
61         </PropertyGroup>
63         <!-- Enable public signing -->
64         <PropertyGroup Condition="'$(Configuration)' == 'Release'">
65                 <AssemblyOriginatorKeyFile>../resources/ArchiSteamFarm.snk.pub</AssemblyOriginatorKeyFile>
66                 <DefineConstants>$(DefineConstants);ASF_SIGNED_BUILD</DefineConstants>
67                 <PublicSign>true</PublicSign>
68                 <SignAssembly>true</SignAssembly>
69         </PropertyGroup>
71         <!-- Private SNK signing, if provided with secret -->
72         <PropertyGroup Condition="'$(Configuration)' == 'Release' AND EXISTS('resources/ArchiSteamFarm.snk')">
73                 <AssemblyOriginatorKeyFile>../resources/ArchiSteamFarm.snk</AssemblyOriginatorKeyFile>
74                 <DefineConstants>$(DefineConstants);ASF_SIGNED_BUILD</DefineConstants>
75                 <PublicSign>false</PublicSign>
76                 <SignAssembly>true</SignAssembly>
77         </PropertyGroup>
79         <!-- Trimming functionality as described on https://learn.microsoft.com/dotnet/core/deploying/trimming/trimming-options -->
80         <PropertyGroup Condition="'$(Configuration)' == 'Release'">
81                 <DebuggerSupport>false</DebuggerSupport>
82                 <EnableUnsafeBinaryFormatterSerialization>false</EnableUnsafeBinaryFormatterSerialization>
83                 <EnableUnsafeUTF7Encoding>false</EnableUnsafeUTF7Encoding>
84                 <EventSourceSupport>false</EventSourceSupport>
85                 <HttpActivityPropagationSupport>false</HttpActivityPropagationSupport>
86                 <MetadataUpdaterSupport>false</MetadataUpdaterSupport>
87                 <StackTraceSupport>false</StackTraceSupport>
88                 <UseNativeHttpHandler>true</UseNativeHttpHandler>
89                 <TrimMode>partial</TrimMode>
90         </PropertyGroup>
91 </Project>