2024-10-03 12:01:08 -04:00
<Project Sdk= "Microsoft.NET.Sdk" >
2023-09-17 23:28:27 -04:00
2023-09-17 23:35:59 -04:00
<PropertyGroup >
<!-- Assembly Properties -->
2023-11-22 12:22:01 -05:00
<TargetFrameworks > net20;net35;net40;net452;net462;net472;net48;netcoreapp3.1;net5.0;net6.0;net7.0;net8.0</TargetFrameworks>
2024-02-20 22:48:12 -05:00
<RuntimeIdentifiers > win-x86;win-x64;win-arm64;linux-x64;linux-arm64;osx-x64</RuntimeIdentifiers>
2023-09-17 23:35:59 -04:00
<AllowUnsafeBlocks > true</AllowUnsafeBlocks>
2023-11-21 10:59:29 -05:00
<CheckEolTargetFramework > false</CheckEolTargetFramework>
2024-02-21 00:04:16 -05:00
<IncludeSourceRevisionInInformationalVersion > false</IncludeSourceRevisionInInformationalVersion>
2023-11-08 11:59:50 -05:00
<LangVersion > latest</LangVersion>
<Nullable > enable</Nullable>
2023-11-14 23:48:35 -05:00
<SuppressTfmSupportBuildWarnings > true</SuppressTfmSupportBuildWarnings>
2024-04-24 11:35:09 -04:00
<TreatWarningsAsErrors > true</TreatWarningsAsErrors>
2024-11-05 13:10:09 -05:00
<Version > 3.1.16</Version>
2024-04-24 11:45:20 -04:00
<!-- Mostly added due to external libraries -->
2024-04-24 12:13:56 -04:00
<WarningsNotAsErrors > CS0162;CS0612;CS8600;CS8601;CS8602;CS8603;CS8604;CS8605;CS8618;CS8625;CS8634;CS8765;IL3000;NU5100</WarningsNotAsErrors>
2023-09-17 23:28:27 -04:00
2023-09-17 23:35:59 -04:00
<!-- Package Properties -->
<Authors > Matt Nadareski</Authors>
2023-09-18 13:56:07 -04:00
<Description > Protection scanning library</Description>
2024-02-06 10:44:36 -05:00
<Copyright > Copyright (c)2018-2024 Matt Nadareski</Copyright>
2023-09-17 23:35:59 -04:00
<PackageProjectUrl > https://github.com/SabreTools/</PackageProjectUrl>
2023-11-08 11:37:27 -05:00
<RepositoryUrl > https://github.com/SabreTools/BinaryObjectScanner</RepositoryUrl>
2023-09-17 23:35:59 -04:00
<RepositoryType > git</RepositoryType>
2023-09-18 13:56:07 -04:00
<PackageTags > protection copy-protection scanning packer</PackageTags>
2023-09-17 23:35:59 -04:00
<PackageLicenseExpression > MIT</PackageLicenseExpression>
</PropertyGroup>
2024-02-20 18:45:37 -05:00
<!-- Set a build flag for Windows specifically -->
2024-02-20 20:14:38 -05:00
<PropertyGroup Condition= "'$(RuntimeIdentifier)'=='win-x86'" >
2024-02-20 19:59:43 -05:00
<DefineConstants > $(DefineConstants);WIN</DefineConstants>
2024-02-20 18:45:37 -05:00
</PropertyGroup>
2024-10-03 14:57:14 -04:00
<!-- Exclude certain parts of external modules for by default -->
2024-02-20 18:45:37 -05:00
<PropertyGroup >
2023-09-18 12:52:42 -04:00
<DefaultItemExcludes >
$(DefaultItemExcludes);
**\AssemblyInfo.cs;
2024-02-20 18:45:37 -05:00
_EXTERNAL\LessIO\src\LessIO.Tests\**;
_EXTERNAL\libmspack4n\lib\**;
_EXTERNAL\libmspack4n\libmspack4ntest\**;
2023-09-18 12:52:42 -04:00
_EXTERNAL\stormlibsharp\lib\**;
_EXTERNAL\stormlibsharp\src\TestConsole\**
</DefaultItemExcludes>
</PropertyGroup>
2023-09-17 23:35:59 -04:00
2024-10-03 14:57:14 -04:00
<!-- Exclude all StormLibSharp for .NET Framework 4.0 -->
<PropertyGroup Condition= "$(TargetFramework.StartsWith(`net40`))" >
<DefaultItemExcludes >
$(DefaultItemExcludes);
_EXTERNAL\stormlibsharp\src\**
</DefaultItemExcludes>
</PropertyGroup>
2024-10-03 14:46:35 -04:00
<!-- Exclude all external modules for .NET Framework 2.0, .NET Framework 3.5, or non - Windows builds -->
2024-10-03 14:57:14 -04:00
<PropertyGroup Condition= "$(TargetFramework.StartsWith(`net2`)) OR $(TargetFramework.StartsWith(`net3`)) OR !$(RuntimeIdentifier.StartsWith(`win-x86`))" >
2023-10-27 00:58:03 -04:00
<DefaultItemExcludes >
$(DefaultItemExcludes);
2024-02-20 18:45:37 -05:00
_EXTERNAL\**
2023-10-27 00:58:03 -04:00
</DefaultItemExcludes>
</PropertyGroup>
2023-09-18 13:56:07 -04:00
<!-- These are needed for dealing with native Windows DLLs -->
2024-10-03 14:46:35 -04:00
<ItemGroup Condition= "!$(TargetFramework.StartsWith(`net2`)) AND !$(TargetFramework.StartsWith(`net3`)) AND $(RuntimeIdentifier.StartsWith(`win-x86`))" >
2023-09-18 14:15:51 -04:00
<Content Include= "*.dll" >
<Pack > true</Pack>
<PackagePath > contentFiles;content</PackagePath>
<IncludeInPackage > true</IncludeInPackage>
<CopyToOutput > true</CopyToOutput>
<BuildAction > Content</BuildAction>
<copyToOutput > true</copyToOutput>
2023-09-18 13:56:07 -04:00
<CopyToOutputDirectory > Always</CopyToOutputDirectory>
<CopyToPublishDirectory > Always</CopyToPublishDirectory>
2023-09-18 14:15:51 -04:00
</Content>
2023-09-18 13:56:07 -04:00
</ItemGroup>
2023-11-21 10:17:25 -05:00
<!-- Support for old .NET versions -->
2023-11-22 12:22:01 -05:00
<ItemGroup Condition= "!$(TargetFramework.StartsWith(`net2`)) AND !$(TargetFramework.StartsWith(`net3`))" >
2024-03-06 11:08:22 -05:00
<PackageReference Include= "OpenMcdf" Version= "2.3.1" />
2023-11-15 00:24:47 -05:00
</ItemGroup>
2023-11-22 10:48:08 -05:00
<ItemGroup Condition= "!$(TargetFramework.StartsWith(`net2`)) AND !$(TargetFramework.StartsWith(`net3`)) AND !$(TargetFramework.StartsWith(`net40`)) AND !$(TargetFramework.StartsWith(`net452`))" >
2024-09-25 09:01:16 -06:00
<PackageReference Include= "SharpCompress" Version= "0.38.0" />
2023-11-22 10:48:08 -05:00
<PackageReference Include= "System.Text.Encoding.CodePages" Version= "8.0.0" />
2023-09-17 23:35:59 -04:00
</ItemGroup>
2023-09-17 23:53:14 -04:00
2023-11-21 10:17:25 -05:00
<ItemGroup >
2024-10-03 12:01:08 -04:00
<PackageReference Include= "SabreTools.Compression" Version= "0.5.2" />
2024-10-24 17:32:26 -04:00
<PackageReference Include= "SabreTools.Hashing" Version= "1.2.2" />
<PackageReference Include= "SabreTools.IO" Version= "1.4.13" />
2024-10-26 19:46:34 -04:00
<PackageReference Include= "SabreTools.Matching" Version= "1.3.3" />
2024-10-31 16:05:11 -04:00
<PackageReference Include= "SabreTools.Models" Version= "1.4.11" />
<PackageReference Include= "SabreTools.Serialization" Version= "1.6.9" />
<PackageReference Include= "UnshieldSharp" Version= "1.8.5" />
<PackageReference Include= "WiseUnpacker" Version= "1.4.4" />
2023-11-21 10:17:25 -05:00
</ItemGroup>
2023-09-17 23:35:59 -04:00
</Project>