156 lines
3.2 KiB
Plaintext
156 lines
3.2 KiB
Plaintext
load("@rules_cc//cc:defs.bzl", "cc_library")
|
|
|
|
package(default_visibility = ["//visibility:public"])
|
|
|
|
cc_library(
|
|
name = "program_name",
|
|
linkopts = ["-labsl_flags_program_name"],
|
|
visibility = [
|
|
"//absl/flags:__pkg__",
|
|
],
|
|
deps = [
|
|
"//absl/strings",
|
|
"//absl/synchronization",
|
|
],
|
|
)
|
|
|
|
cc_library(
|
|
name = "config",
|
|
linkopts = ["-labsl_flags_config"],
|
|
deps = [
|
|
":program_name",
|
|
"//absl/strings",
|
|
"//absl/synchronization",
|
|
],
|
|
)
|
|
|
|
cc_library(
|
|
name = "marshalling",
|
|
linkopts = ["-labsl_flags_marshalling"],
|
|
deps = [
|
|
"//absl/base:log_severity",
|
|
"//absl/strings",
|
|
"//absl/strings:str_format",
|
|
],
|
|
)
|
|
|
|
cc_library(
|
|
name = "commandlineflag_internal",
|
|
linkopts = ["-labsl_flags_commandlineflag_internal"],
|
|
)
|
|
|
|
cc_library(
|
|
name = "commandlineflag",
|
|
linkopts = ["-labsl_flags_commandlineflag"],
|
|
deps = [
|
|
":commandlineflag_internal",
|
|
"//absl/strings",
|
|
"//absl/types:optional",
|
|
],
|
|
)
|
|
|
|
cc_library(
|
|
name = "private_handle_accessor",
|
|
linkopts = ["-labsl_flags_private_handle_accessor"],
|
|
visibility = [
|
|
"//absl/flags:__pkg__",
|
|
],
|
|
deps = [
|
|
":commandlineflag",
|
|
":commandlineflag_internal",
|
|
"//absl/strings",
|
|
],
|
|
)
|
|
|
|
cc_library(
|
|
name = "reflection",
|
|
linkopts = ["-labsl_flags_reflection"],
|
|
deps = [
|
|
":commandlineflag",
|
|
":commandlineflag_internal",
|
|
":config",
|
|
":private_handle_accessor",
|
|
"//absl/container:flat_hash_map",
|
|
"//absl/strings",
|
|
"//absl/synchronization",
|
|
],
|
|
)
|
|
|
|
cc_library(
|
|
name = "flag_internal",
|
|
linkopts = ["-labsl_flags_internal"],
|
|
visibility = ["//absl/base:__subpackages__"],
|
|
deps = [
|
|
":commandlineflag",
|
|
":commandlineflag_internal",
|
|
":config",
|
|
":marshalling",
|
|
":reflection",
|
|
"//absl/base",
|
|
"//absl/memory",
|
|
"//absl/meta:type_traits",
|
|
"//absl/strings",
|
|
"//absl/synchronization",
|
|
"//absl/utility",
|
|
],
|
|
)
|
|
|
|
cc_library(
|
|
name = "flag",
|
|
linkopts = ["-labsl_flags"],
|
|
deps = [
|
|
":config",
|
|
":flag_internal",
|
|
":reflection",
|
|
"//absl/base",
|
|
"//absl/strings",
|
|
],
|
|
)
|
|
|
|
cc_library(
|
|
name = "usage_internal",
|
|
linkopts = ["-labsl_flags_usage_internal"],
|
|
visibility = [
|
|
"//absl/flags:__pkg__",
|
|
],
|
|
deps = [
|
|
":commandlineflag",
|
|
":config",
|
|
":flag",
|
|
":flag_internal",
|
|
":private_handle_accessor",
|
|
":program_name",
|
|
":reflection",
|
|
"//absl/strings",
|
|
],
|
|
)
|
|
|
|
cc_library(
|
|
name = "usage",
|
|
linkopts = ["-labsl_flags_usage"],
|
|
deps = [
|
|
":usage_internal",
|
|
"//absl/strings",
|
|
"//absl/synchronization",
|
|
],
|
|
)
|
|
|
|
cc_library(
|
|
name = "parse",
|
|
linkopts = ["-labsl_flags_parse"],
|
|
deps = [
|
|
":commandlineflag",
|
|
":commandlineflag_internal",
|
|
":config",
|
|
":flag",
|
|
":flag_internal",
|
|
":private_handle_accessor",
|
|
":program_name",
|
|
":reflection",
|
|
":usage",
|
|
":usage_internal",
|
|
"//absl/strings",
|
|
"//absl/synchronization",
|
|
],
|
|
)
|