Files
UnrealEngineUWP/Engine/Source/ThirdParty/libcurl/libcurl.Build.cs
Zousar Shaker a27a7dba1a Shift Win64 over to libcurl 7.83.1 w/ nghttp2 enabled.
#rb devin.doucette, michael.kirzinger
#preflight 6294f9233f058e13b5c07028

[CL 20431894 by Zousar Shaker in ue5-main branch]
2022-05-30 13:14:33 -04:00

64 lines
2.0 KiB
C#

// Copyright Epic Games, Inc. All Rights Reserved.
using UnrealBuildTool;
using System.IO;
public class libcurl : ModuleRules
{
public libcurl(ReadOnlyTargetRules Target) : base(Target)
{
Type = ModuleType.External;
PublicDefinitions.Add("WITH_LIBCURL=1");
string LinuxLibCurlPath = Target.UEThirdPartySourceDirectory + "libcurl/7_65_3/";
string WinLibCurlPath = Target.UEThirdPartySourceDirectory + "libcurl/7.83.1/";
string AndroidLibCurlPath = Target.UEThirdPartySourceDirectory + "libcurl/7_75_0/";
if (Target.IsInPlatformGroup(UnrealPlatformGroup.Unix))
{
string platform = "/Unix/" + Target.Architecture;
string IncludePath = LinuxLibCurlPath + "include" + platform;
string LibraryPath = LinuxLibCurlPath + "lib" + platform;
PublicIncludePaths.Add(IncludePath);
PublicAdditionalLibraries.Add(LibraryPath + "/libcurl.a");
PrivateDependencyModuleNames.Add("SSL");
}
else if (Target.IsInPlatformGroup(UnrealPlatformGroup.Android))
{
string[] Architectures = new string[] {
"ARM64",
"x64",
};
PublicIncludePaths.Add(AndroidLibCurlPath + "include/Android/");
foreach(var Architecture in Architectures)
{
PublicAdditionalLibraries.Add(AndroidLibCurlPath + "lib/Android/" + Architecture + "/libcurl.a");
}
}
else if (Target.Platform == UnrealTargetPlatform.Mac)
{
string LibCurlPath = Target.UEThirdPartySourceDirectory + "libcurl/";
PublicIncludePaths.Add(LibCurlPath + "include/Mac");
PublicAdditionalLibraries.Add(LibCurlPath + "lib/Mac/libcurl.a");
}
else if (Target.Platform == UnrealTargetPlatform.Win64)
{
PublicSystemIncludePaths.Add(Path.Combine(WinLibCurlPath, "include"));
PublicAdditionalLibraries.Add(Path.Combine(WinLibCurlPath, "lib", Target.Platform.ToString(), "Release", "libcurl.lib"));
PublicDefinitions.Add("CURL_STATICLIB=1");
// Our build requires nghttp2, OpenSSL and zlib, so ensure they're linked in
AddEngineThirdPartyPrivateStaticDependencies(Target, new string[]
{
"nghttp2",
"OpenSSL",
"zlib"
});
}
}
}