summaryrefslogtreecommitdiffstats
path: root/third_party/libwebrtc/webrtc/system_wrappers/BUILD.gn
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-28 14:29:10 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-28 14:29:10 +0000
commit2aa4a82499d4becd2284cdb482213d541b8804dd (patch)
treeb80bf8bf13c3766139fbacc530efd0dd9d54394c /third_party/libwebrtc/webrtc/system_wrappers/BUILD.gn
parentInitial commit. (diff)
downloadfirefox-upstream.tar.xz
firefox-upstream.zip
Adding upstream version 86.0.1.upstream/86.0.1upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'third_party/libwebrtc/webrtc/system_wrappers/BUILD.gn')
-rw-r--r--third_party/libwebrtc/webrtc/system_wrappers/BUILD.gn236
1 files changed, 236 insertions, 0 deletions
diff --git a/third_party/libwebrtc/webrtc/system_wrappers/BUILD.gn b/third_party/libwebrtc/webrtc/system_wrappers/BUILD.gn
new file mode 100644
index 0000000000..d68f6baf01
--- /dev/null
+++ b/third_party/libwebrtc/webrtc/system_wrappers/BUILD.gn
@@ -0,0 +1,236 @@
+# Copyright (c) 2014 The WebRTC project authors. All Rights Reserved.
+#
+# Use of this source code is governed by a BSD-style license
+# that can be found in the LICENSE file in the root of the source
+# tree. An additional intellectual property rights grant can be found
+# in the file PATENTS. All contributing project authors may
+# be found in the AUTHORS file in the root of the source tree.
+
+if (is_android) {
+ import("//build/config/android/config.gni")
+ import("//build/config/android/rules.gni")
+}
+import("../webrtc.gni")
+
+rtc_static_library("system_wrappers") {
+ sources = [
+ "include/aligned_array.h",
+ "include/aligned_malloc.h",
+ "include/atomic32.h",
+ "include/clock.h",
+ "include/cpu_info.h",
+ "include/event_wrapper.h",
+ "include/file_wrapper.h",
+ "include/ntp_time.h",
+ "include/rtp_to_ntp_estimator.h",
+ "include/rw_lock_wrapper.h",
+ "include/sleep.h",
+ "include/timestamp_extrapolator.h",
+ "source/aligned_malloc.cc",
+ "source/atomic32.cc",
+ "source/clock.cc",
+ "source/cpu_features.cc",
+ "source/cpu_info.cc",
+ "source/event.cc",
+ "source/event_timer_posix.cc",
+ "source/event_timer_posix.h",
+ "source/event_timer_win.cc",
+ "source/event_timer_win.h",
+ "source/file_impl.cc",
+ "source/rtp_to_ntp_estimator.cc",
+ "source/rw_lock.cc",
+ "source/rw_lock_posix.cc",
+ "source/rw_lock_posix.h",
+ "source/rw_lock_win.cc",
+ "source/rw_lock_win.h",
+ "source/sleep.cc",
+ "source/timestamp_extrapolator.cc",
+ ]
+
+ defines = []
+ libs = []
+ deps = [
+ "..:webrtc_common",
+ "../api:optional",
+ "../modules:module_api_public",
+ ]
+ public_deps = [
+ ":cpu_features_api",
+ ":field_trial_api",
+ ":metrics_api",
+ ]
+
+ if (is_android) {
+ defines += [ "WEBRTC_THREAD_RR" ]
+
+ if (build_with_mozilla) {
+ include_dirs = [
+ "/config/external/nspr",
+ "/nsprpub/lib/ds",
+ "/nsprpub/pr/include",
+ ]
+ } else {
+ deps += [ ":cpu_features_android" ]
+ }
+
+ libs += [ "log" ]
+ }
+
+ if (is_linux) {
+ defines += [ "WEBRTC_THREAD_RR" ]
+
+ if (!build_with_chromium) {
+ deps += [ ":cpu_features_linux" ]
+ }
+
+ libs += [ "rt" ]
+ }
+
+ if (is_ios || is_mac || is_bsd) {
+ defines += [ "WEBRTC_THREAD_RR" ]
+ }
+
+ # TODO(jschuh): Bug 1348: fix this warning.
+ configs += [ "//build/config/compiler:no_size_t_to_int_warning" ]
+
+ if (is_win) {
+ libs += [ "winmm.lib" ]
+
+ cflags = [ "/wd4334" ] # Ignore warning on shift operator promotion.
+
+ # Windows needs ../rtc_base:rtc_base due to include of
+ # webrtc/rtc_base/win32.h in source/clock.cc.
+ # TODO(kjellander): Remove (bugs.webrtc.org/6828)
+ deps += [ "../rtc_base:rtc_base" ]
+ }
+
+ if (is_win && is_clang) {
+ # Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163).
+ suppressed_configs += [ "//build/config/clang:find_bad_constructs" ]
+ }
+
+ deps += [
+ "../rtc_base:rtc_base_approved",
+ "../rtc_base:rtc_numerics",
+ ]
+}
+
+rtc_source_set("cpu_features_api") {
+ sources = [
+ "include/cpu_features_wrapper.h",
+ ]
+ deps = [
+ "..:webrtc_common",
+ ]
+}
+
+rtc_source_set("asm_defines") {
+ sources = [
+ "include/asm_defines.h",
+ ]
+}
+
+rtc_source_set("field_trial_api") {
+ sources = [
+ "include/field_trial.h",
+ ]
+}
+
+rtc_source_set("metrics_api") {
+ sources = [
+ "include/metrics.h",
+ ]
+ deps = [
+ "..:webrtc_common",
+ "../rtc_base:rtc_base_approved",
+ ]
+}
+
+rtc_source_set("field_trial_default") {
+ sources = [
+ "include/field_trial_default.h",
+ "source/field_trial_default.cc",
+ ]
+ deps = [
+ ":field_trial_api",
+ ]
+}
+
+rtc_source_set("metrics_default") {
+ sources = [
+ "include/metrics_default.h",
+ "source/metrics_default.cc",
+ ]
+ deps = [
+ ":metrics_api",
+ "../rtc_base:rtc_base_approved",
+ ]
+}
+
+group("system_wrappers_default") {
+ deps = [
+ ":field_trial_default",
+ ":metrics_default",
+ ":system_wrappers",
+ ]
+}
+
+if (is_android && !build_with_mozilla) {
+ rtc_static_library("cpu_features_android") {
+ sources = [
+ "source/cpu_features_android.c",
+ ]
+
+ deps = [
+ "//third_party/android_tools:cpu_features",
+ ]
+ }
+}
+
+if (is_linux) {
+ rtc_static_library("cpu_features_linux") {
+ sources = [
+ "source/cpu_features_linux.c",
+ ]
+ deps = [
+ ":cpu_features_api",
+ ]
+ }
+}
+
+if (rtc_include_tests) {
+ rtc_test("system_wrappers_unittests") {
+ testonly = true
+ sources = [
+ "source/aligned_array_unittest.cc",
+ "source/aligned_malloc_unittest.cc",
+ "source/clock_unittest.cc",
+ "source/event_timer_posix_unittest.cc",
+ "source/metrics_default_unittest.cc",
+ "source/metrics_unittest.cc",
+ "source/ntp_time_unittest.cc",
+ "source/rtp_to_ntp_estimator_unittest.cc",
+ ]
+ configs += [ "//build/config/compiler:no_size_t_to_int_warning" ]
+
+ if (!build_with_chromium && is_clang) {
+ # Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163).
+ suppressed_configs += [ "//build/config/clang:find_bad_constructs" ]
+ }
+
+ deps = [
+ ":metrics_default",
+ ":system_wrappers",
+ "..:webrtc_common",
+ "../rtc_base:rtc_base_approved",
+ "../test:test_main",
+ "//testing/gtest",
+ ]
+
+ if (is_android) {
+ deps += [ "//testing/android/native_test:native_test_support" ]
+
+ shard_timeout = 900
+ }
+ }
+}