Files
UnrealEngineUWP/Engine/Source/Runtime/Core/Core.Build.cs
Rob Cannaday ce3a0b200f Copying //Tasks/UE4/Dev-Online-Plugins-v3 to //UE4/Dev-Main (Source: //Tasks/UE4/Dev-Online-Plugins-v3 @ 3047294)
#lockdown Nick.Penwarden
#rb rob.cannaday

==========================
MAJOR FEATURES + CHANGES
==========================

Change 3025090 on 2016/06/23 by Rob.Cannaday

	Move OnlineSubsystemGooglePlay into plugins

Change 3025127 on 2016/06/23 by Rob.Cannaday

	Move OnlineSubsystemIOS into plugins

Change 3025314 on 2016/06/23 by Rob.Cannaday

	Move OnlineSubsystemWeChat into plugins

Change 3025380 on 2016/06/23 by Rob.Cannaday

	Move OnlineSubsystemMcp into plugins

Change 3025400 on 2016/06/23 by Rob.Cannaday

	Move PluginFlow into plugins

Change 3025430 on 2016/06/23 by Rob.Cannaday

	Move OnlineFramework (Hotfix, Lobby, Party, Qos) into plugins

Change 3025453 on 2016/06/23 by Rob.Cannaday

	Move OnlineSubsystem into plugins

Change 3025462 on 2016/06/23 by Rob.Cannaday

	Move OnlineSubsystemAmazon into plugins

Change 3025480 on 2016/06/23 by Rob.Cannaday

	Move OnlineSubsystemFacebook into plugins

Change 3025487 on 2016/06/23 by Rob.Cannaday

	Move OnlineSubsystemNull into plugins

Change 3025493 on 2016/06/23 by Rob.Cannaday

	Move OnlineSubsystemSteam into plugins

Change 3025512 on 2016/06/23 by Rob.Cannaday

	Move OnlineSubsystemUtils (OnlineBlueprintSupport, OnlineSubsystemUtils) into plugins

Change 3025520 on 2016/06/23 by Rob.Cannaday

	Move OnlineSubsystemPS4 into plugins

Change 3025526 on 2016/06/23 by Rob.Cannaday

	Move OnlineSubsystemLive into plugins

Change 3025542 on 2016/06/23 by Rob.Cannaday

	Move OnlineSubsystemThunderhead into plugins (disabled)

Change 3025547 on 2016/06/23 by Rob.Cannaday

	Delete NewsFeed

Change 3028420 on 2016/06/27 by Rob.Cannaday

	Online Subsystem pluginization changes

Change 3028457 on 2016/06/27 by Rob.Cannaday

	Add ShooterOnlineSessionClient.*
	Remove copy/paste from previous checkin

Change 3029282 on 2016/06/27 by Rob.Cannaday

	Merging //UE4/Dev-Main to Dev-Online-Plugins-v3 (//Tasks/UE4/Dev-Online-Plugins-v3) (around CL 3028391)

Change 3029363 on 2016/06/27 by Rob.Cannaday

	UT build fixes for pluginization

Change 3032885 on 2016/06/29 by Rob.Cannaday

	Remove bCompileMCPOss and bCompileSteamOss

Change 3033072 on 2016/06/29 by Rob.Cannaday

	Merging //UE4/Dev-Main to Dev-Online-Plugins-v3 (//Tasks/UE4/Dev-Online-Plugins-v3) (around CL 3032885)

Change 3033368 on 2016/06/29 by Rob.Cannaday

	Fix references to online subsystem files in their former location

Change 3037635 on 2016/07/05 by Rob.Cannaday

	Add online plugins to WEX uproject

Change 3038147 on 2016/07/05 by Rob.Cannaday

	Merging //UE4/Dev-Main to Dev-Online-Plugins-v3 (//Tasks/UE4/Dev-Online-Plugins-v3)
	Also adds Match3

Change 3038152 on 2016/07/05 by Rob.Cannaday

	Fixup UnrealMatch3 OSS references

Change 3044558 on 2016/07/11 by Rob.Cannaday

	Move OnlineBlueprintCallProxyBase to Engine/Public/Net to remove dependency for OnlineSubsystemUtils in Engine.

Change 3044596 on 2016/07/11 by Rob.Cannaday

	#jira OGSSOCIAL-226 Investigate Slate solution to fade per line instead of per message
	Allow users to add a custom FTextLayout to Text boxes

Change 3045306 on 2016/07/11 by Rob.Cannaday

	Merging //UE4/Dev-Main to Dev-Online-Plugins-v3 (//Tasks/UE4/Dev-Online-Plugins-v3)

Change 3045424 on 2016/07/11 by Rob.Cannaday

	Add OnlineSubsystem plugins to Ocean.uproject
	#jira OGS-391

Change 3045478 on 2016/07/11 by Rob.Cannaday

	Crash fix when creating a split screen player via DebugCreatePlayer 1
	null check UniqueId
	#jira OGS-392

Change 3046785 on 2016/07/12 by Rob.Cannaday

	Move new hotfix files into plugin

Change 3047014 on 2016/07/12 by Rob.Cannaday

	Fix for VOIP not working
	#jira OGS-393

Change 3047248 on 2016/07/12 by Rob.Cannaday

	Fix build warning of member variable initialiization order.

Change 3047294 on 2016/07/12 by Rob.Cannaday

	Fix for ensure on shutdown in Qos module
	#jira UE-33150

[CL 3047349 by Rob Cannaday in Main branch]
2016-07-12 22:27:19 -04:00

209 lines
7.1 KiB
C#

// Copyright 1998-2016 Epic Games, Inc. All Rights Reserved.
using UnrealBuildTool;
using System;
using System.IO;
public class Core : ModuleRules
{
public Core(TargetInfo Target)
{
SharedPCHHeaderFile = "Runtime/Core/Public/Core.h";
PublicIncludePaths.AddRange(
new string[] {
"Runtime/Core/Public",
"Runtime/Core/Public/Internationalization",
"Runtime/Core/Public/Async",
"Runtime/Core/Public/Concurrency",
"Runtime/Core/Public/Containers",
"Runtime/Core/Public/Delegates",
"Runtime/Core/Public/GenericPlatform",
"Runtime/Core/Public/HAL",
"Runtime/Core/Public/Logging",
"Runtime/Core/Public/Math",
"Runtime/Core/Public/Misc",
"Runtime/Core/Public/Modules",
"Runtime/Core/Public/Modules/Boilerplate",
"Runtime/Core/Public/ProfilingDebugging",
"Runtime/Core/Public/Serialization",
"Runtime/Core/Public/Serialization/Csv",
"Runtime/Core/Public/Stats",
"Runtime/Core/Public/Templates",
"Runtime/Core/Public/UObject",
}
);
PrivateIncludePaths.AddRange(
new string[] {
"Developer/DerivedDataCache/Public",
"Runtime/SynthBenchmark/Public",
"Runtime/Core/Private",
"Runtime/Core/Private/Misc",
"Runtime/Core/Private/Serialization/Json",
"Runtime/Core/Private/Internationalization",
"Runtime/Core/Private/Internationalization/Cultures",
"Runtime/Analytics/Public",
"Runtime/Engine/Public",
}
);
PrivateIncludePathModuleNames.AddRange(
new string[] {
"TargetPlatform",
"DerivedDataCache",
"InputDevice",
"Analytics",
"RHI"
}
);
if (UEBuildConfiguration.bBuildEditor == true)
{
DynamicallyLoadedModuleNames.Add("SourceCodeAccess");
}
if ((Target.Platform == UnrealTargetPlatform.Win64) ||
(Target.Platform == UnrealTargetPlatform.Win32))
{
PublicIncludePaths.Add("Runtime/Core/Public/Windows");
AddEngineThirdPartyPrivateStaticDependencies(Target,
"zlib");
AddEngineThirdPartyPrivateStaticDependencies(Target,
"IntelTBB",
"XInput"
);
}
else if (Target.Platform == UnrealTargetPlatform.Mac)
{
PublicIncludePaths.AddRange(new string[] { "Runtime/Core/Public/Apple", "Runtime/Core/Public/Mac" });
AddEngineThirdPartyPrivateStaticDependencies(Target,
"IntelTBB",
"zlib",
"OpenGL",
"PLCrashReporter"
);
PublicFrameworks.AddRange(new string[] { "Cocoa", "Carbon", "IOKit", "Security" });
if (UEBuildConfiguration.bBuildEditor == true)
{
PublicAdditionalLibraries.Add("/System/Library/PrivateFrameworks/MultitouchSupport.framework/Versions/Current/MultitouchSupport");
}
}
else if (Target.Platform == UnrealTargetPlatform.IOS || Target.Platform == UnrealTargetPlatform.TVOS)
{
PublicIncludePaths.AddRange(new string[] {"Runtime/Core/Public/Apple", "Runtime/Core/Public/IOS"});
AddEngineThirdPartyPrivateStaticDependencies(Target,
"zlib"
);
PublicFrameworks.AddRange(new string[] { "UIKit", "Foundation", "AudioToolbox", "AVFoundation", "GameKit", "StoreKit", "CoreVideo", "CoreMedia", "CoreGraphics", "GameController"});
if (Target.Platform == UnrealTargetPlatform.IOS)
{
PublicFrameworks.AddRange(new string[] { "CoreMotion" });
}
bool bSupportAdvertising = Target.Platform == UnrealTargetPlatform.IOS;
if (bSupportAdvertising)
{
PublicFrameworks.AddRange(new string[] { "iAD" });
}
}
else if (Target.Platform == UnrealTargetPlatform.Android)
{
PublicIncludePaths.Add("Runtime/Core/Public/Android");
AddEngineThirdPartyPrivateStaticDependencies(Target,
"cxademangle",
"zlib"
);
}
else if ((Target.Platform == UnrealTargetPlatform.Linux))
{
PublicIncludePaths.Add("Runtime/Core/Public/Linux");
AddEngineThirdPartyPrivateStaticDependencies(Target,
"zlib",
"jemalloc",
"elftoolchain",
"SDL2"
);
// Core uses dlopen()
PublicAdditionalLibraries.Add("dl");
// We need FreeType2 and GL for the Splash, but only in the Editor
if (Target.Type == TargetRules.TargetType.Editor)
{
AddEngineThirdPartyPrivateStaticDependencies(Target, "FreeType2");
AddEngineThirdPartyPrivateStaticDependencies(Target, "OpenGL");
PrivateIncludePathModuleNames.Add("ImageWrapper");
}
}
else if (Target.Platform == UnrealTargetPlatform.HTML5 && Target.Architecture == "-win32")
{
PublicIncludePaths.Add("Runtime/Core/Public/HTML5");
AddEngineThirdPartyPrivateStaticDependencies(Target, "SDL2");
AddEngineThirdPartyPrivateStaticDependencies(Target, "OpenAL");
}
else if (Target.Platform == UnrealTargetPlatform.HTML5 && Target.Architecture != "-win32")
{
AddEngineThirdPartyPrivateStaticDependencies(Target, "SDL2");
PrivateDependencyModuleNames.Add("HTML5JS");
PrivateDependencyModuleNames.Add("MapPakDownloader");
}
if ( UEBuildConfiguration.bCompileICU == true )
{
AddEngineThirdPartyPrivateStaticDependencies(Target, "ICU");
}
Definitions.Add("UE_ENABLE_ICU=" + (UEBuildConfiguration.bCompileICU ? "1" : "0")); // Enable/disable (=1/=0) ICU usage in the codebase. NOTE: This flag is for use while integrating ICU and will be removed afterward.
// If we're compiling with the engine, then add Core's engine dependencies
if (UEBuildConfiguration.bCompileAgainstEngine == true)
{
if (!UEBuildConfiguration.bBuildRequiresCookedData)
{
DynamicallyLoadedModuleNames.AddRange(new string[] { "DerivedDataCache" });
}
}
// On Windows platform, VSPerfExternalProfiler.cpp needs access to "VSPerf.h". This header is included with Visual Studio, but it's not in a standard include path.
if( Target.Platform == UnrealTargetPlatform.Win32 || Target.Platform == UnrealTargetPlatform.Win64 )
{
var VisualStudioVersionNumber = "11.0";
var SubFolderName = ( Target.Platform == UnrealTargetPlatform.Win64 ) ? "x64/PerfSDK" : "PerfSDK";
string PerfIncludeDirectory = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ProgramFilesX86), String.Format("Microsoft Visual Studio {0}/Team Tools/Performance Tools/{1}", VisualStudioVersionNumber, SubFolderName));
if (File.Exists(Path.Combine(PerfIncludeDirectory, "VSPerf.h")))
{
PrivateIncludePaths.Add(PerfIncludeDirectory);
Definitions.Add("WITH_VS_PERF_PROFILER=1");
}
}
if ((Target.Platform == UnrealTargetPlatform.XboxOne) ||
(Target.Platform == UnrealTargetPlatform.WinRT) ||
(Target.Platform == UnrealTargetPlatform.WinRT_ARM))
{
Definitions.Add("WITH_DIRECTXMATH=1");
}
else if ((Target.Platform == UnrealTargetPlatform.Win64) ||
(Target.Platform == UnrealTargetPlatform.Win32))
{
// To enable this requires Win8 SDK
Definitions.Add("WITH_DIRECTXMATH=0"); // Enable to test on Win64/32.
//PublicDependencyModuleNames.AddRange( // Enable to test on Win64/32.
// new string[] {
// "DirectXMath"
//});
}
else
{
Definitions.Add("WITH_DIRECTXMATH=0");
}
}
}