package(default_visibility = ["//visibility:public"])

exports_files(glob(["**/*.jar"]))

licenses(["notice"])  # Apache 2.0

load("@rules_cc//cc:defs.bzl", "cc_binary", "cc_library", "cc_proto_library")
load("@rules_proto//proto:defs.bzl", "proto_library")

SUPRESSED_WARNINGS = select({
    ":windows": [],
    "//conditions:default": [
        "-Wno-error",
        "-Wno-old-style-cast",
    ],
})

filegroup(
    name = "GenClass",
    srcs = ["java_tools/GenClass_deploy.jar"],
)

filegroup(
    name = "jacoco_coverage_runner_filegroup",
    srcs = ["java_tools/JacocoCoverage_jarjar_deploy.jar"],
)

java_import(
    name = "jacoco_coverage_runner",
    jars = ["java_tools/JacocoCoverage_jarjar_deploy.jar"],
)

filegroup(
    name = "JacocoCoverage",
    srcs = ["java_tools/JacocoCoverage_jarjar_deploy.jar"],
)

filegroup(
    name = "JavaBuilder",
    srcs = ["java_tools/JavaBuilder_deploy.jar"],
)

filegroup(
    name = "Runner",
    srcs = ["java_tools/Runner_deploy.jar"],
)

filegroup(
    name = "VanillaJavaBuilder",
    srcs = ["java_tools/VanillaJavaBuilder_deploy.jar"],
)

filegroup(
    name = "Turbine",
    srcs = ["java_tools/turbine_deploy.jar"],
)

filegroup(
    name = "TurbineDirect",
    srcs = ["java_tools/turbine_direct_binary_deploy.jar"],
)

filegroup(
    name = "javac_jar",
    srcs = ["java_tools/javac-9+181-r4173-1.jar"],
)

filegroup(
    name = "jdk_compiler_jar",
    srcs = ["java_tools/jdk_compiler.jar"],
)

filegroup(
    name = "java_compiler_jar",
    srcs = ["java_tools/java_compiler.jar"],
)

java_import(
    name = "jacoco-agent",
    jars = ["java_tools/third_party/java/jacoco/org.jacoco.agent-0.8.6.jar"],
    srcjar = "java_tools/third_party/java/jacoco/org.jacoco.agent-0.8.6-src.jar",
)

java_import(
    name = "jacoco-core",
    jars = ["java_tools/third_party/java/jacoco/org.jacoco.core-0.8.6.jar"],
    srcjar = "java_tools/third_party/java/jacoco/org.jacoco.core-0.8.6-src.jar",
    exports = [
        ":asm",
        ":asm-commons",
        ":asm-tree",
    ],
)

filegroup(
    name = "jacoco-core-jars",
    srcs = ["java_tools/third_party/java/jacoco/org.jacoco.core-0.8.6.jar"],
)

java_import(
    name = "jacoco-report",
    jars = ["java_tools/third_party/java/jacoco/org.jacoco.report-0.8.6.jar"],
    srcjar = "java_tools/third_party/java/jacoco/org.jacoco.report-sources.jar",
    exports = [
        ":asm",
        ":jacoco-core",
    ],
)

java_import(
    name = "bazel-jacoco-agent",
    jars = ["java_tools/third_party/java/jacoco/jacocoagent-0.8.6.jar"],
)

java_import(
    name = "bazel-jacoco-agent-neverlink",
    jars = ["java_tools/third_party/java/jacoco/jacocoagent-0.8.6.jar"],
    neverlink = 1,
)

java_import(
    name = "asm",
    jars = ["java_tools/third_party/java/jacoco/asm-9.1.jar"],
    srcjar = "java_tools/third_party/java/jacoco/asm-9.1-sources.jar",
)

java_import(
    name = "asm-commons",
    jars = ["java_tools/third_party/java/jacoco/asm-commons-9.1.jar"],
    srcjar = "java_tools/third_party/java/jacoco/asm-commons-9.1-sources.jar",
    runtime_deps = [":asm-tree"],
)

java_import(
    name = "asm-tree",
    jars = ["java_tools/third_party/java/jacoco/asm-tree-9.1.jar"],
    srcjar = "java_tools/third_party/java/jacoco/asm-tree-9.1-sources.jar",
    runtime_deps = [":asm"],
)

config_setting(
    name = "windows",
    constraint_values = ["@platforms//os:windows"],
)

config_setting(
    name = "freebsd",
    constraint_values = ["@platforms//os:freebsd"],
    visibility = ["//visibility:public"],
)

config_setting(
    name = "openbsd",
    constraint_values = ["@platforms//os:openbsd"],
    visibility = ["//visibility:public"],
)

cc_library(
    name = "malloc",
)

cc_binary(
    name = "ijar_cc_binary",
    srcs = [
        "java_tools/ijar/classfile.cc",
        "java_tools/ijar/ijar.cc",
    ],
    copts = SUPRESSED_WARNINGS,
    # Remove dependency on @bazel_tools//tools/cpp:malloc, which avoid /Iexternal/tools being used
    # in compiling actions.
    malloc = ":malloc",
    deps = [":zip"],
)

cc_library(
    name = "zip",
    srcs = [
        "java_tools/ijar/zip.cc",
    ] + select({
        ":windows": [
            "java_tools/ijar/mapped_file_windows.cc",
        ],
        "//conditions:default": [
            "java_tools/ijar/mapped_file_unix.cc",
        ],
    }),
    hdrs = [
        "java_tools/ijar/common.h",
        "java_tools/ijar/mapped_file.h",
        "java_tools/ijar/zip.h",
    ],
    copts = SUPRESSED_WARNINGS,
    include_prefix = "third_party",
    strip_include_prefix = "java_tools",
    deps = [
        ":platform_utils",
        ":zlib_client",
    ] + select({
        ":windows": [
            ":errors",
            ":filesystem",
            ":logging",
            ":strings",
        ],
        "//conditions:default": [
        ],
    }),
)

cc_library(
    name = "platform_utils",
    srcs = ["java_tools/ijar/platform_utils.cc"],
    hdrs = [
        "java_tools/ijar/common.h",
        "java_tools/ijar/platform_utils.h",
    ],
    copts = SUPRESSED_WARNINGS,
    include_prefix = "third_party",
    strip_include_prefix = "java_tools",
    visibility = ["//visibility:private"],
    deps = [
        ":errors",
        ":filesystem",
        ":logging",
    ],
)

cc_library(
    name = "cpp_util",
    hdrs = [
        "java_tools/src/main/cpp/util/errors.h",
        "java_tools/src/main/cpp/util/file.h",
        "java_tools/src/main/cpp/util/file_platform.h",
        "java_tools/src/main/cpp/util/md5.h",
        "java_tools/src/main/cpp/util/numbers.h",
        "java_tools/src/main/cpp/util/path.h",
        "java_tools/src/main/cpp/util/path_platform.h",
        "java_tools/src/main/cpp/util/port.h",
    ],
    strip_include_prefix = "java_tools",
    visibility = ["//visibility:public"],
    deps = [
        ":blaze_exit_code",
        ":errors",
        ":filesystem",
        ":md5",
        ":numbers",
        ":port",
        ":strings",
    ],
)

cc_library(
    name = "md5",
    srcs = ["java_tools/src/main/cpp/util/md5.cc"],
    hdrs = ["java_tools/src/main/cpp/util/md5.h"],
    strip_include_prefix = "java_tools",
)

cc_library(
    name = "numbers",
    srcs = ["java_tools/src/main/cpp/util/numbers.cc"],
    hdrs = ["java_tools/src/main/cpp/util/numbers.h"],
    strip_include_prefix = "java_tools",
    deps = [":strings"],
)

cc_library(
    name = "filesystem",
    srcs = [
        "java_tools/src/main/cpp/util/file.cc",
        "java_tools/src/main/cpp/util/path.cc",
    ] + select({
        ":windows": [
            "java_tools/src/main/cpp/util/file_windows.cc",
            "java_tools/src/main/cpp/util/path_windows.cc",
        ],
        "//conditions:default": [
            "java_tools/src/main/cpp/util/file_posix.cc",
            "java_tools/src/main/cpp/util/path_posix.cc",
        ],
    }),
    hdrs = [
        "java_tools/src/main/cpp/util/file.h",
        "java_tools/src/main/cpp/util/file_platform.h",
        "java_tools/src/main/cpp/util/path.h",
        "java_tools/src/main/cpp/util/path_platform.h",
    ],
    strip_include_prefix = "java_tools",
    deps = [
        ":blaze_exit_code",
        ":errors",
        ":logging",
        ":strings",
    ] + select({
        ":windows": [":lib-file"],
        "//conditions:default": [],
    }),
)

cc_library(
    name = "lib-file",
    srcs = [
        "java_tools/src/main/native/windows/file.cc",
        "java_tools/src/main/native/windows/util.cc",
    ],
    hdrs = [
        "java_tools/src/main/native/windows/file.h",
        "java_tools/src/main/native/windows/util.h",
    ],
    linkopts = [
        "-DEFAULTLIB:advapi32.lib",
    ],
    strip_include_prefix = "java_tools",
)

cc_library(
    name = "errors",
    srcs = select({
        ":windows": ["java_tools/src/main/cpp/util/errors_windows.cc"],
        "//conditions:default": ["java_tools/src/main/cpp/util/errors_posix.cc"],
    }),
    hdrs = ["java_tools/src/main/cpp/util/errors.h"],
    strip_include_prefix = "java_tools",
    deps = [
        ":logging",
        ":port",
        ":strings",
    ],
)

cc_library(
    name = "strings",
    srcs = ["java_tools/src/main/cpp/util/strings.cc"],
    hdrs = ["java_tools/src/main/cpp/util/strings.h"],
    copts = SUPRESSED_WARNINGS,
    # Automatically propagate the symbol definition to rules depending on this.
    defines = [
        "BLAZE_OPENSOURCE",
    ],
    strip_include_prefix = "java_tools",
    deps = [":blaze_exit_code"],
)

cc_library(
    name = "blaze_exit_code",
    hdrs = ["java_tools/src/main/cpp/util/exit_code.h"],
    copts = SUPRESSED_WARNINGS,
    strip_include_prefix = "java_tools",
)

cc_library(
    name = "port",
    srcs = ["java_tools/src/main/cpp/util/port.cc"],
    hdrs = ["java_tools/src/main/cpp/util/port.h"],
    copts = SUPRESSED_WARNINGS,
    strip_include_prefix = "java_tools",
)

cc_library(
    name = "logging",
    srcs = ["java_tools/src/main/cpp/util/logging.cc"],
    hdrs = ["java_tools/src/main/cpp/util/logging.h"],
    copts = SUPRESSED_WARNINGS,
    strip_include_prefix = "java_tools",
    deps = [
        ":blaze_exit_code",
        ":strings",
    ],
)

cc_library(
    name = "zlib_client",
    srcs = ["java_tools/ijar/zlib_client.cc"],
    hdrs = [
        "java_tools/ijar/common.h",
        "java_tools/ijar/zlib_client.h",
    ],
    copts = SUPRESSED_WARNINGS,
    include_prefix = "third_party",
    strip_include_prefix = "java_tools",
    deps = ["//java_tools/zlib"],
)

##################### singlejar

cc_binary(
    name = "singlejar_cc_bin",
    srcs = [
        "java_tools/src/tools/singlejar/singlejar_main.cc",
    ],
    copts = SUPRESSED_WARNINGS,
    linkopts = select({
        ":freebsd": ["-lm"],
        ":openbsd": ["-lm"],
        "//conditions:default": [],
    }),
    linkstatic = 1,
    # Remove dependency on @bazel_tools//tools/cpp:malloc, which avoid /Iexternal/tools being used
    # in compiling actions.
    malloc = ":malloc",
    visibility = ["//visibility:public"],
    deps = [
        ":options",
        ":output_jar",
        "//java_tools/zlib",
    ],
)

cc_binary(
    name = "singlejar_local",
    srcs = [
        "java_tools/src/tools/singlejar/singlejar_local_main.cc",
    ],
    copts = SUPRESSED_WARNINGS,
    linkopts = select({
        ":freebsd": ["-lm"],
        ":openbsd": ["-lm"],
        "//conditions:default": [],
    }),
    linkstatic = 1,
    visibility = ["//visibility:public"],
    deps = [
        ":combiners",
        ":desugar_checking",
        ":options",
        ":output_jar",
        "//java_tools/zlib",
    ],
)

cc_library(
    name = "combiners",
    srcs = [
        "java_tools/src/tools/singlejar/combiners.cc",
    ],
    hdrs = [
        "java_tools/src/tools/singlejar/combiners.h",
        ":transient_bytes",
    ],
    copts = SUPRESSED_WARNINGS,
    strip_include_prefix = "java_tools",
    deps = [
        "//java_tools/zlib",
    ],
)

proto_library(
    name = "desugar_deps_proto",
    srcs = ["java_tools/src/main/protobuf/desugar_deps.proto"],
)

cc_proto_library(
    name = "desugar_deps_cc_proto",
    deps = [":desugar_deps_proto"],
)

cc_library(
    name = "desugar_checking",
    srcs = ["java_tools/src/tools/singlejar/desugar_checking.cc"],
    hdrs = ["java_tools/src/tools/singlejar/desugar_checking.h"],
    copts = SUPRESSED_WARNINGS,
    strip_include_prefix = "java_tools",
    deps = [
        ":combiners",
        ":desugar_deps_cc_proto",
    ],
)

cc_library(
    name = "diag",
    hdrs = ["java_tools/src/tools/singlejar/diag.h"],
    copts = SUPRESSED_WARNINGS,
    strip_include_prefix = "java_tools",
    visibility = ["//visibility:private"],
)

cc_library(
    name = "singlejar_port",
    hdrs = ["java_tools/src/tools/singlejar/port.h"],
    copts = SUPRESSED_WARNINGS,
    strip_include_prefix = "java_tools",
    visibility = ["//visibility:private"],
)

cc_library(
    name = "mapped_file",
    srcs = ["java_tools/src/tools/singlejar/mapped_file.cc"],
    hdrs = ["java_tools/src/tools/singlejar/mapped_file.h"] +
           select({
               ":windows": ["java_tools/src/tools/singlejar/mapped_file_windows.inc"],
               "//conditions:default": ["java_tools/src/tools/singlejar/mapped_file_posix.inc"],
           }),
    copts = SUPRESSED_WARNINGS,
    strip_include_prefix = "java_tools",
    visibility = ["//visibility:private"],
    deps = [
        ":cpp_util",
        ":diag",
        ":singlejar_port",
    ],
)

cc_library(
    name = "input_jar",
    srcs = [
        "java_tools/src/tools/singlejar/input_jar.cc",
    ],
    hdrs = [
        "java_tools/src/tools/singlejar/input_jar.h",
        "java_tools/src/tools/singlejar/zip_headers.h",
    ],
    copts = SUPRESSED_WARNINGS,
    strip_include_prefix = "java_tools",
    deps = [
        ":diag",
        ":mapped_file",
    ],
)

cc_library(
    name = "options",
    srcs = [
        "java_tools/src/tools/singlejar/options.cc",
        "java_tools/src/tools/singlejar/options.h",
    ],
    hdrs = ["java_tools/src/tools/singlejar/options.h"],
    copts = SUPRESSED_WARNINGS,
    strip_include_prefix = "java_tools",
    deps = [
        ":diag",
        ":token_stream",
    ],
)

cc_library(
    name = "output_jar",
    srcs = [
        "java_tools/src/tools/singlejar/output_jar.cc",
        "java_tools/src/tools/singlejar/output_jar.h",
        ":zip_headers",
    ],
    hdrs = ["java_tools/src/tools/singlejar/output_jar.h"],
    copts = SUPRESSED_WARNINGS,
    strip_include_prefix = "java_tools",
    deps = [
        ":combiners",
        ":cpp_util",
        ":diag",
        ":input_jar",
        ":mapped_file",
        ":options",
        ":singlejar_port",
        "//java_tools/zlib",
    ],
)

cc_library(
    name = "token_stream",
    hdrs = ["java_tools/src/tools/singlejar/token_stream.h"],
    copts = SUPRESSED_WARNINGS,
    strip_include_prefix = "java_tools",
    deps = [
        ":diag",
        ":filesystem",
    ],
)

filegroup(
    name = "transient_bytes",
    srcs = [
        "java_tools/src/tools/singlejar/diag.h",
        "java_tools/src/tools/singlejar/transient_bytes.h",
        "java_tools/src/tools/singlejar/zlib_interface.h",
        ":zip_headers",
    ],
)

filegroup(
    name = "zip_headers",
    srcs = ["java_tools/src/tools/singlejar/zip_headers.h"],
)

################### Proguard ###################
java_import(
    name = "proguard_import",
    jars = ["java_tools/third_party/java/proguard/proguard.jar"],
)

java_binary(
    name = "proguard",
    main_class = "proguard.ProGuard",
    visibility = ["//visibility:public"],
    runtime_deps = [":proguard_import"],
)
