Files
UnrealEngineUWP/Engine/Source/Programs/Unsync/Unsync.Build.cs
Yuriy ODonnell 44ee3bd688 unsync - Fix few minor build issues
* Suppress warnings in CLI11 headers
* Use WIN32_LEAN_AND_MEAN=1 and include specific headers when they're needed
Some windows headers (at least in some versions of the SDKs) do not pop the warning suppression states, which causes inconsistent warning reporting whenever Windows.h is included.
By adding WIN32_LEAN_AND_MEAN, we avoid the issue at least in the common case.
* Suppress various deprecation warnings in Windows headers (_SILENCE_CXX17_OLD_ALLOCATOR_MEMBERS_DEPRECATION_WARNING, _WINSOCK_DEPRECATED_NO_WARNINGS, _SILENCE_CXX17_CODECVT_HEADER_DEPRECATION_WARNING, _CRT_SECURE_NO_WARNINGS)
* Fix blake3 include path when using cmake

This fixes compilation warnings when using Windows SDK 10.0.22000.0.

#rb Martin.Ridgers
#preflight 6216532d0f71e491cc023eec

[CL 19111912 by Yuriy ODonnell in ue5-main branch]
2022-02-24 06:20:58 -05:00

47 lines
1.6 KiB
C#

// Copyright Epic Games, Inc. All Rights Reserved.
using UnrealBuildTool;
using System.IO;
public class Unsync : ModuleRules
{
public Unsync(ReadOnlyTargetRules Target) : base(Target)
{
CppStandard = CppStandardVersion.Cpp20;
bUseUnity = false;
bEnableExceptions = true;
bUseRTTI = true; // Needed by CLI11 library
PrivateIncludePaths.Add(Path.Combine(ModuleDirectory, "ThirdParty"));
PrivateDefinitions.Add("UNSYNC_USE_TLS=1");
PrivateDefinitions.Add("UNSYNC_USE_DEBUG_HEAP=1");
if (Target.Platform == UnrealTargetPlatform.Win64)
{
PrivateDefinitions.Add("UNSYNC_PLATFORM_WINDOWS=1");
PrivateDefinitions.Add("UNSYNC_USE_CONCRT=1");
PrivateDefinitions.Add("UNSYNC_PLATFORM_UNIX=0");
PrivateDefinitions.Add("NOMINMAX=1");
PrivateDefinitions.Add("WIN32_LEAN_AND_MEAN=1");
PrivateDefinitions.Add("_SILENCE_CXX17_OLD_ALLOCATOR_MEMBERS_DEPRECATION_WARNING=1");
PrivateDefinitions.Add("_CRT_SECURE_NO_WARNINGS=1");
PrivateDefinitions.Add("_WINSOCK_DEPRECATED_NO_WARNINGS=1");
PrivateDefinitions.Add("_SILENCE_CXX17_CODECVT_HEADER_DEPRECATION_WARNING=1");
}
else if (Target.Platform == UnrealTargetPlatform.Mac || Target.Platform == UnrealTargetPlatform.Linux)
{
PrivateDefinitions.Add("UNSYNC_PLATFORM_WINDOWS=0");
PrivateDefinitions.Add("UNSYNC_USE_CONCRT=0");
PrivateDefinitions.Add("UNSYNC_PLATFORM_UNIX=1");
}
PrivateDependencyModuleNames.Add("BLAKE3");
PrivateDependencyModuleNames.Add("CLI11");
PrivateDependencyModuleNames.Add("fmt");
PrivateDependencyModuleNames.Add("http_parser");
PrivateDependencyModuleNames.Add("LibreSSL");
PrivateDependencyModuleNames.Add("zstd");
}
}