| load("@rules_java//java:defs.bzl", "java_library") | |
| package( | |
| default_applicable_licenses = ["//:license"], | |
| default_visibility = ["//src:__subpackages__"], | |
| ) | |
| filegroup( | |
| name = "srcs", | |
| srcs = glob(["**"]), | |
| visibility = ["//src:__subpackages__"], | |
| ) | |
| OS_PATH_POLICY_SOURCES = [ | |
| "OsPathPolicy.java", | |
| "UnixOsPathPolicy.java", | |
| "WindowsOsPathPolicy.java", | |
| ] | |
| PATH_FRAGMENT_SOURCES = [ | |
| "PathFragment.java", | |
| "PathSegmentIterator.java", | |
| ] | |
| OUTPUT_SERVICE_SOURCES = [ | |
| "OutputService.java", | |
| ] | |
| java_library( | |
| name = "ospathpolicy", | |
| srcs = OS_PATH_POLICY_SOURCES, | |
| deps = [ | |
| "//src/main/java/com/google/devtools/build/lib/util:os", | |
| "//src/main/java/com/google/devtools/build/lib/windows:file", | |
| "//src/main/java/com/google/devtools/build/lib/windows:windows_short_path", | |
| "//third_party:guava", | |
| ], | |
| ) | |
| java_library( | |
| name = "pathfragment", | |
| srcs = PATH_FRAGMENT_SOURCES, | |
| deps = [ | |
| ":ospathpolicy", | |
| "//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:serialization-constant", | |
| "//src/main/java/com/google/devtools/build/lib/util:filetype", | |
| "//third_party:error_prone_annotations", | |
| "//third_party:guava", | |
| "//third_party:jsr305", | |
| "//third_party/protobuf:protobuf_java", | |
| ], | |
| ) | |
| java_library( | |
| name = "vfs", | |
| srcs = glob( | |
| [ | |
| "*.java", | |
| ], | |
| exclude = PATH_FRAGMENT_SOURCES + OUTPUT_SERVICE_SOURCES + OS_PATH_POLICY_SOURCES, | |
| ), | |
| deps = [ | |
| ":ospathpolicy", | |
| ":pathfragment", | |
| "//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/io:file_symlink_exception", | |
| "//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/util:filetype", | |
| "//src/main/java/com/google/devtools/build/skyframe:skyframe-objects", | |
| "//src/main/java/com/google/devtools/common/options", | |
| "//third_party:caffeine", | |
| "//third_party:error_prone_annotations", | |
| "//third_party:guava", | |
| "//third_party:jsr305", | |
| "//third_party/protobuf:protobuf_java", | |
| ], | |
| ) | |
| java_library( | |
| name = "output_service", | |
| srcs = OUTPUT_SERVICE_SOURCES, | |
| deps = [ | |
| ":pathfragment", | |
| ":vfs", | |
| "//src/main/java/com/google/devtools/build/lib/actions", | |
| "//src/main/java/com/google/devtools/build/lib/actions:artifacts", | |
| "//src/main/java/com/google/devtools/build/lib/actions:fileset_output_symlink", | |
| "//src/main/java/com/google/devtools/build/lib/events", | |
| "//src/main/java/com/google/devtools/build/lib/util:abrupt_exit_exception", | |
| "//src/main/java/com/google/devtools/build/skyframe", | |
| "//third_party:guava", | |
| "//third_party:jsr305", | |
| ], | |
| ) |