Update from Google.

--
MOE_MIGRATED_REVID=85702957
diff --git a/base_workspace/tools/cpp/BUILD b/base_workspace/tools/cpp/BUILD
new file mode 100644
index 0000000..b3f32c9
--- /dev/null
+++ b/base_workspace/tools/cpp/BUILD
@@ -0,0 +1,70 @@
+package(default_visibility = ["//visibility:public"])
+
+# TODO(bazel-team): The MacOS tools give an error if there is no object file on
+# the command line to libtool, so we use an empty .cc file here. We should find
+# a better way to handle this case.
+cc_library(
+    name = "malloc",
+    srcs = ["empty.cc"],
+)
+
+cc_library(
+    name = "stl",
+    srcs = ["empty.cc"],
+)
+
+filegroup(
+    name = "empty",
+    srcs = [],
+)
+
+filegroup(
+    name = "toolchain",
+    srcs = [
+        ":cc-compiler-local",
+        ":cc-compiler-darwin",
+        ":empty",
+    ],
+)
+
+cc_toolchain(
+    name = "cc-compiler-local",
+    all_files = ":empty",
+    compiler_files = ":empty",
+    cpu = "local",
+    dwp_files = ":empty",
+    dynamic_runtime_libs = [":empty"],
+    linker_files = ":empty",
+    objcopy_files = ":empty",
+    static_runtime_libs = [":empty"],
+    strip_files = ":empty",
+    supports_param_files = 0,
+)
+
+cc_toolchain(
+    name = "cc-compiler-k8",
+    all_files = ":empty",
+    compiler_files = ":empty",
+    cpu = "local",
+    dwp_files = ":empty",
+    dynamic_runtime_libs = [":empty"],
+    linker_files = ":empty",
+    objcopy_files = ":empty",
+    static_runtime_libs = [":empty"],
+    strip_files = ":empty",
+    supports_param_files = 0,
+)
+
+cc_toolchain(
+    name = "cc-compiler-darwin",
+    all_files = ":empty",
+    compiler_files = ":empty",
+    cpu = "darwin",
+    dwp_files = ":empty",
+    dynamic_runtime_libs = [":empty"],
+    linker_files = ":empty",
+    objcopy_files = ":empty",
+    static_runtime_libs = [":empty"],
+    strip_files = ":empty",
+    supports_param_files = 0,
+)