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__"],
)

java_library(
    name = "java-rules",
    srcs = [
        "GenericBuildInfoPropertiesTranslator.java",
        "JavaBinary.java",
        "JavaCcLinkParamsProvider.java",
        "JavaConfigurationLoader.java",
        "JavaImport.java",
        "JavaImportBaseRule.java",
        "JavaInfo.java",
        "JavaLibrary.java",
        "JavaPackageConfiguration.java",
        "JavaPackageConfigurationRule.java",
        "JavaPlugin.java",
        "JavaPrimaryClassProvider.java",
        "JavaRuntime.java",
        "JavaRuntimeAliasRule.java",
        "JavaRuntimeClasspathProvider.java",
        "JavaRuntimeRule.java",
        "JavaSkylarkCommon.java",
        "JavaSourceInfoProvider.java",
        "JavaToolchain.java",
        "JavaToolchainAliasRule.java",
        "JavaToolchainRule.java",
        "ProguardLibrary.java",
        "ProguardLibraryRule.java",
        "ProguardSpecProvider.java",
        "proto/JavaLiteProtoAspect.java",
        "proto/JavaLiteProtoLibrary.java",
        "proto/JavaProtoAspect.java",
        "proto/JavaProtoAspectCommon.java",
        "proto/JavaProtoLibrary.java",
        "proto/JavaProtoLibraryAspectProvider.java",
        "proto/JavaProtoSkylarkCommon.java",
        "proto/JplCcLinkParams.java",
        "proto/ProtoJavacOpts.java",
        "proto/StrictDepsUtils.java",
    ],
    deps = [
        ":java-compilation",
        ":java-implicit-attributes",
        "//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-internal",
        "//src/main/java/com/google/devtools/build/lib:proto-rules",
        "//src/main/java/com/google/devtools/build/lib:provider-collection",
        "//src/main/java/com/google/devtools/build/lib:syntax",
        "//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/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/rules/java:RpcSupport",
        "//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/skylarkbuildapi/java",
        "//src/main/java/com/google/devtools/build/lib/vfs:pathfragment",
        "//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 = "java-compilation",
    srcs = [
        "BuildInfoPropertiesTranslator.java",
        "ClasspathConfiguredFragment.java",
        "DeployArchiveBuilder.java",
        "ImportDepsCheckActionBuilder.java",
        "JavaBuildInfoFactory.java",
        "JavaCommon.java",
        "JavaCompilationArgsProvider.java",
        "JavaCompilationArtifacts.java",
        "JavaCompilationHelper.java",
        "JavaCompilationInfoProvider.java",
        "JavaCompileAction.java",
        "JavaCompileActionBuilder.java",
        "JavaCompileActionContext.java",
        "JavaCompileOutputs.java",
        "JavaConfiguration.java",
        "JavaExportsProvider.java",
        "JavaGenJarsProvider.java",
        "JavaHeaderCompileActionBuilder.java",
        "JavaHelper.java",
        "JavaInfo.java",
        "JavaInfoBuildHelper.java",
        "JavaLibraryHelper.java",
        "JavaNativeLibraryProvider.java",
        "JavaOptions.java",
        "JavaPackageConfigurationProvider.java",
        "JavaPluginInfoProvider.java",
        "JavaRuleClasses.java",
        "JavaRuleOutputJarsProvider.java",
        "JavaRunfilesProvider.java",
        "JavaRuntimeInfo.java",
        "JavaSemantics.java",
        "JavaSkylarkApiProvider.java",
        "JavaSkylarkCommon.java",
        "JavaSourceInfoProvider.java",
        "JavaSourceJarsProvider.java",
        "JavaStrictCompilationArgsProvider.java",
        "JavaTargetAttributes.java",
        "JavaToolchainProvider.java",
        "JavaUtil.java",
        "MessageBundleInfo.java",
        "NativeLibraryNestedSetBuilder.java",
        "OneVersionCheckActionBuilder.java",
        "ResourceJarActionBuilder.java",
        "SingleJarActionBuilder.java",
        "WriteBuildInfoPropertiesAction.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:packages-internal",
        "//src/main/java/com/google/devtools/build/lib:provider-collection",
        "//src/main/java/com/google/devtools/build/lib:syntax",
        "//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/actions:localhost_capacity",
        "//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/core",
        "//src/main/java/com/google/devtools/build/lib/skylarkbuildapi/java",
        "//src/main/java/com/google/devtools/build/lib/skylarkinterface",
        "//src/main/java/com/google/devtools/build/lib/vfs",
        "//src/main/java/com/google/devtools/common/options",
        "//src/main/protobuf:deps_java_proto",
        "//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 = ["JavaImplicitAttributes.java"],
)

java_library(
    name = "RpcSupport",
    srcs = ["proto/RpcSupport.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:proto-rules",
        "//src/main/java/com/google/devtools/build/lib/actions",
        "//src/main/java/com/google/devtools/build/lib/collect/nestedset",
        "//third_party:guava",
    ],
)
