load("@bazel_skylib//:bzl_library.bzl", "bzl_library")
load("@cui//:defs.bzl", "aliases", "all_crate_deps")
load("@rules_rust//rust:defs.bzl", "rust_binary", "rust_doc", "rust_doc_test", "rust_library", "rust_test")
load("//crate_universe:version.bzl", "VERSION")

exports_files(
    glob([
        "src/**/*.bzl",
        "src/**/*.j2",
        "src/**/*.rs",
    ]) + [
        "Cargo.toml",
        "Cargo.lock",
        "defs.bzl",
        "docs_bzlmod.bzl",
        "docs_workspace.bzl",
    ],
    visibility = ["//visibility:public"],
)

filegroup(
    name = "bzl_srcs",
    srcs = glob(["*.bzl"]) + [
        "//crate_universe/3rdparty:bzl_srcs",
        "//crate_universe/private:bzl_srcs",
        "//crate_universe/tools:bzl_srcs",
    ],
    visibility = ["//visibility:public"],
)

bzl_library(
    name = "bzl_lib",
    srcs = [":bzl_srcs"],
    visibility = ["//visibility:public"],
    deps = [
        "//rust:bzl_lib",
        "@bazel_features//:features",
    ],
)

filegroup(
    name = "rust_data",
    srcs = glob([
        "src/**/*.bzl",
        "src/**/*.j2",
        "src/**/*.sh",
        "src/**/*.bat",
    ]),
)

filegroup(
    name = "rust_srcs",
    srcs = glob([
        "src/**/*.rs",
    ]) + [
        ":rust_data",
    ],
    visibility = ["//crate_universe:__subpackages__"],
)

rust_library(
    name = "cargo_bazel",
    srcs = glob(
        include = ["src/**/*.rs"],
        exclude = ["src/main.rs"],
    ),
    aliases = aliases(),
    compile_data = [":rust_data"],
    edition = "2021",
    proc_macro_deps = all_crate_deps(proc_macro = True),
    # This target embeds additional, stamping related information (see
    # https://docs.bazel.build/versions/main/user-manual.html#workspace_status
    # for more information). Set stamp = -1 to indicate that it should respect
    # the value of the --stamp comandline flag.
    stamp = -1,
    version = VERSION,
    visibility = ["//visibility:public"],
    deps = all_crate_deps(normal = True),
)

rust_binary(
    name = "cargo_bazel_bin",
    srcs = ["src/main.rs"],
    edition = "2021",
    version = VERSION,
    visibility = ["//visibility:public"],
    deps = [":cargo_bazel"],
)

alias(
    name = "bin",
    actual = ":cargo_bazel_bin",
    visibility = ["//visibility:public"],
)

rust_test(
    name = "unit_test",
    aliases = aliases(),
    compile_data = glob(["test_data/**"]),
    crate = ":cargo_bazel",
    data = glob(["test_data/**"]) + [
        "//crate_universe/test_data/serialized_configs",
        "@rules_rust//rust/toolchain:current_cargo_files",
        "@rules_rust//rust/toolchain:current_rustc_files",
    ],
    proc_macro_deps = all_crate_deps(
        proc_macro_dev = True,
    ),
    rustc_env = {
        "CARGO": "$(rootpath @rules_rust//rust/toolchain:current_cargo_files)",
        "RUSTC": "$(rootpath @rules_rust//rust/toolchain:current_rustc_files)",
    },
    deps = [
        "@rules_rust//tools/runfiles",
    ] + all_crate_deps(
        normal_dev = True,
    ),
)

# Integration tests which invoke cargo and/or rustc as subprocesses.
rust_test(
    name = "cargo_integration_test",
    timeout = "long",
    srcs = ["tests/cargo_integration_test.rs"],
    aliases = aliases(),
    data = glob(["test_data/**"]) + [
        "//crate_universe/test_data/serialized_configs",
        "@rules_rust//rust/toolchain:current_cargo_files",
        "@rules_rust//rust/toolchain:current_rustc_files",
    ],
    edition = "2021",
    env = {
        "CARGO": "$(rlocationpath @rules_rust//rust/toolchain:current_cargo_files)",
        "RUSTC": "$(rlocationpath @rules_rust//rust/toolchain:current_rustc_files)",
    },
    proc_macro_deps = all_crate_deps(
        proc_macro_dev = True,
    ),
    tags = ["requires-network"],
    deps = [
        ":cargo_bazel",
        "@rules_rust//tools/runfiles",
    ] + all_crate_deps(
        normal = True,
    ),
)

rust_test(
    name = "versions_test",
    srcs = ["tests/version_test.rs"],
    data = [
        "Cargo.toml",
        "version.bzl",
    ],
    edition = "2021",
    rustc_env = {
        "CARGO_TOML": "$(rootpath :Cargo.toml)",
        "VERSION_BZL": "$(rootpath :version.bzl)",
    },
)

rust_doc(
    name = "rustdoc",
    crate = ":cargo_bazel",
    rustdoc_flags = [
        "--cap-lints=warn",
        "--document-private-items",
        "--allow=rustdoc::private_intra_doc_links",
    ],
    visibility = ["//visibility:public"],
)

rust_doc_test(
    name = "rustdoc_test",
    crate = ":cargo_bazel",
)
