blob: c9aeff026fa1767a2018d550cd58066bb70ad7a3 [file] [log] [blame]
# Copyright 2018 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
import("//build_overrides/build.gni")
# Usage of Abseil in Chromium is guarded by an explicit opt-in list, before
# adding projects to this list please reach out to cxx@chromium.org and CC:
# - https://cs.chromium.org/chromium/src/third_party/abseil-cpp/OWNERS
#
# More information can be found at:
# https://docs.google.com/document/d/1DgS1-A3rzboTLjpf4m1sqkJgWjnY_Ru2dokk1X1vBDU
if (build_with_chromium) {
visibility = [
"//libassistant/*",
"//third_party/webrtc/*",
"//third_party/abseil-cpp/*",
"//third_party/googletest:gtest",
]
} else {
visibility = [ "*" ]
}
source_set("any") {
configs -= [ "//build/config/compiler:chromium_code" ]
configs += [
"//build/config/compiler:no_chromium_code",
"//third_party/abseil-cpp:absl_default_cflags_cc",
]
public_configs = [ "//third_party/abseil-cpp:absl_include_config" ]
public = [
"any.h",
]
deps = [
":bad_any_cast",
"../base:config",
"../base:core_headers",
"../meta:type_traits",
"../utility",
]
}
source_set("bad_any_cast") {
configs -= [ "//build/config/compiler:chromium_code" ]
configs += [
"//build/config/compiler:no_chromium_code",
"//third_party/abseil-cpp:absl_default_cflags_cc",
]
public_configs = [ "//third_party/abseil-cpp:absl_include_config" ]
public = [
"bad_any_cast.h",
]
deps = [
":bad_any_cast_impl",
"../base:config",
]
}
source_set("bad_any_cast_impl") {
configs -= [ "//build/config/compiler:chromium_code" ]
configs += [
"//build/config/compiler:no_chromium_code",
"//third_party/abseil-cpp:absl_default_cflags_cc",
]
public_configs = [ "//third_party/abseil-cpp:absl_include_config" ]
sources = [
"bad_any_cast.cc",
]
public = [
"bad_any_cast.h",
]
deps = [
"../base",
"../base:config",
]
visibility = []
visibility += [ ":*" ]
}
source_set("span") {
configs -= [ "//build/config/compiler:chromium_code" ]
configs += [
"//build/config/compiler:no_chromium_code",
"//third_party/abseil-cpp:absl_default_cflags_cc",
]
public_configs = [ "//third_party/abseil-cpp:absl_include_config" ]
public = [
"span.h",
]
sources = [
"internal/span.h",
]
deps = [
"../algorithm",
"../base:core_headers",
"../base:throw_delegate",
"../meta:type_traits",
]
}
source_set("optional") {
configs -= [ "//build/config/compiler:chromium_code" ]
configs += [
"//build/config/compiler:no_chromium_code",
"//third_party/abseil-cpp:absl_default_cflags_cc",
]
public_configs = [ "//third_party/abseil-cpp:absl_include_config" ]
sources = [
"internal/optional.h",
]
public = [
"optional.h",
]
deps = [
":bad_optional_access",
"../base:base_internal",
"../base:config",
"../base:core_headers",
"../memory",
"../meta:type_traits",
"../utility",
]
}
source_set("bad_optional_access") {
configs -= [ "//build/config/compiler:chromium_code" ]
configs += [
"//build/config/compiler:no_chromium_code",
"//third_party/abseil-cpp:absl_default_cflags_cc",
]
public_configs = [ "//third_party/abseil-cpp:absl_include_config" ]
sources = [
"bad_optional_access.cc",
]
public = [
"bad_optional_access.h",
]
deps = [
"../base",
"../base:config",
]
}
source_set("bad_variant_access") {
configs -= [ "//build/config/compiler:chromium_code" ]
configs += [
"//build/config/compiler:no_chromium_code",
"//third_party/abseil-cpp:absl_default_cflags_cc",
]
public_configs = [ "//third_party/abseil-cpp:absl_include_config" ]
sources = [
"bad_variant_access.cc",
]
public = [
"bad_variant_access.h",
]
deps = [
"../base",
"../base:config",
]
}
source_set("variant") {
configs -= [ "//build/config/compiler:chromium_code" ]
configs += [
"//build/config/compiler:no_chromium_code",
"//third_party/abseil-cpp:absl_default_cflags_cc",
]
public_configs = [ "//third_party/abseil-cpp:absl_include_config" ]
sources = [
"internal/variant.h",
]
public = [
"variant.h",
]
deps = [
":bad_variant_access",
"../base:base_internal",
"../base:config",
"../base:core_headers",
"../meta:type_traits",
"../utility",
]
}
source_set("compare") {
configs -= [ "//build/config/compiler:chromium_code" ]
configs += [
"//build/config/compiler:no_chromium_code",
"//third_party/abseil-cpp:absl_default_cflags_cc",
]
public_configs = [ "//third_party/abseil-cpp:absl_include_config" ]
public = [
"compare.h",
]
deps = [
"../base:core_headers",
"../meta:type_traits",
]
}