222 lines
5.8 KiB
Plaintext
222 lines
5.8 KiB
Plaintext
# 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.
|
|
|
|
import("//third_party/abseil-cpp/absl.gni")
|
|
|
|
absl_source_set("path_util") {
|
|
public = [ "internal/path_util.h" ]
|
|
deps = [
|
|
"//third_party/abseil-cpp/absl/base:config",
|
|
"//third_party/abseil-cpp/absl/strings",
|
|
]
|
|
visibility = [ ":*" ]
|
|
}
|
|
|
|
absl_source_set("program_name") {
|
|
sources = [ "internal/program_name.cc" ]
|
|
public = [ "internal/program_name.h" ]
|
|
deps = [
|
|
":path_util",
|
|
"//third_party/abseil-cpp/absl/base:config",
|
|
"//third_party/abseil-cpp/absl/base:core_headers",
|
|
"//third_party/abseil-cpp/absl/strings",
|
|
"//third_party/abseil-cpp/absl/synchronization",
|
|
]
|
|
visibility = [ ":*" ]
|
|
}
|
|
|
|
# Since absl/flags are only used by some test binaries (e.g. in WebRTC),
|
|
# there is no need to strip flags from mobile platforms binaries.
|
|
# This does not affect Chromium.
|
|
config("absl_flags_config") {
|
|
defines = [ "ABSL_FLAGS_STRIP_NAMES=0" ]
|
|
}
|
|
|
|
absl_source_set("config") {
|
|
sources = [ "usage_config.cc" ]
|
|
public_configs = [ ":absl_flags_config" ]
|
|
public = [
|
|
"config.h",
|
|
"usage_config.h",
|
|
]
|
|
deps = [
|
|
":path_util",
|
|
":program_name",
|
|
"//third_party/abseil-cpp/absl/base:config",
|
|
"//third_party/abseil-cpp/absl/base:core_headers",
|
|
"//third_party/abseil-cpp/absl/strings",
|
|
"//third_party/abseil-cpp/absl/synchronization",
|
|
]
|
|
}
|
|
|
|
absl_source_set("marshalling") {
|
|
sources = [ "marshalling.cc" ]
|
|
public = [ "marshalling.h" ]
|
|
deps = [
|
|
"//third_party/abseil-cpp/absl/base:config",
|
|
"//third_party/abseil-cpp/absl/base:core_headers",
|
|
"//third_party/abseil-cpp/absl/base:log_severity",
|
|
"//third_party/abseil-cpp/absl/strings",
|
|
"//third_party/abseil-cpp/absl/strings:str_format",
|
|
"//third_party/abseil-cpp/absl/types:optional",
|
|
]
|
|
}
|
|
|
|
absl_source_set("commandlineflag_internal") {
|
|
visibility = [":*"]
|
|
public = [ "internal/commandlineflag.h" ]
|
|
sources = [ "internal/commandlineflag.cc" ]
|
|
deps = [
|
|
"//third_party/abseil-cpp/absl/base:config",
|
|
"//third_party/abseil-cpp/absl/base:fast_type_id",
|
|
]
|
|
}
|
|
|
|
absl_source_set("commandlineflag") {
|
|
sources = [ "commandlineflag.cc" ]
|
|
public = [ "commandlineflag.h" ]
|
|
deps = [
|
|
":commandlineflag_internal",
|
|
"//third_party/abseil-cpp/absl/base:config",
|
|
"//third_party/abseil-cpp/absl/base:fast_type_id",
|
|
"//third_party/abseil-cpp/absl/strings",
|
|
"//third_party/abseil-cpp/absl/types:optional",
|
|
]
|
|
}
|
|
|
|
absl_source_set("private_handle_accessor") {
|
|
sources = [ "internal/private_handle_accessor.cc" ]
|
|
public = [ "internal/private_handle_accessor.h" ]
|
|
deps = [
|
|
":commandlineflag",
|
|
":commandlineflag_internal",
|
|
"//third_party/abseil-cpp/absl/base:config",
|
|
"//third_party/abseil-cpp/absl/strings",
|
|
]
|
|
visibility = [ ":*" ]
|
|
}
|
|
|
|
absl_source_set("reflection") {
|
|
sources = [ "reflection.cc" ]
|
|
public = [
|
|
"internal/registry.h",
|
|
"reflection.h",
|
|
]
|
|
deps = [
|
|
":commandlineflag",
|
|
":commandlineflag_internal",
|
|
":config",
|
|
":private_handle_accessor",
|
|
"//third_party/abseil-cpp/absl/base:config",
|
|
"//third_party/abseil-cpp/absl/base:core_headers",
|
|
"//third_party/abseil-cpp/absl/container:flat_hash_map",
|
|
"//third_party/abseil-cpp/absl/strings",
|
|
"//third_party/abseil-cpp/absl/synchronization",
|
|
]
|
|
}
|
|
|
|
absl_source_set("flag_internal") {
|
|
sources = [ "internal/flag.cc" ]
|
|
public = [
|
|
"internal/flag.h",
|
|
"internal/sequence_lock.h",
|
|
]
|
|
deps = [
|
|
":commandlineflag",
|
|
":commandlineflag_internal",
|
|
":config",
|
|
":marshalling",
|
|
":reflection",
|
|
"//third_party/abseil-cpp/absl/base",
|
|
"//third_party/abseil-cpp/absl/base:config",
|
|
"//third_party/abseil-cpp/absl/base:core_headers",
|
|
"//third_party/abseil-cpp/absl/base:dynamic_annotations",
|
|
"//third_party/abseil-cpp/absl/memory",
|
|
"//third_party/abseil-cpp/absl/meta:type_traits",
|
|
"//third_party/abseil-cpp/absl/strings",
|
|
"//third_party/abseil-cpp/absl/synchronization",
|
|
"//third_party/abseil-cpp/absl/utility",
|
|
]
|
|
visibility = [
|
|
":*",
|
|
"//third_party/abseil-cpp/absl/base/*",
|
|
]
|
|
}
|
|
|
|
absl_source_set("flag") {
|
|
sources = [
|
|
"flag.cc",
|
|
"internal/flag_msvc.inc",
|
|
]
|
|
public = [
|
|
"declare.h",
|
|
"flag.h",
|
|
]
|
|
deps = [
|
|
":config",
|
|
":flag_internal",
|
|
":reflection",
|
|
"//third_party/abseil-cpp/absl/base",
|
|
"//third_party/abseil-cpp/absl/base:config",
|
|
"//third_party/abseil-cpp/absl/base:core_headers",
|
|
"//third_party/abseil-cpp/absl/strings",
|
|
]
|
|
}
|
|
|
|
absl_source_set("usage_internal") {
|
|
sources = [ "internal/usage.cc" ]
|
|
public = [ "internal/usage.h" ]
|
|
deps = [
|
|
":commandlineflag",
|
|
":config",
|
|
":flag",
|
|
":flag_internal",
|
|
":path_util",
|
|
":private_handle_accessor",
|
|
":program_name",
|
|
":reflection",
|
|
"//third_party/abseil-cpp/absl/base:config",
|
|
"//third_party/abseil-cpp/absl/base:core_headers",
|
|
"//third_party/abseil-cpp/absl/container:flat_hash_map",
|
|
"//third_party/abseil-cpp/absl/strings",
|
|
]
|
|
visibility = [ ":*" ]
|
|
}
|
|
|
|
absl_source_set("usage") {
|
|
sources = [ "usage.cc" ]
|
|
public = [ "usage.h" ]
|
|
deps = [
|
|
":usage_internal",
|
|
"//third_party/abseil-cpp/absl/base:config",
|
|
"//third_party/abseil-cpp/absl/base:core_headers",
|
|
"//third_party/abseil-cpp/absl/strings",
|
|
"//third_party/abseil-cpp/absl/synchronization",
|
|
]
|
|
}
|
|
|
|
absl_source_set("parse") {
|
|
sources = [ "parse.cc" ]
|
|
public = [
|
|
"internal/parse.h",
|
|
"parse.h",
|
|
]
|
|
deps = [
|
|
":commandlineflag",
|
|
":commandlineflag_internal",
|
|
":config",
|
|
":flag",
|
|
":flag_internal",
|
|
":private_handle_accessor",
|
|
":program_name",
|
|
":reflection",
|
|
":usage",
|
|
":usage_internal",
|
|
"//third_party/abseil-cpp/absl/base:config",
|
|
"//third_party/abseil-cpp/absl/base:core_headers",
|
|
"//third_party/abseil-cpp/absl/strings",
|
|
"//third_party/abseil-cpp/absl/synchronization",
|
|
]
|
|
}
|