3 <Version>6.1.0.3</Version>
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>
35 <!-- TODO: Workaround for https://github.com/dotnet/runtime/issues/110000, evaluate if possible to remove later -->
36 <CETCompat>false</CETCompat>
39 <PropertyGroup Condition="'$(ASFVariant)' != ''">
40 <DefineConstants>$(DefineConstants);ASF_VARIANT_$(ASFVariant.Replace('-', '_').ToUpperInvariant())</DefineConstants>
43 <PropertyGroup Condition="'$(PublishTrimmed)' == 'true'">
44 <DefineConstants>$(DefineConstants);ASF_RUNTIME_TRIMMED</DefineConstants>
46 <!-- Required for protobuf-net -->
47 <_DefaultValueAttributeSupport>true</_DefaultValueAttributeSupport>
50 <!-- Default configuration for fast-debugging builds -->
51 <PropertyGroup Condition="'$(Configuration)' == 'DebugFast'">
52 <AnalysisMode>AllDisabledByDefault</AnalysisMode>
53 <DefineConstants>$(DefineConstants);DEBUG</DefineConstants>
56 <!-- Default configuration for release builds -->
57 <PropertyGroup Condition="'$(Configuration)' == 'Release'">
58 <CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
59 <DebugSymbols>false</DebugSymbols>
60 <DebugType>none</DebugType>
61 <TreatWarningsAsErrors>true</TreatWarningsAsErrors>
63 <WarningsNotAsErrors>CS8002,IL2026,IL2104,NU1901,NU1902,NU1903,NU1904</WarningsNotAsErrors>
66 <!-- Enable public signing -->
67 <PropertyGroup Condition="'$(Configuration)' == 'Release'">
68 <AssemblyOriginatorKeyFile>../resources/ArchiSteamFarm.snk.pub</AssemblyOriginatorKeyFile>
69 <DefineConstants>$(DefineConstants);ASF_SIGNED_BUILD</DefineConstants>
70 <PublicSign>true</PublicSign>
71 <SignAssembly>true</SignAssembly>
74 <!-- Private SNK signing, if provided with secret -->
75 <PropertyGroup Condition="'$(Configuration)' == 'Release' AND EXISTS('resources/ArchiSteamFarm.snk')">
76 <AssemblyOriginatorKeyFile>../resources/ArchiSteamFarm.snk</AssemblyOriginatorKeyFile>
77 <DefineConstants>$(DefineConstants);ASF_SIGNED_BUILD</DefineConstants>
78 <PublicSign>false</PublicSign>
79 <SignAssembly>true</SignAssembly>
82 <!-- Trimming functionality as described on https://learn.microsoft.com/dotnet/core/deploying/trimming/trimming-options -->
83 <PropertyGroup Condition="'$(Configuration)' == 'Release'">
84 <DebuggerSupport>false</DebuggerSupport>
85 <EnableUnsafeBinaryFormatterSerialization>false</EnableUnsafeBinaryFormatterSerialization>
86 <EnableUnsafeUTF7Encoding>false</EnableUnsafeUTF7Encoding>
87 <EventSourceSupport>false</EventSourceSupport>
88 <HttpActivityPropagationSupport>false</HttpActivityPropagationSupport>
89 <MetadataUpdaterSupport>false</MetadataUpdaterSupport>
90 <StackTraceSupport>false</StackTraceSupport>
91 <UseNativeHttpHandler>true</UseNativeHttpHandler>
92 <TrimMode>partial</TrimMode>