load("@bazel_skylib//:bzl_library.bzl", "bzl_library")
load("@bazel_skylib//rules:common_settings.bzl", "bool_flag", "string_flag")
load(":incompatible.bzl", "incompatible_flag")

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

bzl_library(
    name = "bzl_lib",
    srcs = glob(["**/*.bzl"]),
)

# A flag controlling whether to rename first-party crates such that their names
# encode the Bazel package and target name, instead of just the target name.
#
# First-party vs. third-party crates are identified using the value of
# //settings:third_party_dir.
bool_flag(
    name = "rename_first_party_crates",
    build_setting_default = False,
)

# A flag specifying the location of vendored third-party rust crates within this
# repository that must not be renamed when `rename_first_party_crates` is enabled.
#
# Must be specified as a Bazel package, e.g. "//some/location/in/repo".
string_flag(
    name = "third_party_dir",
    build_setting_default = "//third_party/rust",
)

# A flag to control whether rust_library and rust_binary targets should
# implicitly depend on the *real* import macro, or on a no-op target.
bool_flag(
    name = "use_real_import_macro",
    build_setting_default = False,
)

# When set, this flag causes rustc to emit .rmeta files and use them for rlib -> rlib dependencies.
# While this involves one extra (short) rustc invocation to build the rmeta file,
# it allows library dependencies to be unlocked much sooner, increasing parallelism during compilation.
bool_flag(
    name = "pipelined_compilation",
    build_setting_default = False,
)

# A flag to control whether to link rust_binary and rust_test targets using
# cc_common.link instead of rustc.
bool_flag(
    name = "experimental_use_cc_common_link",
    build_setting_default = False,
)

# A flag to indicate that a global allocator is in use when using --@rules_rust//rust/settings:experimental_use_cc_common_link
# Users need to specify this flag because rustc generates different set of symbols at link time when a global allocator is in use.
# When the linking is not done by rustc, the `rust_toolchain` itself provides the appropriate set of symbols.
bool_flag(
    name = "experimental_use_global_allocator",
    build_setting_default = False,
)

# A flag to have coverage tooling added as `coverage_common.instrumented_files_info.metadata_files` instead of
# reporting tools like `llvm-cov` and `llvm-profdata` as runfiles to each test.
bool_flag(
    name = "experimental_use_coverage_metadata_files",
    build_setting_default = False,
)

# A flag to set rustc --sysroot flag to the sysroot generated by rust_toolchain
incompatible_flag(
    name = "experimental_toolchain_generated_sysroot",
    build_setting_default = True,
    issue = "https://github.com/bazelbuild/rules_rust/issues/2039",
)

# A flag to make `rust_test.crate` and `rust_test.srcs` mutually exclusive.
incompatible_flag(
    name = "incompatible_test_attr_crate_and_srcs_mutually_exclusive",
    build_setting_default = True,
    issue = "https://github.com/bazelbuild/rules_rust/issues/2324",
)
