| Serge Bazanski | 31370b0 | 2021-01-07 16:31:14 +0100 | [diff] [blame] | 1 | workspace(name = "dev_source_monogon") |
| Leopold Schabel | 5c80aca | 2019-10-22 15:48:58 +0200 | [diff] [blame] | 2 | |
| Lorenz Brun | c88c82d | 2020-05-08 14:35:04 +0200 | [diff] [blame] | 3 | load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive", "http_file") |
| Leopold Schabel | 5c80aca | 2019-10-22 15:48:58 +0200 | [diff] [blame] | 4 | load("@bazel_tools//tools/build_defs/repo:git.bzl", "new_git_repository") |
| 5 | |
| 6 | # Load skylib |
| 7 | |
| 8 | http_archive( |
| 9 | name = "bazel_skylib", |
| Tim Windelschmidt | f83f503 | 2023-07-04 14:59:14 +0200 | [diff] [blame] | 10 | sha256 = "74d544d96f4a5bb630d465ca8bbcfe231e3594e5aae57e1edbf17a6eb3ca2506", |
| Leopold Schabel | 5c80aca | 2019-10-22 15:48:58 +0200 | [diff] [blame] | 11 | urls = [ |
| Leopold | bc93c2b | 2023-01-14 13:12:23 +0100 | [diff] [blame] | 12 | "https://mirror.bazel.build/github.com/bazelbuild/bazel-skylib/releases/download/1.3.0/bazel-skylib-1.3.0.tar.gz", |
| 13 | "https://github.com/bazelbuild/bazel-skylib/releases/download/1.3.0/bazel-skylib-1.3.0.tar.gz", |
| Leopold Schabel | 5c80aca | 2019-10-22 15:48:58 +0200 | [diff] [blame] | 14 | ], |
| 15 | ) |
| 16 | |
| 17 | load("@bazel_skylib//:workspace.bzl", "bazel_skylib_workspace") |
| 18 | |
| 19 | bazel_skylib_workspace() |
| 20 | |
| 21 | # Assert minimum Bazel version |
| 22 | |
| 23 | load("@bazel_skylib//lib:versions.bzl", "versions") |
| 24 | |
| Leopold | bc93c2b | 2023-01-14 13:12:23 +0100 | [diff] [blame] | 25 | versions.check(minimum_bazel_version = "5.4.0") |
| 26 | |
| Lorenz Brun | 5acd380 | 2023-08-29 23:15:06 +0200 | [diff] [blame] | 27 | # Explicitly include platforms to patch it |
| 28 | http_archive( |
| 29 | name = "platforms", |
| 30 | patch_args = ["-p1"], |
| 31 | patches = [ |
| 32 | "//third_party:platforms-add-uefi.patch", |
| 33 | ], |
| 34 | sha256 = "3a561c99e7bdbe9173aa653fd579fe849f1d8d67395780ab4770b1f381431d51", |
| 35 | urls = [ |
| 36 | "https://mirror.bazel.build/github.com/bazelbuild/platforms/releases/download/0.0.7/platforms-0.0.7.tar.gz", |
| 37 | "https://github.com/bazelbuild/platforms/releases/download/0.0.7/platforms-0.0.7.tar.gz", |
| 38 | ], |
| 39 | ) |
| 40 | |
| Leopold | bc93c2b | 2023-01-14 13:12:23 +0100 | [diff] [blame] | 41 | # Register our custom CC toolchains. Order matters - more specific toolchains must be registered first. |
| 42 | # (host_cc_toolchain won't care about //build/platforms/linkmode, but musl_host_toolchain won't |
| 43 | # match anything unless its linkmode is set). |
| 44 | register_toolchains("//build/toolchain/musl-host-gcc:musl_host_toolchain") |
| Tim Windelschmidt | f83f503 | 2023-07-04 14:59:14 +0200 | [diff] [blame] | 45 | |
| Leopold | bc93c2b | 2023-01-14 13:12:23 +0100 | [diff] [blame] | 46 | register_toolchains("//build/toolchain/llvm-efi:efi_k8_toolchain") |
| Tim Windelschmidt | f83f503 | 2023-07-04 14:59:14 +0200 | [diff] [blame] | 47 | |
| Leopold | bc93c2b | 2023-01-14 13:12:23 +0100 | [diff] [blame] | 48 | register_toolchains("//build/toolchain:host_cc_toolchain") |
| Leopold Schabel | 5c80aca | 2019-10-22 15:48:58 +0200 | [diff] [blame] | 49 | |
| 50 | # Go and Gazelle |
| Leopold Schabel | 5c80aca | 2019-10-22 15:48:58 +0200 | [diff] [blame] | 51 | http_archive( |
| 52 | name = "io_bazel_rules_go", |
| Lorenz Brun | adb98f9 | 2022-07-04 14:09:41 +0000 | [diff] [blame] | 53 | patch_args = ["-p1"], |
| 54 | patches = [ |
| Lorenz Brun | 073a1c5 | 2022-08-02 11:36:36 +0000 | [diff] [blame] | 55 | "//third_party/go/patches:rules_go_absolute_embedsrc.patch", |
| Lorenz Brun | adb98f9 | 2022-07-04 14:09:41 +0000 | [diff] [blame] | 56 | ], |
| Tim Windelschmidt | 37dbb94 | 2023-11-13 16:06:18 +0100 | [diff] [blame] | 57 | sha256 = "d6ab6b57e48c09523e93050f13698f708428cfd5e619252e369d377af6597707", |
| Leopold Schabel | 5c80aca | 2019-10-22 15:48:58 +0200 | [diff] [blame] | 58 | urls = [ |
| Tim Windelschmidt | 37dbb94 | 2023-11-13 16:06:18 +0100 | [diff] [blame] | 59 | "https://mirror.bazel.build/github.com/bazelbuild/rules_go/releases/download/v0.43.0/rules_go-v0.43.0.zip", |
| 60 | "https://github.com/bazelbuild/rules_go/releases/download/v0.43.0/rules_go-v0.43.0.zip", |
| Leopold Schabel | 5c80aca | 2019-10-22 15:48:58 +0200 | [diff] [blame] | 61 | ], |
| 62 | ) |
| 63 | |
| 64 | http_archive( |
| 65 | name = "bazel_gazelle", |
| Lorenz Brun | 2073ce3 | 2021-02-03 18:52:59 +0100 | [diff] [blame] | 66 | patch_args = ["-p1"], |
| Lorenz Brun | efb028f | 2020-07-28 17:04:49 +0200 | [diff] [blame] | 67 | patches = [ |
| 68 | "//third_party/gazelle:add-prepatching.patch", |
| 69 | ], |
| Tim Windelschmidt | 37dbb94 | 2023-11-13 16:06:18 +0100 | [diff] [blame] | 70 | sha256 = "b7387f72efb59f876e4daae42f1d3912d0d45563eac7cb23d1de0b094ab588cf", |
| Leopold Schabel | 5c80aca | 2019-10-22 15:48:58 +0200 | [diff] [blame] | 71 | urls = [ |
| Tim Windelschmidt | 37dbb94 | 2023-11-13 16:06:18 +0100 | [diff] [blame] | 72 | "https://mirror.bazel.build/github.com/bazelbuild/bazel-gazelle/releases/download/v0.34.0/bazel-gazelle-v0.34.0.tar.gz", |
| 73 | "https://github.com/bazelbuild/bazel-gazelle/releases/download/v0.34.0/bazel-gazelle-v0.34.0.tar.gz", |
| Leopold Schabel | 5c80aca | 2019-10-22 15:48:58 +0200 | [diff] [blame] | 74 | ], |
| 75 | ) |
| 76 | |
| 77 | load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") |
| Lorenz Brun | d13c1c6 | 2022-03-30 19:58:58 +0200 | [diff] [blame] | 78 | load("//third_party/go:repositories.bzl", "go_repositories") |
| 79 | |
| 80 | # gazelle:repository_macro third_party/go/repositories.bzl%go_repositories |
| Tim Windelschmidt | f83f503 | 2023-07-04 14:59:14 +0200 | [diff] [blame] | 81 | # gazelle:repository go_repository name=dev_source_monogon importpath=source.monogon.dev |
| Lorenz Brun | d13c1c6 | 2022-03-30 19:58:58 +0200 | [diff] [blame] | 82 | go_repositories() |
| 83 | |
| Leopold Schabel | 5c80aca | 2019-10-22 15:48:58 +0200 | [diff] [blame] | 84 | go_rules_dependencies() |
| 85 | |
| Leopold Schabel | 60a85b6 | 2019-11-17 19:12:41 +0100 | [diff] [blame] | 86 | go_register_toolchains( |
| Lorenz Brun | 4ae4b7a | 2023-12-21 15:50:46 +0100 | [diff] [blame] | 87 | go_version = "1.21.5", |
| Serge Bazanski | 0ef9629 | 2021-05-21 15:41:32 +0200 | [diff] [blame] | 88 | nogo = "@dev_source_monogon//build/analysis:nogo", |
| Leopold Schabel | 60a85b6 | 2019-11-17 19:12:41 +0100 | [diff] [blame] | 89 | ) |
| Leopold Schabel | 5c80aca | 2019-10-22 15:48:58 +0200 | [diff] [blame] | 90 | |
| Lorenz Brun | c2e3b1b | 2021-11-11 11:06:41 +0100 | [diff] [blame] | 91 | load("@bazel_gazelle//:deps.bzl", "gazelle_dependencies") |
| 92 | |
| 93 | # Load Gazelle-generated local dependencies |
| 94 | gazelle_dependencies() |
| 95 | |
| Leopold Schabel | 5c80aca | 2019-10-22 15:48:58 +0200 | [diff] [blame] | 96 | # Protobuf |
| 97 | |
| 98 | http_archive( |
| Leopold | bc93c2b | 2023-01-14 13:12:23 +0100 | [diff] [blame] | 99 | name = "rules_proto", |
| 100 | sha256 = "dc3fb206a2cb3441b485eb1e423165b231235a1ea9b031b4433cf7bc1fa460dd", |
| 101 | strip_prefix = "rules_proto-5.3.0-21.7", |
| 102 | urls = [ |
| 103 | "https://github.com/bazelbuild/rules_proto/archive/refs/tags/5.3.0-21.7.tar.gz", |
| 104 | ], |
| Leopold Schabel | 5c80aca | 2019-10-22 15:48:58 +0200 | [diff] [blame] | 105 | ) |
| 106 | |
| Leopold | bc93c2b | 2023-01-14 13:12:23 +0100 | [diff] [blame] | 107 | load("@rules_proto//proto:repositories.bzl", "rules_proto_dependencies", "rules_proto_toolchains") |
| Leopold Schabel | 5c80aca | 2019-10-22 15:48:58 +0200 | [diff] [blame] | 108 | |
| Leopold | bc93c2b | 2023-01-14 13:12:23 +0100 | [diff] [blame] | 109 | rules_proto_dependencies() |
| Tim Windelschmidt | f83f503 | 2023-07-04 14:59:14 +0200 | [diff] [blame] | 110 | |
| Leopold | bc93c2b | 2023-01-14 13:12:23 +0100 | [diff] [blame] | 111 | rules_proto_toolchains() |
| Leopold Schabel | 5c80aca | 2019-10-22 15:48:58 +0200 | [diff] [blame] | 112 | |
| Lorenz Brun | 6570219 | 2023-08-31 16:27:38 +0200 | [diff] [blame] | 113 | # GRPC |
| 114 | http_archive( |
| 115 | name = "com_github_grpc_grpc", |
| 116 | patch_args = ["-p1"], |
| 117 | patches = ["//third_party/go/patches:grpc_extra_deps.patch"], |
| 118 | sha256 = "ec125d7fdb77ecc25b01050a0d5d32616594834d3fe163b016768e2ae42a2df6", |
| 119 | strip_prefix = "grpc-1.52.1", |
| 120 | urls = [ |
| 121 | "https://github.com/grpc/grpc/archive/v1.52.1.tar.gz", |
| 122 | ], |
| 123 | ) |
| 124 | |
| 125 | load("@com_github_grpc_grpc//bazel:grpc_deps.bzl", "grpc_deps") |
| 126 | |
| 127 | grpc_deps() |
| 128 | |
| 129 | load("@com_github_grpc_grpc//bazel:grpc_extra_deps.bzl", "grpc_extra_deps") |
| 130 | |
| 131 | grpc_extra_deps() |
| 132 | |
| Serge Bazanski | bb7db92 | 2020-04-30 12:43:10 +0200 | [diff] [blame] | 133 | # Build packages |
| 134 | http_archive( |
| 135 | name = "rules_pkg", |
| Tim Windelschmidt | f83f503 | 2023-07-04 14:59:14 +0200 | [diff] [blame] | 136 | sha256 = "eea0f59c28a9241156a47d7a8e32db9122f3d50b505fae0f33de6ce4d9b61834", |
| Lorenz Brun | 3ec8116 | 2021-11-09 03:37:03 +0100 | [diff] [blame] | 137 | urls = [ |
| Leopold | bc93c2b | 2023-01-14 13:12:23 +0100 | [diff] [blame] | 138 | "https://mirror.bazel.build/github.com/bazelbuild/rules_pkg/releases/download/0.8.0/rules_pkg-0.8.0.tar.gz", |
| 139 | "https://github.com/bazelbuild/rules_pkg/releases/download/0.8.0/rules_pkg-0.8.0.tar.gz", |
| Lorenz Brun | 3ec8116 | 2021-11-09 03:37:03 +0100 | [diff] [blame] | 140 | ], |
| Serge Bazanski | bb7db92 | 2020-04-30 12:43:10 +0200 | [diff] [blame] | 141 | ) |
| 142 | |
| Lorenz Brun | 3ec8116 | 2021-11-09 03:37:03 +0100 | [diff] [blame] | 143 | load("@rules_pkg//:deps.bzl", "rules_pkg_dependencies") |
| 144 | |
| 145 | rules_pkg_dependencies() |
| 146 | |
| Serge Bazanski | cbf1fa9 | 2021-07-02 17:28:50 +0200 | [diff] [blame] | 147 | # Rust rules |
| 148 | http_archive( |
| 149 | name = "rules_rust", |
| Lorenz Brun | f551a76 | 2023-08-29 23:21:25 +0200 | [diff] [blame] | 150 | patch_args = ["-p1"], |
| 151 | patches = [ |
| 152 | "//third_party:rust-uefi-platform.patch", |
| Lorenz Brun | d141d18 | 2023-10-02 15:07:01 +0200 | [diff] [blame] | 153 | "//third_party:rust-prost-nostd.patch", |
| Serge Bazanski | 4f00f90 | 2023-12-19 13:54:04 +0100 | [diff] [blame] | 154 | "//third_party:rust-reproducibility.patch", |
| Lorenz Brun | f551a76 | 2023-08-29 23:21:25 +0200 | [diff] [blame] | 155 | ], |
| Lorenz Brun | d141d18 | 2023-10-02 15:07:01 +0200 | [diff] [blame] | 156 | sha256 = "c46bdafc582d9bd48a6f97000d05af4829f62d5fee10a2a3edddf2f3d9a232c1", |
| 157 | urls = ["https://github.com/bazelbuild/rules_rust/releases/download/0.28.0/rules_rust-v0.28.0.tar.gz"], |
| Serge Bazanski | cbf1fa9 | 2021-07-02 17:28:50 +0200 | [diff] [blame] | 158 | ) |
| 159 | |
| Lorenz Brun | d141d18 | 2023-10-02 15:07:01 +0200 | [diff] [blame] | 160 | load("@rules_rust//rust:repositories.bzl", "rules_rust_dependencies", "rust_register_toolchains") |
| Leopold | 2aa8b18 | 2023-01-14 23:31:43 +0100 | [diff] [blame] | 161 | |
| Lorenz Brun | f551a76 | 2023-08-29 23:21:25 +0200 | [diff] [blame] | 162 | rules_rust_dependencies() |
| 163 | |
| 164 | # Rust Toolchains |
| Lorenz Brun | d141d18 | 2023-10-02 15:07:01 +0200 | [diff] [blame] | 165 | rust_register_toolchains( |
| Lorenz Brun | f551a76 | 2023-08-29 23:21:25 +0200 | [diff] [blame] | 166 | edition = "2021", |
| Lorenz Brun | f551a76 | 2023-08-29 23:21:25 +0200 | [diff] [blame] | 167 | extra_target_triples = [ |
| 168 | "x86_64-unknown-linux-gnu", |
| 169 | "x86_64-unknown-uefi", |
| 170 | ], |
| Lorenz Brun | d141d18 | 2023-10-02 15:07:01 +0200 | [diff] [blame] | 171 | versions = ["1.71.0"], # Linking EFI binaries is broken in 1.72 |
| Lorenz Brun | f551a76 | 2023-08-29 23:21:25 +0200 | [diff] [blame] | 172 | ) |
| Leopold | 2aa8b18 | 2023-01-14 23:31:43 +0100 | [diff] [blame] | 173 | |
| 174 | load("//third_party/rust/cargo:crates.bzl", "raze_fetch_remote_crates") |
| 175 | |
| 176 | raze_fetch_remote_crates() |
| Serge Bazanski | cbf1fa9 | 2021-07-02 17:28:50 +0200 | [diff] [blame] | 177 | |
| Lorenz Brun | d141d18 | 2023-10-02 15:07:01 +0200 | [diff] [blame] | 178 | load("//third_party/rust_efi/cargo:crates.bzl", "rsefi_fetch_remote_crates") |
| 179 | |
| 180 | rsefi_fetch_remote_crates() |
| 181 | |
| 182 | load("@rules_rust//proto/prost:repositories.bzl", "rust_prost_dependencies") |
| 183 | |
| 184 | rust_prost_dependencies() |
| 185 | |
| 186 | load("@rules_rust//proto/prost:transitive_repositories.bzl", "rust_prost_transitive_repositories") |
| 187 | |
| 188 | rust_prost_transitive_repositories() |
| 189 | |
| 190 | register_toolchains("//build/rust:prost_efi_toolchain") |
| 191 | |
| Serge Bazanski | 2fb13a8 | 2020-02-11 12:41:37 +0100 | [diff] [blame] | 192 | # third_party external repositories |
| 193 | load("//third_party/linux:external.bzl", "linux_external") |
| Lorenz Brun | 7b5d994 | 2020-03-19 16:14:02 +0100 | [diff] [blame] | 194 | |
| 195 | linux_external( |
| 196 | name = "linux", |
| Lorenz Brun | 4327e8f | 2023-12-21 16:01:54 +0100 | [diff] [blame] | 197 | version = "6.1.69", |
| Lorenz Brun | 7b5d994 | 2020-03-19 16:14:02 +0100 | [diff] [blame] | 198 | ) |
| Leopold Schabel | 5c80aca | 2019-10-22 15:48:58 +0200 | [diff] [blame] | 199 | |
| Lorenz Brun | 17c4c8b | 2022-02-01 12:59:47 +0100 | [diff] [blame] | 200 | load("//third_party/linux-firmware:external.bzl", "linux_firmware_external") |
| 201 | |
| 202 | linux_firmware_external( |
| 203 | name = "linux-firmware", |
| Lorenz Brun | 60efa44 | 2023-12-21 15:52:53 +0100 | [diff] [blame] | 204 | version = "20231211", |
| Lorenz Brun | 17c4c8b | 2022-02-01 12:59:47 +0100 | [diff] [blame] | 205 | ) |
| 206 | |
| Lorenz Brun | 80deba5 | 2022-02-24 17:07:13 +0100 | [diff] [blame] | 207 | load("//third_party/intel_ucode:external.bzl", "intel_ucode_external") |
| 208 | |
| 209 | intel_ucode_external( |
| 210 | name = "intel_ucode", |
| Lorenz Brun | 087152b | 2023-12-21 16:04:24 +0100 | [diff] [blame] | 211 | version = "20231114", |
| Lorenz Brun | 80deba5 | 2022-02-24 17:07:13 +0100 | [diff] [blame] | 212 | ) |
| 213 | |
| Serge Bazanski | 2fb13a8 | 2020-02-11 12:41:37 +0100 | [diff] [blame] | 214 | load("//third_party/edk2:external.bzl", "edk2_external") |
| Lorenz Brun | 7b5d994 | 2020-03-19 16:14:02 +0100 | [diff] [blame] | 215 | |
| 216 | edk2_external(name = "edk2") |
| Leopold Schabel | 5c80aca | 2019-10-22 15:48:58 +0200 | [diff] [blame] | 217 | |
| Serge Bazanski | 2fb13a8 | 2020-02-11 12:41:37 +0100 | [diff] [blame] | 218 | load("//third_party/musl:external.bzl", "musl_external") |
| Lorenz Brun | 7b5d994 | 2020-03-19 16:14:02 +0100 | [diff] [blame] | 219 | |
| 220 | musl_external( |
| 221 | name = "musl", |
| 222 | version = "1.1.24", |
| 223 | ) |
| Leopold Schabel | 5c80aca | 2019-10-22 15:48:58 +0200 | [diff] [blame] | 224 | |
| Serge Bazanski | 2fb13a8 | 2020-02-11 12:41:37 +0100 | [diff] [blame] | 225 | load("//third_party/util-linux:external.bzl", "util_linux_external") |
| Lorenz Brun | 7b5d994 | 2020-03-19 16:14:02 +0100 | [diff] [blame] | 226 | |
| 227 | util_linux_external( |
| 228 | name = "util_linux", |
| Lorenz Brun | ddd6caf | 2021-03-04 17:16:04 +0100 | [diff] [blame] | 229 | version = "2.36.2", |
| Lorenz Brun | 7b5d994 | 2020-03-19 16:14:02 +0100 | [diff] [blame] | 230 | ) |
| Leopold Schabel | 5c80aca | 2019-10-22 15:48:58 +0200 | [diff] [blame] | 231 | |
| Serge Bazanski | 2fb13a8 | 2020-02-11 12:41:37 +0100 | [diff] [blame] | 232 | load("//third_party/xfsprogs:external.bzl", "xfsprogs_external") |
| Lorenz Brun | 7b5d994 | 2020-03-19 16:14:02 +0100 | [diff] [blame] | 233 | |
| 234 | xfsprogs_external( |
| 235 | name = "xfsprogs", |
| Lorenz Brun | ddd6caf | 2021-03-04 17:16:04 +0100 | [diff] [blame] | 236 | version = "5.10.0", |
| Lorenz Brun | 7b5d994 | 2020-03-19 16:14:02 +0100 | [diff] [blame] | 237 | ) |
| Lorenz Brun | 6c39ea1 | 2019-11-04 11:39:42 +0100 | [diff] [blame] | 238 | |
| Lorenz Brun | 0de1893 | 2021-03-11 00:36:48 +0100 | [diff] [blame] | 239 | load("//third_party/pixman:external.bzl", "pixman_external") |
| 240 | |
| 241 | pixman_external( |
| 242 | name = "pixman", |
| 243 | version = "0.40.0", |
| 244 | ) |
| 245 | |
| 246 | load("//third_party/uring:external.bzl", "uring_external") |
| 247 | |
| 248 | uring_external( |
| 249 | name = "uring", |
| 250 | version = "2.0", |
| 251 | ) |
| 252 | |
| 253 | load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository") |
| 254 | |
| 255 | git_repository( |
| 256 | name = "gperf", |
| 257 | commit = "de9373c2d48a3edf29862eb8be44764a7f7d24c6", |
| Leopold Schabel | 57a9d3e | 2021-04-01 17:31:48 +0200 | [diff] [blame] | 258 | remote = "https://github.com/monogon-dev/gperf.git", |
| Lorenz Brun | 0de1893 | 2021-03-11 00:36:48 +0100 | [diff] [blame] | 259 | shallow_since = "1615306886 +0100", |
| 260 | ) |
| 261 | |
| 262 | load("//third_party/seccomp:external.bzl", "seccomp_external") |
| 263 | |
| 264 | seccomp_external( |
| 265 | name = "seccomp", |
| 266 | version = "2.5.1", |
| 267 | ) |
| 268 | |
| 269 | load("//third_party/glib:external.bzl", "glib_external") |
| 270 | |
| 271 | glib_external( |
| 272 | name = "glib", |
| 273 | version = "2.67.5", |
| 274 | ) |
| 275 | |
| 276 | load("//third_party/qemu:external.bzl", "qemu_external") |
| 277 | |
| 278 | qemu_external( |
| 279 | name = "qemu", |
| 280 | version = "5.2.0", |
| 281 | ) |
| 282 | |
| Serge Bazanski | 8ff4b7c | 2021-08-17 19:21:18 +0200 | [diff] [blame] | 283 | load("//third_party/chrony:external.bzl", "chrony_external") |
| 284 | |
| 285 | chrony_external( |
| 286 | name = "chrony", |
| 287 | ) |
| 288 | |
| Lorenz Brun | 40025ff | 2021-08-31 13:06:02 +0200 | [diff] [blame] | 289 | load("//third_party/cap:external.bzl", "cap_external") |
| 290 | |
| 291 | cap_external( |
| 292 | name = "cap", |
| 293 | version = "1.2.55", |
| 294 | ) |
| 295 | |
| Lorenz Brun | 296bde2 | 2021-09-28 15:04:40 +0200 | [diff] [blame] | 296 | load("//third_party/gnuefi:external.bzl", "gnuefi_external") |
| 297 | |
| 298 | gnuefi_external( |
| 299 | name = "gnuefi", |
| 300 | version = "3.0.14", |
| 301 | ) |
| 302 | |
| Lorenz Brun | 5d40c67 | 2021-09-28 15:06:37 +0200 | [diff] [blame] | 303 | load("//third_party/efistub:external.bzl", "efistub_external") |
| 304 | |
| 305 | efistub_external( |
| 306 | name = "efistub", |
| 307 | # Developed in the systemd monorepo, pinned to master as there have been a bunch of critical fixes for the |
| 308 | # EFI stub since 249. |
| 309 | version = "3542da2442d8b29661b47c42ad7e5fa9bc8562ec", |
| 310 | ) |
| 311 | |
| Serge Bazanski | 46e72ab | 2022-09-05 15:13:22 +0200 | [diff] [blame] | 312 | load("//third_party/libpg_query:external.bzl", "libpg_query_external") |
| Tim Windelschmidt | f83f503 | 2023-07-04 14:59:14 +0200 | [diff] [blame] | 313 | |
| Serge Bazanski | 46e72ab | 2022-09-05 15:13:22 +0200 | [diff] [blame] | 314 | libpg_query_external( |
| 315 | name = "libpg_query", |
| Tim Windelschmidt | 3fdaeac | 2023-11-13 23:33:07 +0100 | [diff] [blame] | 316 | version = "15-4.2.3", |
| Serge Bazanski | 46e72ab | 2022-09-05 15:13:22 +0200 | [diff] [blame] | 317 | ) |
| 318 | |
| Serge Bazanski | bb7db92 | 2020-04-30 12:43:10 +0200 | [diff] [blame] | 319 | register_toolchains("//:host_python") |
| Lorenz Brun | 7b5d994 | 2020-03-19 16:14:02 +0100 | [diff] [blame] | 320 | |
| Serge Bazanski | bb7db92 | 2020-04-30 12:43:10 +0200 | [diff] [blame] | 321 | # same for gvisor/rules_docker. |
| 322 | |
| 323 | http_archive( |
| 324 | name = "io_bazel_rules_docker", |
| Tim Windelschmidt | ca4bbee | 2023-03-30 17:15:59 +0200 | [diff] [blame] | 325 | sha256 = "b1e80761a8a8243d03ebca8845e9cc1ba6c82ce7c5179ce2b295cd36f7e394bf", |
| 326 | urls = ["https://github.com/bazelbuild/rules_docker/releases/download/v0.25.0/rules_docker-v0.25.0.tar.gz"], |
| Serge Bazanski | bb7db92 | 2020-04-30 12:43:10 +0200 | [diff] [blame] | 327 | ) |
| Lorenz Brun | c88c82d | 2020-05-08 14:35:04 +0200 | [diff] [blame] | 328 | |
| Lorenz Brun | 8b0431a | 2020-07-13 16:56:36 +0200 | [diff] [blame] | 329 | load( |
| 330 | "@io_bazel_rules_docker//repositories:repositories.bzl", |
| 331 | container_repositories = "repositories", |
| 332 | ) |
| 333 | |
| 334 | container_repositories() |
| 335 | |
| 336 | load( |
| 337 | "@io_bazel_rules_docker//go:image.bzl", |
| 338 | go_image_repos = "repositories", |
| 339 | ) |
| 340 | |
| 341 | go_image_repos() |
| 342 | |
| Lorenz Brun | c88c82d | 2020-05-08 14:35:04 +0200 | [diff] [blame] | 343 | # Derived from Mozilla NSS, currently needed for containerd to be able to pull images |
| 344 | http_file( |
| 345 | name = "cacerts", |
| Lorenz Brun | 7da4d3c | 2023-03-27 17:38:47 +0200 | [diff] [blame] | 346 | sha256 = "fb1ecd641d0a02c01bc9036d513cb658bbda62a75e246bedbc01764560a639f0", |
| 347 | urls = ["https://curl.se/ca/cacert-2023-01-10.pem"], |
| Lorenz Brun | c88c82d | 2020-05-08 14:35:04 +0200 | [diff] [blame] | 348 | ) |
| Serge Bazanski | 140bddc | 2020-06-05 21:01:19 +0200 | [diff] [blame] | 349 | |
| 350 | # lz4, the library and the tool. |
| 351 | http_archive( |
| 352 | name = "com_github_lz4_lz4", |
| 353 | patch_args = ["-p1"], |
| 354 | patches = ["//third_party/lz4:build.patch"], |
| 355 | sha256 = "658ba6191fa44c92280d4aa2c271b0f4fbc0e34d249578dd05e50e76d0e5efcc", |
| 356 | strip_prefix = "lz4-1.9.2", |
| 357 | urls = ["https://github.com/lz4/lz4/archive/v1.9.2.tar.gz"], |
| 358 | ) |
| Lorenz Brun | 2e30e88 | 2020-06-24 15:17:29 +0200 | [diff] [blame] | 359 | |
| Lorenz Brun | ddd6caf | 2021-03-04 17:16:04 +0100 | [diff] [blame] | 360 | # ini.h, a tiny ini parser library |
| 361 | http_archive( |
| 362 | name = "inih", |
| 363 | build_file = "@//third_party/inih:inih.bzl", |
| 364 | sha256 = "01b0366fdfdf6363efc070c2f856f1afa33e7a6546548bada5456ad94a516241", |
| 365 | strip_prefix = "inih-r53", |
| 366 | urls = ["https://github.com/benhoyt/inih/archive/r53.tar.gz"], |
| 367 | ) |
| 368 | |
| Lorenz Brun | 2e30e88 | 2020-06-24 15:17:29 +0200 | [diff] [blame] | 369 | # qboot bootloader for MicroVMs |
| 370 | http_archive( |
| 371 | name = "com_github_bonzini_qboot", |
| 372 | build_file = "//third_party/qboot:qboot.bzl", |
| 373 | sha256 = "a643b2486fbee57b969659d408984094ca9afa1a048317dd3f5d3022e47213e8", |
| 374 | strip_prefix = "qboot-a5300c4949b8d4de2d34bedfaed66793f48ec948", |
| 375 | urls = ["https://github.com/bonzini/qboot/archive/a5300c4949b8d4de2d34bedfaed66793f48ec948.tar.gz"], |
| 376 | ) |
| Serge Bazanski | 9e861a8 | 2020-09-16 13:46:41 +0200 | [diff] [blame] | 377 | |
| Lorenz Brun | 073a1c5 | 2022-08-02 11:36:36 +0000 | [diff] [blame] | 378 | load("//third_party/dosfstools:external.bzl", "dosfstools_external") |
| 379 | |
| 380 | dosfstools_external( |
| 381 | name = "com_github_dosfstools_dosfstools", |
| 382 | version = "c888797b1d84ffbb949f147e3116e8bfb2e145a7", |
| 383 | ) |
| 384 | |
| Serge Bazanski | 662b5b3 | 2020-12-21 13:49:00 +0100 | [diff] [blame] | 385 | # Load musl toolchain Metropolis sysroot tarball into external repository. |
| Serge Bazanski | 9e861a8 | 2020-09-16 13:46:41 +0200 | [diff] [blame] | 386 | load("//build/toolchain/musl-host-gcc:sysroot.bzl", "musl_sysroot_repositories") |
| Lorenz Brun | 2073ce3 | 2021-02-03 18:52:59 +0100 | [diff] [blame] | 387 | |
| Serge Bazanski | 9e861a8 | 2020-09-16 13:46:41 +0200 | [diff] [blame] | 388 | musl_sysroot_repositories() |
| Serge Bazanski | 1e9d7d8 | 2022-09-15 18:45:44 +0200 | [diff] [blame] | 389 | |
| 390 | # CockroachDB binary used for tests. |
| 391 | # |
| 392 | # WARNING: Not distributed under an OSI certified license. Must only be used in |
| 393 | # tests, not be redistributed! |
| 394 | http_archive( |
| 395 | name = "cockroach", |
| Serge Bazanski | 1e9d7d8 | 2022-09-15 18:45:44 +0200 | [diff] [blame] | 396 | build_file_content = """ |
| 397 | exports_files([ |
| 398 | "cockroach" |
| 399 | ]) |
| 400 | """, |
| Tim Windelschmidt | f83f503 | 2023-07-04 14:59:14 +0200 | [diff] [blame] | 401 | sha256 = "0821cff5770400fb94c8b6c2ab338d96f4114fbf2b3206bc8a6dcf62f9c0f4ea", |
| 402 | strip_prefix = "cockroach-v22.1.6.linux-amd64", |
| 403 | urls = [ |
| 404 | # TODO: select() to pick other host architectures. |
| 405 | "https://binaries.cockroachdb.com/cockroach-v22.1.6.linux-amd64.tgz", |
| 406 | ], |
| Serge Bazanski | 1e9d7d8 | 2022-09-15 18:45:44 +0200 | [diff] [blame] | 407 | ) |
| Leopold | be326c2 | 2023-01-04 20:42:59 +0100 | [diff] [blame] | 408 | |
| 409 | # bazeldnf is used to generate our sandbox root. |
| Tim Windelschmidt | a5588e1 | 2023-09-20 19:43:15 +0200 | [diff] [blame] | 410 | load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") |
| 411 | |
| Leopold | be326c2 | 2023-01-04 20:42:59 +0100 | [diff] [blame] | 412 | http_archive( |
| 413 | name = "bazeldnf", |
| Tim Windelschmidt | 37dbb94 | 2023-11-13 16:06:18 +0100 | [diff] [blame] | 414 | sha256 = "cd75fbbad6f191c26b036132d57ca731cce067e9330306a8a2beb3e51af991a8", |
| Leopold | be326c2 | 2023-01-04 20:42:59 +0100 | [diff] [blame] | 415 | urls = [ |
| Tim Windelschmidt | 37dbb94 | 2023-11-13 16:06:18 +0100 | [diff] [blame] | 416 | "https://github.com/rmohr/bazeldnf/releases/download/v0.5.8/bazeldnf-v0.5.8.tar.gz", |
| Leopold | be326c2 | 2023-01-04 20:42:59 +0100 | [diff] [blame] | 417 | ], |
| 418 | ) |
| 419 | |
| Tim Windelschmidt | a5588e1 | 2023-09-20 19:43:15 +0200 | [diff] [blame] | 420 | load("@bazeldnf//:deps.bzl", "bazeldnf_dependencies") |
| Leopold | be326c2 | 2023-01-04 20:42:59 +0100 | [diff] [blame] | 421 | |
| 422 | bazeldnf_dependencies() |
| Leopold | 7fbf104 | 2023-01-06 19:57:37 +0100 | [diff] [blame] | 423 | |
| 424 | load("//third_party/sandboxroot:repositories.bzl", "sandbox_dependencies") |
| 425 | |
| 426 | sandbox_dependencies() |
| Lorenz Brun | 2d284b5 | 2023-03-08 17:05:12 +0100 | [diff] [blame] | 427 | |
| 428 | # Used by tests in cloud/takeover |
| 429 | http_file( |
| 430 | name = "debian_11_cloudimage", |
| 431 | sha256 = "14caeec68ba3129a115a9b57396d08dc0973cc9f569ce049232d7d15d768ad41", |
| 432 | urls = [ |
| 433 | "https://cloud.debian.org/images/cloud/bullseye/20230124-1270/debian-11-genericcloud-amd64-20230124-1270.qcow2", |
| 434 | ], |
| Serge Bazanski | 213d90c | 2023-04-19 17:42:06 +0200 | [diff] [blame] | 435 | ) |