Files
UnrealEngineUWP/Engine/Source/Developer/SlateReflector/SlateReflector.Build.cs
sebastian nordgren e624bfeef0 Added Widget List to Widget Reflector, which lists all currently active widgets, grouped by creation location. This can be useful for pinpointing SWidget leaks.
This requires UE_WITH_SLATE_DEBUG_WIDGETLIST to be defined, since it makes use of the functionality in FWidgetList.

#rb francis.hurteau, patrick.boutot
#preflight 619604814f57fbea790c031f

#ROBOMERGE-AUTHOR: sebastian.nordgren
#ROBOMERGE-SOURCE: CL 18234947 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v895-18170469)

[CL 18234957 by sebastian nordgren in ue5-release-engine-test branch]
2021-11-18 04:29:32 -05:00

107 lines
2.4 KiB
C#

// Copyright Epic Games, Inc. All Rights Reserved.
using UnrealBuildTool;
public class SlateReflector : ModuleRules
{
public SlateReflector(ReadOnlyTargetRules Target) : base(Target)
{
PublicDependencyModuleNames.AddRange(
new string[] {
"Core",
}
);
PrivateDependencyModuleNames.AddRange(
new string[] {
"CoreUObject",
"ApplicationCore",
"InputCore",
"Slate",
"SlateCore",
"EditorStyle",
"Json",
"AssetRegistry",
"MessageLog",
"ToolWidgets",
"DesktopPlatform"
}
);
PrivateIncludePathModuleNames.AddRange(
new string[] {
"Messaging",
"MessagingCommon",
}
);
DynamicallyLoadedModuleNames.AddRange(
new string[] {
"Messaging",
}
);
PrivateIncludePaths.AddRange(
new string[] {
"Developer/SlateReflector/Private",
"Developer/SlateReflector/Private/Models",
"Developer/SlateReflector/Private/Widgets",
}
);
// Editor builds include SessionServices to populate the remote target drop-down for remote widget snapshots
if (Target.Type == TargetType.Editor)
{
PublicDefinitions.Add("SLATE_REFLECTOR_HAS_SESSION_SERVICES=1");
PrivateDependencyModuleNames.AddRange(
new string[] {
"EditorFramework",
"PropertyEditor",
"UnrealEd",
}
);
PrivateIncludePathModuleNames.AddRange(
new string[] {
"SessionServices",
}
);
DynamicallyLoadedModuleNames.AddRange(
new string[] {
"SessionServices",
}
);
}
else
{
PublicDefinitions.Add("SLATE_REFLECTOR_HAS_SESSION_SERVICES=0");
}
// DesktopPlatform is only available for Editor and Program targets (running on a desktop platform)
bool IsDesktopPlatformType = Target.Platform == UnrealBuildTool.UnrealTargetPlatform.Win64
|| Target.Platform == UnrealBuildTool.UnrealTargetPlatform.Mac
|| Target.Platform == UnrealBuildTool.UnrealTargetPlatform.Linux;
if (Target.Type == TargetType.Editor || (Target.Type == TargetType.Program && IsDesktopPlatformType))
{
PublicDefinitions.Add("SLATE_REFLECTOR_HAS_DESKTOP_PLATFORM=1");
PrivateDependencyModuleNames.AddRange(
new string[] {
"DesktopPlatform",
}
);
}
else
{
PublicDefinitions.Add("SLATE_REFLECTOR_HAS_DESKTOP_PLATFORM=0");
}
if (Target.Configuration != UnrealTargetConfiguration.Shipping)
{
PrecompileForTargets = PrecompileTargetsType.Any;
}
}
}