|  | # Copyright (c) 2018 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. | 
|  |  | 
|  | import("../../webrtc.gni") | 
|  | if (is_android) { | 
|  | import("//build/config/android/config.gni") | 
|  | import("//build/config/android/rules.gni") | 
|  | } | 
|  |  | 
|  | rtc_source_set("arch") { | 
|  | sources = [ "arch.h" ] | 
|  | } | 
|  |  | 
|  | rtc_source_set("asm_defines") { | 
|  | sources = [ "asm_defines.h" ] | 
|  | } | 
|  |  | 
|  | rtc_library("file_wrapper") { | 
|  | sources = [ | 
|  | "file_wrapper.cc", | 
|  | "file_wrapper.h", | 
|  | ] | 
|  | deps = [ | 
|  | "..:checks", | 
|  | "..:criticalsection", | 
|  | "..:safe_conversions", | 
|  | "//third_party/abseil-cpp/absl/strings:string_view", | 
|  | ] | 
|  | } | 
|  |  | 
|  | if (rtc_include_tests) { | 
|  | rtc_library("file_wrapper_unittests") { | 
|  | testonly = true | 
|  | sources = [ "file_wrapper_unittest.cc" ] | 
|  | deps = [ | 
|  | ":file_wrapper", | 
|  | "//rtc_base:checks", | 
|  | "//test:fileutils", | 
|  | "//test:test_support", | 
|  | ] | 
|  | } | 
|  | } | 
|  |  | 
|  | rtc_source_set("ignore_warnings") { | 
|  | sources = [ "ignore_warnings.h" ] | 
|  | } | 
|  |  | 
|  | rtc_source_set("inline") { | 
|  | sources = [ "inline.h" ] | 
|  | } | 
|  |  | 
|  | rtc_source_set("unused") { | 
|  | sources = [ "unused.h" ] | 
|  | } | 
|  |  | 
|  | rtc_source_set("assume") { | 
|  | sources = [ "assume.h" ] | 
|  | } | 
|  |  | 
|  | rtc_source_set("rtc_export") { | 
|  | sources = [ | 
|  | "rtc_export.h", | 
|  | "rtc_export_template.h", | 
|  | ] | 
|  | } | 
|  |  | 
|  | rtc_source_set("no_unique_address") { | 
|  | sources = [ "no_unique_address.h" ] | 
|  | } | 
|  |  | 
|  | rtc_source_set("no_cfi_icall") { | 
|  | sources = [ "no_cfi_icall.h" ] | 
|  |  | 
|  | deps = [ "..:sanitizer" ] | 
|  | } | 
|  |  | 
|  | if (is_mac || is_ios) { | 
|  | rtc_library("cocoa_threading") { | 
|  | sources = [ | 
|  | "cocoa_threading.h", | 
|  | "cocoa_threading.mm", | 
|  | ] | 
|  | deps = [ "..:checks" ] | 
|  | frameworks = [ "Foundation.framework" ] | 
|  | } | 
|  |  | 
|  | rtc_library("gcd_helpers") { | 
|  | sources = [ | 
|  | "gcd_helpers.h", | 
|  | "gcd_helpers.m", | 
|  | ] | 
|  | include_dirs = [ "../.." ] | 
|  | } | 
|  | } | 
|  |  | 
|  | rtc_library("warn_current_thread_is_deadlocked") { | 
|  | sources = [ "warn_current_thread_is_deadlocked.h" ] | 
|  | deps = [] | 
|  | if (is_android && !build_with_chromium) { | 
|  | sources += [ "warn_current_thread_is_deadlocked.cc" ] | 
|  | deps += [ | 
|  | "..:logging", | 
|  | "../../sdk/android:native_api_stacktrace", | 
|  | ] | 
|  | } | 
|  | } |