message: [TF] Add some comments to the cc_header_only_library rule.
diff: @@ -1727,6 +1727,20 @@ def transitive_hdrs(name, deps = [], **kwargs):
  # Create a header only library that includes all the headers exported by
  # the libraries in deps.
  +#
  +# **NOTE**: The headers brought in are **NOT** fully transitive; certain
  +# deep headers may be missing. Furthermore, the `includes` argument of
  +# cc_libraries in the dependencies are *not* going to be respected
  +# when you use cc_header_only_library. Some cases where this creates
  +# problems include: Eigen, grpc, MLIR. In cases such as these, you must
  +# find a header-only version of the cc_library rule you care about and
  +# link it *directly* in addition to your use of the cc_header_only_library
  +# intermediary.
  +#
  +# For:
  +# * Eigen: it's a header-only library. Add it directly to your deps.
  +# * GRPC: add a direct dep on @grpc//:grpc++_public_hdrs.
  +#
  def cc_header_only_library(name, deps = [], includes = [], extra_deps = [], **kwargs):
  _transitive_hdrs(name = name + "_gather", deps = deps)
  cc_library(
  