86 lines
2.3 KiB
C#
86 lines
2.3 KiB
C#
|
using System.IO;
|
||
|
using UnrealBuildTool;
|
||
|
|
||
|
public class RD : ModuleRules
|
||
|
{
|
||
|
public RD(ReadOnlyTargetRules Target) : base(Target)
|
||
|
{
|
||
|
PublicDependencyModuleNames.Add("Core");
|
||
|
bUseRTTI = true;
|
||
|
|
||
|
#if UE_5_2_OR_LATER
|
||
|
bDisableStaticAnalysis = true;
|
||
|
#endif
|
||
|
|
||
|
#if UE_5_2_OR_LATER
|
||
|
IWYUSupport = IWYUSupport.KeepAsIs;
|
||
|
#else
|
||
|
bEnforceIWYU = false;
|
||
|
#endif
|
||
|
|
||
|
#if UE_4_22_OR_LATER
|
||
|
CppStandard = CppStandardVersion.Cpp17;
|
||
|
#endif
|
||
|
|
||
|
#if UE_4_22_OR_LATER
|
||
|
PCHUsage = PCHUsageMode.NoPCHs;
|
||
|
#else
|
||
|
PCHUsage = PCHUsageMode.NoSharedPCHs;
|
||
|
#endif
|
||
|
|
||
|
#if UE_4_24_OR_LATER
|
||
|
ShadowVariableWarningLevel = WarningLevel.Off;
|
||
|
bUseUnity = false;
|
||
|
#else
|
||
|
bEnableShadowVariableWarnings = false;
|
||
|
bFasterWithoutUnity = true;
|
||
|
#endif
|
||
|
|
||
|
PublicDefinitions.Add("_SILENCE_ALL_CXX17_DEPRECATION_WARNINGS");
|
||
|
|
||
|
if (Target.Platform == UnrealTargetPlatform.Win64)
|
||
|
{
|
||
|
PublicDefinitions.Add("_WINSOCK_DEPRECATED_NO_WARNINGS");
|
||
|
PublicDefinitions.Add("_CRT_SECURE_NO_WARNINGS");
|
||
|
PublicDefinitions.Add("_CRT_NONSTDC_NO_DEPRECATE");
|
||
|
PublicDefinitions.Add("SPDLOG_WCHAR_FILENAMES");
|
||
|
PublicDefinitions.Add("SPDLOG_WCHAR_TO_UTF8_SUPPORT");
|
||
|
PrivateDefinitions.Add("WIN32_LEAN_AND_MEAN");
|
||
|
}
|
||
|
|
||
|
if (Target.Platform == UnrealTargetPlatform.Mac)
|
||
|
{
|
||
|
PublicDefinitions.Add("_DARWIN");
|
||
|
}
|
||
|
|
||
|
// Common dependencies
|
||
|
PrivateDefinitions.Add("rd_framework_cpp_EXPORTS");
|
||
|
PrivateDefinitions.Add("rd_core_cpp_EXPORTS");
|
||
|
PrivateDefinitions.Add("spdlog_EXPORTS");
|
||
|
PrivateDefinitions.Add("FMT_EXPORT");
|
||
|
|
||
|
PublicDefinitions.Add("SPDLOG_NO_EXCEPTIONS");
|
||
|
PublicDefinitions.Add("SPDLOG_COMPILED_LIB");
|
||
|
PublicDefinitions.Add("SPDLOG_SHARED_LIB");
|
||
|
PublicDefinitions.Add(
|
||
|
"nssv_CONFIG_SELECT_STRING_VIEW=nssv_STRING_VIEW_NONSTD");
|
||
|
PublicDefinitions.Add("FMT_SHARED");
|
||
|
|
||
|
string[] Paths =
|
||
|
{
|
||
|
"src", "src/rd_core_cpp", "src/rd_core_cpp/src/main"
|
||
|
, "src/rd_framework_cpp", "src/rd_framework_cpp/src/main"
|
||
|
, "src/rd_framework_cpp/src/main/util", "src/rd_gen_cpp/src"
|
||
|
, "thirdparty", "thirdparty/ordered-map/include"
|
||
|
, "thirdparty/optional/tl", "thirdparty/variant/include"
|
||
|
, "thirdparty/string-view-lite/include", "thirdparty/spdlog/include"
|
||
|
, "thirdparty/clsocket/src", "thirdparty/CTPL/include", "thirdparty/utf-cpp/include"
|
||
|
};
|
||
|
|
||
|
foreach (var Item in Paths)
|
||
|
{
|
||
|
PublicIncludePaths.Add(Path.Combine(ModuleDirectory, Item));
|
||
|
}
|
||
|
}
|
||
|
}
|