blob: cdd7a6c9b003b5cfa5783d32e59efeb736ac20ac [file] [log] [blame]
load("@rules_java//java:defs.bzl", "java_library")
package(default_visibility = ["//src:__subpackages__"])
filegroup(
name = "srcs",
srcs = glob(["**"]),
visibility = ["//src/main/java/com/google/devtools/build/lib:__pkg__"],
)
PATH_FRAGMENT_SOURCES = [
"PathFragment.java",
"PathFragmentSerializationProxy.java",
"OsPathPolicy.java",
"UnixOsPathPolicy.java",
"WindowsOsPathPolicy.java",
]
OUTPUT_SERVICE_SOURCES = [
"OutputService.java",
]
java_library(
name = "pathfragment",
srcs = PATH_FRAGMENT_SOURCES,
deps = [
"//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/actions:commandline_item",
"//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/windows:windows_short_path",
"//src/main/java/com/google/devtools/build/lib/windows/jni",
"//third_party:guava",
],
)
java_library(
name = "vfs",
srcs = glob(
[
"*.java",
],
exclude = PATH_FRAGMENT_SOURCES + OUTPUT_SERVICE_SOURCES,
),
visibility = ["//visibility:public"],
exports = [
":pathfragment",
],
deps = [
":pathfragment",
"//src/main/java/com/google/devtools/build/lib:filetype",
"//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/skyframe/serialization/autocodec",
"//src/main/java/com/google/devtools/common/options",
"//third_party:guava",
"//third_party:jsr305",
],
)
java_library(
name = "output_service",
srcs = OUTPUT_SERVICE_SOURCES,
deps = [
":pathfragment",
":vfs",
"//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/actions",
"//src/main/java/com/google/devtools/build/skyframe",
"//third_party:guava",
"//third_party:jsr305",
],
)