blob: cfcc72658e231d2cf78c624d2f9cc2403b54d8c9 [file] [log] [blame]
load("@rules_java//java:defs.bzl", "java_library")
package(
default_visibility = ["//src:__subpackages__"],
)
filegroup(
name = "srcs",
srcs = glob(["*"]),
visibility = ["//src:__subpackages__"],
)
TYPE_SRCS = ["Type.java"]
BUILD_TYPE_SRCS = [
"BuildType.java",
"FilesetEntry.java",
"License.java",
"SelectorList.java",
"SelectorValue.java",
"TriState.java",
]
java_library(
name = "packages",
srcs = glob(
["*.java"],
exclude = TYPE_SRCS + BUILD_TYPE_SRCS + [
"BuilderFactoryForTesting.java",
"StarlarkSemanticsOptions.java",
],
),
# TODO(katre): Remove this when all dependencies are updated.
exports = [
":build_type",
],
deps = [
":build_type",
":type",
"//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:filetype",
"//src/main/java/com/google/devtools/build/lib:logging-util",
"//src/main/java/com/google/devtools/build/lib:rule-definition-context",
"//src/main/java/com/google/devtools/build/lib:string_util",
"//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/cmdline",
"//src/main/java/com/google/devtools/build/lib/cmdline:LabelValidator",
"//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",
"//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/core",
"//src/main/java/com/google/devtools/build/lib/skylarkinterface",
"//src/main/java/com/google/devtools/build/lib/syntax:evaluator",
"//src/main/java/com/google/devtools/build/lib/syntax:frontend",
"//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",
"//src/main/protobuf:build_java_proto",
"//third_party:auto_value",
"//third_party:flogger",
"//third_party:guava",
"//third_party:jsr305",
"//third_party/protobuf:protobuf_java",
],
)
# TODO(kkress, adonovan) Eliminate this target, it is mostly unecessary. It
# depends on lib:build-base for BlazeDirectories, which it uses for a type
# parameter, but the param is unused.
java_library(
name = "builder_factory_for_testing",
srcs = ["BuilderFactoryForTesting.java"],
deps = [
":packages",
"//src/main/java/com/google/devtools/build/lib:build-base",
"//third_party:guava",
],
)
# This class is broken out of lib.packages because skydoc is not supposed to depend on lib.packages.
# TODO(adonovan): rethink skydoc's dependency mess.
java_library(
name = "starlark_semantics_options",
srcs = ["StarlarkSemanticsOptions.java"],
deps = [
"//src/main/java/com/google/devtools/build/lib/concurrent",
"//src/main/java/com/google/devtools/build/lib/syntax:evaluator",
"//src/main/java/com/google/devtools/common/options",
"//third_party:guava",
],
)
java_library(
name = "type",
srcs = TYPE_SRCS,
deps = [
"//src/main/java/com/google/devtools/build/lib:logging-util",
"//src/main/java/com/google/devtools/build/lib:string_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/skyframe/serialization/autocodec",
"//src/main/java/com/google/devtools/build/lib/syntax:evaluator",
"//third_party:guava",
"//third_party:jsr305",
],
)
java_library(
name = "build_type",
srcs = BUILD_TYPE_SRCS,
deps = [
":type",
"//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/build/lib/skylarkbuildapi",
"//src/main/java/com/google/devtools/build/lib/skylarkinterface",
"//src/main/java/com/google/devtools/build/lib/syntax:evaluator",
"//src/main/java/com/google/devtools/build/lib/syntax:frontend",
"//src/main/java/com/google/devtools/build/lib/vfs:pathfragment",
"//third_party:guava",
"//third_party:jsr305",
],
)