57 lines
1.6 KiB
C#
57 lines
1.6 KiB
C#
// Copyright Epic Games, Inc. All Rights Reserved.
|
|
|
|
using System.Linq;
|
|
using System.Collections.Generic;
|
|
|
|
namespace UnrealBuildTool.Rules
|
|
{
|
|
public class Chaos : ModuleRules
|
|
{
|
|
public Chaos(ReadOnlyTargetRules Target) : base(Target)
|
|
{
|
|
NumIncludedBytesPerUnityCPPOverride = 192 * 1024; // This is half of the default unity size(NumIncludedBytesPerUnityCPP) specified in TargetRules.cs
|
|
|
|
PublicDependencyModuleNames.AddRange(
|
|
new string[] {
|
|
"AutoRTFM",
|
|
"Core",
|
|
"CoreUObject",
|
|
"ChaosCore",
|
|
"IntelISPC",
|
|
"TraceLog",
|
|
"Voronoi",
|
|
"GeometryCore",
|
|
"ChaosVDRuntime",
|
|
"NNE",
|
|
}
|
|
);
|
|
PrivateDependencyModuleNames.AddRange(
|
|
new string[] {
|
|
"Eigen"
|
|
}
|
|
);
|
|
|
|
PublicDefinitions.Add("COMPILE_WITHOUT_UNREAL_SUPPORT=0");
|
|
PrivateDefinitions.Add("CHAOS_INCLUDE_LEVEL_1=1");
|
|
|
|
PrivateIncludePathModuleNames.Add("PhysicsCore"); // Needed because we include "ChaosEngineInterface.h"
|
|
|
|
if (Target.bUseChaosMemoryTracking == true)
|
|
{
|
|
PublicDefinitions.Add("CHAOS_MEMORY_TRACKING=1");
|
|
}
|
|
else
|
|
{
|
|
PublicDefinitions.Add("CHAOS_MEMORY_TRACKING=0");
|
|
}
|
|
|
|
SetupModuleChaosVisualDebuggerSupport(Target);
|
|
|
|
CppCompileWarningSettings.UnsafeTypeCastWarningLevel = WarningLevel.Error;
|
|
|
|
StaticAnalyzerDisabledCheckers.Add("cplusplus.NewDeleteLeaks"); // To be reevalulated, believed to be invalid warnings.
|
|
StaticAnalyzerDisabledCheckers.Add("core.UndefinedBinaryOperatorResult"); // Invalid warning in mass property calculation.
|
|
}
|
|
}
|
|
}
|