Files
UnrealEngineUWP/Engine/Source/Runtime/BinkAudioDecoder/Module/BinkAudioDecoder.Build.cs
adam kinge 75ab80e71a Add tvOS to the allowed platform Bink Audio Decoder list and include a tvOS compatible static lib.
#jira UE-137693
#rb dan.thompson, jack.porter, axel.riffard
#preflight 632cafe6d747fe52c86802ac

[CL 22151052 by adam kinge in ue5-main branch]
2022-09-22 22:17:14 -04:00

75 lines
2.6 KiB
C#

// Copyright Epic Games, Inc. All Rights Reserved.
using System.IO;
using System.Collections.Generic;
using System.Security.Cryptography;
using UnrealBuildTool;
public class BinkAudioDecoder : ModuleRules
{
// virtual so that NDA platforms can hide secrets
protected virtual string GetLibrary(ReadOnlyTargetRules Target)
{
if (Target.Platform.IsInGroup(UnrealPlatformGroup.Windows))
{
return Path.Combine(ModuleDirectory, "..", "SDK", "BinkAudio", "Lib", "binka_ue_decode_win64_static.lib");
}
if (Target.Platform == UnrealTargetPlatform.Linux)
{
return Path.Combine(ModuleDirectory, "..", "SDK", "BinkAudio", "Lib", "libbinka_ue_decode_lnx64_static.a");
}
if (Target.Platform == UnrealTargetPlatform.Mac)
{
return Path.Combine(ModuleDirectory, "..", "SDK", "BinkAudio", "Lib", "libbinka_ue_decode_osx_static.a");
}
if (Target.Platform == UnrealTargetPlatform.IOS)
{
return Path.Combine(ModuleDirectory, "..", "SDK", "BinkAudio", "Lib", "libbinka_ue_decode_ios_static.a");
}
if (Target.Platform == UnrealTargetPlatform.TVOS)
{
return Path.Combine(ModuleDirectory, "..", "SDK", "BinkAudio", "Lib", "libbinka_ue_decode_tvos_static.a");
}
return null;
}
public BinkAudioDecoder(ReadOnlyTargetRules Target) : base(Target)
{
ShortName = "BinkAudioDecoder";
PublicDependencyModuleNames.AddRange(
new string[]
{
"Core",
"CoreUObject",
"Engine"
}
);
PublicSystemIncludePaths.Add(Path.Combine(ModuleDirectory, "..", "SDK", "BinkAudio", "Include"));
if (Target.Platform == UnrealTargetPlatform.Android)
{
// For Android each architecture is registered and unneeded one is filtered out
PublicDefinitions.Add("WITH_BINK_AUDIO=1");
PublicAdditionalLibraries.Add(Path.Combine(ModuleDirectory, "..", "SDK", "BinkAudio", "Lib", "Android", "ARM64", "libbinka_ue_decode_androidarm64_static.a"));
PublicAdditionalLibraries.Add(Path.Combine(ModuleDirectory, "..", "SDK", "BinkAudio", "Lib", "Android", "x64", "libbinka_ue_decode_androidx64_static.a"));
}
else
{
string Library = GetLibrary(Target);
if (Library != null)
{
// We have to have this because some audio mixers are shared across platforms
// that we don't have libs for (e.g. hololens).
PublicDefinitions.Add("WITH_BINK_AUDIO=1");
PublicAdditionalLibraries.Add(Library);
}
else
{
PublicDefinitions.Add("WITH_BINK_AUDIO=0");
}
}
}
}