Incrementally swap portions of tensorflow's build to rules_cc's version of cc build rules. This is part of the build refactoring described in https://github.com/tensorflow/community/pull/179
PiperOrigin-RevId: 290466858 Change-Id: I9b38b1b7f44f1defea9be6ffb9e5da0c5ca99fb5
This commit is contained in:
parent
d82cc1a08f
commit
1b58766589
@ -479,6 +479,7 @@ bzl_library(
|
||||
visibility = ["//visibility:public"],
|
||||
deps = [
|
||||
"//tensorflow/core/platform:build_config_root_bzl",
|
||||
"//tensorflow/core/platform:rules_cc_bzl",
|
||||
"//tensorflow/core/platform/default:cuda_build_defs_bzl",
|
||||
"//third_party/mkl:build_defs_bzl",
|
||||
"//third_party/mkl_dnn:build_defs_bzl",
|
||||
|
@ -128,6 +128,10 @@ load(
|
||||
"tf_protos_profiler_impl",
|
||||
"tf_pyclif_proto_library",
|
||||
)
|
||||
load(
|
||||
"//tensorflow/core/platform:rules_cc.bzl",
|
||||
"cc_library",
|
||||
)
|
||||
load(
|
||||
"//tensorflow/core/platform:build_config_root.bzl",
|
||||
"if_dynamic_kernels",
|
||||
|
@ -15,6 +15,10 @@ load(
|
||||
"//tensorflow/core/platform:build_config_root.bzl",
|
||||
"if_static",
|
||||
)
|
||||
load(
|
||||
"//tensorflow/core/platform:rules_cc.bzl",
|
||||
"cc_library",
|
||||
)
|
||||
|
||||
package(
|
||||
default_visibility = [
|
||||
|
@ -1,3 +1,8 @@
|
||||
load(
|
||||
"//tensorflow/core/platform:rules_cc.bzl",
|
||||
"cc_library",
|
||||
)
|
||||
|
||||
package(
|
||||
default_visibility = [
|
||||
"//tensorflow:__subpackages__",
|
||||
|
@ -1,4 +1,8 @@
|
||||
load("//tensorflow/core/platform:build_config.bzl", "tf_proto_library")
|
||||
load(
|
||||
"//tensorflow/core/platform:rules_cc.bzl",
|
||||
"cc_library",
|
||||
)
|
||||
|
||||
package(
|
||||
default_visibility = [
|
||||
|
@ -2,6 +2,10 @@
|
||||
# Libraries for storing tensors in SQL databases.
|
||||
|
||||
load("//tensorflow:tensorflow.bzl", "tf_cc_test", "tf_copts")
|
||||
load(
|
||||
"//tensorflow/core/platform:rules_cc.bzl",
|
||||
"cc_library",
|
||||
)
|
||||
|
||||
package(
|
||||
default_visibility = ["//tensorflow:internal"],
|
||||
|
@ -1,3 +1,8 @@
|
||||
load(
|
||||
"//tensorflow/core/platform:rules_cc.bzl",
|
||||
"cc_library",
|
||||
)
|
||||
|
||||
package(
|
||||
default_visibility = [
|
||||
# tensorflow/core:lib effectively exposes all targets under tensorflow/core/lib/**
|
||||
|
@ -3,6 +3,10 @@ load(
|
||||
"if_linux_x86_64",
|
||||
"tf_copts",
|
||||
)
|
||||
load(
|
||||
"//tensorflow/core/platform:rules_cc.bzl",
|
||||
"cc_library",
|
||||
)
|
||||
|
||||
package(
|
||||
default_visibility = [
|
||||
|
@ -1,3 +1,8 @@
|
||||
load(
|
||||
"//tensorflow/core/platform:rules_cc.bzl",
|
||||
"cc_library",
|
||||
)
|
||||
|
||||
package(
|
||||
default_visibility = [
|
||||
# tensorflow/core:lib effectively exposes all targets under tensorflow/core/lib/**
|
||||
|
@ -1,3 +1,8 @@
|
||||
load(
|
||||
"//tensorflow/core/platform:rules_cc.bzl",
|
||||
"cc_library",
|
||||
)
|
||||
|
||||
package(
|
||||
default_visibility = [
|
||||
"//tensorflow/c/experimental/filesystem:__pkg__",
|
||||
|
@ -1,3 +1,8 @@
|
||||
load(
|
||||
"//tensorflow/core/platform:rules_cc.bzl",
|
||||
"cc_library",
|
||||
)
|
||||
|
||||
package(
|
||||
default_visibility = [
|
||||
"//tensorflow:__subpackages__",
|
||||
|
@ -1,3 +1,8 @@
|
||||
load(
|
||||
"//tensorflow/core/platform:rules_cc.bzl",
|
||||
"cc_library",
|
||||
)
|
||||
|
||||
package(
|
||||
default_visibility = [
|
||||
# tensorflow/core:lib effectively exposes all targets under tensorflow/core/lib/**
|
||||
|
@ -1,3 +1,8 @@
|
||||
load(
|
||||
"//tensorflow/core/platform:rules_cc.bzl",
|
||||
"cc_library",
|
||||
)
|
||||
|
||||
package(
|
||||
default_visibility = [
|
||||
# tensorflow/core:lib effectively exposes all targets under tensorflow/core/lib/**
|
||||
|
@ -1,3 +1,8 @@
|
||||
load(
|
||||
"//tensorflow/core/platform:rules_cc.bzl",
|
||||
"cc_library",
|
||||
)
|
||||
|
||||
package(
|
||||
default_visibility = [
|
||||
# tensorflow/core:lib effectively exposes all targets under tensorflow/core/lib/**
|
||||
|
@ -1,3 +1,8 @@
|
||||
load(
|
||||
"//tensorflow/core/platform:rules_cc.bzl",
|
||||
"cc_library",
|
||||
)
|
||||
|
||||
package(
|
||||
default_visibility = [
|
||||
# tensorflow/core:lib effectively exposes all targets under tensorflow/core/lib/**
|
||||
|
@ -31,6 +31,11 @@ load(
|
||||
"tf_protobuf_deps",
|
||||
"tf_windows_aware_platform_deps",
|
||||
)
|
||||
load(
|
||||
"//tensorflow/core/platform:rules_cc.bzl",
|
||||
"cc_binary",
|
||||
"cc_library",
|
||||
)
|
||||
load(
|
||||
"//tensorflow:tensorflow.bzl",
|
||||
"if_chromiumos",
|
||||
@ -1415,6 +1420,12 @@ bzl_library(
|
||||
name = "build_config_root_bzl",
|
||||
srcs = [
|
||||
"build_config_root.bzl",
|
||||
"//tensorflow/core/platform/default:build_config_root.bzl",
|
||||
],
|
||||
] + tf_platform_alias("build_config_root.bzl"),
|
||||
)
|
||||
|
||||
bzl_library(
|
||||
name = "rules_cc_bzl",
|
||||
srcs = [
|
||||
"rules_cc.bzl",
|
||||
] + tf_platform_alias("rules_cc.bzl"),
|
||||
)
|
||||
|
@ -1,6 +1,10 @@
|
||||
# Tensorflow default + linux implementations of tensorflow/core/platform libraries.
|
||||
load("@bazel_skylib//:bzl_library.bzl", "bzl_library")
|
||||
load("//tensorflow:tensorflow.bzl", "tf_copts")
|
||||
load(
|
||||
"//tensorflow/core/platform:rules_cc.bzl",
|
||||
"cc_library",
|
||||
)
|
||||
|
||||
package(
|
||||
default_visibility = [
|
||||
|
@ -4,6 +4,10 @@ load(
|
||||
"if_windows",
|
||||
"tf_copts",
|
||||
)
|
||||
load(
|
||||
"//tensorflow/core/platform:rules_cc.bzl",
|
||||
"cc_library",
|
||||
)
|
||||
|
||||
package(
|
||||
default_visibility = [
|
||||
|
@ -3,6 +3,10 @@ load(
|
||||
"tf_kernel_tests_linkstatic",
|
||||
"tf_proto_library",
|
||||
)
|
||||
load(
|
||||
"//tensorflow/core/platform:rules_cc.bzl",
|
||||
"cc_library",
|
||||
)
|
||||
load(
|
||||
"//tensorflow:tensorflow.bzl",
|
||||
"tf_cc_test",
|
||||
|
@ -148,6 +148,7 @@ tensorflow/third_party/pybind11.BUILD
|
||||
tensorflow/third_party/python_runtime/BUILD
|
||||
tensorflow/third_party/repo.bzl
|
||||
tensorflow/third_party/rules_closure.patch
|
||||
tensorflow/third_party/rules_swift.patch
|
||||
tensorflow/third_party/six.BUILD
|
||||
tensorflow/third_party/snappy.BUILD
|
||||
tensorflow/third_party/sqlite.BUILD
|
||||
|
@ -11,6 +11,12 @@ load(
|
||||
"tf_gpu_tests_tags",
|
||||
"tf_sycl_tests_tags",
|
||||
)
|
||||
load(
|
||||
"//tensorflow/core/platform:rules_cc.bzl",
|
||||
"cc_binary",
|
||||
"cc_library",
|
||||
"cc_test",
|
||||
)
|
||||
load(
|
||||
"@local_config_tensorrt//:build_defs.bzl",
|
||||
"if_tensorrt",
|
||||
@ -122,7 +128,7 @@ def tf_android_core_proto_headers(core_proto_sources_relative):
|
||||
# Wrapper for portable protos which currently just creates an empty rule.
|
||||
def tf_portable_proto_library(name, proto_deps, deps = [], **kwargs):
|
||||
_ignore = [kwargs]
|
||||
native.cc_library(name = name, deps = deps + [dep + "_cc" for dep in proto_deps])
|
||||
cc_library(name = name, deps = deps + [dep + "_cc" for dep in proto_deps])
|
||||
|
||||
def if_android_x86(a):
|
||||
return select({
|
||||
@ -367,7 +373,7 @@ def tf_gen_op_libs(op_lib_names, deps = None, is_external = True):
|
||||
if not deps:
|
||||
deps = []
|
||||
for n in op_lib_names:
|
||||
native.cc_library(
|
||||
cc_library(
|
||||
name = n + "_op_lib",
|
||||
copts = tf_copts(is_external = is_external),
|
||||
srcs = ["ops/" + n + ".cc"],
|
||||
@ -571,7 +577,7 @@ def tf_cc_shared_object(
|
||||
if framework_so != []:
|
||||
data_extra = tf_binary_additional_data_deps()
|
||||
|
||||
native.cc_binary(
|
||||
cc_binary(
|
||||
name = name_os_full,
|
||||
srcs = srcs + framework_so,
|
||||
deps = deps,
|
||||
@ -632,7 +638,7 @@ def tf_cc_binary(
|
||||
else:
|
||||
names = [name]
|
||||
for name_os in names:
|
||||
native.cc_binary(
|
||||
cc_binary(
|
||||
name = name_os,
|
||||
copts = copts,
|
||||
srcs = srcs + tf_binary_additional_srcs(),
|
||||
@ -675,7 +681,7 @@ def tf_native_cc_binary(
|
||||
copts = tf_copts(),
|
||||
linkopts = [],
|
||||
**kwargs):
|
||||
native.cc_binary(
|
||||
cc_binary(
|
||||
name = name,
|
||||
copts = copts,
|
||||
linkopts = select({
|
||||
@ -815,7 +821,7 @@ def tf_gen_op_wrappers_cc(
|
||||
internalsrcs += ["ops/" + n + "_internal.cc"]
|
||||
internalhdrs += ["ops/" + n + "_internal.h"]
|
||||
|
||||
native.cc_library(
|
||||
cc_library(
|
||||
name = name,
|
||||
srcs = subsrcs,
|
||||
hdrs = subhdrs,
|
||||
@ -832,7 +838,7 @@ def tf_gen_op_wrappers_cc(
|
||||
alwayslink = 1,
|
||||
visibility = visibility,
|
||||
)
|
||||
native.cc_library(
|
||||
cc_library(
|
||||
name = name + "_internal",
|
||||
srcs = internalsrcs,
|
||||
hdrs = internalhdrs,
|
||||
@ -996,7 +1002,7 @@ def tf_cc_test(
|
||||
linkopts = [],
|
||||
kernels = [],
|
||||
**kwargs):
|
||||
native.cc_test(
|
||||
cc_test(
|
||||
name = "%s%s" % (name, suffix),
|
||||
srcs = srcs + tf_binary_additional_srcs(),
|
||||
copts = tf_copts() + extra_copts,
|
||||
@ -1153,7 +1159,7 @@ def tf_gpu_only_cc_test(
|
||||
deps = deps,
|
||||
testonly = 1,
|
||||
)
|
||||
native.cc_test(
|
||||
cc_test(
|
||||
name = "%s%s" % (name, "_gpu"),
|
||||
size = size,
|
||||
args = args,
|
||||
@ -1240,7 +1246,7 @@ def tf_cc_test_mkl(
|
||||
disable_header_modules = ["-use_header_modules"]
|
||||
|
||||
for src in srcs:
|
||||
native.cc_test(
|
||||
cc_test(
|
||||
name = src_to_test_name(src),
|
||||
srcs = if_mkl([src]) + tf_binary_additional_srcs(),
|
||||
copts = tf_copts(allow_exceptions = True) + tf_openmp_copts(),
|
||||
@ -1402,7 +1408,7 @@ def tf_gpu_library(deps = None, cuda_deps = None, copts = tf_copts(), **kwargs):
|
||||
cuda_deps = []
|
||||
|
||||
kwargs["features"] = kwargs.get("features", []) + ["-use_header_modules"]
|
||||
native.cc_library(
|
||||
cc_library(
|
||||
deps = deps + if_cuda_is_configured_compat(cuda_deps + [
|
||||
clean_dep("//tensorflow/stream_executor/cuda:cudart_stub"),
|
||||
"@local_config_cuda//cuda:cuda_headers",
|
||||
@ -1570,7 +1576,7 @@ def tf_mkl_kernel_library(
|
||||
# -fno-exceptions in nocopts breaks compilation if header modules are enabled.
|
||||
disable_header_modules = ["-use_header_modules"]
|
||||
|
||||
native.cc_library(
|
||||
cc_library(
|
||||
name = name,
|
||||
srcs = if_mkl(srcs),
|
||||
hdrs = hdrs,
|
||||
@ -1723,7 +1729,7 @@ def transitive_hdrs(name, deps = [], **kwargs):
|
||||
# the libraries in deps.
|
||||
def cc_header_only_library(name, deps = [], includes = [], extra_deps = [], **kwargs):
|
||||
_transitive_hdrs(name = name + "_gather", deps = deps)
|
||||
native.cc_library(
|
||||
cc_library(
|
||||
name = name,
|
||||
hdrs = [":" + name + "_gather"],
|
||||
includes = includes,
|
||||
@ -2371,7 +2377,7 @@ def tf_generate_proto_text_sources(name, srcs_relative_dir, srcs, protodeps = []
|
||||
visibility = visibility,
|
||||
)
|
||||
|
||||
native.cc_library(
|
||||
cc_library(
|
||||
name = name,
|
||||
srcs = out_srcs,
|
||||
hdrs = out_hdrs,
|
||||
@ -2427,7 +2433,7 @@ def cc_library_with_android_deps(
|
||||
copts = tf_copts(),
|
||||
**kwargs):
|
||||
deps = if_not_android(deps) + if_android(android_deps) + common_deps
|
||||
native.cc_library(deps = deps, copts = copts, **kwargs)
|
||||
cc_library(deps = deps, copts = copts, **kwargs)
|
||||
|
||||
register_extension_info(
|
||||
extension_name = "cc_library_with_android_deps",
|
||||
@ -2489,7 +2495,7 @@ def pybind_extension(
|
||||
visibility = ["//visibility:private"],
|
||||
testonly = testonly,
|
||||
)
|
||||
native.cc_binary(
|
||||
cc_binary(
|
||||
name = so_file,
|
||||
srcs = srcs + hdrs,
|
||||
data = data,
|
||||
|
@ -926,6 +926,7 @@ def tf_repositories(path_prefix = "", tf_repo_name = ""):
|
||||
# https://github.com/bazelbuild/rules_swift/releases
|
||||
tf_http_archive(
|
||||
name = "build_bazel_rules_swift",
|
||||
patch_file = clean_dep("//third_party:rules_swift.patch"),
|
||||
sha256 = "18cd4df4e410b0439a4935f9ca035bd979993d42372ba79e7f2d4fafe9596ef0",
|
||||
urls = [
|
||||
"https://storage.googleapis.com/mirror.tensorflow.org/github.com/bazelbuild/rules_swift/releases/download/0.12.1/rules_swift.0.12.1.tar.gz",
|
||||
|
25
third_party/rules_swift.patch
vendored
Normal file
25
third_party/rules_swift.patch
vendored
Normal file
@ -0,0 +1,25 @@
|
||||
From 4c1a4d676d1633ff9f67bda3540d24ea5fa31c8f Mon Sep 17 00:00:00 2001
|
||||
From: Brian Zhao <bmzhao@google.com>
|
||||
Date: Tue, 14 Jan 2020 18:23:34 -0800
|
||||
Subject: [PATCH] Adding linker_inputs flag to create_linking_context, in
|
||||
preparation for bazel's cc_shared_library rule. Note that this cannot be
|
||||
enabled as of now unless --experimental_cc_shared_library is passed to bazel.
|
||||
|
||||
---
|
||||
swift/internal/utils.bzl | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/swift/internal/utils.bzl b/swift/internal/utils.bzl
|
||||
index 5cf1498..44d7559 100644
|
||||
--- a/swift/internal/utils.bzl
|
||||
+++ b/swift/internal/utils.bzl
|
||||
@@ -98,6 +98,7 @@ def create_cc_info(
|
||||
|
||||
this_cc_info = CcInfo(
|
||||
linking_context = cc_common.create_linking_context(
|
||||
+ linker_inputs = None,
|
||||
additional_inputs = all_additional_inputs,
|
||||
libraries_to_link = libraries_to_link,
|
||||
user_link_flags = all_user_link_flags,
|
||||
--
|
||||
2.25.0.rc1.283.g88dfdc4193-goog
|
Loading…
Reference in New Issue
Block a user