blob: 1d1efd29497c1aba9960947c9b4252238a7ef411 [file] [log] [blame]
# Copyright 2019 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.
load("//build_config:build_config.bzl", "build_config")
load("@rules_cc//cc:defs.bzl", "cc_library")
cc_library(
name = "base",
srcs = [
"debug/crash_logging.cc",
"strings/string_util.cc",
"strings/string_util_constants.cc",
"strings/utf_string_conversion_utils.cc",
"strings/utf_string_conversions.cc",
"strings/utf_ostream_operators.cc",
] + select({
"//build_config:windows_x86_64": ["strings/string_util_win.cc"],
"//conditions:default": [],
}),
hdrs = [
"bits.h",
"compiler_specific.h",
"containers/checked_iterators.h",
"containers/contains.h",
"containers/contiguous_iterator.h",
"containers/span.h",
"containers/util.h",
"cxx20_is_constant_evaluated.h",
"cxx20_to_address.h",
"debug/crash_logging.h",
"debug/leak_annotations.h",
"functional/identity.h",
"functional/invoke.h",
"functional/not_fn.h",
"memory/raw_ptr_exclusion.h",
"no_destructor.h",
"numerics/checked_math.h",
"numerics/checked_math_impl.h",
"numerics/clamped_math.h",
"numerics/clamped_math_impl.h",
"numerics/safe_conversions.h",
"numerics/safe_conversions_arm_impl.h",
"numerics/safe_conversions_impl.h",
"numerics/safe_math.h",
"numerics/safe_math_arm_impl.h",
"numerics/safe_math_clang_gcc_impl.h",
"numerics/safe_math_shared_impl.h",
"ranges/algorithm.h",
"ranges/functional.h",
"ranges/ranges.h",
"stl_util.h",
"template_util.h",
"types/always_false.h",
"strings/string_piece_forward.h",
"strings/string_piece.h",
"strings/string_util.h",
"strings/string_util_impl_helpers.h",
"strings/string_util_internal.h",
"strings/string_number_conversions.h",
"strings/utf_string_conversions.h",
"strings/utf_ostream_operators.h",
"strings/utf_string_conversion_utils.h",
"win/win_handle_types.h",
] + build_config.strings_hdrs,
copts = build_config.default_copts,
textual_hdrs = [
"win/win_handle_types_list.inc",
],
visibility = ["//visibility:public"],
deps = [
"//base/third_party/icu",
"//build:build_config",
"//build:buildflag",
"//polyfills",
"@com_google_absl//absl/types:optional",
],
)