blob: 12db128fcd63c7d7c6c2e9da1c6f2a039c315734 [file] [log] [blame]
# 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("//flutter/third_party/abseil-cpp/absl.gni")
absl_source_set("compressed_tuple") {
public = [ "internal/compressed_tuple.h" ]
deps = [ "//flutter/third_party/abseil-cpp/absl/utility" ]
}
absl_source_set("fixed_array") {
public = [ "fixed_array.h" ]
deps = [
":compressed_tuple",
"//flutter/third_party/abseil-cpp/absl/algorithm",
"//flutter/third_party/abseil-cpp/absl/base:config",
"//flutter/third_party/abseil-cpp/absl/base:core_headers",
"//flutter/third_party/abseil-cpp/absl/base:dynamic_annotations",
"//flutter/third_party/abseil-cpp/absl/base:throw_delegate",
"//flutter/third_party/abseil-cpp/absl/memory",
]
}
absl_test("fixed_array_test") {
sources = [ "fixed_array_test.cc" ]
deps = [
":fixed_array",
":test_allocator",
":test_instance_tracker",
"//flutter/third_party/abseil-cpp/absl/base:config",
"//flutter/third_party/abseil-cpp/absl/base:exception_testing",
"//flutter/third_party/abseil-cpp/absl/hash:hash_testing",
"//flutter/third_party/abseil-cpp/absl/memory",
]
}
absl_source_set("inlined_vector_internal") {
public = [ "internal/inlined_vector.h" ]
deps = [
":compressed_tuple",
"//flutter/third_party/abseil-cpp/absl/base:config",
"//flutter/third_party/abseil-cpp/absl/base:core_headers",
"//flutter/third_party/abseil-cpp/absl/memory",
"//flutter/third_party/abseil-cpp/absl/meta:type_traits",
"//flutter/third_party/abseil-cpp/absl/types:span",
]
}
absl_source_set("inlined_vector") {
public = [ "inlined_vector.h" ]
deps = [
":inlined_vector_internal",
"//flutter/third_party/abseil-cpp/absl/algorithm",
"//flutter/third_party/abseil-cpp/absl/base:core_headers",
"//flutter/third_party/abseil-cpp/absl/base:throw_delegate",
"//flutter/third_party/abseil-cpp/absl/memory",
"//flutter/third_party/abseil-cpp/absl/meta:type_traits",
]
}
absl_source_set("test_allocator") {
testonly = true
public = [ "internal/test_allocator.h" ]
deps = [
"//flutter/third_party/abseil-cpp/absl/base:config",
"//third_party/googletest:gtest",
]
visibility = [ ":*" ]
}
absl_test("inlined_vector_test") {
sources = [ "inlined_vector_test.cc" ]
deps = [
":inlined_vector",
":test_allocator",
":test_instance_tracker",
"//flutter/third_party/abseil-cpp/absl/base:config",
"//flutter/third_party/abseil-cpp/absl/base:core_headers",
"//flutter/third_party/abseil-cpp/absl/base:exception_testing",
"//flutter/third_party/abseil-cpp/absl/hash:hash_testing",
"//flutter/third_party/abseil-cpp/absl/log:check",
"//flutter/third_party/abseil-cpp/absl/memory",
"//flutter/third_party/abseil-cpp/absl/strings",
]
}
absl_source_set("test_instance_tracker") {
testonly = true
sources = [ "internal/test_instance_tracker.cc" ]
public = [ "internal/test_instance_tracker.h" ]
deps = [ "//flutter/third_party/abseil-cpp/absl/types:compare" ]
visibility = [ "//flutter/third_party/abseil-cpp/absl/*" ]
}
absl_source_set("flat_hash_map") {
public = [ "flat_hash_map.h" ]
deps = [
":container_memory",
":hash_function_defaults",
":raw_hash_map",
"//flutter/third_party/abseil-cpp/absl/algorithm:container",
"//flutter/third_party/abseil-cpp/absl/base:core_headers",
"//flutter/third_party/abseil-cpp/absl/memory",
]
}
absl_test("flat_hash_map_test") {
sources = [ "flat_hash_map_test.cc" ]
deps = [
":flat_hash_map",
":hash_generator_testing",
":test_allocator",
":unordered_map_constructor_test",
":unordered_map_lookup_test",
":unordered_map_members_test",
":unordered_map_modifiers_test",
"//flutter/third_party/abseil-cpp/absl/log:check",
"//flutter/third_party/abseil-cpp/absl/meta:type_traits",
"//flutter/third_party/abseil-cpp/absl/types:any",
]
}
absl_source_set("flat_hash_set") {
public = [ "flat_hash_set.h" ]
deps = [
":container_memory",
":hash_function_defaults",
":raw_hash_set",
"//flutter/third_party/abseil-cpp/absl/algorithm:container",
"//flutter/third_party/abseil-cpp/absl/base:core_headers",
"//flutter/third_party/abseil-cpp/absl/memory",
]
}
absl_test("flat_hash_set_test") {
sources = [ "flat_hash_set_test.cc" ]
deps = [
":container_memory",
":flat_hash_set",
":hash_generator_testing",
":test_allocator",
":unordered_set_constructor_test",
":unordered_set_lookup_test",
":unordered_set_members_test",
":unordered_set_modifiers_test",
"//flutter/third_party/abseil-cpp/absl/base:config",
"//flutter/third_party/abseil-cpp/absl/log:check",
"//flutter/third_party/abseil-cpp/absl/memory",
"//flutter/third_party/abseil-cpp/absl/strings",
]
}
absl_source_set("node_hash_map") {
public = [ "node_hash_map.h" ]
deps = [
":container_memory",
":hash_function_defaults",
":node_slot_policy",
":raw_hash_map",
"//flutter/third_party/abseil-cpp/absl/algorithm:container",
"//flutter/third_party/abseil-cpp/absl/base:core_headers",
"//flutter/third_party/abseil-cpp/absl/memory",
]
}
absl_source_set("node_hash_set") {
public = [ "node_hash_set.h" ]
deps = [
":container_memory",
":hash_function_defaults",
":node_slot_policy",
":raw_hash_set",
"//flutter/third_party/abseil-cpp/absl/algorithm:container",
"//flutter/third_party/abseil-cpp/absl/base:core_headers",
"//flutter/third_party/abseil-cpp/absl/memory",
]
}
absl_source_set("container_memory") {
public = [ "internal/container_memory.h" ]
deps = [
"//flutter/third_party/abseil-cpp/absl/base:config",
"//flutter/third_party/abseil-cpp/absl/memory",
"//flutter/third_party/abseil-cpp/absl/meta:type_traits",
"//flutter/third_party/abseil-cpp/absl/utility",
]
}
# Disabled because container_memory_test requires -frtti
# absl_test("container_memory_test") {
# sources = [ "internal/container_memory_test.cc" ]
# deps = [
# ":container_memory",
# ":test_instance_tracker",
# "//flutter/third_party/abseil-cpp/absl/base:no_destructor",
# "//flutter/third_party/abseil-cpp/absl/meta:type_traits",
# "//flutter/third_party/abseil-cpp/absl/strings",
# ]
# }
absl_source_set("hash_function_defaults") {
public = [ "internal/hash_function_defaults.h" ]
visibility = [ "//flutter/third_party/abseil-cpp/absl/container:*" ]
deps = [
":common",
"//flutter/third_party/abseil-cpp/absl/base:config",
"//flutter/third_party/abseil-cpp/absl/hash",
"//flutter/third_party/abseil-cpp/absl/meta:type_traits",
"//flutter/third_party/abseil-cpp/absl/strings",
"//flutter/third_party/abseil-cpp/absl/strings:cord",
"//flutter/third_party/abseil-cpp/absl/strings:string_view",
]
}
absl_test("hash_function_defaults_test") {
sources = [ "internal/hash_function_defaults_test.cc" ]
deps = [
":flat_hash_map",
":flat_hash_set",
":hash_function_defaults",
"//flutter/third_party/abseil-cpp/absl/hash",
"//flutter/third_party/abseil-cpp/absl/random",
"//flutter/third_party/abseil-cpp/absl/strings",
"//flutter/third_party/abseil-cpp/absl/strings:cord",
"//flutter/third_party/abseil-cpp/absl/strings:cord_test_helpers",
]
}
absl_source_set("hash_generator_testing") {
testonly = true
sources = [ "internal/hash_generator_testing.cc" ]
public = [ "internal/hash_generator_testing.h" ]
deps = [
":hash_policy_testing",
"//flutter/third_party/abseil-cpp/absl/base:no_destructor",
"//flutter/third_party/abseil-cpp/absl/memory",
"//flutter/third_party/abseil-cpp/absl/meta:type_traits",
"//flutter/third_party/abseil-cpp/absl/strings:string_view",
]
}
absl_source_set("hash_policy_testing") {
testonly = true
public = [ "internal/hash_policy_testing.h" ]
deps = [
"//flutter/third_party/abseil-cpp/absl/hash",
"//flutter/third_party/abseil-cpp/absl/strings:string_view",
]
}
absl_source_set("hash_policy_traits") {
public = [ "internal/hash_policy_traits.h" ]
deps = [
":common_policy_traits",
"//flutter/third_party/abseil-cpp/absl/meta:type_traits",
]
}
absl_source_set("common_policy_traits") {
public = [ "internal/common_policy_traits.h" ]
visibility = [ "//flutter/third_party/abseil-cpp/absl/container:*" ]
deps = [ "//flutter/third_party/abseil-cpp/absl/meta:type_traits" ]
}
absl_test("common_policy_traits_test") {
sources = [ "internal/common_policy_traits_test.cc" ]
deps = [
":common_policy_traits",
"//flutter/third_party/abseil-cpp/absl/base:config",
]
}
absl_source_set("hashtable_debug") {
public = [ "internal/hashtable_debug.h" ]
deps = [ ":hashtable_debug_hooks" ]
}
absl_source_set("hashtable_debug_hooks") {
public = [ "internal/hashtable_debug_hooks.h" ]
deps = [ "//flutter/third_party/abseil-cpp/absl/base:config" ]
}
absl_source_set("hashtablez_sampler") {
public = [ "internal/hashtablez_sampler.h" ]
sources = [
"internal/hashtablez_sampler.cc",
"internal/hashtablez_sampler_force_weak_definition.cc",
]
deps = [
"//flutter/third_party/abseil-cpp/absl/base",
"//flutter/third_party/abseil-cpp/absl/base:config",
"//flutter/third_party/abseil-cpp/absl/base:core_headers",
"//flutter/third_party/abseil-cpp/absl/base:no_destructor",
"//flutter/third_party/abseil-cpp/absl/base:raw_logging_internal",
"//flutter/third_party/abseil-cpp/absl/debugging:stacktrace",
"//flutter/third_party/abseil-cpp/absl/memory",
"//flutter/third_party/abseil-cpp/absl/profiling:exponential_biased",
"//flutter/third_party/abseil-cpp/absl/profiling:sample_recorder",
"//flutter/third_party/abseil-cpp/absl/synchronization",
"//flutter/third_party/abseil-cpp/absl/time",
"//flutter/third_party/abseil-cpp/absl/utility",
]
}
absl_source_set("node_slot_policy") {
public = [ "internal/node_slot_policy.h" ]
deps = [ "//flutter/third_party/abseil-cpp/absl/base:config" ]
}
absl_test("node_slot_policy_test") {
sources = [ "internal/node_slot_policy_test.cc" ]
deps = [
":hash_policy_traits",
":node_slot_policy",
"//flutter/third_party/abseil-cpp/absl/base:config",
]
}
absl_source_set("raw_hash_map") {
public = [ "internal/raw_hash_map.h" ]
deps = [
":container_memory",
":raw_hash_set",
"//flutter/third_party/abseil-cpp/absl/base:config",
"//flutter/third_party/abseil-cpp/absl/base:core_headers",
"//flutter/third_party/abseil-cpp/absl/base:throw_delegate",
]
}
absl_source_set("common") {
public = [ "internal/common.h" ]
deps = [
"//flutter/third_party/abseil-cpp/absl/meta:type_traits",
"//flutter/third_party/abseil-cpp/absl/types:optional",
]
}
absl_source_set("raw_hash_set") {
sources = [ "internal/raw_hash_set.cc" ]
public = [ "internal/raw_hash_set.h" ]
deps = [
":common",
":compressed_tuple",
":container_memory",
":hash_policy_traits",
":hashtable_debug_hooks",
":hashtablez_sampler",
"//flutter/third_party/abseil-cpp/absl/base:config",
"//flutter/third_party/abseil-cpp/absl/base:core_headers",
"//flutter/third_party/abseil-cpp/absl/base:dynamic_annotations",
"//flutter/third_party/abseil-cpp/absl/base:endian",
"//flutter/third_party/abseil-cpp/absl/base:prefetch",
"//flutter/third_party/abseil-cpp/absl/base:raw_logging_internal",
"//flutter/third_party/abseil-cpp/absl/hash",
"//flutter/third_party/abseil-cpp/absl/memory",
"//flutter/third_party/abseil-cpp/absl/meta:type_traits",
"//flutter/third_party/abseil-cpp/absl/numeric:bits",
"//flutter/third_party/abseil-cpp/absl/utility",
]
}
absl_test("raw_hash_set_test") {
sources = [ "internal/raw_hash_set_test.cc" ]
deps = [
":container_memory",
":flat_hash_map",
":flat_hash_set",
":hash_function_defaults",
":hash_policy_testing",
":hashtable_debug",
":hashtablez_sampler",
":raw_hash_set",
":test_allocator",
"//flutter/third_party/abseil-cpp/absl/base",
"//flutter/third_party/abseil-cpp/absl/base:config",
"//flutter/third_party/abseil-cpp/absl/base:core_headers",
"//flutter/third_party/abseil-cpp/absl/base:prefetch",
"//flutter/third_party/abseil-cpp/absl/hash",
"//flutter/third_party/abseil-cpp/absl/log",
"//flutter/third_party/abseil-cpp/absl/memory",
"//flutter/third_party/abseil-cpp/absl/meta:type_traits",
"//flutter/third_party/abseil-cpp/absl/strings",
]
}
absl_test("raw_hash_set_allocator_test") {
sources = [ "internal/raw_hash_set_allocator_test.cc" ]
deps = [
":container_memory",
":raw_hash_set",
":tracked",
"//flutter/third_party/abseil-cpp/absl/base:config",
]
}
absl_source_set("layout") {
public = [ "internal/layout.h" ]
deps = [
"//flutter/third_party/abseil-cpp/absl/base:config",
"//flutter/third_party/abseil-cpp/absl/base:core_headers",
"//flutter/third_party/abseil-cpp/absl/debugging:demangle_internal",
"//flutter/third_party/abseil-cpp/absl/meta:type_traits",
"//flutter/third_party/abseil-cpp/absl/strings",
"//flutter/third_party/abseil-cpp/absl/types:span",
"//flutter/third_party/abseil-cpp/absl/utility",
]
}
absl_test("layout_test") {
sources = [ "internal/layout_test.cc" ]
deps = [
":layout",
"//flutter/third_party/abseil-cpp/absl/base:config",
"//flutter/third_party/abseil-cpp/absl/log:check",
"//flutter/third_party/abseil-cpp/absl/types:span",
"//flutter/third_party/abseil-cpp/absl/utility",
]
}
absl_source_set("tracked") {
testonly = true
public = [ "internal/tracked.h" ]
deps = [ "//flutter/third_party/abseil-cpp/absl/base:config" ]
}
absl_source_set("unordered_map_constructor_test") {
testonly = true
public = [ "internal/unordered_map_constructor_test.h" ]
deps = [
":hash_generator_testing",
":hash_policy_testing",
"//third_party/googletest:gtest",
]
}
absl_source_set("unordered_map_lookup_test") {
testonly = true
public = [ "internal/unordered_map_lookup_test.h" ]
deps = [
":hash_generator_testing",
":hash_policy_testing",
"//third_party/googletest:gtest",
]
}
absl_source_set("unordered_map_modifiers_test") {
testonly = true
public = [ "internal/unordered_map_modifiers_test.h" ]
deps = [
":hash_generator_testing",
":hash_policy_testing",
"//third_party/googletest:gtest",
]
}
absl_source_set("unordered_set_constructor_test") {
testonly = true
public = [ "internal/unordered_set_constructor_test.h" ]
deps = [
":hash_generator_testing",
":hash_policy_testing",
"//flutter/third_party/abseil-cpp/absl/meta:type_traits",
"//third_party/googletest:gtest",
]
}
absl_source_set("unordered_set_members_test") {
testonly = true
public = [ "internal/unordered_set_members_test.h" ]
deps = [
"//flutter/third_party/abseil-cpp/absl/meta:type_traits",
"//third_party/googletest:gtest",
]
}
absl_source_set("unordered_map_members_test") {
testonly = true
public = [ "internal/unordered_map_members_test.h" ]
deps = [
"//flutter/third_party/abseil-cpp/absl/meta:type_traits",
"//third_party/googletest:gtest",
]
}
absl_source_set("unordered_set_lookup_test") {
testonly = true
public = [ "internal/unordered_set_lookup_test.h" ]
deps = [
":hash_generator_testing",
":hash_policy_testing",
"//third_party/googletest:gtest",
]
}
absl_source_set("unordered_set_modifiers_test") {
testonly = true
public = [ "internal/unordered_set_modifiers_test.h" ]
deps = [
":hash_generator_testing",
":hash_policy_testing",
"//third_party/googletest:gtest",
]
}
absl_test("sample_element_size_test") {
public = [ "sample_element_size_test.cc" ]
deps = [
":flat_hash_map",
":flat_hash_set",
":node_hash_map",
":node_hash_set",
]
}
absl_source_set("btree") {
sources = [
"internal/btree.h",
"internal/btree_container.h",
]
public = [
"btree_map.h",
"btree_set.h",
]
deps = [
":common",
":common_policy_traits",
":compressed_tuple",
":container_memory",
":layout",
"//flutter/third_party/abseil-cpp/absl/base:core_headers",
"//flutter/third_party/abseil-cpp/absl/base:raw_logging_internal",
"//flutter/third_party/abseil-cpp/absl/base:throw_delegate",
"//flutter/third_party/abseil-cpp/absl/memory",
"//flutter/third_party/abseil-cpp/absl/meta:type_traits",
"//flutter/third_party/abseil-cpp/absl/strings:cord",
"//flutter/third_party/abseil-cpp/absl/strings:string_view",
"//flutter/third_party/abseil-cpp/absl/types:compare",
"//flutter/third_party/abseil-cpp/absl/utility",
]
}
absl_source_set("btree_test_common") {
testonly = true
public = [ "btree_test.h" ]
deps = [
":btree",
":flat_hash_set",
"//flutter/third_party/abseil-cpp/absl/strings",
"//flutter/third_party/abseil-cpp/absl/strings:cord",
"//flutter/third_party/abseil-cpp/absl/time",
]
}
# TODO(mbonadei): Fix issue with EXPECT_DEATH and uncomment.
# absl_test("btree_test") {
# sources = [ "btree_test.cc" ]
# deps = [
# ":btree",
# ":btree_test_common",
# ":test_allocator",
# ":test_instance_tracker",
# "//flutter/third_party/abseil-cpp/absl/algorithm:container",
# "//flutter/third_party/abseil-cpp/absl/base:core_headers",
# "//flutter/third_party/abseil-cpp/absl/base:raw_logging_internal",
# "//flutter/third_party/abseil-cpp/absl/flags:flag",
# "//flutter/third_party/abseil-cpp/absl/hash:hash_testing",
# "//flutter/third_party/abseil-cpp/absl/memory",
# "//flutter/third_party/abseil-cpp/absl/random",
# "//flutter/third_party/abseil-cpp/absl/strings",
# "//flutter/third_party/abseil-cpp/absl/types:compare",
# "//flutter/third_party/abseil-cpp/absl/types:optional",
# ]
# }