Files
UnrealEngine/Engine/Source/Runtime/AudioCaptureImplementations/AudioCaptureRtAudio/AudioCaptureRtAudio.Build.cs
2025-05-18 13:04:45 +08:00

39 lines
1.1 KiB
C#

// Copyright Epic Games, Inc. All Rights Reserved.
using UnrealBuildTool;
public class AudioCaptureRtAudio : ModuleRules
{
protected virtual bool WithRtAudio { get => false; }
public AudioCaptureRtAudio(ReadOnlyTargetRules Target) : base(Target)
{
// RtAudio throws exceptions for errors.
bEnableExceptions = true;
// AutoRTFM cannot be used with exceptions.
bDisableAutoRTFMInstrumentation = true;
PrivateDependencyModuleNames.Add("Core");
PrivateDependencyModuleNames.Add("AudioCaptureCore");
if (Target.Platform.IsInGroup(UnrealPlatformGroup.Windows))
{
PublicDefinitions.Add("WITH_RTAUDIO=1");
PublicDefinitions.Add("WITH_AUDIOCAPTURE=1");
// Allow us to use direct sound
AddEngineThirdPartyPrivateStaticDependencies(Target, "DirectSound");
}
else if(Target.Platform == UnrealTargetPlatform.Mac)
{
PublicFrameworks.AddRange(new string[] { "CoreAudio", "AudioUnit", "AudioToolbox" });
PublicDefinitions.Add("WITH_RTAUDIO=1");
PublicDefinitions.Add("WITH_AUDIOCAPTURE=1");
}
else
{
PublicDefinitions.Add($"WITH_RTAUDIO={(WithRtAudio?"1":"0")}");
}
}
}