• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright 2018 The Chromium Authors. All rights reserved.
2# Use of this source code is governed by a BSD-style license that can be
3# found in the LICENSE file.
4
5import("//third_party/abseil-cpp/absl.gni")
6
7absl_source_set("graphcycles_internal") {
8  sources = [ "internal/graphcycles.cc" ]
9  public = [ "internal/graphcycles.h" ]
10  deps = [
11    "//third_party/abseil-cpp/absl/base",
12    "//third_party/abseil-cpp/absl/base:base_internal",
13    "//third_party/abseil-cpp/absl/base:config",
14    "//third_party/abseil-cpp/absl/base:core_headers",
15    "//third_party/abseil-cpp/absl/base:malloc_internal",
16    "//third_party/abseil-cpp/absl/base:raw_logging_internal",
17  ]
18  visibility = [ "//third_party/abseil-cpp/absl/*" ]
19}
20
21absl_source_set("kernel_timeout_internal") {
22  public = [ "internal/kernel_timeout.h" ]
23  deps = [
24    "//third_party/abseil-cpp/absl/base:core_headers",
25    "//third_party/abseil-cpp/absl/base:raw_logging_internal",
26    "//third_party/abseil-cpp/absl/time",
27  ]
28  visibility = [ ":*" ]
29}
30
31absl_source_set("synchronization") {
32  sources = [
33    "barrier.cc",
34    "blocking_counter.cc",
35    "internal/create_thread_identity.cc",
36    "internal/per_thread_sem.cc",
37    "internal/waiter.cc",
38    "mutex.cc",
39    "notification.cc",
40  ]
41  public = [
42    "barrier.h",
43    "blocking_counter.h",
44    "internal/create_thread_identity.h",
45    "internal/futex.h",
46    "internal/per_thread_sem.h",
47    "internal/waiter.h",
48    "mutex.h",
49    "notification.h",
50  ]
51  deps = [
52    ":graphcycles_internal",
53    ":kernel_timeout_internal",
54    "//third_party/abseil-cpp/absl/base",
55    "//third_party/abseil-cpp/absl/base:atomic_hook",
56    "//third_party/abseil-cpp/absl/base:base_internal",
57    "//third_party/abseil-cpp/absl/base:config",
58    "//third_party/abseil-cpp/absl/base:core_headers",
59    "//third_party/abseil-cpp/absl/base:dynamic_annotations",
60    "//third_party/abseil-cpp/absl/base:malloc_internal",
61    "//third_party/abseil-cpp/absl/base:raw_logging_internal",
62    "//third_party/abseil-cpp/absl/debugging:stacktrace",
63    "//third_party/abseil-cpp/absl/debugging:symbolize",
64    "//third_party/abseil-cpp/absl/time",
65  ]
66}
67
68absl_source_set("thread_pool") {
69  testonly = true
70  public = [ "internal/thread_pool.h" ]
71  deps = [
72    ":synchronization",
73    "//third_party/abseil-cpp/absl/base:core_headers",
74  ]
75  visibility = [ "//third_party/abseil-cpp/absl/*" ]
76}
77
78absl_source_set("per_thread_sem_test_common") {
79  testonly = true
80  sources = [ "internal/per_thread_sem_test.cc" ]
81  deps = [
82    ":synchronization",
83    "//third_party/abseil-cpp/absl/base",
84    "//third_party/abseil-cpp/absl/base:config",
85    "//third_party/abseil-cpp/absl/strings",
86    "//third_party/abseil-cpp/absl/time",
87    "//third_party/googletest:gtest",
88  ]
89}
90