|  | java_library( | 
|  | name = "shell", | 
|  | srcs = glob(["com/google/devtools/build/lib/shell/*.java"]), | 
|  | visibility = ["//src:__subpackages__"], | 
|  | deps = ["//third_party:guava"], | 
|  | ) | 
|  |  | 
|  | java_library( | 
|  | name = "bazel-core", | 
|  | srcs = glob( | 
|  | ["**/*.java"], | 
|  | exclude = ["com/google/devtools/build/lib/shell/*.java"], | 
|  | ), | 
|  | resources = glob([ | 
|  | "**/*.txt", | 
|  | "**/*.html", | 
|  | "**/*.css", | 
|  | "**/*.js", | 
|  | ]), | 
|  | visibility = ["//src/test/java:__subpackages__"], | 
|  | runtime_deps = [ | 
|  | "//third_party:aether", | 
|  | "//third_party:apache_commons_logging", | 
|  | "//third_party:apache_httpclient", | 
|  | "//third_party:apache_httpcore", | 
|  | "//third_party:maven_model", | 
|  | "//third_party:plexus_interpolation", | 
|  | "//third_party:plexus_utils", | 
|  | ], | 
|  | deps = [ | 
|  | ":shell", | 
|  | "//src/main/protobuf:proto_build", | 
|  | "//src/main/protobuf:proto_bundlemerge", | 
|  | "//src/main/protobuf:proto_crosstool_config", | 
|  | "//src/main/protobuf:proto_extra_actions_base", | 
|  | "//src/main/protobuf:proto_test_status", | 
|  | "//src/main/protobuf:proto_xcodegen", | 
|  | "//src/tools/xcode-common", | 
|  | "//third_party:aether", | 
|  | "//third_party:apache_commons_compress", | 
|  | "//third_party:gson", | 
|  | "//third_party:guava", | 
|  | "//third_party:joda-time", | 
|  | "//third_party:jsr305", | 
|  | "//third_party:maven_model", | 
|  | "//third_party:protobuf", | 
|  | ], | 
|  | ) | 
|  |  | 
|  | java_binary( | 
|  | name = "bazel-main", | 
|  | main_class = "com.google.devtools.build.lib.bazel.BazelMain", | 
|  | visibility = ["//src:__pkg__"], | 
|  | runtime_deps = [ | 
|  | ":bazel-core", | 
|  | ], | 
|  | ) | 
|  |  | 
|  | # Build encyclopedia generation. | 
|  | filegroup( | 
|  | name = "gen_be_sources", | 
|  | srcs = glob(["com/google/devtools/build/lib/**/*.java"]), | 
|  | ) | 
|  |  | 
|  | java_binary( | 
|  | name = "docgen_bin", | 
|  | srcs = glob(["com/google/devtools/build/docgen/*.java"]), | 
|  | data = [":gen_be_sources"], | 
|  | main_class = "com.google.devtools.build.docgen.BuildEncyclopediaGenerator", | 
|  | resources = glob( | 
|  | ["com/google/devtools/build/docgen/templates/*.html"], | 
|  | ), | 
|  | deps = [ | 
|  | ":bazel-core", | 
|  | "//third_party:guava", | 
|  | "//third_party:jsr305", | 
|  | ], | 
|  | ) | 
|  |  | 
|  | genrule( | 
|  | name = "gen_buildencyclopedia", | 
|  | srcs = [":gen_be_sources"], | 
|  | outs = ["build-encyclopedia.html"], | 
|  | cmd = " docgen_bin $$PWD/src/main/java/com/google/devtools/build/lib $$PWD;" + | 
|  | "cp $$PWD/build-encyclopedia.html $@", | 
|  | tools = [":docgen_bin"], | 
|  | ) |