Files
UnrealEngineUWP/Engine/Source/Runtime/ApplicationCore/ApplicationCore.Build.cs
leon huang eb4aa925db Introduced UE_WINDOWS_USING_UIA macro to facilitate Windows accessibility only if
the Windows UIA dll is used.
#rnx
#rb: David.Harvey
#preflight: 614470ce81695600012d14f9
[FYI] Jason.Stasik

#ROBOMERGE-AUTHOR: leon.huang
#ROBOMERGE-SOURCE: CL 17558697 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v870-17433530)

[CL 17558711 by leon huang in ue5-release-engine-test branch]
2021-09-17 17:27:19 -04:00

102 lines
3.0 KiB
C#

// Copyright Epic Games, Inc. All Rights Reserved.
using UnrealBuildTool;
public class ApplicationCore : ModuleRules
{
public ApplicationCore(ReadOnlyTargetRules Target) : base(Target)
{
PublicDependencyModuleNames.AddRange(
new string[] {
"Core"
}
);
PublicIncludePathModuleNames.AddRange(
new string[] {
"RHI"
}
);
PrivateIncludePathModuleNames.AddRange(
new string[] {
"InputDevice",
"Analytics",
"SynthBenchmark"
}
);
if ((Target.IsInPlatformGroup(UnrealPlatformGroup.Windows)))
{
AddEngineThirdPartyPrivateStaticDependencies(Target,
"XInput"
);
// We only enable UIA with Win64
if (Target.bCompileWithAccessibilitySupport && !Target.bIsBuildingConsoleApplication && Target.Platform == UnrealTargetPlatform.Win64)
{
PublicSystemLibraries.Add("uiautomationcore.lib");
PublicDefinitions.Add("UE_WINDOWS_USING_UIA=1");
}
else
{
PublicDefinitions.Add("UE_WINDOWS_USING_UIA=0");
}
// Uses DXGI to query GPU hardware prior to RHI startup
PublicSystemLibraries.Add("DXGI.lib");
}
else if (Target.Platform == UnrealTargetPlatform.Mac)
{
AddEngineThirdPartyPrivateStaticDependencies(Target,
"OpenGL"
);
if (Target.bBuildEditor == true)
{
string SDKROOT = Utils.RunLocalProcessAndReturnStdOut("/usr/bin/xcrun", "--sdk macosx --show-sdk-path");
PublicAdditionalLibraries.Add(SDKROOT + "/System/Library/PrivateFrameworks/MultitouchSupport.framework/Versions/Current/MultitouchSupport.tbd");
}
PublicFrameworks.Add("GameController");
}
else if (Target.IsInPlatformGroup(UnrealPlatformGroup.Linux))
{
AddEngineThirdPartyPrivateStaticDependencies(Target,
"SDL2"
);
// We need FreeType2 and GL for the Splash, but only in the Editor
if (Target.Type == TargetType.Editor)
{
AddEngineThirdPartyPrivateStaticDependencies(Target, "FreeType2");
AddEngineThirdPartyPrivateStaticDependencies(Target, "OpenGL");
PrivateIncludePathModuleNames.Add("ImageWrapper");
}
}
else if (Target.Platform == UnrealTargetPlatform.IOS || Target.Platform == UnrealTargetPlatform.TVOS)
{
PublicIncludePaths.AddRange(new string[] {"Runtime/ApplicationCore/Public/IOS"});
PublicIncludePaths.AddRange(new string[] {"Runtime/ApplicationCore/Private/Apple"});
AddEngineThirdPartyPrivateStaticDependencies(Target, "SoundSwitch");
// export ApplicationCore symbols for embedded Dlls
ModuleSymbolVisibility = ModuleRules.SymbolVisibility.VisibileForDll;
//Need to add this as BackgroundHTTP files can end up doing work directly from our AppDelegate in iOS and thus we need acccess to correct file locations to save these very early.
PrivateDependencyModuleNames.Add("BackgroundHTTPFileHash");
}
else if (Target.Platform == UnrealTargetPlatform.Android)
{
PrivateIncludePathModuleNames.AddRange(
new string[] {
"Launch"
}
);
}
if (!Target.bCompileAgainstApplicationCore)
{
throw new System.Exception("ApplicationCore cannot be used when Target.bCompileAgainstApplicationCore = false.");
}
}
}