mirror of
https://github.com/TelegramMessenger/Telegram-iOS.git
synced 2026-07-05 19:28:46 +02:00
Squashed buildout of the tgcalls testbench: - CLI test tool with --mode p2p/reflector/group/group-churn, cross-version interop (--version, --version2), and quiet/summary output - Linux toolchain + Docker multi-stage build, AWS Fargate mass test harness, local parallel mass test harness with signaling loss simulation - SCTP writable gate, retransmission timer tuning, role-based handshake - InstanceV2CompatImpl (PeerConnection backend with V2Impl signaling) and SignalingTranslator for v14.0.0 interop - In-process Go/Pion SFU (ICE+DTLS+SRTP+SCTP per participant) with audio RTP forwarding, ActiveAudio/VideoSsrcs data channel broadcast, RTCP feedback path, and CGo c-archive integration - GroupInstanceReferenceImpl (PeerConnection group-call) and mixed-impl group mode (--reference-participants), with SDP munging for simulcast - H264 simulcast group video (FakeVideoTrackSource pattern generator, FakeVideoSink frame counting, --video flag, two-pass channel setup, reactive video setup from ActiveVideoSsrcs) - Group churn stress mode (--mode group-churn, --churn-cycles) - SFU stream-quality adaptation: BandwidthEstimator, LayerSelector state machine, RtxRingBuffer, simulcast SSRC rewrite - Transport-cc feedback generation, NetworkSimulator (delay/jitter/loss/ token-bucket bandwidth), --network-scenario step-down-up - CLAUDE.md updates throughout Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
116 lines
3.5 KiB
Text
116 lines
3.5 KiB
Text
|
|
config_setting(
|
|
name = "debug_build",
|
|
values = {
|
|
"compilation_mode": "dbg",
|
|
},
|
|
)
|
|
|
|
optimization_flags = select({
|
|
":debug_build": ["-O2", "-DNDEBUG"],
|
|
"//conditions:default": ["-DNDEBUG"],
|
|
})
|
|
|
|
common_flags = []
|
|
|
|
arm64_specific_flags = [
|
|
"-DLIBYUV_NEON",
|
|
]
|
|
|
|
x86_64_specific_flags = [
|
|
"-DHAVE_SSE2",
|
|
]
|
|
|
|
arch_specific_cflags = select({
|
|
"@build_bazel_rules_apple//apple:ios_arm64": common_flags + arm64_specific_flags,
|
|
"//build-system:ios_sim_arm64": common_flags + arm64_specific_flags,
|
|
"@build_bazel_rules_apple//apple:ios_x86_64": common_flags + x86_64_specific_flags,
|
|
"//build-system:linux_arm64": common_flags + arm64_specific_flags,
|
|
"//build-system:linux_x86_64": common_flags + x86_64_specific_flags,
|
|
"//conditions:default": common_flags + arm64_specific_flags,
|
|
})
|
|
|
|
cc_library(
|
|
name = "libyuv",
|
|
hdrs = [ "third_party/libyuv/" + path for path in [
|
|
# Headers
|
|
"include/libyuv.h",
|
|
"include/libyuv/basic_types.h",
|
|
"include/libyuv/compare_row.h",
|
|
"include/libyuv/compare.h",
|
|
"include/libyuv/convert_argb.h",
|
|
"include/libyuv/convert_from_argb.h",
|
|
"include/libyuv/convert_from.h",
|
|
"include/libyuv/convert.h",
|
|
"include/libyuv/cpu_id.h",
|
|
"include/libyuv/loongson_intrinsics.h",
|
|
"include/libyuv/macros_msa.h",
|
|
"include/libyuv/mjpeg_decoder.h",
|
|
"include/libyuv/planar_functions.h",
|
|
"include/libyuv/rotate_argb.h",
|
|
"include/libyuv/rotate_row.h",
|
|
"include/libyuv/rotate.h",
|
|
"include/libyuv/row.h",
|
|
"include/libyuv/scale_argb.h",
|
|
"include/libyuv/scale_rgb.h",
|
|
"include/libyuv/scale_row.h",
|
|
"include/libyuv/scale_uv.h",
|
|
"include/libyuv/scale.h",
|
|
"include/libyuv/version.h",
|
|
"include/libyuv/video_common.h",
|
|
]],
|
|
srcs = [ "third_party/libyuv/" + path for path in [
|
|
# Source Files
|
|
"source/compare.cc",
|
|
"source/compare_common.cc",
|
|
"source/compare_gcc.cc",
|
|
"source/compare_win.cc",
|
|
"source/convert.cc",
|
|
"source/convert_argb.cc",
|
|
"source/convert_from.cc",
|
|
"source/convert_from_argb.cc",
|
|
"source/convert_jpeg.cc",
|
|
"source/convert_to_argb.cc",
|
|
"source/convert_to_i420.cc",
|
|
"source/cpu_id.cc",
|
|
"source/mjpeg_decoder.cc",
|
|
"source/mjpeg_validate.cc",
|
|
"source/planar_functions.cc",
|
|
"source/rotate.cc",
|
|
"source/rotate_any.cc",
|
|
"source/rotate_argb.cc",
|
|
"source/rotate_common.cc",
|
|
"source/rotate_gcc.cc",
|
|
"source/rotate_win.cc",
|
|
"source/row_any.cc",
|
|
"source/row_common.cc",
|
|
"source/row_gcc.cc",
|
|
"source/row_win.cc",
|
|
"source/scale.cc",
|
|
"source/scale_any.cc",
|
|
"source/scale_argb.cc",
|
|
"source/scale_common.cc",
|
|
"source/scale_gcc.cc",
|
|
"source/scale_uv.cc",
|
|
"source/scale_win.cc",
|
|
"source/video_common.cc",
|
|
"source/scale_rgb.cc",
|
|
|
|
# ARM Source Files
|
|
"source/compare_neon.cc",
|
|
"source/compare_neon64.cc",
|
|
"source/rotate_neon.cc",
|
|
"source/rotate_neon64.cc",
|
|
"source/row_neon.cc",
|
|
"source/row_neon64.cc",
|
|
"source/scale_neon.cc",
|
|
"source/scale_neon64.cc",
|
|
]],
|
|
includes = [
|
|
"third_party/libyuv/include",
|
|
],
|
|
copts = [
|
|
"-ffp-contract=fast",
|
|
] + arch_specific_cflags + optimization_flags,
|
|
visibility = ["//visibility:public"],
|
|
)
|