aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar A. Unique TensorFlower <gardener@tensorflow.org>2018-05-23 09:20:12 -0700
committerGravatar TensorFlower Gardener <gardener@tensorflow.org>2018-05-23 09:22:38 -0700
commit98d0286770d182de0dbf952c1ec0e079d8471a26 (patch)
treee26eb31cf66379077b301845bbb6acb54e867b09
parent7a82d0fd10901f4b59f38e838a24a04df8305f73 (diff)
Add 'platform_' libraries in core/BUILD.
PiperOrigin-RevId: 197736600
-rw-r--r--tensorflow/core/BUILD305
1 files changed, 265 insertions, 40 deletions
diff --git a/tensorflow/core/BUILD b/tensorflow/core/BUILD
index 05b8423e15..9b32a6e192 100644
--- a/tensorflow/core/BUILD
+++ b/tensorflow/core/BUILD
@@ -294,43 +294,18 @@ cc_library(
],
)
-PLATFORM_BASE_HDRS = [
- "platform/env_time.h",
- "platform/logging.h",
- "platform/macros.h",
- "platform/types.h",
- "platform/byte_order.h",
-]
-
-PLATFORM_OTHER_HDRS = [
- "platform/abi.h",
- "platform/stacktrace.h",
- "platform/stacktrace_handler.h",
- "platform/context.h",
- "platform/cpu_info.h",
- "platform/cpu_feature_guard.h",
- "platform/dynamic_annotations.h",
- "platform/error.h",
- "platform/env.h",
- "platform/file_system.h",
- "platform/file_system_helper.h",
- "platform/fingerprint.h",
- "platform/init_main.h",
- "platform/mem.h",
- "platform/mutex.h",
- "platform/net.h",
- "platform/notification.h",
- "platform/null_file_system.h",
- "platform/prefetch.h",
- "platform/profile_utils/clock_cycle_profiler.h",
- "platform/profile_utils/cpu_utils.h",
- "platform/protobuf.h",
- "platform/strong_hash.h",
- "platform/subprocess.h",
- "platform/thread_annotations.h",
-]
+filegroup(
+ name = "platform_base_hdrs",
+ srcs = [
+ "platform/byte_order.h",
+ "platform/env_time.h",
+ "platform/logging.h",
+ "platform/macros.h",
+ "platform/types.h",
+ ],
+ visibility = ["//visibility:private"],
+)
-# Smaller platform libraries that don't depend on "lib" or "lib_internal".
cc_library(
name = "platform_base",
srcs = tf_platform_hdrs([
@@ -342,16 +317,261 @@ cc_library(
]) + [
"platform/env_time.cc",
],
- hdrs = PLATFORM_BASE_HDRS,
+ hdrs = [":platform_base_hdrs"],
copts = tf_copts(),
- # TODO(ahentz): remove use of this library so we can move it into 'platform'
tags = ["avoid_dep"],
+ visibility = ["//tensorflow/core:__subpackages__"],
deps = [
":lib_platform",
"//tensorflow/core/platform/default/build_config:base",
],
)
+filegroup(
+ name = "platform_port_hdrs",
+ srcs = [
+ "platform/cpu_info.h",
+ "platform/dynamic_annotations.h",
+ "platform/init_main.h",
+ "platform/mem.h",
+ "platform/mutex.h",
+ "platform/thread_annotations.h",
+ ],
+ visibility = ["//visibility:private"],
+)
+
+# Headers that are not exported as part of ":lib".
+filegroup(
+ name = "platform_port_internal_hdrs",
+ srcs = [
+ "platform/demangle.h",
+ "platform/host_info.h",
+ "platform/snappy.h",
+ ],
+ visibility = ["//visibility:private"],
+)
+
+cc_library(
+ name = "platform_port",
+ srcs = tf_platform_hdrs([
+ "cpu_info.h",
+ "dynamic_annotations.h",
+ "thread_annotations.h",
+ "mutex.h",
+ ]) + tf_platform_srcs([
+ "port.cc",
+ ]) + [
+ "platform/cpu_info.cc",
+ ],
+ hdrs = [
+ ":platform_port_hdrs",
+ ":platform_port_internal_hdrs",
+ ],
+ copts = tf_copts(),
+ visibility = ["//tensorflow/core:__subpackages__"],
+ deps = [
+ ":lib_platform",
+ ":platform_base",
+ "//tensorflow/core/platform/default/build_config:port",
+ "@snappy",
+ ],
+)
+
+filegroup(
+ name = "platform_protobuf_hdrs",
+ srcs = [
+ "platform/protobuf.h",
+ ],
+ visibility = ["//visibility:private"],
+)
+
+# Headers that are not exported as part of ":lib".
+filegroup(
+ name = "platform_protobuf_internal_hdrs",
+ srcs = [
+ "platform/protobuf_internal.h",
+ ],
+ visibility = ["//visibility:private"],
+)
+
+cc_library(
+ name = "platform_protobuf",
+ srcs = tf_platform_hdrs([
+ "protobuf.h",
+ ]) + tf_platform_srcs([
+ "protobuf.cc",
+ ]) + [
+ "platform/protobuf_util.cc",
+ ],
+ hdrs = [
+ ":platform_protobuf_hdrs",
+ ":platform_protobuf_internal_hdrs",
+ ],
+ copts = tf_copts(),
+ visibility = ["//tensorflow/core:__subpackages__"],
+ deps = [
+ ":lib_platform",
+ ":platform_base",
+ ":platform_port",
+ "//tensorflow/core/platform/default/build_config:protobuf",
+ "@protobuf_archive//:protobuf",
+ ],
+)
+
+filegroup(
+ name = "platform_env_hdrs",
+ srcs = [
+ "platform/env.h",
+ "platform/file_statistics.h",
+ "platform/file_system.h",
+ ],
+ visibility = ["//visibility:private"],
+)
+
+# Headers that are not exported as part of ":lib".
+filegroup(
+ name = "platform_env_internal_hdrs",
+ srcs = [
+ "platform/load_library.h",
+ ],
+ visibility = ["//visibility:private"],
+)
+
+cc_library(
+ name = "platform_env",
+ srcs = tf_platform_srcs([
+ "env.cc",
+ "load_library.cc",
+ ]) + tf_platform_hdrs([
+ ]) + [
+ "platform/env.cc",
+ "platform/file_system.cc",
+ ],
+ hdrs = [
+ ":platform_env_hdrs",
+ ":platform_env_internal_hdrs",
+ ],
+ copts = tf_copts(),
+ visibility = ["//tensorflow/core:__subpackages__"],
+ deps = [
+ ":error_codes_proto_cc",
+ ":lib",
+ ":lib_internal",
+ ":lib_platform",
+ ":platform_base",
+ ":platform_port",
+ ":platform_protobuf",
+ "//tensorflow/core/platform/default/build_config:env",
+ ],
+)
+
+filegroup(
+ name = "platform_file_system_hdrs",
+ srcs = [
+ "platform/file_system_helper.h",
+ "platform/null_file_system.h",
+ ],
+ visibility = ["//visibility:private"],
+)
+
+cc_library(
+ name = "platform_file_system",
+ srcs = tf_platform_srcs([
+ ]) + tf_platform_hdrs([
+ "windows_file_system.h",
+ ]) + [
+ "platform/file_system_helper.cc",
+ ],
+ hdrs = [
+ ":platform_file_system_hdrs",
+ ],
+ copts = tf_copts(),
+ visibility = ["//tensorflow/core:__subpackages__"],
+ deps = [
+ ":lib",
+ ":lib_platform",
+ ":platform_env",
+ ],
+)
+
+filegroup(
+ name = "platform_other_hdrs",
+ srcs = [
+ "platform/abi.h",
+ "platform/context.h",
+ "platform/cpu_feature_guard.h",
+ "platform/error.h",
+ "platform/fingerprint.h",
+ "platform/net.h",
+ "platform/notification.h",
+ "platform/prefetch.h",
+ "platform/profile_utils/android_armv7a_cpu_utils_helper.h",
+ "platform/profile_utils/clock_cycle_profiler.h",
+ "platform/profile_utils/cpu_utils.h",
+ "platform/profile_utils/i_cpu_utils_helper.h",
+ "platform/stacktrace.h",
+ "platform/stacktrace_handler.h",
+ "platform/strong_hash.h",
+ "platform/subprocess.h",
+ ],
+ visibility = ["//visibility:private"],
+)
+
+# Headers that are not exported as part of ":lib".
+filegroup(
+ name = "platform_other_internal_hdrs",
+ srcs = [
+ "platform/denormal.h",
+ "platform/setround.h",
+ "platform/tracing.h",
+ ],
+ visibility = ["//visibility:private"],
+)
+
+cc_library(
+ name = "platform_other",
+ srcs = tf_platform_srcs([
+ "subprocess.cc",
+ "net.cc",
+ "tracing.cc",
+ ]) + tf_platform_hdrs([
+ "tracing.h",
+ "error.h",
+ "context.h",
+ "fingerprint.h",
+ "notification.h",
+ "stacktrace.h",
+ "strong_hash.h",
+ "subprocess.h",
+ "tracing_impl.h",
+ ]) + [
+ "platform/cpu_feature_guard.cc",
+ "platform/setround.cc",
+ "platform/tracing.cc",
+ "platform/denormal.cc",
+ "platform/profile_utils/android_armv7a_cpu_utils_helper.cc",
+ "platform/profile_utils/clock_cycle_profiler.cc",
+ "platform/profile_utils/cpu_utils.cc",
+ ],
+ hdrs = [
+ ":platform_other_hdrs",
+ ":platform_other_internal_hdrs",
+ ],
+ copts = tf_copts(),
+ visibility = ["//tensorflow/core:__subpackages__"],
+ deps = [
+ ":lib",
+ ":lib_platform",
+ ":platform_base",
+ ":platform_env",
+ ":platform_port",
+ ":platform_protobuf",
+ "//tensorflow/core/platform/default/build_config:other",
+ "//tensorflow/core/platform/default/build_config:platformlib",
+ "//tensorflow/core/platform/default/build_config:port",
+ ],
+)
+
# Minimal lib so that tools used for mobile compilation
# don't have to depend on lib/platformlib.
cc_library(
@@ -385,8 +605,7 @@ cc_library(
# tf_cc_test and tf_cc_binary will include the necessary symbols.
cc_library(
name = "lib",
- hdrs = PLATFORM_BASE_HDRS +
- PLATFORM_OTHER_HDRS + [
+ hdrs = [
"lib/bfloat16/bfloat16.h",
"lib/core/arena.h",
"lib/core/bitmap.h",
@@ -433,6 +652,12 @@ cc_library(
"lib/strings/str_util.h",
"lib/strings/strcat.h",
"lib/strings/stringprintf.h",
+ ":platform_base_hdrs",
+ ":platform_env_hdrs",
+ ":platform_file_system_hdrs",
+ ":platform_other_hdrs",
+ ":platform_port_hdrs",
+ ":platform_protobuf_hdrs",
],
visibility = ["//visibility:public"],
deps = [