2020-12-16 22:48:17 +04:00

121 lines
3.1 KiB
Python

copts_arm = [
"-DTGVOIP_USE_CUSTOM_CRYPTO",
"-DWEBRTC_APM_DEBUG_DUMP=0",
"-DWEBRTC_POSIX",
"-DTGVOIP_HAVE_TGLOG",
"-DWEBRTC_NS_FLOAT",
"-DWEBRTC_IOS",
"-DWEBRTC_HAS_NEON",
]
copts_x86 = [
"-DTGVOIP_USE_CUSTOM_CRYPTO",
"-DWEBRTC_APM_DEBUG_DUMP=0",
"-DWEBRTC_POSIX",
"-DTGVOIP_HAVE_TGLOG",
"-DWEBRTC_NS_FLOAT",
"-DWEBRTC_IOS",
]
replace_symbols = [
"WebRtcAgc_Process",
"rtc_FatalMessage",
"WebRtcAgc_UpdateAgcThresholds",
"WebRtcAgc_Init",
"WebRtcAgc_GetAddFarendError",
"WebRtcAgc_ZeroCtrl",
"WebRtcAgc_SaturationCtrl",
"WebRtcAgc_SpeakerInactiveCtrl",
"WebRtcAgc_ProcessAnalog",
"WebRtcAgc_set_config",
"WebRtcAgc_get_config",
"WebRtcAgc_ExpCurve",
"WebRtcAgc_Create",
"WebRtcAgc_Free",
"WebRtcAgc_AddFarend",
"WebRtcAgc_VirtualMic",
"WebRtcAgc_AddMic",
"WebRtcAgc_InitDigital",
"WebRtcAgc_AddFarendToDigital",
"WebRtcAgc_CalculateGainTable",
"WebRtcAgc_InitVad",
"WebRtcAgc_ProcessVad",
"TimeDiff",
"TimeAfter",
"TimeMicros",
"TimeUTCMicros",
"SystemTimeNanos",
"TimeNanos",
"SystemTimeMillis",
"TimeMillis",
"TimeUTCMillis",
"GetClockForTesting",
"TimestampWrapAroundHandler",
"Time32",
"TmToSeconds",
"TimeDiff32",
"TimestampWrapAroundHandler",
"g_clock",
"SetClockForTesting",
]
objc_library(
name = "TgVoip",
enable_modules = True,
module_name = "TgVoip",
srcs = glob([
"Sources/**/*.m",
"Sources/**/*.mm",
"Sources/**/*.h",
"libtgvoip/*.m",
"libtgvoip/*.mm",
"libtgvoip/*.cpp",
"libtgvoip/audio/*.cpp",
"libtgvoip/video/*.cpp",
"libtgvoip/os/darwin/*.m",
"libtgvoip/os/darwin/*.mm",
"libtgvoip/os/darwin/*.cpp",
"libtgvoip/os/posix/*.cpp",
"libtgvoip/webrtc_dsp/**/*.c",
"libtgvoip/webrtc_dsp/**/*.cc",
"libtgvoip/webrtc_dsp/**/*.cpp",
], exclude = ["libtgvoip/os/darwin/*OSX*"]),
hdrs = glob([
"PublicHeaders/**/*.h",
]),
copts = [
"-I{}/PublicHeaders/TgVoip".format(package_name()),
"-I{}/libtgvoip".format(package_name()),
"-I{}/libtgvoip/webrtc_dsp".format(package_name()),
"-Isubmodules/Opus/Public/opus",
"-DTGVOIP_USE_INSTALLED_OPUS",
"-Drtc=rtc1",
"-Dwebrtc=webrtc1",
] + ["-D{symbol}={symbol}1".format(symbol=symbol) for symbol in replace_symbols] + select({
"@build_bazel_rules_apple//apple:ios_armv7": copts_arm,
"@build_bazel_rules_apple//apple:ios_arm64": copts_arm,
"//build-system:ios_sim_arm64": copts_arm,
"@build_bazel_rules_apple//apple:ios_x86_64": copts_x86,
}),
includes = [
"PublicHeaders",
],
deps = [
"//submodules/MtProtoKit:MtProtoKit",
"//third-party/opus:opus",
],
sdk_frameworks = [
"Foundation",
"UIKit",
"AudioToolbox",
"VideoToolbox",
"CoreTelephony",
"CoreMedia",
"AVFoundation",
],
visibility = [
"//visibility:public",
],
)