# Description: # Main Java code for Bazel package( default_visibility = ["//src:__subpackages__"], ) # Generate list of all srcs via: # bazel query 'filter("srcs", kind("filegroup rule", //src/main/java/com/google/devtools/build/lib/...))' | sort | sed -e "s/^/\"/" | sed -e "s/$/\",/" | fgrep -v "build/lib:srcs" filegroup( name = "srcs", srcs = glob(["**"]) + [ "//src/main/java/com/google/devtools/build/docgen:srcs", "//src/main/java/com/google/devtools/build/lib/actions:srcs", "//src/main/java/com/google/devtools/build/lib/analysis/platform:srcs", "//src/main/java/com/google/devtools/build/lib/analysis/skylark/annotations:srcs", "//src/main/java/com/google/devtools/build/lib/analysis/skylark/annotations/processor:srcs", "//src/main/java/com/google/devtools/build/lib/analysis/whitelisting:srcs", "//src/main/java/com/google/devtools/build/lib/authandtls:srcs", "//src/main/java/com/google/devtools/build/lib/bazel/repository/cache:srcs", "//src/main/java/com/google/devtools/build/lib/bazel/repository/downloader:srcs", "//src/main/java/com/google/devtools/build/lib/buildeventservice/client:srcs", "//src/main/java/com/google/devtools/build/lib/buildeventservice:srcs", "//src/main/java/com/google/devtools/build/lib/buildeventstream/proto:srcs", "//src/main/java/com/google/devtools/build/lib/buildeventstream:srcs", "//src/main/java/com/google/devtools/build/lib/buildeventstream/transports:srcs", "//src/main/java/com/google/devtools/build/lib/causes:srcs", "//src/main/java/com/google/devtools/build/lib/bazel/debug:srcs", "//src/main/java/com/google/devtools/build/lib/clock:srcs", "//src/main/java/com/google/devtools/build/lib/cmdline:srcs", "//src/main/java/com/google/devtools/build/lib/collect/compacthashset:srcs", "//src/main/java/com/google/devtools/build/lib/collect/nestedset:srcs", "//src/main/java/com/google/devtools/build/lib/collect:srcs", "//src/main/java/com/google/devtools/build/lib/concurrent:srcs", "//src/main/java/com/google/devtools/build/lib/exec/apple:srcs", "//src/main/java/com/google/devtools/build/lib/exec/local:srcs", "//src/main/java/com/google/devtools/build/lib/graph:srcs", "//src/main/java/com/google/devtools/build/lib/metrics:srcs", "//src/main/java/com/google/devtools/build/lib/profiler:srcs", "//src/main/java/com/google/devtools/build/lib/profiler/callcounts:srcs", "//src/main/java/com/google/devtools/build/lib/profiler/memory:srcs", "//src/main/java/com/google/devtools/build/lib/query2:srcs", "//src/main/java/com/google/devtools/build/lib/remote:srcs", "//src/main/java/com/google/devtools/build/lib/remote/blobstore:srcs", "//src/main/java/com/google/devtools/build/lib/remote/blobstore/http:srcs", "//src/main/java/com/google/devtools/build/lib/remote/logging:srcs", "//src/main/java/com/google/devtools/build/lib/remote/util:srcs", "//src/main/java/com/google/devtools/build/lib/rules/apple/cpp:srcs", "//src/main/java/com/google/devtools/build/lib/rules/apple:srcs", "//src/main/java/com/google/devtools/build/lib/rules/apple/swift:srcs", "//src/main/java/com/google/devtools/build/lib/rules/config:srcs", "//src/main/java/com/google/devtools/build/lib/rules/cpp/proto: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/genrule:srcs", "//src/main/java/com/google/devtools/build/lib/rules/objc:srcs", "//src/main/java/com/google/devtools/build/lib/rules/platform:srcs", "//src/main/java/com/google/devtools/build/lib/sandbox:srcs", "//src/main/java/com/google/devtools/build/lib/shell:srcs", "//src/main/java/com/google/devtools/build/lib/skyframe/packages:srcs", "//src/main/java/com/google/devtools/build/lib/skyframe/serialization:srcs", "//src/main/java/com/google/devtools/build/lib/skylarkbuildapi:srcs", "//src/main/java/com/google/devtools/build/lib/skylarkbuildapi/android:srcs", "//src/main/java/com/google/devtools/build/lib/skylarkbuildapi/apple:srcs", "//src/main/java/com/google/devtools/build/lib/skylarkbuildapi/config:srcs", "//src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp:srcs", "//src/main/java/com/google/devtools/build/lib/skylarkbuildapi/java:srcs", "//src/main/java/com/google/devtools/build/lib/skylarkbuildapi/platform:srcs", "//src/main/java/com/google/devtools/build/lib/skylarkbuildapi/repository:srcs", "//src/main/java/com/google/devtools/build/lib/skylarkbuildapi/test:srcs", "//src/main/java/com/google/devtools/build/lib/skylarkdebug/module:srcs", "//src/main/java/com/google/devtools/build/lib/skylarkdebug/proto:srcs", "//src/main/java/com/google/devtools/build/lib/skylarkdebug/server:srcs", "//src/main/java/com/google/devtools/build/lib/skylarkinterface/processor:srcs", "//src/main/java/com/google/devtools/build/lib/ssd:srcs", "//src/main/java/com/google/devtools/build/lib/standalone:srcs", "//src/main/java/com/google/devtools/build/lib/vfs/inmemoryfs:srcs", "//src/main/java/com/google/devtools/build/lib/vfs:srcs", "//src/main/java/com/google/devtools/build/lib/windows/jni:srcs", "//src/main/java/com/google/devtools/build/lib/windows/runfiles:srcs", "//src/main/java/com/google/devtools/build/lib/windows:srcs", "//src/main/java/com/google/devtools/build/lib/worker:srcs", "//src/main/java/com/google/devtools/build/lib/unsafe:srcs", "//src/main/java/com/google/devtools/build/skyframe:srcs", "//src/main/java/com/google/devtools/common/options:srcs", ], visibility = [ "//src:__pkg__", "//src/test/shell/bazel:__pkg__", ], ) # Java interfaces to various native UNIX system services. java_library( name = "unix", srcs = glob([ "unix/*.java", ]) + ["UnixJniLoader.java"], resources = select({ # todo(dslomov): Get rid of this whole library on Windows. "//src/conditions:windows": [], "//conditions:default": ["//src/main/native:libunix.so"], }), deps = [ "//src/main/java/com/google/devtools/build/lib:os_util", "//src/main/java/com/google/devtools/build/lib/concurrent", "//src/main/java/com/google/devtools/build/lib/profiler", "//src/main/java/com/google/devtools/build/lib/shell", "//src/main/java/com/google/devtools/build/lib/vfs", "//third_party:guava", ], ) # String canonicalizer. java_library( name = "base-util", srcs = [ "util/VarInt.java", ], exports = [":string_util"], deps = [ "//third_party:guava", ], ) # I/O utilities. java_library( name = "io", srcs = glob(["util/io/*.java"]), deps = [ "//src/main/java/com/google/devtools/build/lib/clock", "//src/main/java/com/google/devtools/build/lib/concurrent", "//src/main/java/com/google/devtools/build/lib/profiler", "//src/main/java/com/google/devtools/build/lib/vfs", "//third_party:guava", "//third_party/protobuf:protobuf_java", ], ) # General utilities. java_library( name = "os_util", srcs = ["util/OS.java"], ) java_library( name = "classpath-util", srcs = ["util/Classpath.java"], deps = [ "//third_party:guava", ], ) java_library( name = "process_util", srcs = ["util/ProcessUtils.java"], deps = [ "//src/main/java/com/google/devtools/build/lib:os_util", "//src/main/java/com/google/devtools/build/lib:unix", "//src/main/java/com/google/devtools/build/lib/concurrent", "//src/main/java/com/google/devtools/build/lib/windows", "//src/main/java/com/google/devtools/build/lib/windows/jni:processes", ], ) java_library( name = "single-line-formatter", srcs = ["util/SingleLineFormatter.java"], deps = [ "//third_party:guava", ], ) java_library( name = "simple-log-handler", srcs = ["util/SimpleLogHandler.java"], deps = [ ":single-line-formatter", ":util", "//third_party:guava", "//third_party:jsr305", ], ) java_library( name = "util", srcs = glob( ["util/*.java"], exclude = [ "util/BlazeClock.java", "util/Clock.java", "util/ExitCode.java", "util/FileType.java", "util/FileTypeSet.java", "util/JavaClock.java", "util/OS.java", "util/ProcessUtils.java", "util/ResourceUsage.java", "util/SimpleLogHandler.java", "util/SingleLineFormatter.java", "util/StringCanonicalizer.java", "util/StringTrie.java", "util/StringUtil.java", "util/VarInt.java", ], ), exports = [ "//src/main/java/com/google/devtools/build/lib:base-util", "//src/main/java/com/google/devtools/build/lib:exitcode-external", "//src/main/java/com/google/devtools/build/lib:filetype", "//src/main/java/com/google/devtools/build/lib:os_util", "//src/main/java/com/google/devtools/build/lib:resource_usage", "//src/main/java/com/google/devtools/build/lib:string_util", "//src/main/java/com/google/devtools/build/lib/clock", "//src/main/java/com/google/devtools/build/lib/collect", ], deps = [ "//src/main/java/com/google/devtools/build/lib:base-util", "//src/main/java/com/google/devtools/build/lib:exitcode-external", "//src/main/java/com/google/devtools/build/lib:os_util", "//src/main/java/com/google/devtools/build/lib:unix", "//src/main/java/com/google/devtools/build/lib/collect", "//src/main/java/com/google/devtools/build/lib/collect/compacthashset", "//src/main/java/com/google/devtools/build/lib/concurrent", "//src/main/java/com/google/devtools/build/lib/shell", "//src/main/java/com/google/devtools/build/lib/skyframe/serialization/autocodec", "//src/main/java/com/google/devtools/build/lib/vfs", "//src/main/java/com/google/devtools/common/options", "//third_party:error_prone_annotations", "//third_party:guava", "//third_party:jsr305", "//third_party/protobuf:protobuf_java", ], ) java_library( name = "filetype", srcs = [ "util/FileType.java", "util/FileTypeSet.java", ], deps = [ ":string_util", "//src/main/java/com/google/devtools/build/lib/skyframe/serialization/autocodec", "//third_party:guava", "//third_party:jsr305", ], ) java_library( name = "resource_usage", srcs = [ "util/ResourceUsage.java", ], deps = [ "//third_party:guava", ], ) java_library( name = "string_util", srcs = [ "util/StringCanonicalizer.java", "util/StringUtil.java", ], deps = [ "//src/main/java/com/google/devtools/build/lib/concurrent", "//third_party:guava", ], ) java_library( name = "exitcode-external", srcs = [ "util/ExitCode.java", ], deps = [ "//third_party:guava", ], ) java_library( name = "crash-utils", srcs = [ "util/BazelCrashUtils.java", "util/CustomExitCodePublisher.java", ], deps = [ ":exitcode-external", "//third_party:guava", "//third_party:jsr305", ], ) # Event reporting infrastructure. java_library( name = "events", srcs = glob(["events/*.java"]), deps = [ "//src/main/java/com/google/devtools/build/lib:io", "//src/main/java/com/google/devtools/build/lib/concurrent", "//src/main/java/com/google/devtools/build/lib/skyframe/serialization/autocodec", "//src/main/java/com/google/devtools/build/lib/vfs", "//third_party:guava", "//third_party:jsr305", ], ) ######################################################################## # # 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 = "foundation", exports = [ "//src/main/java/com/google/devtools/build/lib:events", "//src/main/java/com/google/devtools/build/lib:util", "//src/main/java/com/google/devtools/build/lib/concurrent", "//src/main/java/com/google/devtools/build/lib/vfs", "//src/main/java/com/google/devtools/common/options", ], ) # Skylark language for configuration files. # # IMPORTANT: NOT A PUBLIC INTERFACE. TARGETS SHOULDN'T DEPEND ON THIS. # java_library( name = "skylark-lang", visibility = ["//visibility:public"], exports = [ "//src/main/java/com/google/devtools/build/lib:events", "//src/main/java/com/google/devtools/build/lib:skylarkinterface", "//src/main/java/com/google/devtools/build/lib:syntax", "//src/main/java/com/google/devtools/build/lib/vfs", "//src/main/java/com/google/devtools/build/lib/vfs:pathfragment", "//src/main/java/com/google/devtools/build/lib/vfs/inmemoryfs", ], ) java_library( name = "skylarkinterface", exported_plugins = ["//src/main/java/com/google/devtools/build/lib/skylarkinterface/processor:annotation_preprocessor"], exports = [":skylarkinterface_internal"], ) java_library( name = "skylarkinterface_internal", srcs = glob([ "skylarkinterface/*.java", ]), visibility = ["//src/main/java/com/google/devtools/build/lib/skylarkinterface/processor:__pkg__"], deps = [ "//third_party:jsr305", ], ) # Provides core configuration transition abstractions and Blaze-common (i.e not # rule-specific) transitions. java_library( name = "config-transitions", srcs = glob([ "analysis/config/transitions/*.java", ]) + [ "analysis/config/BuildOptions.java", "analysis/config/FragmentOptions.java", ], deps = [ ":util", "//src/main/java/com/google/devtools/build/lib/cmdline", "//src/main/java/com/google/devtools/build/lib/concurrent", "//src/main/java/com/google/devtools/build/lib/skyframe/serialization/autocodec", "//src/main/java/com/google/devtools/common/options", "//src/main/java/com/google/devtools/common/options:invocation_policy", "//src/main/protobuf:invocation_policy_java_proto", "//third_party:guava", "//third_party:jsr305", ], ) java_library( name = "syntax", srcs = glob([ "syntax/**/*.java", ]), deps = [ "//src/main/java/com/google/devtools/build/lib:events", "//src/main/java/com/google/devtools/build/lib:skylarkinterface", "//src/main/java/com/google/devtools/build/lib:util", "//src/main/java/com/google/devtools/build/lib/cmdline", "//src/main/java/com/google/devtools/build/lib/collect/nestedset", "//src/main/java/com/google/devtools/build/lib/concurrent", "//src/main/java/com/google/devtools/build/lib/profiler", "//src/main/java/com/google/devtools/build/lib/skyframe/serialization/autocodec", "//src/main/java/com/google/devtools/build/lib/vfs:pathfragment", "//third_party:asm", "//third_party:asm-commons", "//third_party:asm-util", "//third_party:auto_value", "//third_party:guava", "//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 = "packages-internal", srcs = glob( [ "packages/*.java", "pkgcache/*.java", ], exclude = ["packages/BuilderFactoryForTesting.java"], ), exports = [ "//src/main/java/com/google/devtools/build/lib:syntax", "//src/main/java/com/google/devtools/build/lib/cmdline", ], deps = [ "//src/main/java/com/google/devtools/build/lib:config-matching-provider", "//src/main/java/com/google/devtools/build/lib:config-transitions", "//src/main/java/com/google/devtools/build/lib:events", "//src/main/java/com/google/devtools/build/lib:skylarkinterface", "//src/main/java/com/google/devtools/build/lib:syntax", "//src/main/java/com/google/devtools/build/lib:transitive-info-provider", "//src/main/java/com/google/devtools/build/lib:util", "//src/main/java/com/google/devtools/build/lib/buildeventstream", "//src/main/java/com/google/devtools/build/lib/buildeventstream/proto:build_event_stream_java_proto", "//src/main/java/com/google/devtools/build/lib/cmdline", "//src/main/java/com/google/devtools/build/lib/collect", "//src/main/java/com/google/devtools/build/lib/collect/nestedset", "//src/main/java/com/google/devtools/build/lib/concurrent", "//src/main/java/com/google/devtools/build/lib/skyframe/serialization/autocodec", "//src/main/java/com/google/devtools/build/lib/skylarkbuildapi", "//src/main/java/com/google/devtools/build/lib/vfs", "//src/main/java/com/google/devtools/build/skyframe", "//src/main/java/com/google/devtools/build/skyframe:skyframe-objects", "//src/main/java/com/google/devtools/common/options", "//src/main/protobuf:build_java_proto", "//third_party:auto_value", "//third_party:guava", "//third_party:jsr305", "//third_party/protobuf:protobuf_java", ], ) java_library( name = "packages/BuilderFactoryForTesting", srcs = ["packages/BuilderFactoryForTesting.java"], deps = [ ":build-base", ":packages-internal", "//third_party:guava", "//third_party:jsr305", ], ) java_library( name = "packages", exports = [ "//src/main/java/com/google/devtools/build/lib:foundation", "//src/main/java/com/google/devtools/build/lib:packages-internal", ], ) java_library( name = "transitive-info-provider", srcs = ["analysis/TransitiveInfoProvider.java"], ) java_library( name = "config-matching-provider", srcs = ["analysis/config/ConfigMatchingProvider.java"], deps = [ ":transitive-info-provider", "//src/main/java/com/google/devtools/build/lib/cmdline", "//src/main/java/com/google/devtools/build/lib/concurrent", "//src/main/java/com/google/devtools/build/lib/skyframe/serialization/autocodec", "//third_party:guava", ], ) java_library( name = "skylark-provider-collection", srcs = ["analysis/SkylarkProviderCollection.java"], deps = [ "//src/main/java/com/google/devtools/build/lib:packages-internal", "//third_party:jsr305", ], ) java_library( name = "build-configuration-option-details", srcs = ["analysis/config/BuildConfigurationOptionDetails.java"], visibility = [ "//src/main/java/com/google/devtools/build/lib/rules/config:__pkg__", ], deps = [ "//src/main/java/com/google/devtools/build/lib:build-base", ], ) java_library( name = "build-base", srcs = glob( [ "analysis/*.java", "analysis/actions/*.java", "analysis/buildinfo/*.java", "analysis/config/*.java", "analysis/config/transitions/*.java", "analysis/configuredtargets/*.java", "analysis/constraints/*.java", "analysis/extra/*.java", "analysis/fileset/*.java", "analysis/skylark/*.java", "analysis/stringtemplate/*.java", "analysis/test/*.java", "exec/*.java", "repository/*.java", "rules/*.java", "rules/extra/*.java", "rules/filegroup/*.java", "rules/fileset/*.java", "rules/repository/*.java", "skyframe/*.java", "skyframe/actiongraph/*.java", ], exclude = [ "analysis/BuildInfo.java", "analysis/TransitiveInfoProvider.java", "analysis/config/BuildConfigurationOptionDetails.java", "rules/repository/CoreWorkspaceRules.java", ], ) + [ "runtime/BlazeServerStartupOptions.java", "runtime/BuildEventStreamerUtils.java", ], exports = [ "//src/main/java/com/google/devtools/build/lib:transitive-info-provider", ], deps = [ ":build-request-options", "//src/main/java/com/google/devtools/build/lib:base-util", "//src/main/java/com/google/devtools/build/lib:events", "//src/main/java/com/google/devtools/build/lib:exitcode-external", "//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-internal", "//src/main/java/com/google/devtools/build/lib:skylark-provider-collection", "//src/main/java/com/google/devtools/build/lib:skylarkinterface", "//src/main/java/com/google/devtools/build/lib:syntax", "//src/main/java/com/google/devtools/build/lib:transitive-info-provider", "//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/actions", "//src/main/java/com/google/devtools/build/lib/actions:commandline_item", "//src/main/java/com/google/devtools/build/lib/analysis/platform", "//src/main/java/com/google/devtools/build/lib/analysis/platform:utils", "//src/main/java/com/google/devtools/build/lib/analysis/skylark/annotations", "//src/main/java/com/google/devtools/build/lib/buildeventstream", "//src/main/java/com/google/devtools/build/lib/buildeventstream/proto:build_event_stream_java_proto", "//src/main/java/com/google/devtools/build/lib/buildeventstream/transports", "//src/main/java/com/google/devtools/build/lib/causes", "//src/main/java/com/google/devtools/build/lib/cmdline", "//src/main/java/com/google/devtools/build/lib/collect", "//src/main/java/com/google/devtools/build/lib/collect/compacthashset", "//src/main/java/com/google/devtools/build/lib/collect/nestedset", "//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/profiler", "//src/main/java/com/google/devtools/build/lib/profiler/memory:current_rule_tracker", "//src/main/java/com/google/devtools/build/lib/rules/cpp:cpp_interface", "//src/main/java/com/google/devtools/build/lib/shell", "//src/main/java/com/google/devtools/build/lib/skyframe/serialization/autocodec", "//src/main/java/com/google/devtools/build/lib/skylarkbuildapi", "//src/main/java/com/google/devtools/build/lib/skylarkbuildapi/platform", "//src/main/java/com/google/devtools/build/lib/skylarkbuildapi/test", "//src/main/java/com/google/devtools/build/lib/vfs", "//src/main/java/com/google/devtools/build/lib/vfs:output_service", "//src/main/java/com/google/devtools/build/skyframe", "//src/main/java/com/google/devtools/build/skyframe:skyframe-objects", "//src/main/java/com/google/devtools/common/options", "//src/main/java/com/google/devtools/common/options:invocation_policy", "//src/main/protobuf:analysis_java_proto", "//src/main/protobuf:extra_actions_base_java_proto", "//src/main/protobuf:invocation_policy_java_proto", "//src/main/protobuf:spawn_java_proto", "//src/main/protobuf:test_status_java_proto", "//third_party:auto_value", "//third_party:guava", "//third_party:jsr305", "//third_party/protobuf:protobuf_java", ], ) java_library( name = "bazel-rules", srcs = glob( [ "bazel/rules/**/*.java", ], exclude = [ "bazel/rules/workspace/*.java", ], ), resources = glob( [ "bazel/rules/**/*.txt", "bazel/rules/**/*.WORKSPACE", ], ), deps = [ "//src/main/java/com/google/devtools/build/lib:RpcSupport", "//src/main/java/com/google/devtools/build/lib:android-rules", "//src/main/java/com/google/devtools/build/lib:bazel", "//src/main/java/com/google/devtools/build/lib:bazel-repository", "//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:core-rules", "//src/main/java/com/google/devtools/build/lib:core-workspace-rules", "//src/main/java/com/google/devtools/build/lib:events", "//src/main/java/com/google/devtools/build/lib:java-compilation", "//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:python-rules", "//src/main/java/com/google/devtools/build/lib:testing-support-rules", "//src/main/java/com/google/devtools/build/lib:util", "//src/main/java/com/google/devtools/build/lib/actions", "//src/main/java/com/google/devtools/build/lib/analysis/platform", "//src/main/java/com/google/devtools/build/lib/analysis/whitelisting", "//src/main/java/com/google/devtools/build/lib/buildeventstream", "//src/main/java/com/google/devtools/build/lib/buildeventstream/proto:build_event_stream_java_proto", "//src/main/java/com/google/devtools/build/lib/cmdline", "//src/main/java/com/google/devtools/build/lib/collect", "//src/main/java/com/google/devtools/build/lib/collect/nestedset", "//src/main/java/com/google/devtools/build/lib/concurrent", "//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/apple/cpp", "//src/main/java/com/google/devtools/build/lib/rules/apple/swift", "//src/main/java/com/google/devtools/build/lib/rules/config", "//src/main/java/com/google/devtools/build/lib/rules/cpp", "//src/main/java/com/google/devtools/build/lib/rules/cpp/proto:CcProtoLibrary", "//src/main/java/com/google/devtools/build/lib/rules/genquery", "//src/main/java/com/google/devtools/build/lib/rules/genrule", "//src/main/java/com/google/devtools/build/lib/rules/objc", "//src/main/java/com/google/devtools/build/lib/rules/platform", "//src/main/java/com/google/devtools/build/lib/skyframe/serialization/autocodec", "//src/main/java/com/google/devtools/build/lib/skylarkbuildapi/android", "//src/main/java/com/google/devtools/build/lib/skylarkbuildapi/apple", "//src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp", "//src/main/java/com/google/devtools/build/lib/skylarkbuildapi/java", "//src/main/java/com/google/devtools/build/lib/vfs", "//src/main/java/com/google/devtools/build/skyframe", "//src/main/java/com/google/devtools/build/skyframe:skyframe-objects", "//src/main/java/com/google/devtools/common/options", "//src/main/protobuf:crosstool_config_java_proto", "//third_party:android_common_25_0_0", "//third_party:auto_value", "//third_party:guava", "//third_party:jsr305", ], ) java_library( name = "bazel/BazelRepositoryModule", srcs = ["bazel/BazelRepositoryModule.java"], deps = [ "//src/main/java/com/google/devtools/build/lib:bazel-commands", "//src/main/java/com/google/devtools/build/lib:bazel-repository", "//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: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:runtime", "//src/main/java/com/google/devtools/build/lib:util", "//src/main/java/com/google/devtools/build/lib/bazel/repository/cache", "//src/main/java/com/google/devtools/build/lib/bazel/repository/downloader", "//src/main/java/com/google/devtools/build/lib/cmdline", "//src/main/java/com/google/devtools/build/lib/skylarkbuildapi/repository", "//src/main/java/com/google/devtools/build/lib/vfs", "//src/main/java/com/google/devtools/build/lib/vfs:pathfragment", "//src/main/java/com/google/devtools/build/skyframe:skyframe-objects", "//src/main/java/com/google/devtools/common/options:options_internal", "//third_party:guava", "//third_party:jsr305", ], ) java_library( name = "bazel-main", srcs = ["bazel/Bazel.java"], resources = [ "bazel/rules/java/java_stub_template.txt", "bazel/rules/java/java_stub_template_windows.txt", "bazel/rules/python/python_stub_template.txt", "bazel/rules/sh/sh_stub_template_windows.txt", ], deps = [ ":bazel-coverage", ":bazel/BazelRepositoryModule", ":exitcode-external", "//src/main/java/com/google/devtools/build/lib:bazel", "//src/main/java/com/google/devtools/build/lib:bazel-commands", "//src/main/java/com/google/devtools/build/lib:bazel-modules", "//src/main/java/com/google/devtools/build/lib:bazel-repository", "//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:build-info", "//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:util", "//src/main/java/com/google/devtools/build/lib/bazel/debug:workspace-rule-module", "//src/main/java/com/google/devtools/build/lib/bazel/repository/cache", "//src/main/java/com/google/devtools/build/lib/bazel/repository/downloader", "//src/main/java/com/google/devtools/build/lib/buildeventservice", "//src/main/java/com/google/devtools/build/lib/metrics:metrics_module", "//src/main/java/com/google/devtools/build/lib/profiler/callcounts:callcounts_module", "//src/main/java/com/google/devtools/build/lib/profiler/memory:allocationtracker_module", "//src/main/java/com/google/devtools/build/lib/remote", "//src/main/java/com/google/devtools/build/lib/sandbox", "//src/main/java/com/google/devtools/build/lib/skylarkdebug/module", "//src/main/java/com/google/devtools/build/lib/ssd", "//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:skyframe-objects", "//third_party:guava", ], ) java_library( name = "bazel-modules", srcs = glob( ["bazel/*.java"], exclude = [ "bazel/Bazel.java", "bazel/BazelRepositoryModule.java", ], ), deps = [ ":exitcode-external", "//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:events", "//src/main/java/com/google/devtools/build/lib:io", "//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/actions", "//src/main/java/com/google/devtools/build/lib/shell", "//src/main/java/com/google/devtools/build/lib/skyframe/serialization/autocodec", "//src/main/java/com/google/devtools/build/lib/vfs", "//src/main/java/com/google/devtools/build/lib/vfs:pathfragment", "//src/main/java/com/google/devtools/common/options", "//third_party:guava", ], ) java_library( name = "bazel-commands", srcs = glob(["bazel/commands/*.java"]), resources = [ "bazel/commands/fetch.txt", "bazel/commands/sync.txt", ], deps = [ ":keep-going-option", "//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:exitcode-external", "//src/main/java/com/google/devtools/build/lib:java-compilation", "//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:runtime", "//src/main/java/com/google/devtools/build/lib:util", "//src/main/java/com/google/devtools/build/lib/query2", "//src/main/java/com/google/devtools/build/lib/query2:abstract-blaze-query-env", "//src/main/java/com/google/devtools/build/lib/query2:query-engine", "//src/main/java/com/google/devtools/build/lib/vfs", "//src/main/java/com/google/devtools/build/lib/vfs:pathfragment", "//src/main/java/com/google/devtools/build/skyframe", "//src/main/java/com/google/devtools/build/skyframe:skyframe-objects", "//src/main/java/com/google/devtools/common/options", "//third_party:guava", ], ) java_library( name = "bazel-coverage", srcs = glob(["bazel/coverage/*.java"]), deps = [ "//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:runtime", "//src/main/java/com/google/devtools/build/lib:util", "//src/main/java/com/google/devtools/build/lib/actions", "//src/main/java/com/google/devtools/build/lib/concurrent", "//src/main/java/com/google/devtools/build/lib/vfs", "//src/main/java/com/google/devtools/build/lib/vfs:pathfragment", "//src/main/java/com/google/devtools/common/options", "//third_party:auto_value", "//third_party:guava", "//third_party:jsr305", ], ) java_library( 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:jsch", "//third_party:maven", "//third_party:maven_model", "//third_party:plexus_interpolation", "//third_party:plexus_utils", "//third_party:slf4j", ], deps = [ "//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:events", "//src/main/java/com/google/devtools/build/lib:io", "//src/main/java/com/google/devtools/build/lib:maven-connector", "//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:skylarkinterface", "//src/main/java/com/google/devtools/build/lib:util", "//src/main/java/com/google/devtools/build/lib/actions", "//src/main/java/com/google/devtools/build/lib/bazel/debug:workspace-rule-event", "//src/main/java/com/google/devtools/build/lib/bazel/repository/cache", "//src/main/java/com/google/devtools/build/lib/bazel/repository/downloader", "//src/main/java/com/google/devtools/build/lib/buildeventstream", "//src/main/java/com/google/devtools/build/lib/concurrent", "//src/main/java/com/google/devtools/build/lib/shell", "//src/main/java/com/google/devtools/build/lib/skylarkbuildapi/repository", "//src/main/java/com/google/devtools/build/lib/vfs", "//src/main/java/com/google/devtools/build/skyframe", "//src/main/java/com/google/devtools/build/skyframe:skyframe-objects", "//src/main/java/com/google/devtools/common/options", "//third_party:aether", "//third_party:apache_commons_compress", "//third_party:auto_value", "//third_party:guava", "//third_party:jgit", "//third_party:jsr305", "//third_party:maven", "//third_party:maven_model", "//third_party:plexus_component_annotations", "//third_party:xz", ], ) java_library( name = "maven-connector", srcs = ["bazel/repository/MavenConnector.java"], deps = [ "//third_party:aether", "//third_party:maven_model", ], ) # Rules java_library( name = "nativedeps-rules", srcs = glob( ["rules/nativedeps/*.java"], ), deps = [ "//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:util", "//src/main/java/com/google/devtools/build/lib/actions", "//src/main/java/com/google/devtools/build/lib/collect", "//src/main/java/com/google/devtools/build/lib/collect/nestedset", "//src/main/java/com/google/devtools/build/lib/concurrent", "//src/main/java/com/google/devtools/build/lib/rules/cpp", "//src/main/java/com/google/devtools/build/lib/vfs", "//third_party:guava", "//third_party:jsr305", "//third_party/protobuf:protobuf_java", ], ) java_library( name = "proto-rules", srcs = glob( ["rules/proto/*.java"], ), deps = [ "//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:skylarkinterface", "//src/main/java/com/google/devtools/build/lib:util", "//src/main/java/com/google/devtools/build/lib/actions", "//src/main/java/com/google/devtools/build/lib/actions:commandline_item", "//src/main/java/com/google/devtools/build/lib/collect", "//src/main/java/com/google/devtools/build/lib/collect/nestedset", "//src/main/java/com/google/devtools/build/lib/concurrent", "//src/main/java/com/google/devtools/build/lib/skyframe/serialization/autocodec", "//src/main/java/com/google/devtools/build/lib/skylarkbuildapi", "//src/main/java/com/google/devtools/build/lib/vfs", "//src/main/java/com/google/devtools/common/options", "//third_party:auto_value", "//third_party:guava", "//third_party:jsr305", "//third_party/protobuf:protobuf_java", ], ) java_library( name = "java-rules", srcs = [ "rules/java/GenericBuildInfoPropertiesTranslator.java", "rules/java/JavaBinary.java", "rules/java/JavaCcLinkParamsProvider.java", "rules/java/JavaConfigurationLoader.java", "rules/java/JavaHostRuntimeAliasRule.java", "rules/java/JavaImport.java", "rules/java/JavaImportBaseRule.java", "rules/java/JavaInfo.java", "rules/java/JavaLibrary.java", "rules/java/JavaPackageConfiguration.java", "rules/java/JavaPackageConfigurationRule.java", "rules/java/JavaPlugin.java", "rules/java/JavaPrimaryClassProvider.java", "rules/java/JavaRuntime.java", "rules/java/JavaRuntimeAliasRule.java", "rules/java/JavaRuntimeClasspathProvider.java", "rules/java/JavaRuntimeRule.java", "rules/java/JavaSkylarkCommon.java", "rules/java/JavaSourceInfoProvider.java", "rules/java/JavaToolchain.java", "rules/java/JavaToolchainAliasRule.java", "rules/java/JavaToolchainRule.java", "rules/java/JavaToolchainSkylarkApiProvider.java", "rules/java/ProguardHelper.java", "rules/java/ProguardLibrary.java", "rules/java/ProguardLibraryRule.java", "rules/java/ProguardSpecProvider.java", "rules/java/proto/JavaLiteProtoAspect.java", "rules/java/proto/JavaLiteProtoLibrary.java", "rules/java/proto/JavaProtoAspect.java", "rules/java/proto/JavaProtoAspectCommon.java", "rules/java/proto/JavaProtoLibrary.java", "rules/java/proto/JavaProtoLibraryAspectProvider.java", "rules/java/proto/JavaProtoSkylarkCommon.java", "rules/java/proto/JplCcLinkParams.java", "rules/java/proto/ProtoJavacOpts.java", "rules/java/proto/StrictDepsUtils.java", ], deps = [ "//src/main/java/com/google/devtools/build/lib:RpcSupport", "//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:java-compilation", "//src/main/java/com/google/devtools/build/lib:java-implicit-attributes", "//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:skylarkinterface", "//src/main/java/com/google/devtools/build/lib:util", "//src/main/java/com/google/devtools/build/lib/actions", "//src/main/java/com/google/devtools/build/lib/collect", "//src/main/java/com/google/devtools/build/lib/collect/nestedset", "//src/main/java/com/google/devtools/build/lib/concurrent", "//src/main/java/com/google/devtools/build/lib/rules/cpp", "//src/main/java/com/google/devtools/build/lib/shell", "//src/main/java/com/google/devtools/build/lib/skyframe/serialization/autocodec", "//src/main/java/com/google/devtools/build/lib/skylarkbuildapi", "//src/main/java/com/google/devtools/build/lib/skylarkbuildapi/java", "//src/main/java/com/google/devtools/build/lib/vfs", "//src/main/java/com/google/devtools/common/options", "//src/main/protobuf:extra_actions_base_java_proto", "//third_party:auto_value", "//third_party:guava", "//third_party:jsr305", "//third_party/protobuf:protobuf_java", ], ) java_library( name = "RpcSupport", srcs = ["rules/java/proto/RpcSupport.java"], deps = [ "//src/main/java/com/google/devtools/build/lib:build-base", "//src/main/java/com/google/devtools/build/lib:java-compilation", "//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/actions", "//src/main/java/com/google/devtools/build/lib/collect", "//src/main/java/com/google/devtools/build/lib/collect/nestedset", "//third_party:guava", ], ) java_library( name = "java-compilation", srcs = [ "rules/java/BuildInfoPropertiesTranslator.java", "rules/java/ClasspathConfiguredFragment.java", "rules/java/DeployArchiveBuilder.java", "rules/java/ImportDepsCheckActionBuilder.java", "rules/java/JavaBuildInfoFactory.java", "rules/java/JavaCommon.java", "rules/java/JavaCompilationArgsProvider.java", "rules/java/JavaCompilationArtifacts.java", "rules/java/JavaCompilationHelper.java", "rules/java/JavaCompilationInfoProvider.java", "rules/java/JavaCompileAction.java", "rules/java/JavaConfiguration.java", "rules/java/JavaExportsProvider.java", "rules/java/JavaGenJarsProvider.java", "rules/java/JavaHeaderCompileAction.java", "rules/java/JavaHelper.java", "rules/java/JavaInfo.java", "rules/java/JavaInfoBuildHelper.java", "rules/java/JavaLibraryHelper.java", "rules/java/JavaNativeLibraryProvider.java", "rules/java/JavaOptions.java", "rules/java/JavaPackageConfigurationProvider.java", "rules/java/JavaPluginInfoProvider.java", "rules/java/JavaRuleClasses.java", "rules/java/JavaRuleOutputJarsProvider.java", "rules/java/JavaRunfilesProvider.java", "rules/java/JavaRuntimeInfo.java", "rules/java/JavaRuntimeToolchainInfo.java", "rules/java/JavaSemantics.java", "rules/java/JavaSkylarkApiProvider.java", "rules/java/JavaSkylarkCommon.java", "rules/java/JavaSourceInfoProvider.java", "rules/java/JavaSourceJarsProvider.java", "rules/java/JavaStrictCompilationArgsProvider.java", "rules/java/JavaTargetAttributes.java", "rules/java/JavaToolchainProvider.java", "rules/java/JavaUtil.java", "rules/java/MessageBundleInfo.java", "rules/java/NativeLibraryNestedSetBuilder.java", "rules/java/OneVersionCheckActionBuilder.java", "rules/java/ResourceJarActionBuilder.java", "rules/java/SingleJarActionBuilder.java", "rules/java/WriteBuildInfoPropertiesAction.java", "rules/java/proto/GeneratedExtensionRegistryProvider.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:events", "//src/main/java/com/google/devtools/build/lib:java-implicit-attributes", "//src/main/java/com/google/devtools/build/lib:packages-internal", "//src/main/java/com/google/devtools/build/lib:skylarkinterface", "//src/main/java/com/google/devtools/build/lib:util", "//src/main/java/com/google/devtools/build/lib/actions", "//src/main/java/com/google/devtools/build/lib/actions:commandline_item", "//src/main/java/com/google/devtools/build/lib/analysis/platform", "//src/main/java/com/google/devtools/build/lib/analysis/skylark/annotations", "//src/main/java/com/google/devtools/build/lib/cmdline", "//src/main/java/com/google/devtools/build/lib/collect", "//src/main/java/com/google/devtools/build/lib/collect/nestedset", "//src/main/java/com/google/devtools/build/lib/concurrent", "//src/main/java/com/google/devtools/build/lib/rules/cpp", "//src/main/java/com/google/devtools/build/lib/shell", "//src/main/java/com/google/devtools/build/lib/skyframe/serialization/autocodec", "//src/main/java/com/google/devtools/build/lib/skylarkbuildapi", "//src/main/java/com/google/devtools/build/lib/skylarkbuildapi/java", "//src/main/java/com/google/devtools/build/lib/vfs", "//src/main/java/com/google/devtools/common/options", "//src/main/protobuf:extra_actions_base_java_proto", "//third_party:auto_value", "//third_party:guava", "//third_party:jsr305", ], ) java_library( name = "java-implicit-attributes", srcs = ["rules/java/JavaImplicitAttributes.java"], ) java_library( name = "core-rules", srcs = glob( ["rules/core/*.java"], ), deps = [ ":packages-internal", "//src/main/java/com/google/devtools/build/lib:build-base", "//third_party:guava", ], ) # TODO(bazel-team): Include in the srcs the implementations of the rules inside # CoreWorkspaceRules.java once they can be extracted from the "build-base" target. They can't be # extracted currently because of non-trivial inter-package dependencies. java_library( name = "core-workspace-rules", srcs = [ "rules/repository/CoreWorkspaceRules.java", ], deps = [ "//src/main/java/com/google/devtools/build/lib:build-base", "//src/main/java/com/google/devtools/build/lib:core-rules", "//src/main/java/com/google/devtools/build/lib:packages-internal", "//src/main/java/com/google/devtools/build/lib:util", "//third_party:guava", ], ) java_library( name = "testing-support-rules", srcs = glob( ["rules/test/*.java"], ), deps = [ ":packages-internal", ":skylarkinterface", ":util", "//src/main/java/com/google/devtools/build/lib:build-base", "//src/main/java/com/google/devtools/build/lib:core-rules", "//src/main/java/com/google/devtools/build/lib:syntax", "//src/main/java/com/google/devtools/build/lib:transitive-info-provider", "//src/main/java/com/google/devtools/build/lib/actions", "//src/main/java/com/google/devtools/build/lib/buildeventstream", "//src/main/java/com/google/devtools/build/lib/buildeventstream/proto:build_event_stream_proto", "//src/main/java/com/google/devtools/build/lib/concurrent", "//src/main/java/com/google/devtools/build/lib/skylarkbuildapi/test", "//src/main/java/com/google/devtools/build/lib/vfs", "//src/main/protobuf:test_status_java_proto", "//third_party:guava", ], ) java_library( name = "android-rules", srcs = glob( ["rules/android/*.java"], ), resources = [ "rules/android/android_device_stub_template.txt", "rules/android/android_instrumentation_test_template.txt", "rules/android/databinding_annotation_template.txt", "rules/android/robolectric_properties_template.txt", "rules/android/test_suite_property_name.txt", ], deps = [ "//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:java-compilation", "//src/main/java/com/google/devtools/build/lib:java-rules", "//src/main/java/com/google/devtools/build/lib:nativedeps-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:skylarkinterface", "//src/main/java/com/google/devtools/build/lib:util", "//src/main/java/com/google/devtools/build/lib/actions", "//src/main/java/com/google/devtools/build/lib/actions:commandline_item", "//src/main/java/com/google/devtools/build/lib/analysis/platform", "//src/main/java/com/google/devtools/build/lib/analysis/skylark/annotations", "//src/main/java/com/google/devtools/build/lib/analysis/whitelisting", "//src/main/java/com/google/devtools/build/lib/collect", "//src/main/java/com/google/devtools/build/lib/collect/nestedset", "//src/main/java/com/google/devtools/build/lib/concurrent", "//src/main/java/com/google/devtools/build/lib/rules/config", "//src/main/java/com/google/devtools/build/lib/rules/cpp", "//src/main/java/com/google/devtools/build/lib/skyframe/serialization/autocodec", "//src/main/java/com/google/devtools/build/lib/skylarkbuildapi", "//src/main/java/com/google/devtools/build/lib/skylarkbuildapi/android", "//src/main/java/com/google/devtools/build/lib/vfs", "//src/main/java/com/google/devtools/common/options", "//src/main/protobuf:android_deploy_info_java_proto", "//third_party:android_common_25_0_0", "//third_party:auto_value", "//third_party:guava", "//third_party:jsr305", "//third_party/protobuf:protobuf_java", ], ) java_library( name = "python-rules", srcs = glob( ["rules/python/*.java"], ), deps = [ ":events", "//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:skylarkinterface", "//src/main/java/com/google/devtools/build/lib:util", "//src/main/java/com/google/devtools/build/lib/actions", "//src/main/java/com/google/devtools/build/lib/collect", "//src/main/java/com/google/devtools/build/lib/collect/nestedset", "//src/main/java/com/google/devtools/build/lib/concurrent", "//src/main/java/com/google/devtools/build/lib/rules/cpp", "//src/main/java/com/google/devtools/build/lib/skyframe/serialization/autocodec", "//src/main/java/com/google/devtools/build/lib/vfs", "//src/main/java/com/google/devtools/common/options", "//src/main/protobuf:crosstool_config_java_proto", "//src/main/protobuf:extra_actions_base_java_proto", "//third_party:guava", "//third_party:jsr305", "//third_party/protobuf:protobuf_java", ], ) java_library( name = "shared-base-rules", exports = [ "//src/main/java/com/google/devtools/build/lib:android-rules", "//src/main/java/com/google/devtools/build/lib:java-compilation", "//src/main/java/com/google/devtools/build/lib:java-rules", "//src/main/java/com/google/devtools/build/lib:nativedeps-rules", "//src/main/java/com/google/devtools/build/lib:proto-rules", "//src/main/java/com/google/devtools/build/lib:python-rules", ], ) java_library( name = "build-request-options", srcs = ["buildtool/BuildRequestOptions.java"], deps = [ "//src/main/java/com/google/devtools/build/lib:util", "//src/main/java/com/google/devtools/build/lib/actions", "//src/main/java/com/google/devtools/build/lib/vfs", "//src/main/java/com/google/devtools/common/options", "//third_party:guava", ], ) java_library( name = "keep-going-option", srcs = ["runtime/KeepGoingOption.java"], deps = ["//src/main/java/com/google/devtools/common/options"], ) java_library( name = "loading-phase-threads-option", srcs = ["runtime/LoadingPhaseThreadsOption.java"], deps = ["//src/main/java/com/google/devtools/common/options"], ) java_library( name = "server", srcs = [ "server/GrpcServerImpl.java", "server/IdleServerTasks.java", ], deps = [ ":runtime", "//src/main/java/com/google/devtools/build/lib:exitcode-external", "//src/main/java/com/google/devtools/build/lib:io", "//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/clock", "//src/main/java/com/google/devtools/build/lib/concurrent", "//src/main/java/com/google/devtools/build/lib/profiler", "//src/main/java/com/google/devtools/build/lib/vfs", "//src/main/java/com/google/devtools/common/options", "//src/main/java/com/google/devtools/common/options:invocation_policy", "//src/main/protobuf:command_server_java_grpc", "//src/main/protobuf:command_server_java_proto", "//src/main/protobuf:invocation_policy_java_proto", "//third_party:guava", "//third_party:jsr305", "//third_party/grpc:grpc-jar", "//third_party/protobuf:protobuf_java", ], ) java_library( name = "runtime", srcs = glob( [ "runtime/*.java", "runtime/commands/*.java", "runtime/mobileinstall/*.java", "buildtool/*.java", "buildtool/buildevent/*.java", ], exclude = [ "buildtool/BuildRequestOptions.java", "runtime/KeepGoingOption.java", "runtime/LoadingPhaseThreadsOption.java", ], ) + [ "server/RPCServer.java", "server/signal/InterruptSignalHandler.java", ], deps = [ ":build-request-options", ":keep-going-option", ":loading-phase-threads-option", "//src/main/java/com/google/devtools/build/docgen:docgen_javalib", "//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:exitcode-external", "//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:process_util", "//src/main/java/com/google/devtools/build/lib:shared-base-rules", "//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/actions", "//src/main/java/com/google/devtools/build/lib/bazel/repository/downloader", "//src/main/java/com/google/devtools/build/lib/buildeventstream", "//src/main/java/com/google/devtools/build/lib/buildeventstream/proto:build_event_stream_java_proto", "//src/main/java/com/google/devtools/build/lib/buildeventstream/transports", "//src/main/java/com/google/devtools/build/lib/clock", "//src/main/java/com/google/devtools/build/lib/cmdline", "//src/main/java/com/google/devtools/build/lib/collect", "//src/main/java/com/google/devtools/build/lib/collect/nestedset", "//src/main/java/com/google/devtools/build/lib/concurrent", "//src/main/java/com/google/devtools/build/lib/exec/local:options", "//src/main/java/com/google/devtools/build/lib/profiler", "//src/main/java/com/google/devtools/build/lib/profiler:profiler-output", "//src/main/java/com/google/devtools/build/lib/profiler/memory:allocationtracker", "//src/main/java/com/google/devtools/build/lib/query2", "//src/main/java/com/google/devtools/build/lib/query2:abstract-blaze-query-env", "//src/main/java/com/google/devtools/build/lib/query2:common-query-options", "//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/lib/shell", "//src/main/java/com/google/devtools/build/lib/skylarkdebug/module:options", "//src/main/java/com/google/devtools/build/lib/vfs", "//src/main/java/com/google/devtools/build/lib/vfs:output_service", "//src/main/java/com/google/devtools/build/lib/windows", "//src/main/java/com/google/devtools/build/skyframe", "//src/main/java/com/google/devtools/build/skyframe:skyframe-objects", "//src/main/java/com/google/devtools/common/options", "//src/main/java/com/google/devtools/common/options:invocation_policy", "//src/main/protobuf:action_cache_java_proto", "//src/main/protobuf:analysis_java_proto", "//src/main/protobuf:bazel_flags_java_proto", "//src/main/protobuf:build_java_proto", "//src/main/protobuf:command_line_java_proto", "//src/main/protobuf:command_server_java_proto", "//src/main/protobuf:extra_actions_base_java_proto", "//src/main/protobuf:invocation_policy_java_proto", "//src/main/protobuf:option_filters_java_proto", "//src/main/protobuf:test_status_java_proto", "//third_party:guava", "//third_party:jsr305", "//third_party/protobuf:protobuf_java", ], ) genrule( name = "merge_licenses", srcs = [ "//:LICENSE", "//third_party:srcs", ], outs = ["runtime/commands/LICENSE"], # Use xargs to avoid the shell script complaining that is has been passed too many arguments. # xargs calls the script multiple times with at most 1000 arguments per call. cmd = "echo \"$(SRCS)\" | xargs -n1000 $(location merge_licenses.sh) > \"$@\"", tools = ["merge_licenses.sh"], ) java_library( name = "bazel", resources = glob([ "runtime/commands/*.txt", "runtime/mobileinstall/*.txt", ]) + [ "//src/main/java/com/google/devtools/build/lib:runtime/commands/LICENSE", ], exports = ["//src/main/java/com/google/devtools/build/lib:runtime"], ) java_library( name = "all-build-rules", exports = [ "//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:util", "//src/main/java/com/google/devtools/build/lib/actions", "//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/rules/objc", "//src/main/java/com/google/devtools/build/lib/vfs", "//src/main/java/com/google/devtools/common/options", "//third_party:guava", ], ) java_library( name = "build", exports = [ "//src/main/java/com/google/devtools/build/lib:all-build-rules", "//src/main/java/com/google/devtools/build/lib:build-base", "//src/main/java/com/google/devtools/build/lib:foundation", "//src/main/java/com/google/devtools/build/lib:packages", "//src/main/java/com/google/devtools/build/lib:query2", "//src/main/java/com/google/devtools/build/lib/actions", ], ) ######################################################################## # # The Blaze query language, revision 2: query2. # java_library( name = "query2", exports = [ "//src/main/java/com/google/devtools/build/lib:events", "//src/main/java/com/google/devtools/build/lib:foundation", "//src/main/java/com/google/devtools/build/lib:packages", "//src/main/java/com/google/devtools/build/lib:util", "//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/query2", "//src/main/java/com/google/devtools/build/lib/vfs", "//src/main/java/com/google/devtools/common/options", "//src/main/protobuf:build_java_proto", "//third_party:guava", ], ) java_binary( name = "bazel/BazelServer", javacopts = [ "-Xlint:all", "-Xlint:-path", ], main_class = "com.google.devtools.build.lib.bazel.Bazel", runtime_deps = [ ":server", "//src/main/java/com/google/devtools/build/lib:bazel-main", "//src/main/java/com/google/devtools/build/lib:single-line-formatter", # See startup_options.cc ], ) filegroup( name = "docs_embedded_in_sources", srcs = glob(["**/*.java"]) + [ "//src/main/java/com/google/devtools/build/lib/rules/apple:srcs", "//src/main/java/com/google/devtools/build/lib/rules/apple/cpp:srcs", "//src/main/java/com/google/devtools/build/lib/rules/config:srcs", "//src/main/java/com/google/devtools/build/lib/rules/cpp:srcs", "//src/main/java/com/google/devtools/build/lib/rules/cpp/proto:srcs", "//src/main/java/com/google/devtools/build/lib/rules/genquery:srcs", "//src/main/java/com/google/devtools/build/lib/rules/genrule:srcs", "//src/main/java/com/google/devtools/build/lib/rules/objc:srcs", "//src/main/java/com/google/devtools/build/lib/analysis/platform:srcs", "//src/main/java/com/google/devtools/build/lib/rules/platform:srcs", ], ) genrule( name = "gen_buildencyclopedia", srcs = ["//src/main/java/com/google/devtools/build/lib:docs_embedded_in_sources"], outs = ["build-encyclopedia.zip"], cmd = ( "mkdir -p $(@D)/be && " + "$(location //src/main/java/com/google/devtools/build/docgen:docgen_bin)" + " --product_name=bazel" + " --provider=com.google.devtools.build.lib.bazel.rules.BazelRuleClassProvider" + " --input_dir=$$PWD/src/main/java/com/google/devtools/build/lib" + " --output_dir=$(@D)/be &&" + "zip -qj $@ $(@D)/be/*" ), tools = [ "//src/main/java/com/google/devtools/build/docgen:docgen_bin", "//src/main/java/com/google/devtools/build/docgen:docgen_javalib", ], visibility = [ "//site:__pkg__", "//src/test/shell/bazel:__pkg__", ], ) genrule( name = "gen_command-line-reference", srcs = [ "//site:command-line-reference-prefix.html", "//site:command-line-reference-suffix.html", ], outs = ["command-line-reference.html"], cmd = ( "cat $(location //site:command-line-reference-prefix.html) > $@ && " + "TMP=`mktemp -d /tmp/tmp.XXXXXXXXXX` && " + "mkdir $${TMP}/_embedded_binaries/ && " + "$(location :bazel/BazelServer) " + "--jvm_flag=-Dio.bazel.EnableJni=0 --batch " + "--install_base=$${TMP} --output_base=$${TMP}/output/ --output_user_root=$${TMP} " + "help everything-as-html >> $@ 2>/dev/null && " + "cat $(location //site:command-line-reference-suffix.html) >> $@" ), tools = [ "//src/main/java/com/google/devtools/build/lib:bazel/BazelServer", ], visibility = [ "//site:__pkg__", ], ) genrule( name = "gen_skylarklibrary", outs = ["skylark-library.zip"], cmd = "mkdir -p $(@D)/skylark-lib &&" + "$(location //src/main/java/com/google/devtools/build/docgen:skydoc_bin) $(@D)/skylark-lib" + " && zip -qj $@ $(@D)/skylark-lib/*", tools = ["//src/main/java/com/google/devtools/build/docgen:skydoc_bin"], visibility = ["//site:__pkg__"], ) ######################################################################## # # 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", ], )