Define abls/flags targets
These are used by netstack intree syscall tests
Change-Id: I1d66583e13374ad3ee2ba950f01aa70bb9e4690b
Reviewed-on: https://fuchsia-review.googlesource.com/c/third_party/abseil-cpp/+/594501
Reviewed-by: Adam Barth <abarth@google.com>
diff --git a/absl/flags/BUILD.gn b/absl/flags/BUILD.gn
new file mode 100644
index 0000000..e198bc4
--- /dev/null
+++ b/absl/flags/BUILD.gn
@@ -0,0 +1,219 @@
+# Copyright 2021 The Fuchsia Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+# Please do not add more entries to this list. We plan to remove
+# abseil-cpp from the Fuchsia platform source tree once cobalt
+# moves out-of-tree.
+visibility = [
+ "$cobalt_root/*",
+ "//third_party/abseil-cpp/*",
+ "//third_party/tink/*",
+]
+
+source_set("path_util") {
+ public_configs = [ "//third_party/abseil-cpp:abseil_config" ]
+ public = [ "internal/path_util.h" ]
+ deps = [
+ "../base:config",
+ "../strings",
+ ]
+}
+
+source_set("program_name") {
+ public_configs = [ "//third_party/abseil-cpp:abseil_config" ]
+ sources = [ "internal/program_name.cc" ]
+ public = [ "internal/program_name.h" ]
+ deps = [
+ ":path_util",
+ "../base:config",
+ "../base:core_headers",
+ "../strings",
+ "../synchronization",
+ ]
+}
+
+source_set("config") {
+ public_configs = [ "//third_party/abseil-cpp:abseil_config" ]
+ sources = [ "usage_config.cc" ]
+ public = [
+ "config.h",
+ "usage_config.h",
+ ]
+ deps = [
+ ":path_util",
+ ":program_name",
+ "../base:config",
+ "../base:core_headers",
+ "../strings",
+ "../synchronization",
+ ]
+}
+
+source_set("marshalling") {
+ public_configs = [ "//third_party/abseil-cpp:abseil_config" ]
+ sources = [ "marshalling.cc" ]
+ public = [ "marshalling.h" ]
+ deps = [
+ "../base:config",
+ "../base:core_headers",
+ "../base:log_severity",
+ "../strings",
+ "../strings:str_format",
+ ]
+}
+
+source_set("commandlineflag_internal") {
+ public_configs = [ "//third_party/abseil-cpp:abseil_config" ]
+ sources = [ "internal/commandlineflag.cc" ]
+ public = [ "internal/commandlineflag.h" ]
+ deps = [
+ "../base:config",
+ "../base:fast_type_id",
+ ]
+}
+
+source_set("commandlineflag") {
+ public_configs = [ "//third_party/abseil-cpp:abseil_config" ]
+ sources = [ "commandlineflag.cc" ]
+ public = [ "commandlineflag.h" ]
+ deps = [
+ ":commandlineflag_internal",
+ "../base:config",
+ "../base:fast_type_id",
+ "../strings",
+ "../types:optional",
+ ]
+}
+
+source_set("private_handle_accessor") {
+ public_configs = [ "//third_party/abseil-cpp:abseil_config" ]
+ sources = [ "internal/private_handle_accessor.cc" ]
+ public = [ "internal/private_handle_accessor.h" ]
+ deps = [
+ ":commandlineflag",
+ ":commandlineflag_internal",
+ "../base:config",
+ "../strings",
+ ]
+}
+
+source_set("reflection") {
+ public_configs = [ "//third_party/abseil-cpp:abseil_config" ]
+ sources = [ "reflection.cc" ]
+ public = [
+ "internal/registry.h",
+ "reflection.h",
+ ]
+ deps = [
+ ":commandlineflag",
+ ":commandlineflag_internal",
+ ":config",
+ ":private_handle_accessor",
+ "../base:config",
+ "../base:core_headers",
+ "../container:flat_hash_map",
+ "../strings",
+ "../synchronization",
+ ]
+}
+
+source_set("flag_internal") {
+ public_configs = [ "//third_party/abseil-cpp:abseil_config" ]
+ sources = [ "internal/flag.cc" ]
+ public = [
+ "internal/flag.h",
+ "internal/sequence_lock.h",
+ ]
+ deps = [
+ ":commandlineflag",
+ ":commandlineflag_internal",
+ ":config",
+ ":marshalling",
+ ":reflection",
+ "../base",
+ "../base:config",
+ "../base:core_headers",
+ "../memory",
+ "../meta:type_traits",
+ "../strings",
+ "../synchronization",
+ "../utility",
+ ]
+}
+
+source_set("flag") {
+ public_configs = [ "//third_party/abseil-cpp:abseil_config" ]
+ sources = [ "flag.cc" ]
+ public = [
+ "declare.h",
+ "flag.h",
+ ]
+ deps = [
+ ":config",
+ ":flag_internal",
+ ":reflection",
+ "../base",
+ "../base:config",
+ "../base:core_headers",
+ "../strings",
+ ]
+}
+
+source_set("usage_internal") {
+ public_configs = [ "//third_party/abseil-cpp:abseil_config" ]
+ sources = [ "internal/usage.cc" ]
+ public = [ "internal/usage.h" ]
+ deps = [
+ ":commandlineflag",
+ ":config",
+ ":flag",
+ ":flag_internal",
+ ":path_util",
+ ":private_handle_accessor",
+ ":program_name",
+ ":reflection",
+ "../base:config",
+ "../base:core_headers",
+ "../container:flat_hash_map",
+ "../strings",
+ ]
+}
+
+source_set("usage") {
+ public_configs = [ "//third_party/abseil-cpp:abseil_config" ]
+ sources = [ "usage.cc" ]
+ public = [ "usage.h" ]
+ deps = [
+ ":usage_internal",
+ "../base:config",
+ "../base:core_headers",
+ "../strings",
+ "../synchronization",
+ ]
+}
+
+source_set("parse") {
+ public_configs = [ "//third_party/abseil-cpp:abseil_config" ]
+ 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",
+ "../base:config",
+ "../base:core_headers",
+ "../strings",
+ "../synchronization",
+ ]
+}