diff options
author | Han-Wen Nienhuys <hanwen@google.com> | 2015-11-30 17:27:34 +0000 |
---|---|---|
committer | Kristina Chodorow <kchodorow@google.com> | 2015-11-30 18:30:48 +0000 |
commit | 27760a6efefc64f9577ed1add120b60399203be3 (patch) | |
tree | 1b1b04e7e3de77ac8723ff01de2bcd8fa683c6fb /src/main/java/com | |
parent | 18565b0a8fcd609a000a18e11c0099f5aebbbc50 (diff) |
Reorganize BUILD files.
--
MOS_MIGRATED_REVID=108985661
Diffstat (limited to 'src/main/java/com')
11 files changed, 809 insertions, 407 deletions
diff --git a/src/main/java/com/google/devtools/build/docgen/BUILD b/src/main/java/com/google/devtools/build/docgen/BUILD index 399e7b0267..7b9b279641 100644 --- a/src/main/java/com/google/devtools/build/docgen/BUILD +++ b/src/main/java/com/google/devtools/build/docgen/BUILD @@ -1,41 +1,17 @@ -package(default_visibility = ["//src:__subpackages__"]) - -java_library( - name = "docgen", - srcs = glob([ - "**/*.java", - ]), - deps = [ - "//src/main/java/com/google/devtools/build/lib:analysis-exec-rules-skyframe", - "//src/main/java/com/google/devtools/build/lib:common", - "//src/main/java/com/google/devtools/build/lib:concurrent", - "//src/main/java/com/google/devtools/build/lib:packages", - "//src/main/java/com/google/devtools/build/lib:util", - "//third_party:apache_velocity", - "//third_party:guava", - ], +# Description: +# Documentation generator for Bazel +package( + default_visibility = ["//src:__subpackages__"], ) java_library( name = "docgen_javalib", - srcs = glob( - ["**/*.java"], - exclude = [ - "BuildEncyclopediaGenerator.java", - "SkylarkDocumentationGenerator.java", - ], - ), - resources = [":be-template_files"], - exports = [ - "//src/main/java/com/google/devtools/build/lib:bazel-core", - ], + srcs = glob(["**/*.java"]), + resources = [":template_files"], deps = [ - "//src/main/java/com/google/devtools/build/lib:analysis-exec-rules-skyframe", - "//src/main/java/com/google/devtools/build/lib:bazel-core", + "//src/main/java/com/google/devtools/build/lib:build-base", "//src/main/java/com/google/devtools/build/lib:common", - "//src/main/java/com/google/devtools/build/lib:concurrent", "//src/main/java/com/google/devtools/build/lib:packages", - "//src/main/java/com/google/devtools/build/lib:util", "//third_party:apache_velocity", "//third_party:guava", "//third_party:jsr305", @@ -48,13 +24,21 @@ java_binary( main_class = "com.google.devtools.build.docgen.BuildEncyclopediaGenerator", deps = [ ":docgen_javalib", - "//src/main/java/com/google/devtools/build/lib:analysis-exec-rules-skyframe", + "//src/main/java/com/google/devtools/build/lib:bazel-rules", + "//src/main/java/com/google/devtools/build/lib:build-base", "//src/main/java/com/google/devtools/build/lib:common", ], ) +java_binary( + name = "skydoc_bin", + srcs = ["SkylarkDocumentationGenerator.java"], + main_class = "com.google.devtools.build.docgen.SkylarkDocumentationGenerator", + deps = [":docgen_javalib"], +) + filegroup( - name = "be-template_files", + name = "template_files", srcs = glob([ "templates/**/*.html", "templates/**/*.vm", @@ -65,10 +49,3 @@ filegroup( name = "srcs", srcs = glob(["**"]), ) - -java_binary( - name = "skydoc_bin", - srcs = ["SkylarkDocumentationGenerator.java"], - main_class = "com.google.devtools.build.docgen.SkylarkDocumentationGenerator", - deps = [":docgen_javalib"], -) diff --git a/src/main/java/com/google/devtools/build/lib/BUILD b/src/main/java/com/google/devtools/build/lib/BUILD index 742b3a80b7..4691a7af1c 100644 --- a/src/main/java/com/google/devtools/build/lib/BUILD +++ b/src/main/java/com/google/devtools/build/lib/BUILD @@ -1,49 +1,155 @@ -package(default_visibility = ["//src:__subpackages__"]) +# Description: +# Main Java code for Bazel +package( + default_visibility = ["//src:__subpackages__"], +) java_library( - name = "analysis-exec-rules-skyframe", - srcs = glob( - [ - "analysis/**/*.java", - "exec/*.java", - "ideinfo/**/*.java", - "rules/**/*.java", - "skyframe/*.java", - ], - exclude = [ - "rules/java/JavaToolchainDataParser.java", - ], - ) + [ - "runtime/BlazeServerStartupOptions.java", + name = "common", + srcs = [ + "Constants.java", + ], + exports = ["//third_party:guava"], + deps = [ + "//third_party:guava", ], +) + +java_library( + name = "shell", + srcs = glob(["shell/*.java"]), + deps = [ + ":common", + ], +) + +filegroup( + name = "srcs", + srcs = glob(["**"]) + [ + "//src/main/java/com/google/devtools/build/lib/rules/apple:srcs", + "//src/main/java/com/google/devtools/build/lib/rules/cpp:srcs", + "//src/main/java/com/google/devtools/build/lib/rules/genquery:srcs", + "//src/main/java/com/google/devtools/build/lib/rules/objc:srcs", + "//src/main/java/com/google/devtools/common/options:srcs", + "//src/main/java/com/google/devtools/build/lib/bazel/dash:srcs", + "//src/main/java/com/google/devtools/build/lib/sandbox:srcs", + "//src/main/java/com/google/devtools/build/skyframe:srcs", + "//src/main/java/com/google/devtools/build/lib/standalone:srcs", + "//src/main/java/com/google/devtools/build/lib/worker:srcs", + "//src/main/java/com/google/devtools/build/lib/query2:srcs", + "//src/main/java/com/google/devtools/build/docgen:srcs", + ], + visibility = ["//src/test/shell/bazel:__pkg__"], +) + +# This package provides a general-purpose directed graph utility class with +# implementations of numerous textbook graph algorithms and code to read and +# write AT&T GraphViz files. + +java_library( + name = "graph", + srcs = glob(["graph/*.java"]), + deps = [ + ":common", + "//third_party:jsr305", + ], +) + +# Java interfaces to various native UNIX system services. +java_library( + name = "unix", + srcs = glob([ + "unix/*.java", + ]) + ["UnixJniLoader.java"], + resources = ["//src/main/native:libunix.so"], + deps = [ + ":common", + ":shell", + ], +) + +# Library of concurrency utilities. +java_library( + name = "concurrent", + srcs = glob(["concurrent/*.java"]), + deps = [ + ":common", + "//third_party:jsr305", + ], +) + +# Library of collection utilities. +java_library( + name = "collect", + srcs = glob([ + "collect/*.java", + "collect/nestedset/*.java", + ]), + deps = [ + ":common", + "//third_party:jsr305", + ], +) + +# Virtual file system; do not use externally! +java_library( + name = "vfs", + srcs = glob([ + "profiler/*.java", + "vfs/*.java", + ]), deps = [ ":base-util", - ":collect", + ":clock", ":common", ":concurrent", - ":events", - ":graph", - ":io", ":os_util", - ":packages", - ":shell", + ":unix", + "//third_party:jsr305", + ], +) + +# Profiler chart library. +java_library( + name = "profiler-output", + srcs = glob([ + "profiler/chart/*.java", + "profiler/output/*.java", + "profiler/statistics/*.java", + ]), + deps = [ + ":common", ":util", ":vfs", "//src/main/java/com/google/devtools/build/lib/actions", - "//src/main/java/com/google/devtools/build/skyframe", - "//src/main/java/com/google/devtools/common/options", - "//src/main/protobuf:android_studio_ide_info_proto", - "//src/main/protobuf:bundlemerge_proto", - "//src/main/protobuf:crosstool_config_proto", - "//src/main/protobuf:extra_actions_base_proto", - "//src/main/protobuf:test_status_proto", - "//src/main/protobuf:xcodegen_proto", - "//src/tools/xcode-common/java/com/google/devtools/build/xcode/common", - "//src/tools/xcode-common/java/com/google/devtools/build/xcode/util", - "//third_party:guava", - "//third_party:joda_time", "//third_party:jsr305", - "//third_party:protobuf", + ], +) + +# In-memory virtual file system. +java_library( + name = "inmemoryfs", + srcs = glob(["vfs/inmemoryfs/*.java"]), + deps = [ + ":clock", + ":common", + ":concurrent", + ":unix", + ":vfs", + "//third_party:jsr305", + ], +) + +# Clock classes. +java_library( + name = "clock", + srcs = [ + "util/BlazeClock.java", + "util/Clock.java", + "util/JavaClock.java", + ], + deps = [ + ":concurrent", ], ) @@ -57,157 +163,121 @@ java_library( ], deps = [ ":common", - "//third_party:guava", ], ) +# I/O utilities. +java_library( + name = "io", + srcs = glob(["util/io/*.java"]), + deps = [ + ":clock", + ":common", + ":concurrent", + ":vfs", + ], +) + +# General utilities. +java_library( + name = "os_util", + srcs = ["util/OS.java"], +) + java_library( - name = "bazel-core", + name = "util", srcs = glob( - [ - "bazel/**/*.java", - ], + ["util/*.java"], exclude = [ - "bazel/repository/MavenConnector.java", + "util/BlazeClock.java", + "util/Clock.java", + "util/ExitCode.java", + "util/JavaClock.java", + "util/OS.java", + "util/StringCanonicalizer.java", + "util/StringTrie.java", + "util/VarInt.java", ], ), - resources = glob([ - "**/*.txt", - "**/*.html", - "**/*.css", - "**/*.js", - "**/*.WORKSPACE", - "**/*.vm", - ]), - visibility = [ - "//src:__subpackages__", - "//src/tools/generate_workspace/src/main/java/com/google/devtools/build/workspace:__pkg__", - ], - runtime_deps = [ - "//third_party:aether", - "//third_party:apache_commons_codec", - "//third_party:apache_commons_logging", - "//third_party:apache_httpclient", - "//third_party:apache_httpcore", - "//third_party:jsch", - "//third_party:maven", - "//third_party:maven_model", - "//third_party:plexus_interpolation", - "//third_party:plexus_utils", + exports = [ + ":base-util", + ":clock", + ":collect", + ":exitcode-external", + ":os_util", ], deps = [ - ":analysis-exec-rules-skyframe", - ":buildtool-runtime", - ":clock", + ":base-util", ":collect", ":common", ":concurrent", - ":events", - ":graph", - ":io", - ":maven-connector", + ":exitcode-external", ":os_util", - ":packages", - ":runtime", ":shell", ":unix", - ":util", ":vfs", - "//src/java_tools/singlejar/java/com/google/devtools/build/zip", - "//src/main/java/com/google/devtools/build/lib/actions", - "//src/main/java/com/google/devtools/build/lib/bazel/dash", - "//src/main/java/com/google/devtools/build/lib/query2", - "//src/main/java/com/google/devtools/build/lib/rules/genquery", - "//src/main/java/com/google/devtools/build/lib/sandbox", - "//src/main/java/com/google/devtools/build/lib/standalone", - "//src/main/java/com/google/devtools/build/lib/worker", - "//src/main/java/com/google/devtools/build/skyframe", "//src/main/java/com/google/devtools/common/options", - "//src/main/protobuf:build_proto", - "//src/main/protobuf:crosstool_config_proto", - "//src/main/protobuf:extra_actions_base_proto", - "//src/main/protobuf:test_status_proto", - "//src/main/protobuf:worker_protocol_proto", - "//third_party:aether", - "//third_party:apache_commons_compress", - "//third_party:apache_commons_pool2", - "//third_party:auto_value", - "//third_party:guava", - "//third_party:jgit", - "//third_party:joda_time", "//third_party:jsr305", - "//third_party:jsr330_inject", - "//third_party:maven", - "//third_party:maven_model", - "//third_party:plexus_component_annotations", - "//third_party:protobuf", - "//third_party:slf4j", ], ) -java_binary( - name = "bazel-main", - main_class = "com.google.devtools.build.lib.bazel.BazelMain", - visibility = ["//src:__pkg__"], - runtime_deps = [ - ":bazel-core", +java_library( + name = "exitcode-external", + srcs = [ + "util/ExitCode.java", + ], + deps = [ + "//third_party:guava", ], ) +# Event reporting infrastructure. java_library( - name = "buildtool-runtime", - srcs = glob([ - "buildtool/**/*.java", - "runtime/**/*.java", - ]), + name = "events", + srcs = glob(["events/*.java"]), deps = [ - ":analysis-exec-rules-skyframe", - ":clock", - ":collect", ":common", ":concurrent", - ":events", ":io", - ":os_util", - ":packages", - ":profiler-output", - ":server", - ":shell", - ":util", ":vfs", - "//src/main/java/com/google/devtools/build/docgen", - "//src/main/java/com/google/devtools/build/lib/actions", - "//src/main/java/com/google/devtools/build/lib/query2", - "//src/main/java/com/google/devtools/build/skyframe", - "//src/main/java/com/google/devtools/common/options", - "//src/main/protobuf:build_proto", - "//src/main/protobuf:invocation_policy_proto", - "//src/main/protobuf:test_status_proto", - "//third_party:guava", - "//third_party:joda_time", "//third_party:jsr305", - "//third_party:protobuf", ], ) -# Clock classes. +######################################################################## +# +# The "foundation" library (concurrent, events, util, vfs, inmemoryfs, options) +# Filesystem abstraction, event reporting, options parsing, I/O routines. +# + +# These packages apparently depend on :foundation. I have no idea why, but to +# avoid breaking them, I allow them to depend on it. java_library( - name = "clock", - srcs = [ - "util/BlazeClock.java", - "util/Clock.java", - "util/JavaClock.java", - ], - deps = [ + name = "foundation", + exports = [ ":concurrent", + ":events", + # This should be removed at some point. Production code shouldn't use this. + ":inmemoryfs", + ":util", + ":vfs", + "//src/main/java/com/google/devtools/common/options", ], ) +######################################################################## +# +# The "cmdline" library: Label validation and target pattern +# parsing. Both the label syntax and the target pattern syntax are a +# public interface, and all changes have to be made in a +# backwards-compatible manner. This library is intentionally +# standalone so it can be used outside without pulling in any internal +# code. +# + java_library( name = "cmdline", - srcs = glob([ - "cmdline/*.java", - ]), + srcs = glob(["cmdline/*.java"]), deps = [ ":base-util", ":common", @@ -215,301 +285,492 @@ java_library( ":syntax", ":util", ":vfs", - "//third_party:guava", "//third_party:jsr305", ], ) java_library( - name = "collect", + name = "syntax", srcs = glob([ - "collect/**/*.java", + "syntax/**/*.java", ]), deps = [ + ":collect", ":common", - ":shell", - "//third_party:guava", + ":concurrent", + ":events", + ":util", + ":vfs", + "//third_party:asm", + "//third_party:asm-commons", + "//third_party:asm-util", + "//third_party:auto_value", + "//third_party:bytebuddy", "//third_party:jsr305", ], ) +######################################################################## +# +# The "packages" library: syntax, packages, pkgcache. +# BUILD file scanning, parsing and evaluation; package loading and caching. +# + +# IMPORTANT: NOT A PUBLIC INTERFACE. +# +# DO NOT ADD A DEPENDENCY ON THIS TARGET, or any other in this +# package, without first talking to us. Here are two good +# reasons: +# +# 1. FRAGILITY. This is not a stable API, it's an internal interface. +# It changes from time to time, and your client *will* be broken. +# +# 2. CORRECTNESS. The BUILD file parser changes rapidly. If +# your application depends upon it, your application will start to +# bit-rot almost immediately. + java_library( - name = "common", - srcs = [ - "Constants.java", - ], + name = "packages-internal", + srcs = glob([ + "packages/*.java", + "pkgcache/*.java", + ]), exports = [ - "//third_party:guava", + ":cmdline", + ":syntax", ], deps = [ + ":cmdline", + ":collect", + ":common", + ":concurrent", + ":events", + ":syntax", + ":util", + ":vfs", + "//src/main/java/com/google/devtools/common/options", + "//src/main/protobuf:build_proto_v2", "//third_party:guava", "//third_party:jsr305", + "//third_party:protobuf", ], ) java_library( - name = "concurrent", - srcs = glob([ - "concurrent/*.java", - ]), + name = "packages", + exports = [ + ":foundation", + ":packages-internal", + ], +) + +java_library( + name = "java-toolchain-parser", + srcs = [ + "rules/java/JavaToolchainData.java", + "rules/java/JavaToolchainDataParser.java", + ], deps = [ - ":common", + ":concurrent", + "//src/main/protobuf:build_proto_v2", "//third_party:guava", - "//third_party:jsr305", + "//third_party:protobuf", ], ) java_library( - name = "events", - srcs = glob([ - "events/*.java", - ]), + name = "build-base", + srcs = glob( + [ + "analysis/*.java", + "analysis/actions/*.java", + "analysis/buildinfo/*.java", + "analysis/config/*.java", + "analysis/constraints/*.java", + "exec/*.java", + "rules/*.java", + "rules/extra/*.java", + "rules/filegroup/*.java", + "rules/fileset/*.java", + "rules/test/*.java", + "rules/repository/*.java", + "skyframe/*.java", + ], + exclude = ["analysis/BuildInfo.java"], + ) + [ + "runtime/BlazeServerStartupOptions.java", + ], deps = [ + ":base-util", + ":cmdline", + ":collect", ":common", ":concurrent", + ":events", + ":exitcode-external", + ":graph", ":io", + ":os_util", + ":packages-internal", + ":shell", + ":util", ":vfs", + "//src/main/java/com/google/devtools/build/lib/actions", + "//src/main/java/com/google/devtools/build/skyframe", + "//src/main/java/com/google/devtools/common/options", + "//src/main/protobuf:extra_actions_base_proto", + "//src/main/protobuf:test_status_proto", "//third_party:guava", "//third_party:jsr305", + "//third_party:protobuf", ], ) java_library( - name = "graph", - srcs = glob([ - "graph/*.java", - ]), + name = "bazel-rules", + srcs = glob( + [ + "bazel/rules/**/*.java", + ], + exclude = [ + "bazel/rules/workspace/*.java", + ], + ), + resources = glob( + [ + "bazel/rules/**/*.txt", + "bazel/rules/**/*.WORKSPACE", + ], + ), deps = [ + ":android-rules", + ":bazel", + ":bazel-repository", + ":build-base", + ":build-info", + ":collect", + ":common", + ":events", + ":ideinfo", + ":java-rules", + ":packages-internal", + ":proto-rules", + ":python-rules", + ":util", + ":vfs", + "//src/main/java/com/google/devtools/build/lib/actions", + "//src/main/java/com/google/devtools/build/lib/query2:query-output", + "//src/main/java/com/google/devtools/build/lib/rules/apple", + "//src/main/java/com/google/devtools/build/lib/rules/cpp", + "//src/main/java/com/google/devtools/build/lib/rules/genquery", + "//src/main/java/com/google/devtools/build/lib/rules/objc", + "//src/main/java/com/google/devtools/build/skyframe", + "//src/main/java/com/google/devtools/common/options", + "//src/main/protobuf:crosstool_config_proto", "//third_party:guava", + "//third_party:joda_time", "//third_party:jsr305", ], ) -# I/O utilities. java_library( - name = "io", - srcs = glob(["util/io/*.java"]), + name = "bazel-main", + srcs = glob(["bazel/*.java"]), + resources = [ + "bazel/rules/java/java_stub_template.txt", + "bazel/rules/python/stub_template.txt", + ], deps = [ + ":bazel", + ":bazel-commands", + ":bazel-repository", + ":bazel-rules", + ":build-base", + ":build-info", ":clock", - ":common", - ":concurrent", + ":events", + ":io", + ":packages-internal", + ":shell", + ":util", ":vfs", + "//src/main/java/com/google/devtools/build/lib/actions", + "//src/main/java/com/google/devtools/build/lib/bazel/dash", + "//src/main/java/com/google/devtools/build/lib/sandbox", + "//src/main/java/com/google/devtools/build/lib/standalone", + "//src/main/java/com/google/devtools/build/lib/worker", + "//src/main/java/com/google/devtools/build/skyframe", + "//src/main/java/com/google/devtools/common/options", "//third_party:guava", + "//third_party:jsr305", ], ) java_library( - name = "java-toolchain-parser", - testonly = 1, - srcs = glob([ - # JavaToolchain parser - "rules/java/JavaToolchainData.java", - "rules/java/JavaToolchainDataParser.java", - # Concurrent stuff - "concurrent/*.java", - ]), - visibility = [ - "//src/java_tools/buildjar:__pkg__", - ], + name = "bazel-commands", + srcs = glob(["bazel/commands/*.java"]), + resources = ["bazel/commands/fetch.txt"], deps = [ ":common", - "//src/main/protobuf:build_proto", + ":events", + ":exitcode-external", + ":java-rules", + ":packages-internal", + ":runtime", + ":util", + "//src/main/java/com/google/devtools/build/lib/query2", + "//src/main/java/com/google/devtools/build/lib/query2:query-engine", + "//src/main/java/com/google/devtools/common/options", "//third_party:guava", - "//third_party:jsr305", - "//third_party:protobuf", ], ) -# General utilities. java_library( - name = "os_util", - srcs = ["util/OS.java"], + name = "bazel-repository", + srcs = glob( + [ + "bazel/repository/*.java", + "bazel/rules/workspace/*.java", + ], + exclude = ["bazel/repository/MavenConnector.java"], + ), + runtime_deps = [ + "//third_party:aether", + "//third_party:apache_commons_codec", + "//third_party:apache_commons_logging", + "//third_party:apache_httpclient", + "//third_party:apache_httpcore", + "//third_party:maven", + "//third_party:maven_model", + "//third_party:plexus_interpolation", + "//third_party:plexus_utils", + "//third_party:slf4j", + ], + deps = [ + ":concurrent", + ":events", + ":maven-connector", + ":util", + "//src/java_tools/singlejar/java/com/google/devtools/build/zip", + "//src/main/java/com/google/devtools/build/lib:build-base", + "//src/main/java/com/google/devtools/build/lib:packages-internal", + "//src/main/java/com/google/devtools/build/lib:vfs", + "//src/main/java/com/google/devtools/build/skyframe", + "//third_party:aether", + "//third_party:apache_commons_compress", + "//third_party:guava", + "//third_party:jgit", + "//third_party:jsr305", + "//third_party:maven", + "//third_party:maven_model", + "//third_party:plexus_component_annotations", + ], ) java_library( - name = "packages", - exports = [":packages-internal"], + name = "maven-connector", + srcs = ["bazel/repository/MavenConnector.java"], + deps = [ + "//third_party:aether", + "//third_party:jsr330_inject", + "//third_party:maven_model", + ], ) +# Rules java_library( - name = "packages-internal", - srcs = glob([ - "packages/*.java", - "pkgcache/*.java", - ]), - exports = [ - ":cmdline", - ":syntax", - ], + name = "nativedeps-rules", + srcs = glob( + ["rules/nativedeps/*.java"], + ), deps = [ - ":cmdline", + ":build-base", ":collect", ":common", ":concurrent", - ":events", - ":syntax", + ":packages-internal", ":util", ":vfs", - "//src/main/java/com/google/devtools/common/options", - "//src/main/protobuf:build_proto", - "//third_party:guava", + "//src/main/java/com/google/devtools/build/lib/actions", + "//src/main/java/com/google/devtools/build/lib/rules/cpp", "//third_party:jsr305", "//third_party:protobuf", ], ) java_library( - name = "profiler-output", - srcs = glob([ - "profiler/chart/*.java", - "profiler/output/*.java", - "profiler/statistics/*.java", - ]), + name = "proto-rules", + srcs = glob( + ["rules/proto/*.java"], + ), deps = [ + ":build-base", ":collect", + ":common", + ":concurrent", + ":packages-internal", ":util", ":vfs", "//src/main/java/com/google/devtools/build/lib/actions", - "//third_party:guava", "//third_party:jsr305", + "//third_party:protobuf", ], ) java_library( - name = "syntax", - srcs = glob(["syntax/**/*.java"]), + name = "java-rules", + srcs = glob( + ["rules/java/*.java"], + exclude = [ + "rules/java/JavaImplicitAttributes.java", + "rules/java/JavaToolchainDataParser.java", + ], + ), deps = [ - ":base-util", + ":build-base", ":collect", ":common", ":concurrent", ":events", + ":java-implicit-attributes", + ":packages-internal", + ":shell", ":util", ":vfs", + "//src/main/java/com/google/devtools/build/lib/actions", + "//src/main/java/com/google/devtools/build/lib/rules/cpp", "//src/main/java/com/google/devtools/common/options", - "//src/main/protobuf:build_proto", - "//third_party:asm", - "//third_party:asm-util", - "//third_party:auto_value", - "//third_party:bytebuddy", - "//third_party:guava", + "//src/main/protobuf:extra_actions_base_proto", + "//third_party:joda_time", "//third_party:jsr305", + "//third_party:protobuf", ], ) java_library( - name = "unix", - srcs = glob([ - "unix/*.java", - ]) + [ - "UnixJniLoader.java", - ], + name = "java-implicit-attributes", + srcs = ["rules/java/JavaImplicitAttributes.java"], +) + +java_library( + name = "android-rules", + srcs = glob( + ["rules/android/*.java"], + ), deps = [ + ":build-base", + ":collect", ":common", - ":shell", - "//third_party:guava", + ":concurrent", + ":events", + ":java-rules", + ":nativedeps-rules", + ":packages-internal", + ":util", + ":vfs", + "//src/main/java/com/google/devtools/build/lib/actions", + "//src/main/java/com/google/devtools/build/lib/rules/cpp", + "//src/main/java/com/google/devtools/common/options", "//third_party:jsr305", + "//third_party:protobuf", ], ) java_library( - name = "util", + name = "python-rules", srcs = glob( - ["util/*.java"], - exclude = [ - "util/BlazeClock.java", - "util/Clock.java", - "util/JavaClock.java", - "util/OS.java", - "util/StringCanonicalizer.java", - "util/StringTrie.java", - "util/VarInt.java", - ], + ["rules/python/*.java"], ), - exports = [ - ":base-util", - ":clock", - ":collect", - ":os_util", - ], deps = [ - ":base-util", - ":clock", + ":build-base", ":collect", ":common", ":concurrent", - ":os_util", - ":shell", - ":unix", + ":nativedeps-rules", + ":packages-internal", + ":util", ":vfs", + "//src/main/java/com/google/devtools/build/lib/actions", + "//src/main/java/com/google/devtools/build/lib/rules/cpp", "//src/main/java/com/google/devtools/common/options", - "//third_party:guava", + "//src/main/protobuf:crosstool_config_proto", + "//src/main/protobuf:extra_actions_base_proto", "//third_party:jsr305", + "//third_party:protobuf", ], ) java_library( - name = "vfs", - srcs = glob([ - "vfs/**/*.java", - "profiler/*.java", - ]), + name = "ideinfo", + srcs = glob( + ["ideinfo/*.java"], + ), deps = [ - ":base-util", - ":clock", - ":common", + ":android-rules", + ":build-base", + ":collect", ":concurrent", - ":os_util", - ":shell", - ":unix", - "//src/main/java/com/google/devtools/common/options", + ":java-rules", + ":packages-internal", + ":util", + ":vfs", + "//src/main/java/com/google/devtools/build/lib/actions", + "//src/main/protobuf:android_studio_ide_info_proto", "//third_party:guava", "//third_party:jsr305", + "//third_party:protobuf", ], ) java_library( - name = "maven-connector", - srcs = ["bazel/repository/MavenConnector.java"], - deps = [ - "//third_party:aether", - "//third_party:jsr330_inject", - "//third_party:maven_model", + name = "shared-base-rules", + exports = [ + ":android-rules", + ":java-rules", + ":nativedeps-rules", + ":proto-rules", + ":python-rules", ], ) java_library( name = "runtime", - srcs = glob([ - "runtime/**/*.java", - "buildtool/**/*.java", - "server/**/*.java", - ]), + srcs = glob( + [ + "runtime/*.java", + "server/**/*.java", + "runtime/commands/*.java", + "buildtool/*.java", + "buildtool/buildevent/*.java", + ], + ), deps = [ - ":analysis-exec-rules-skyframe", + ":build-base", ":clock", ":cmdline", ":collect", ":common", ":concurrent", ":events", + ":exitcode-external", ":io", - ":os_util", - ":packages", + ":packages-internal", ":profiler-output", + ":shared-base-rules", ":shell", ":unix", ":util", ":vfs", - "//src/main/java/com/google/devtools/build/docgen", + "//src/main/java/com/google/devtools/build/docgen:docgen_javalib", "//src/main/java/com/google/devtools/build/lib/actions", "//src/main/java/com/google/devtools/build/lib/query2", + "//src/main/java/com/google/devtools/build/lib/query2:query-engine", + "//src/main/java/com/google/devtools/build/lib/query2:query-output", "//src/main/java/com/google/devtools/build/skyframe", "//src/main/java/com/google/devtools/common/options", - "//src/main/protobuf:build_proto", + "//src/main/protobuf:build_proto_v2", "//src/main/protobuf:invocation_policy_proto", "//src/main/protobuf:test_status_proto", - "//third_party:guava", "//third_party:joda_time", "//third_party:jsr305", "//third_party:protobuf", @@ -517,42 +778,71 @@ java_library( ) java_library( - name = "server", - srcs = glob([ - "server/**/*.java", - ]), - deps = [ - ":clock", - ":io", - ":unix", + name = "bazel", + resources = glob(["runtime/commands/*.txt"]), + exports = [":runtime"], +) + +java_library( + name = "all-build-rules", + exports = [ + ":build-base", + ":common", + ":concurrent", + ":graph", + ":packages-internal", ":util", ":vfs", - "//third_party:guava", - "//third_party:jsr305", + "//src/main/java/com/google/devtools/build/lib/actions", + "//src/main/java/com/google/devtools/build/lib/rules/objc", + "//src/main/java/com/google/devtools/common/options", ], ) java_library( - name = "shell", - srcs = glob([ - "shell/*.java", - ]), - deps = ["//third_party:guava"], + name = "build", + exports = [ + ":all-build-rules", + ":build-base", + ":foundation", + ":packages", + ":query2", + "//src/main/java/com/google/devtools/build/lib/actions", + ], ) -filegroup( - name = "srcs", - srcs = glob(["**"]) + [ - "//src/main/java/com/google/devtools/common/options:srcs", - "//src/main/java/com/google/devtools/build/lib/bazel/dash:srcs", - "//src/main/java/com/google/devtools/build/lib/sandbox:srcs", - "//src/main/java/com/google/devtools/build/skyframe:srcs", - "//src/main/java/com/google/devtools/build/lib/standalone:srcs", - "//src/main/java/com/google/devtools/build/lib/worker:srcs", - "//src/main/java/com/google/devtools/build/lib/query2:srcs", - "//src/main/java/com/google/devtools/build/docgen:srcs", +######################################################################## +# +# The Blaze query language, revision 2: query2. +# + +java_library( + name = "query2", + exports = [ + ":common", + ":concurrent", + ":events", + ":foundation", + ":graph", + ":packages", + ":util", + ":vfs", + "//src/main/java/com/google/devtools/build/lib/query2", + "//src/main/java/com/google/devtools/common/options", + "//src/main/protobuf:build_proto_v2", + ], +) + +java_binary( + name = "bazel/BazelServer", + javacopts = [ + "-Xlint:all", + "-Xlint:-path", + ], + main_class = "com.google.devtools.build.lib.bazel.BazelMain", + runtime_deps = [ + ":bazel-main", ], - visibility = ["//src/test/shell/bazel:__pkg__"], ) filegroup( @@ -586,7 +876,6 @@ genrule( tools = ["//src/main/java/com/google/devtools/build/docgen:skydoc_bin"], ) -# # Bootstrapping SingleJar using Skylark rules # load("/tools/build_rules/java_rules_skylark", "bootstrap_java_library") @@ -596,3 +885,19 @@ bootstrap_java_library( srcs = glob(["shell/*.java"]), jars = ["//third_party:guava"], ) + +######################################################################## +# +# Miscellaneous targets +# + +# A library for just the BuildInfo class, so it can be used by the external +# SingleJar implementation. + +java_library( + name = "build-info", + srcs = [ + "analysis/BuildInfo.java", + ], + deps = ["//third_party:joda_time"], +) diff --git a/src/main/java/com/google/devtools/build/lib/bazel/dash/BUILD b/src/main/java/com/google/devtools/build/lib/bazel/dash/BUILD index b83dfddb30..a92e7f7108 100644 --- a/src/main/java/com/google/devtools/build/lib/bazel/dash/BUILD +++ b/src/main/java/com/google/devtools/build/lib/bazel/dash/BUILD @@ -1,21 +1,13 @@ -filegroup( - name = "srcs", - srcs = glob(["**"]), - visibility = ["//src/main/java/com/google/devtools/build/lib:__pkg__"], -) +package(default_visibility = ["//src:__subpackages__"]) java_library( name = "dash", srcs = glob(["*.java"]), - visibility = [ - "//src/main/java/com/google/devtools/build/lib:__pkg__", - ], deps = [ - "//src/main/java/com/google/devtools/build/lib:analysis-exec-rules-skyframe", + "//src/main/java/com/google/devtools/build/lib:build-base", "//src/main/java/com/google/devtools/build/lib:events", - "//src/main/java/com/google/devtools/build/lib:packages", + "//src/main/java/com/google/devtools/build/lib:packages-internal", "//src/main/java/com/google/devtools/build/lib:runtime", - "//src/main/java/com/google/devtools/build/lib:vfs", "//src/main/java/com/google/devtools/common/options", "//src/main/protobuf:dash_proto", "//third_party:apache_httpclient", @@ -24,3 +16,8 @@ java_library( "//third_party:protobuf", ], ) + +filegroup( + name = "srcs", + srcs = glob(["**"]), +) diff --git a/src/main/java/com/google/devtools/build/lib/query2/BUILD b/src/main/java/com/google/devtools/build/lib/query2/BUILD index 641eedaa4f..306ef7ad65 100644 --- a/src/main/java/com/google/devtools/build/lib/query2/BUILD +++ b/src/main/java/com/google/devtools/build/lib/query2/BUILD @@ -1,28 +1,52 @@ package( - default_visibility = [ - "//src:__subpackages__", - ], + default_visibility = ["//src:__subpackages__"], ) java_library( name = "query2", - srcs = glob([ - "**/*.java", - ]), + srcs = glob(["*.java"]), deps = [ - "//src/main/java/com/google/devtools/build/lib:analysis-exec-rules-skyframe", - "//src/main/java/com/google/devtools/build/lib:collect", + ":query-engine", + "//src/main/java/com/google/devtools/build/lib:build-base", "//src/main/java/com/google/devtools/build/lib:common", "//src/main/java/com/google/devtools/build/lib:concurrent", "//src/main/java/com/google/devtools/build/lib:events", "//src/main/java/com/google/devtools/build/lib:graph", - "//src/main/java/com/google/devtools/build/lib:packages", + "//src/main/java/com/google/devtools/build/lib:packages-internal", "//src/main/java/com/google/devtools/build/lib:util", "//src/main/java/com/google/devtools/build/lib:vfs", "//src/main/java/com/google/devtools/build/skyframe", + "//third_party:jsr305", + ], +) + +java_library( + name = "query-output", + srcs = glob(["output/*.java"]), + deps = [ + ":query-engine", + ":query2", + "//src/main/java/com/google/devtools/build/lib:collect", + "//src/main/java/com/google/devtools/build/lib:common", + "//src/main/java/com/google/devtools/build/lib:events", + "//src/main/java/com/google/devtools/build/lib:graph", + "//src/main/java/com/google/devtools/build/lib:packages-internal", + "//src/main/java/com/google/devtools/build/lib:util", "//src/main/java/com/google/devtools/common/options", - "//src/main/protobuf:build_proto", - "//third_party:guava", + "//src/main/protobuf:build_proto_v2", + "//third_party:jsr305", + ], +) + +# Query library. +java_library( + name = "query-engine", + srcs = glob(["engine/*.java"]), + deps = [ + "//src/main/java/com/google/devtools/build/lib:common", + "//src/main/java/com/google/devtools/build/lib:concurrent", + "//src/main/java/com/google/devtools/build/lib:graph", + "//src/main/java/com/google/devtools/build/lib:util", "//third_party:jsr305", ], ) diff --git a/src/main/java/com/google/devtools/build/lib/rules/apple/BUILD b/src/main/java/com/google/devtools/build/lib/rules/apple/BUILD new file mode 100644 index 0000000000..b78d8ae747 --- /dev/null +++ b/src/main/java/com/google/devtools/build/lib/rules/apple/BUILD @@ -0,0 +1,28 @@ +# Description: +# Apple platform support + +package( + default_visibility = ["//src:__subpackages__"], +) + +java_library( + name = "apple", + srcs = glob(["*.java"]), + deps = [ + "//src/main/java/com/google/devtools/build/lib:build-base", + "//src/main/java/com/google/devtools/build/lib:cmdline", + "//src/main/java/com/google/devtools/build/lib:common", + "//src/main/java/com/google/devtools/build/lib:concurrent", + "//src/main/java/com/google/devtools/build/lib:packages-internal", + "//src/main/java/com/google/devtools/build/lib:syntax", + "//src/main/java/com/google/devtools/common/options", + "//src/main/protobuf:xcodegen_proto", + "//third_party:guava", + "//third_party:jsr305", + ], +) + +filegroup( + name = "srcs", + srcs = glob(["**"]), +) diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/BUILD b/src/main/java/com/google/devtools/build/lib/rules/cpp/BUILD new file mode 100644 index 0000000000..1b7db3dbea --- /dev/null +++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/BUILD @@ -0,0 +1,36 @@ +# Description: +# C++ rule support + +package( + default_visibility = ["//src:__subpackages__"], +) + +java_library( + name = "cpp", + srcs = glob(["**/*.java"]), + deps = [ + "//src/main/java/com/google/devtools/build/lib:build-base", + "//src/main/java/com/google/devtools/build/lib:collect", + "//src/main/java/com/google/devtools/build/lib:common", + "//src/main/java/com/google/devtools/build/lib:concurrent", + "//src/main/java/com/google/devtools/build/lib:events", + "//src/main/java/com/google/devtools/build/lib:io", + "//src/main/java/com/google/devtools/build/lib:packages-internal", + "//src/main/java/com/google/devtools/build/lib:shell", + "//src/main/java/com/google/devtools/build/lib:util", + "//src/main/java/com/google/devtools/build/lib:vfs", + "//src/main/java/com/google/devtools/build/lib/actions", + "//src/main/java/com/google/devtools/build/lib/rules/apple", + "//src/main/java/com/google/devtools/build/skyframe", + "//src/main/java/com/google/devtools/common/options", + "//src/main/protobuf:crosstool_config_proto", + "//src/main/protobuf:extra_actions_base_proto", + "//third_party:jsr305", + "//third_party:protobuf", + ], +) + +filegroup( + name = "srcs", + srcs = glob(["**"]), +) diff --git a/src/main/java/com/google/devtools/build/lib/rules/genquery/BUILD b/src/main/java/com/google/devtools/build/lib/rules/genquery/BUILD index 72de62531e..1f43419205 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/genquery/BUILD +++ b/src/main/java/com/google/devtools/build/lib/rules/genquery/BUILD @@ -1,28 +1,27 @@ -package(default_visibility = ["//src:__subpackages__"]) +# Description: +# Genquery support + +package( + default_visibility = ["//src:__subpackages__"], +) java_library( name = "genquery", - srcs = glob([ - "*.java", - ]), + srcs = glob(["*.java"]), deps = [ - "//src/main/java/com/google/devtools/build/lib:analysis-exec-rules-skyframe", + "//src/main/java/com/google/devtools/build/lib:build-base", "//src/main/java/com/google/devtools/build/lib:collect", "//src/main/java/com/google/devtools/build/lib:common", - "//src/main/java/com/google/devtools/build/lib:concurrent", "//src/main/java/com/google/devtools/build/lib:events", - "//src/main/java/com/google/devtools/build/lib:graph", - "//src/main/java/com/google/devtools/build/lib:packages", - "//src/main/java/com/google/devtools/build/lib:shell", + "//src/main/java/com/google/devtools/build/lib:packages-internal", "//src/main/java/com/google/devtools/build/lib:util", "//src/main/java/com/google/devtools/build/lib:vfs", "//src/main/java/com/google/devtools/build/lib/actions", "//src/main/java/com/google/devtools/build/lib/query2", + "//src/main/java/com/google/devtools/build/lib/query2:query-engine", + "//src/main/java/com/google/devtools/build/lib/query2:query-output", "//src/main/java/com/google/devtools/build/skyframe", "//src/main/java/com/google/devtools/common/options", - "//src/main/protobuf:crosstool_config_proto", - "//src/main/protobuf:extra_actions_base_proto", - "//third_party:guava", "//third_party:jsr305", "//third_party:protobuf", ], diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/BUILD b/src/main/java/com/google/devtools/build/lib/rules/objc/BUILD new file mode 100644 index 0000000000..26da7d0188 --- /dev/null +++ b/src/main/java/com/google/devtools/build/lib/rules/objc/BUILD @@ -0,0 +1,37 @@ +# Description: +# Objective-C rule support + +package( + default_visibility = ["//src:__subpackages__"], +) + +java_library( + name = "objc", + srcs = glob(["*.java"]), + deps = [ + "//src/main/java/com/google/devtools/build/lib:build-base", + "//src/main/java/com/google/devtools/build/lib:build-info", + "//src/main/java/com/google/devtools/build/lib:collect", + "//src/main/java/com/google/devtools/build/lib:common", + "//src/main/java/com/google/devtools/build/lib:concurrent", + "//src/main/java/com/google/devtools/build/lib:java-rules", + "//src/main/java/com/google/devtools/build/lib:packages-internal", + "//src/main/java/com/google/devtools/build/lib:proto-rules", + "//src/main/java/com/google/devtools/build/lib:shell", + "//src/main/java/com/google/devtools/build/lib:util", + "//src/main/java/com/google/devtools/build/lib:vfs", + "//src/main/java/com/google/devtools/build/lib/actions", + "//src/main/java/com/google/devtools/build/lib/rules/apple", + "//src/main/java/com/google/devtools/build/lib/rules/cpp", + "//src/main/java/com/google/devtools/common/options", + "//src/main/protobuf:bundlemerge_proto", + "//src/main/protobuf:xcodegen_proto", + "//third_party:guava", + "//third_party:jsr305", + ], +) + +filegroup( + name = "srcs", + srcs = glob(["**"]), +) diff --git a/src/main/java/com/google/devtools/build/lib/sandbox/BUILD b/src/main/java/com/google/devtools/build/lib/sandbox/BUILD index 78510cf752..e236e24e51 100644 --- a/src/main/java/com/google/devtools/build/lib/sandbox/BUILD +++ b/src/main/java/com/google/devtools/build/lib/sandbox/BUILD @@ -1,26 +1,27 @@ package( - default_visibility = [ - "//src:__subpackages__", - ], + default_visibility = ["//src:__subpackages__"], ) java_library( name = "sandbox", srcs = glob(["*.java"]), + data = [ + "//src/main/tools:namespace-sandbox", + ], deps = [ - "//src/main/java/com/google/devtools/build/lib:analysis-exec-rules-skyframe", - "//src/main/java/com/google/devtools/build/lib:buildtool-runtime", + "//src/main/java/com/google/devtools/build/lib:build-base", "//src/main/java/com/google/devtools/build/lib:common", "//src/main/java/com/google/devtools/build/lib:concurrent", "//src/main/java/com/google/devtools/build/lib:events", "//src/main/java/com/google/devtools/build/lib:io", - "//src/main/java/com/google/devtools/build/lib:os_util", - "//src/main/java/com/google/devtools/build/lib:packages", + "//src/main/java/com/google/devtools/build/lib:packages-internal", + "//src/main/java/com/google/devtools/build/lib:runtime", "//src/main/java/com/google/devtools/build/lib:shell", "//src/main/java/com/google/devtools/build/lib:unix", "//src/main/java/com/google/devtools/build/lib:util", "//src/main/java/com/google/devtools/build/lib:vfs", "//src/main/java/com/google/devtools/build/lib/actions", + "//src/main/java/com/google/devtools/build/lib/rules/cpp", "//src/main/java/com/google/devtools/build/lib/standalone", "//src/main/java/com/google/devtools/common/options", "//third_party:guava", diff --git a/src/main/java/com/google/devtools/build/lib/standalone/BUILD b/src/main/java/com/google/devtools/build/lib/standalone/BUILD index ef1bc84c1d..ea18314401 100644 --- a/src/main/java/com/google/devtools/build/lib/standalone/BUILD +++ b/src/main/java/com/google/devtools/build/lib/standalone/BUILD @@ -1,23 +1,24 @@ package( - default_visibility = [ - "//src:__subpackages__", - ], + default_visibility = ["//src:__subpackages__"], ) java_library( name = "standalone", srcs = glob(["*.java"]), + data = [ + "//src/main/tools:process-wrapper", + ], deps = [ - "//src/main/java/com/google/devtools/build/lib:analysis-exec-rules-skyframe", - "//src/main/java/com/google/devtools/build/lib:buildtool-runtime", - "//src/main/java/com/google/devtools/build/lib:common", + "//src/main/java/com/google/devtools/build/lib:build-base", "//src/main/java/com/google/devtools/build/lib:io", - "//src/main/java/com/google/devtools/build/lib:os_util", - "//src/main/java/com/google/devtools/build/lib:packages", + "//src/main/java/com/google/devtools/build/lib:packages-internal", + "//src/main/java/com/google/devtools/build/lib:runtime", "//src/main/java/com/google/devtools/build/lib:shell", "//src/main/java/com/google/devtools/build/lib:util", "//src/main/java/com/google/devtools/build/lib:vfs", "//src/main/java/com/google/devtools/build/lib/actions", + "//src/main/java/com/google/devtools/build/lib/rules/apple", + "//src/main/java/com/google/devtools/build/lib/rules/cpp", "//third_party:guava", ], ) diff --git a/src/main/java/com/google/devtools/build/lib/worker/BUILD b/src/main/java/com/google/devtools/build/lib/worker/BUILD index 4bb1630542..a1beb96982 100644 --- a/src/main/java/com/google/devtools/build/lib/worker/BUILD +++ b/src/main/java/com/google/devtools/build/lib/worker/BUILD @@ -1,20 +1,17 @@ package( - default_visibility = [ - "//src:__subpackages__", - ], + default_visibility = ["//src:__subpackages__"], ) java_library( name = "worker", srcs = glob(["*.java"]), deps = [ - "//src/main/java/com/google/devtools/build/lib:analysis-exec-rules-skyframe", - "//src/main/java/com/google/devtools/build/lib:buildtool-runtime", - "//src/main/java/com/google/devtools/build/lib:common", + "//src/main/java/com/google/devtools/build/lib:build-base", "//src/main/java/com/google/devtools/build/lib:concurrent", "//src/main/java/com/google/devtools/build/lib:events", "//src/main/java/com/google/devtools/build/lib:io", - "//src/main/java/com/google/devtools/build/lib:packages", + "//src/main/java/com/google/devtools/build/lib:packages-internal", + "//src/main/java/com/google/devtools/build/lib:runtime", "//src/main/java/com/google/devtools/build/lib:util", "//src/main/java/com/google/devtools/build/lib:vfs", "//src/main/java/com/google/devtools/build/lib/actions", |