394 lines
8.4 KiB
Text
394 lines
8.4 KiB
Text
# Copyright 2018 The Chromium Authors
|
|
# Use of this source code is governed by a BSD-style license that can be
|
|
# found in the LICENSE file.
|
|
|
|
import("//third_party/abseil-cpp/absl.gni")
|
|
|
|
absl_source_set("atomic_hook") {
|
|
public = [ "internal/atomic_hook.h" ]
|
|
deps = [
|
|
":config",
|
|
":core_headers",
|
|
]
|
|
visibility = [ "//third_party/abseil-cpp/absl/*" ]
|
|
}
|
|
|
|
absl_source_set("errno_saver") {
|
|
public = [ "internal/errno_saver.h" ]
|
|
deps = [ ":config" ]
|
|
visibility = [ "//third_party/abseil-cpp/absl/*" ]
|
|
}
|
|
|
|
absl_source_set("log_severity") {
|
|
sources = [ "log_severity.cc" ]
|
|
public = [ "log_severity.h" ]
|
|
deps = [
|
|
":config",
|
|
":core_headers",
|
|
]
|
|
}
|
|
|
|
absl_source_set("no_destructor") {
|
|
public = [ "no_destructor.h" ]
|
|
deps = [
|
|
":config",
|
|
":nullability",
|
|
]
|
|
}
|
|
|
|
absl_source_set("nullability") {
|
|
sources = [ "internal/nullability_impl.h" ]
|
|
public = [ "nullability.h" ]
|
|
deps = [
|
|
":config",
|
|
":core_headers",
|
|
"//third_party/abseil-cpp/absl/meta:type_traits",
|
|
]
|
|
}
|
|
|
|
absl_source_set("raw_logging_internal") {
|
|
sources = [ "internal/raw_logging.cc" ]
|
|
public = [ "internal/raw_logging.h" ]
|
|
deps = [
|
|
":atomic_hook",
|
|
":config",
|
|
":core_headers",
|
|
":errno_saver",
|
|
":log_severity",
|
|
]
|
|
visibility = [
|
|
"//third_party/abseil-cpp:absl_component_deps",
|
|
"//third_party/abseil-cpp/absl/*",
|
|
]
|
|
}
|
|
|
|
absl_source_set("spinlock_wait") {
|
|
sources = [
|
|
"internal/spinlock_akaros.inc",
|
|
"internal/spinlock_linux.inc",
|
|
"internal/spinlock_posix.inc",
|
|
"internal/spinlock_wait.cc",
|
|
"internal/spinlock_win32.inc",
|
|
]
|
|
public = [ "internal/spinlock_wait.h" ]
|
|
deps = [
|
|
":base_internal",
|
|
":core_headers",
|
|
":errno_saver",
|
|
]
|
|
visibility = [ "//third_party/abseil-cpp/absl/base:*" ]
|
|
}
|
|
|
|
absl_source_set("config") {
|
|
public = [
|
|
"config.h",
|
|
"options.h",
|
|
"policy_checks.h",
|
|
]
|
|
}
|
|
|
|
absl_source_set("cycleclock_internal") {
|
|
public = [
|
|
"internal/cycleclock_config.h",
|
|
"internal/unscaledcycleclock_config.h",
|
|
]
|
|
visibility = [ "//third_party/abseil-cpp/absl/*" ]
|
|
deps = [
|
|
":base_internal",
|
|
":config",
|
|
]
|
|
}
|
|
|
|
absl_source_set("dynamic_annotations") {
|
|
public = [ "dynamic_annotations.h" ]
|
|
|
|
# Abseil's dynamic annotations are only visible inside Abseil because
|
|
# their usage is deprecated in Chromium (see README.chromium for more info).
|
|
visibility = [
|
|
"//third_party/abseil-cpp:absl_component_deps",
|
|
"//third_party/abseil-cpp/absl/*",
|
|
]
|
|
deps = [
|
|
":config",
|
|
":core_headers",
|
|
]
|
|
}
|
|
|
|
absl_source_set("core_headers") {
|
|
public = [
|
|
"attributes.h",
|
|
"const_init.h",
|
|
"macros.h",
|
|
"optimization.h",
|
|
"port.h",
|
|
"thread_annotations.h",
|
|
]
|
|
deps = [ ":config" ]
|
|
}
|
|
|
|
absl_source_set("malloc_internal") {
|
|
sources = [ "internal/low_level_alloc.cc" ]
|
|
public = [
|
|
"internal/direct_mmap.h",
|
|
"internal/low_level_alloc.h",
|
|
]
|
|
deps = [
|
|
":base",
|
|
":base_internal",
|
|
":config",
|
|
":core_headers",
|
|
":dynamic_annotations",
|
|
":raw_logging_internal",
|
|
]
|
|
}
|
|
|
|
absl_source_set("base_internal") {
|
|
public = [
|
|
"internal/hide_ptr.h",
|
|
"internal/identity.h",
|
|
"internal/inline_variable.h",
|
|
"internal/invoke.h",
|
|
"internal/scheduling_mode.h",
|
|
]
|
|
deps = [
|
|
":config",
|
|
"//third_party/abseil-cpp/absl/meta:type_traits",
|
|
]
|
|
visibility = [ "//third_party/abseil-cpp/absl/*" ]
|
|
}
|
|
|
|
absl_source_set("base") {
|
|
sources = [
|
|
"internal/cycleclock.cc",
|
|
"internal/spinlock.cc",
|
|
"internal/sysinfo.cc",
|
|
"internal/thread_identity.cc",
|
|
"internal/unscaledcycleclock.cc",
|
|
]
|
|
public = [
|
|
"call_once.h",
|
|
"casts.h",
|
|
"internal/cycleclock.h",
|
|
"internal/low_level_scheduling.h",
|
|
"internal/per_thread_tls.h",
|
|
"internal/spinlock.h",
|
|
"internal/sysinfo.h",
|
|
"internal/thread_identity.h",
|
|
"internal/tsan_mutex_interface.h",
|
|
"internal/unscaledcycleclock.h",
|
|
]
|
|
|
|
# TODO(mbonadei): The bazel file has:
|
|
# "-DEFAULTLIB:advapi32.lib"
|
|
# understand if this is needed here as well.
|
|
deps = [
|
|
":atomic_hook",
|
|
":base_internal",
|
|
":config",
|
|
":core_headers",
|
|
":cycleclock_internal",
|
|
":dynamic_annotations",
|
|
":log_severity",
|
|
":nullability",
|
|
":raw_logging_internal",
|
|
":spinlock_wait",
|
|
"//third_party/abseil-cpp/absl/meta:type_traits",
|
|
]
|
|
}
|
|
|
|
# This should be an executable() more than a test.
|
|
# It cannot be enabled because it defines its own main() function.
|
|
# absl_test("c_header_test") {
|
|
# sources = ["c_header_test.c"]
|
|
# deps = [
|
|
# ":config",
|
|
# ":core_headers",
|
|
# ]
|
|
# }
|
|
|
|
absl_source_set("throw_delegate") {
|
|
sources = [ "internal/throw_delegate.cc" ]
|
|
public = [ "internal/throw_delegate.h" ]
|
|
deps = [
|
|
":config",
|
|
":raw_logging_internal",
|
|
]
|
|
visibility = [ "//third_party/abseil-cpp/absl/*" ]
|
|
}
|
|
|
|
absl_source_set("exception_testing") {
|
|
testonly = true
|
|
public = [ "internal/exception_testing.h" ]
|
|
deps = [ ":config" ]
|
|
visibility = [ "//third_party/abseil-cpp/absl/*" ]
|
|
}
|
|
|
|
absl_source_set("pretty_function") {
|
|
public = [ "internal/pretty_function.h" ]
|
|
visibility = [ "//third_party/abseil-cpp/absl/*" ]
|
|
}
|
|
|
|
# TODO(mbonadei): This target throws by design. We should probably
|
|
# just remove it.
|
|
# source_set("exception_safety_testing") {
|
|
# testonly = true
|
|
# configs -= [ "//build/config/compiler:chromium_code" ]
|
|
# configs += [
|
|
# "//build/config/compiler:no_chromium_code",
|
|
# "//third_party/abseil-cpp:absl_test_cflags_cc",
|
|
# ]
|
|
# public_configs = [ "//third_party/abseil-cpp:absl_include_config" ]
|
|
# sources = [
|
|
# "internal/exception_safety_testing.cc",
|
|
# ]
|
|
# public = [
|
|
# "internal/exception_safety_testing.h",
|
|
# ]
|
|
# deps = [
|
|
# ":config",
|
|
# ":pretty_function",
|
|
# "//third_party/abseil-cpp/absl/memory",
|
|
# "//third_party/abseil-cpp/absl/meta:type_traits",
|
|
# "//third_party/abseil-cpp/absl/strings",
|
|
# "//third_party/abseil-cpp/absl/utility",
|
|
# "//third_party/googletest:gtest",
|
|
# ]
|
|
# }
|
|
|
|
absl_source_set("spinlock_test_common") {
|
|
testonly = true
|
|
sources = [ "spinlock_test_common.cc" ]
|
|
deps = [
|
|
":base",
|
|
":base_internal",
|
|
":config",
|
|
":core_headers",
|
|
"//third_party/abseil-cpp/absl/synchronization",
|
|
"//third_party/googletest:gtest",
|
|
]
|
|
}
|
|
|
|
absl_source_set("endian") {
|
|
public = [
|
|
"internal/endian.h",
|
|
"internal/unaligned_access.h",
|
|
]
|
|
deps = [
|
|
":base",
|
|
":config",
|
|
":core_headers",
|
|
":nullability",
|
|
]
|
|
}
|
|
|
|
absl_source_set("scoped_set_env") {
|
|
testonly = true
|
|
public = [ "internal/scoped_set_env.h" ]
|
|
sources = [ "internal/scoped_set_env.cc" ]
|
|
deps = [
|
|
":config",
|
|
":raw_logging_internal",
|
|
]
|
|
visibility = [ "//third_party/abseil-cpp/absl/*" ]
|
|
}
|
|
|
|
absl_source_set("strerror") {
|
|
sources = [ "internal/strerror.cc" ]
|
|
public = [ "internal/strerror.h" ]
|
|
deps = [
|
|
":config",
|
|
":core_headers",
|
|
":errno_saver",
|
|
]
|
|
visibility = [ "//third_party/abseil-cpp/absl/*" ]
|
|
}
|
|
|
|
absl_source_set("fast_type_id") {
|
|
public = [ "internal/fast_type_id.h" ]
|
|
deps = [ ":config" ]
|
|
visibility = [ "//third_party/abseil-cpp/absl/*" ]
|
|
}
|
|
|
|
absl_source_set("prefetch") {
|
|
public = [ "prefetch.h" ]
|
|
deps = [
|
|
":config",
|
|
":core_headers",
|
|
]
|
|
}
|
|
|
|
absl_test("prefetch_test") {
|
|
sources = [ "prefetch_test.cc" ]
|
|
deps = [ ":prefetch" ]
|
|
}
|
|
|
|
absl_source_set("poison") {
|
|
public = [ "internal/poison.h" ]
|
|
sources = [ "internal/poison.cc" ]
|
|
deps = [
|
|
":config",
|
|
":core_headers",
|
|
":malloc_internal",
|
|
]
|
|
}
|
|
|
|
absl_test("poison_test") {
|
|
sources = [ "internal/poison_test.cc" ]
|
|
deps = [
|
|
":config",
|
|
":poison",
|
|
]
|
|
}
|
|
|
|
absl_source_set("tracing_internal") {
|
|
public = [ "internal/tracing.h" ]
|
|
sources = [ "internal/tracing.cc" ]
|
|
deps = [
|
|
":config",
|
|
":core_headers",
|
|
]
|
|
}
|
|
|
|
absl_test("tracing_internal_weak_test") {
|
|
sources = [ "internal/tracing_weak_test.cc" ]
|
|
deps = [ ":tracing_internal" ]
|
|
}
|
|
|
|
absl_test("tracing_internal_strong_test") {
|
|
sources = [ "internal/tracing_strong_test.cc" ]
|
|
deps = [
|
|
":config",
|
|
":core_headers",
|
|
":tracing_internal",
|
|
]
|
|
}
|
|
|
|
absl_test("config_test") {
|
|
sources = [ "config_test.cc" ]
|
|
deps = [
|
|
":config",
|
|
"//third_party/abseil-cpp/absl/synchronization:thread_pool",
|
|
]
|
|
}
|
|
|
|
absl_test("no_destructor_test") {
|
|
sources = [ "no_destructor_test.cc" ]
|
|
deps = [
|
|
":config",
|
|
":no_destructor",
|
|
":raw_logging_internal",
|
|
]
|
|
}
|
|
|
|
absl_test("nullability_test") {
|
|
sources = [ "nullability_test.cc" ]
|
|
deps = [
|
|
":core_headers",
|
|
":nullability",
|
|
]
|
|
}
|
|
|
|
absl_test("nullability_default_nonnull_test") {
|
|
sources = [ "nullability_default_nonnull_test.cc" ]
|
|
deps = [ ":nullability" ]
|
|
}
|