# 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("//build_overrides/build.gni")
import("//third_party/abseil-cpp/absl.gni")
absl_source_set("any") {
public = [ "any.h" ]
deps = [
":bad_any_cast",
"//third_party/abseil-cpp/absl/base:config",
"//third_party/abseil-cpp/absl/base:core_headers",
"//third_party/abseil-cpp/absl/base:fast_type_id",
"//third_party/abseil-cpp/absl/meta:type_traits",
"//third_party/abseil-cpp/absl/utility",
]
}
absl_source_set("bad_any_cast") {
public = [ "bad_any_cast.h" ]
deps = [
":bad_any_cast_impl",
"//third_party/abseil-cpp/absl/base:config",
]
}
absl_source_set("bad_any_cast_impl") {
sources = [ "bad_any_cast.cc" ]
public = [ "bad_any_cast.h" ]
deps = [
"//third_party/abseil-cpp/absl/base:config",
"//third_party/abseil-cpp/absl/base:raw_logging_internal",
]
visibility = [ ":*" ]
}
absl_source_set("span") {
public = [ "span.h" ]
sources = [ "internal/span.h" ]
deps = [
"//third_party/abseil-cpp/absl/algorithm",
"//third_party/abseil-cpp/absl/base:core_headers",
"//third_party/abseil-cpp/absl/base:nullability",
"//third_party/abseil-cpp/absl/base:throw_delegate",
"//third_party/abseil-cpp/absl/meta:type_traits",
]
}
absl_test("span_test") {
sources = [ "span_test.cc" ]
deps = [
":span",
"//third_party/abseil-cpp/absl/base:config",
"//third_party/abseil-cpp/absl/base:core_headers",
"//third_party/abseil-cpp/absl/base:exception_testing",
"//third_party/abseil-cpp/absl/container:fixed_array",
"//third_party/abseil-cpp/absl/container:inlined_vector",
"//third_party/abseil-cpp/absl/hash:hash_testing",
"//third_party/abseil-cpp/absl/meta:type_traits",
"//third_party/abseil-cpp/absl/strings",
]
}
absl_source_set("optional") {
sources = [ "internal/optional.h" ]
public = [ "optional.h" ]
deps = [
":bad_optional_access",
"//third_party/abseil-cpp/absl/base:base_internal",
"//third_party/abseil-cpp/absl/base:config",
"//third_party/abseil-cpp/absl/base:core_headers",
"//third_party/abseil-cpp/absl/base:nullability",
"//third_party/abseil-cpp/absl/memory",
"//third_party/abseil-cpp/absl/meta:type_traits",
"//third_party/abseil-cpp/absl/utility",
]
}
absl_source_set("bad_optional_access") {
sources = [ "bad_optional_access.cc" ]
public = [ "bad_optional_access.h" ]
deps = [
"//third_party/abseil-cpp/absl/base:config",
"//third_party/abseil-cpp/absl/base:raw_logging_internal",
]
}
absl_source_set("bad_variant_access") {
sources = [ "bad_variant_access.cc" ]
public = [ "bad_variant_access.h" ]
deps = [
"//third_party/abseil-cpp/absl/base:config",
"//third_party/abseil-cpp/absl/base:raw_logging_internal",
]
}
absl_source_set("variant") {
sources = [ "internal/variant.h" ]
public = [ "variant.h" ]
deps = [
":bad_variant_access",
"//third_party/abseil-cpp/absl/base:base_internal",
"//third_party/abseil-cpp/absl/base:config",
"//third_party/abseil-cpp/absl/base:core_headers",
"//third_party/abseil-cpp/absl/meta:type_traits",
"//third_party/abseil-cpp/absl/utility",
]
}
absl_source_set("compare") {
public = [ "compare.h" ]
deps = [
"//third_party/abseil-cpp/absl/base:config",
"//third_party/abseil-cpp/absl/base:core_headers",
"//third_party/abseil-cpp/absl/meta:type_traits",
]
}
absl_test("optional_test") {
sources = [ "optional_test.cc" ]
deps = [
":optional",
"//third_party/abseil-cpp/absl/base:config",
"//third_party/abseil-cpp/absl/log",
"//third_party/abseil-cpp/absl/meta:type_traits",
"//third_party/abseil-cpp/absl/strings:string_view",
]
}
absl_test("variant_test") {
sources = [ "variant_test.cc" ]
deps = [
":variant",
"//third_party/abseil-cpp/absl/base:config",
"//third_party/abseil-cpp/absl/base:core_headers",
"//third_party/abseil-cpp/absl/memory",
"//third_party/abseil-cpp/absl/meta:type_traits",
"//third_party/abseil-cpp/absl/strings:string_view",
]
}