Ulf Adams | 3e87c62 | 2017-06-13 10:53:13 +0200 | [diff] [blame] | 1 | # Bazel - Google's Build System |
| 2 | |
Damien Martin-Guillerez | d019eea | 2015-07-24 12:40:48 +0000 | [diff] [blame] | 3 | package(default_visibility = ["//scripts/release:__pkg__"]) |
| 4 | |
Philipp Wollermann | 02401d9 | 2017-03-17 13:51:14 +0000 | [diff] [blame] | 5 | exports_files(["LICENSE"]) |
| 6 | |
Damien Martin-Guillerez | d019eea | 2015-07-24 12:40:48 +0000 | [diff] [blame] | 7 | filegroup( |
Ulf Adams | 3e87c62 | 2017-06-13 10:53:13 +0200 | [diff] [blame] | 8 | name = "srcs", |
| 9 | srcs = glob( |
| 10 | ["*"], |
| 11 | exclude = [ |
| 12 | "bazel-*", # convenience symlinks |
| 13 | "out", # IntelliJ with setup-intellij.sh |
| 14 | "output", # output of compile.sh |
| 15 | ".*", # mainly .git* files |
| 16 | ], |
| 17 | ) + [ |
| 18 | "//examples:srcs", |
| 19 | "//scripts:srcs", |
| 20 | "//site:srcs", |
| 21 | "//src:srcs", |
| 22 | "//tools:srcs", |
| 23 | "//third_party:srcs", |
Jakob Buchgraber | 1d182e9 | 2018-03-22 03:53:03 -0700 | [diff] [blame] | 24 | ] + glob([".bazelci/*"]), |
Damien Martin-Guillerez | 0baff0f | 2017-08-22 17:40:37 +0200 | [diff] [blame] | 25 | visibility = ["//src/test/shell/bazel:__pkg__"], |
Ulf Adams | 3e87c62 | 2017-06-13 10:53:13 +0200 | [diff] [blame] | 26 | ) |
| 27 | |
| 28 | filegroup( |
Damien Martin-Guillerez | d019eea | 2015-07-24 12:40:48 +0000 | [diff] [blame] | 29 | name = "git", |
Andreas Bergmeier | 062da5c | 2017-12-01 07:30:35 -0800 | [diff] [blame] | 30 | srcs = glob( |
| 31 | [".git/**"], |
| 32 | exclude = [".git/**/*[*"], # gitk creates temp files with [] |
| 33 | ), |
Damien Martin-Guillerez | d019eea | 2015-07-24 12:40:48 +0000 | [diff] [blame] | 34 | ) |
Lukacs Berki | 678ba23 | 2015-09-03 13:28:55 +0000 | [diff] [blame] | 35 | |
| 36 | filegroup( |
| 37 | name = "dummy", |
| 38 | visibility = ["//visibility:public"], |
| 39 | ) |
Han-Wen Nienhuys | 4718232 | 2015-10-09 17:56:52 +0000 | [diff] [blame] | 40 | |
Damien Martin-Guillerez | de54bca | 2016-02-29 10:49:43 +0000 | [diff] [blame] | 41 | filegroup( |
Damien Martin-Guillerez | 9b88920 | 2016-03-03 00:35:13 +0000 | [diff] [blame] | 42 | name = "workspace-file", |
| 43 | srcs = [":WORKSPACE"], |
Cal Peyser | 2152bc1 | 2016-04-22 17:08:59 +0000 | [diff] [blame] | 44 | visibility = [ |
John Cater | 214a7ae | 2017-08-09 17:24:53 +0200 | [diff] [blame] | 45 | "//src/test/shell/bazel:__subpackages__", |
Cal Peyser | 2152bc1 | 2016-04-22 17:08:59 +0000 | [diff] [blame] | 46 | ], |
Damien Martin-Guillerez | 9b88920 | 2016-03-03 00:35:13 +0000 | [diff] [blame] | 47 | ) |
| 48 | |
| 49 | filegroup( |
Yun Peng | a50635d | 2016-07-26 13:29:03 +0000 | [diff] [blame] | 50 | name = "changelog-file", |
| 51 | srcs = [":CHANGELOG.md"], |
| 52 | visibility = [ |
John Cater | b0308d4 | 2017-01-30 17:49:26 +0000 | [diff] [blame] | 53 | "//scripts/packages:__subpackages__", |
Yun Peng | a50635d | 2016-07-26 13:29:03 +0000 | [diff] [blame] | 54 | ], |
| 55 | ) |
| 56 | |
| 57 | filegroup( |
Jakob Buchgraber | 6073f1d | 2017-06-06 11:58:26 -0400 | [diff] [blame] | 58 | name = "bootstrap-derived-java-srcs", |
| 59 | srcs = glob(["derived/**/*.java"]), |
| 60 | visibility = ["//:__subpackages__"], |
| 61 | ) |
| 62 | |
Damien Martin-Guillerez | de54bca | 2016-02-29 10:49:43 +0000 | [diff] [blame] | 63 | load("//tools/build_defs/pkg:pkg.bzl", "pkg_tar") |
| 64 | |
| 65 | pkg_tar( |
| 66 | name = "bazel-srcs", |
John Cater | 214a7ae | 2017-08-09 17:24:53 +0200 | [diff] [blame] | 67 | srcs = [":srcs"], |
Damien Martin-Guillerez | de54bca | 2016-02-29 10:49:43 +0000 | [diff] [blame] | 68 | strip_prefix = ".", |
| 69 | # Public but bazel-only visibility. |
| 70 | visibility = ["//:__subpackages__"], |
| 71 | ) |
Klaus Aehlig | 4ca79d4 | 2016-10-22 07:59:41 +0000 | [diff] [blame] | 72 | |
László Csomor | 0783b9e | 2017-08-11 10:28:36 +0200 | [diff] [blame] | 73 | py_binary( |
| 74 | name = "combine_distfiles", |
| 75 | srcs = ["combine_distfiles.py"], |
| 76 | visibility = ["//visibility:private"], |
| 77 | deps = ["//src:create_embedded_tools_lib"], |
| 78 | ) |
| 79 | |
Klaus Aehlig | 4ca79d4 | 2016-10-22 07:59:41 +0000 | [diff] [blame] | 80 | genrule( |
| 81 | name = "bazel-distfile", |
| 82 | srcs = [ |
| 83 | ":bazel-srcs", |
| 84 | "//src:derived_java_srcs", |
Shahan Yang | 1a4f791 | 2017-12-19 14:50:53 -0800 | [diff] [blame] | 85 | "//src/main/java/com/google/devtools/build/lib/skyframe/serialization/autocodec:bootstrap_autocodec.tar", |
Klaus Aehlig | 4ca79d4 | 2016-10-22 07:59:41 +0000 | [diff] [blame] | 86 | ], |
| 87 | outs = ["bazel-distfile.zip"], |
László Csomor | 0783b9e | 2017-08-11 10:28:36 +0200 | [diff] [blame] | 88 | cmd = "$(location :combine_distfiles) $@ $(SRCS)", |
| 89 | tools = [":combine_distfiles"], |
Klaus Aehlig | 279a061 | 2016-11-11 09:51:44 +0000 | [diff] [blame] | 90 | # Public but bazel-only visibility. |
| 91 | visibility = ["//:__subpackages__"], |
Klaus Aehlig | 4ca79d4 | 2016-10-22 07:59:41 +0000 | [diff] [blame] | 92 | ) |
Klaus Aehlig | 52b03d1 | 2016-11-24 15:16:01 +0000 | [diff] [blame] | 93 | |
| 94 | genrule( |
| 95 | name = "bazel-distfile-tar", |
| 96 | srcs = [ |
| 97 | ":bazel-srcs", |
| 98 | "//src:derived_java_srcs", |
Shahan Yang | 1a4f791 | 2017-12-19 14:50:53 -0800 | [diff] [blame] | 99 | "//src/main/java/com/google/devtools/build/lib/skyframe/serialization/autocodec:bootstrap_autocodec.tar", |
Klaus Aehlig | 52b03d1 | 2016-11-24 15:16:01 +0000 | [diff] [blame] | 100 | ], |
| 101 | outs = ["bazel-distfile.tar"], |
László Csomor | 0783b9e | 2017-08-11 10:28:36 +0200 | [diff] [blame] | 102 | cmd = "$(location :combine_distfiles_to_tar.sh) $@ $(SRCS)", |
| 103 | tools = ["combine_distfiles_to_tar.sh"], |
Klaus Aehlig | 52b03d1 | 2016-11-24 15:16:01 +0000 | [diff] [blame] | 104 | # Public but bazel-only visibility. |
| 105 | visibility = ["//:__subpackages__"], |
| 106 | ) |
Googler | cc85862 | 2017-07-25 21:03:05 +0200 | [diff] [blame] | 107 | |
| 108 | # This is a workaround for fetching Bazel toolchains, for remote execution. |
| 109 | # See https://github.com/bazelbuild/bazel/issues/3246. |
| 110 | # Will be removed once toolchain fetching is supported. |
| 111 | filegroup( |
| 112 | name = "dummy_toolchain_reference", |
xingao | bea6712 | 2018-01-16 08:29:59 -0800 | [diff] [blame] | 113 | srcs = ["@bazel_toolchains//configs/debian8_clang/0.2.0/bazel_0.9.0:empty"], |
Googler | cc85862 | 2017-07-25 21:03:05 +0200 | [diff] [blame] | 114 | visibility = ["//visibility:public"], |
| 115 | ) |