| # Bazel - Google's Build System |
| |
| package(default_visibility = ["//scripts/release:__pkg__"]) |
| |
| exports_files(["LICENSE"]) |
| |
| filegroup( |
| name = "srcs", |
| srcs = glob( |
| ["*"], |
| exclude = [ |
| "bazel-*", # convenience symlinks |
| "out", # IntelliJ with setup-intellij.sh |
| "output", # output of compile.sh |
| ".*", # mainly .git* files |
| ], |
| ) + [ |
| "//examples:srcs", |
| "//scripts:srcs", |
| "//site:srcs", |
| "//src:srcs", |
| "//tools:srcs", |
| "//third_party:srcs", |
| ] + glob([".bazelci/*"]), |
| visibility = ["//src/test/shell/bazel:__pkg__"], |
| ) |
| |
| filegroup( |
| name = "git", |
| srcs = glob( |
| [".git/**"], |
| exclude = [".git/**/*[*"], # gitk creates temp files with [] |
| ), |
| ) |
| |
| filegroup( |
| name = "dummy", |
| visibility = ["//visibility:public"], |
| ) |
| |
| filegroup( |
| name = "workspace-file", |
| srcs = [ |
| ":WORKSPACE", |
| ":distdir.bzl", |
| ], |
| visibility = [ |
| "//src/test/shell/bazel:__subpackages__", |
| ], |
| ) |
| |
| filegroup( |
| name = "changelog-file", |
| srcs = [":CHANGELOG.md"], |
| visibility = [ |
| "//scripts/packages:__subpackages__", |
| ], |
| ) |
| |
| filegroup( |
| name = "bootstrap-derived-java-srcs", |
| srcs = glob(["derived/**/*.java"]), |
| visibility = ["//:__subpackages__"], |
| ) |
| |
| load("//tools/build_defs/pkg:pkg.bzl", "pkg_tar") |
| |
| pkg_tar( |
| name = "bazel-srcs", |
| srcs = [":srcs"], |
| remap_paths = { |
| # Rewrite paths coming from local repositories back into third_party. |
| "../googleapis": "third_party/googleapis", |
| "../remoteapis": "third_party/remoteapis", |
| }, |
| strip_prefix = ".", |
| # Public but bazel-only visibility. |
| visibility = ["//:__subpackages__"], |
| ) |
| |
| py_binary( |
| name = "combine_distfiles", |
| srcs = ["combine_distfiles.py"], |
| visibility = ["//visibility:private"], |
| deps = ["//src:create_embedded_tools_lib"], |
| ) |
| |
| genrule( |
| name = "bazel-distfile", |
| srcs = [ |
| ":bazel-srcs", |
| "//src:derived_java_srcs", |
| "//src/main/java/com/google/devtools/build/lib/skyframe/serialization/autocodec:bootstrap_autocodec.tar", |
| "@additional_distfiles//:archives.tar", |
| ], |
| outs = ["bazel-distfile.zip"], |
| cmd = "$(location :combine_distfiles) $@ $(SRCS)", |
| tools = [":combine_distfiles"], |
| # Public but bazel-only visibility. |
| visibility = ["//:__subpackages__"], |
| ) |
| |
| genrule( |
| name = "bazel-distfile-tar", |
| srcs = [ |
| ":bazel-srcs", |
| "//src:derived_java_srcs", |
| "//src/main/java/com/google/devtools/build/lib/skyframe/serialization/autocodec:bootstrap_autocodec.tar", |
| "@additional_distfiles//:archives.tar", |
| ], |
| outs = ["bazel-distfile.tar"], |
| cmd = "$(location :combine_distfiles_to_tar.sh) $@ $(SRCS)", |
| tools = ["combine_distfiles_to_tar.sh"], |
| # Public but bazel-only visibility. |
| visibility = ["//:__subpackages__"], |
| ) |
| |
| # This is a workaround for fetching Bazel toolchains, for remote execution. |
| # See https://github.com/bazelbuild/bazel/issues/3246. |
| # Will be removed once toolchain fetching is supported. |
| filegroup( |
| name = "dummy_toolchain_reference", |
| srcs = ["@bazel_toolchains//configs/debian8_clang/0.2.0/bazel_0.9.0:empty"], |
| visibility = ["//visibility:public"], |
| ) |