blob: 60e69c417450a75fcb7d61ab0a2a4eb98f4f04d7 [file] [log] [blame]
###############################################################################
# Bazel now uses Bzlmod by default to manage external dependencies.
# Please consider migrating your external dependencies from WORKSPACE to MODULE.bazel.
#
# For more details, please check https://github.com/bazelbuild/bazel/issues/18958
###############################################################################
# NOTE: When editing this file, also update the lockfile.
# bazel mod deps --lockfile_mode=update
module(
name = "monogon",
)
bazel_dep(name = "platforms", version = "1.0.0")
bazel_dep(name = "rules_go", repo_name = "io_bazel_rules_go")
single_version_override(
module_name = "rules_go",
patch_strip = 1,
patches = [
"//third_party/rules_go:rules_go_absolute_embedsrc.patch",
"//third_party/rules_go:introduce-all-scope-for-nogo.patch",
"//third_party/rules_go:cache-fix.patch",
],
version = "0.55.1",
)
bazel_dep(name = "gazelle")
single_version_override(
module_name = "gazelle",
patch_strip = 1,
patches = [
"//third_party/gazelle:add-prepatching.patch",
],
version = "0.44.0",
)
# rules_rust was split into multiple dependencies. Sadly, this means we have to
# patch each include separately.
RULES_RUST_VERSION = "0.63.0"
bazel_dep(name = "rules_rust")
single_version_override(
module_name = "rules_rust",
patch_strip = 1,
patches = [
"//third_party/rules_rust:rust-prost-nostd.patch",
"//third_party/rules_rust:rust-reproducibility.patch",
"//third_party/rules_rust:musl.patch",
],
version = RULES_RUST_VERSION,
)
bazel_dep(name = "rules_rust_prost")
single_version_override(
module_name = "rules_rust_prost",
patch_strip = 3,
patches = [
"//third_party/rules_rust:rust-prost-nostd.patch",
],
version = RULES_RUST_VERSION,
)
bazel_dep(name = "openssl")
single_version_override(
module_name = "openssl",
patch_strip = 1,
patches = [
"//third_party/openssl/patches:force-gnuas.patch",
],
version = "3.3.1.bcr.1",
)
bazel_dep(name = "rules_rust_protobuf", version = RULES_RUST_VERSION)
bazel_dep(name = "rules_rust_mdbook", version = RULES_RUST_VERSION)
bazel_dep(name = "libuuid")
single_version_override(
module_name = "libuuid",
patch_strip = 1,
patches = [
"//third_party/libuuid/patches:musl-compat.patch",
],
version = "2.39.3.bcr.1",
)
bazel_dep(name = "glib")
single_version_override(
module_name = "glib",
patch_strip = 1,
patches = [
"//third_party/glib/patches:musl-compat.patch",
],
version = "2.82.2.bcr.5",
)
bazel_dep(name = "rules_python")
single_version_override(
module_name = "rules_python",
patch_strip = 1,
patches = [
# TODO: Remove if upstream PR is merged
# https://github.com/bazel-contrib/rules_python/pull/3087
"//third_party/rules_python:use-usr-bin-env-bash.patch",
],
version = "1.5.3",
)
bazel_dep(name = "rules_oci")
single_version_override(
module_name = "rules_oci",
patch_strip = 1,
patches = [
"//third_party/rules_oci:use-default-shell-env.patch",
],
version = "2.2.6",
)
bazel_dep(name = "zstd", version = "1.5.7")
bazel_dep(name = "gperf", version = "3.1")
bazel_dep(name = "zlib", version = "1.3.1.bcr.6")
bazel_dep(name = "boringssl", version = "0.20250514.0")
bazel_dep(name = "libcap", version = "2.27")
bazel_dep(name = "buildifier_prebuilt", version = "8.2.0.2")
bazel_dep(name = "bazel_skylib", version = "1.8.1")
bazel_dep(name = "aspect_bazel_lib", version = "2.21.0")
bazel_dep(name = "rules_multirun", version = "0.12.0")
bazel_dep(name = "rules_cc", version = "0.2.0")
bazel_dep(name = "rules_perl", version = "0.4.2")
bazel_dep(name = "rules_proto", version = "7.1.0")
bazel_dep(name = "rules_proto_grpc_doc", version = "5.6.0")
bazel_dep(name = "rules_proto_grpc_buf", version = "5.6.0")
bazel_dep(name = "rules_foreign_cc", version = "0.15.0")
# Currently supported version are listed here:
# https://protobuf.dev/support/version-support/
bazel_dep(name = "protobuf", version = "31.1")
bazel_dep(name = "toolchain_cc_mngn")
git_override(
module_name = "toolchain_cc_mngn",
commit = "80acaa3e95473ad76c34c6f409b82f3802de9bd2",
remote = "https://review.monogon.dev/toolchain_cc",
)
register_toolchains("@toolchain_cc_mngn//linux_musl:linux_x86_64_linux_x86_64_musl_static")
register_toolchains("@toolchain_cc_mngn//linux_musl:linux_x86_64_linux_aarch64_musl_static")
register_toolchains("@toolchain_cc_mngn//efi:linux_x86_64_efi_x86_64")
register_toolchains("@toolchain_cc_mngn//efi:linux_x86_64_efi_aarch64")
# Rust Toolchains
register_toolchains("@rust_toolchains//:all")
# Protobuf Toolchains
register_toolchains("@rules_rust_protobuf//:default_proto_toolchain")
register_toolchains("//build/toolchain/rust-efi:prost_efi_toolchain")
register_toolchains("//build/toolchain/toolchain-bundle:all")
# Rust config
include("//build/bazel:rust.MODULE.bazel")
# Go dependencies
include("//build/bazel:go.MODULE.bazel")
# OCI Config
include("//build/bazel:oci.MODULE.bazel")
# Third Party dependencies
include("//build/bazel:third_party.MODULE.bazel")
# Toolchain Bundle
include("//build/bazel:toolchain.MODULE.bazel")