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("//build_overrides/build.gni") 6import("//third_party/abseil-cpp/absl.gni") 7 8absl_source_set("hash") { 9 sources = [ 10 "internal/hash.cc", 11 "internal/hash.h", 12 ] 13 public = [ "hash.h" ] 14 deps = [ 15 ":city", 16 ":wyhash", 17 "//third_party/abseil-cpp/absl/base:config", 18 "//third_party/abseil-cpp/absl/base:core_headers", 19 "//third_party/abseil-cpp/absl/base:endian", 20 "//third_party/abseil-cpp/absl/container:fixed_array", 21 "//third_party/abseil-cpp/absl/meta:type_traits", 22 "//third_party/abseil-cpp/absl/numeric:int128", 23 "//third_party/abseil-cpp/absl/strings", 24 "//third_party/abseil-cpp/absl/types:optional", 25 "//third_party/abseil-cpp/absl/types:variant", 26 "//third_party/abseil-cpp/absl/utility", 27 ] 28} 29 30absl_source_set("hash_testing") { 31 testonly = true 32 public = [ "hash_testing.h" ] 33 deps = [ 34 ":spy_hash_state", 35 "//third_party/abseil-cpp/absl/meta:type_traits", 36 "//third_party/abseil-cpp/absl/strings", 37 "//third_party/abseil-cpp/absl/types:variant", 38 "//third_party/googletest:gtest", 39 ] 40} 41 42absl_source_set("spy_hash_state") { 43 testonly = true 44 public = [ "internal/spy_hash_state.h" ] 45 deps = [ 46 ":hash", 47 "//third_party/abseil-cpp/absl/strings", 48 "//third_party/abseil-cpp/absl/strings:str_format", 49 ] 50 visibility = [ "//third_party/abseil-cpp/absl/*" ] 51} 52 53absl_source_set("city") { 54 public = [ "internal/city.h" ] 55 sources = [ "internal/city.cc" ] 56 deps = [ 57 "//third_party/abseil-cpp/absl/base:config", 58 "//third_party/abseil-cpp/absl/base:core_headers", 59 "//third_party/abseil-cpp/absl/base:endian", 60 ] 61} 62 63absl_source_set("wyhash") { 64 public = [ "internal/wyhash.h" ] 65 sources = [ "internal/wyhash.cc" ] 66 deps = [ 67 "//third_party/abseil-cpp/absl/base:config", 68 "//third_party/abseil-cpp/absl/base:endian", 69 "//third_party/abseil-cpp/absl/numeric:int128", 70 ] 71 visibility = [ ":*" ] 72} 73