Jakob Buchgraber | 699c0eb | 2017-09-05 17:15:10 +0200 | [diff] [blame] | 1 | workspace(name = "com_google_protobuf") |
Cody Schroeder | 802d543 | 2018-12-11 11:58:26 -0800 | [diff] [blame] | 2 | |
Protobuf Team Bot | da7245c | 2023-11-02 13:53:44 -0700 | [diff] [blame] | 3 | # An explicit self-reference to work around changes in Bazel 7.0 |
| 4 | # See https://github.com/bazelbuild/bazel/issues/19973#issuecomment-1787814450 |
| 5 | # buildifier: disable=duplicated-name |
| 6 | local_repository(name = "com_google_protobuf", path = ".") |
| 7 | |
Yannic | 2e51ad6 | 2020-03-03 00:15:22 +0100 | [diff] [blame] | 8 | load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") |
| 9 | |
Yannic Bonenberger | bf0c69e | 2019-07-26 13:14:19 +0200 | [diff] [blame] | 10 | local_repository( |
| 11 | name = "com_google_protobuf_examples", |
| 12 | path = "examples", |
| 13 | ) |
| 14 | |
Deanna Garcia | 99529a2 | 2023-05-02 11:18:25 -0700 | [diff] [blame] | 15 | # Load common dependencies first to ensure we use the correct version |
| 16 | load("//:protobuf_deps.bzl", "PROTOBUF_MAVEN_ARTIFACTS", "protobuf_deps") |
Jason Lunn | 456dec4 | 2023-07-12 15:16:41 -0700 | [diff] [blame] | 17 | |
Deanna Garcia | 99529a2 | 2023-05-02 11:18:25 -0700 | [diff] [blame] | 18 | protobuf_deps() |
| 19 | |
Adam Cozzette | f247630 | 2023-11-06 16:10:42 -0800 | [diff] [blame] | 20 | load("@rules_python//python:repositories.bzl", "py_repositories") |
| 21 | |
| 22 | py_repositories() |
| 23 | |
Mike Kruskal | 2eea38e | 2022-08-22 14:39:03 -0700 | [diff] [blame] | 24 | # Bazel platform rules. |
| 25 | http_archive( |
| 26 | name = "platforms", |
Keith Smiley | 6f98007 | 2023-08-30 08:23:00 -0700 | [diff] [blame] | 27 | urls = [ |
| 28 | "https://mirror.bazel.build/github.com/bazelbuild/platforms/releases/download/0.0.7/platforms-0.0.7.tar.gz", |
| 29 | "https://github.com/bazelbuild/platforms/releases/download/0.0.7/platforms-0.0.7.tar.gz", |
| 30 | ], |
| 31 | sha256 = "3a561c99e7bdbe9173aa653fd579fe849f1d8d67395780ab4770b1f381431d51", |
Mike Kruskal | 2eea38e | 2022-08-22 14:39:03 -0700 | [diff] [blame] | 32 | ) |
| 33 | |
Deanna Garcia | 244b245 | 2023-03-16 13:50:11 -0700 | [diff] [blame] | 34 | http_archive( |
| 35 | name = "com_google_googletest", |
| 36 | sha256 = "730215d76eace9dd49bf74ce044e8daa065d175f1ac891cc1d6bb184ef94e565", |
| 37 | strip_prefix = "googletest-f53219cdcb7b084ef57414efea92ee5b71989558", |
| 38 | urls = [ |
| 39 | "https://github.com/google/googletest/archive/f53219cdcb7b084ef57414efea92ee5b71989558.tar.gz" # 2023-03-16 |
| 40 | ], |
| 41 | ) |
| 42 | |
| 43 | load("@com_google_googletest//:googletest_deps.bzl", "googletest_deps") |
| 44 | |
| 45 | googletest_deps() |
| 46 | |
deannagarcia | 5b27b4f | 2023-01-19 15:10:20 -0800 | [diff] [blame] | 47 | load("@rules_jvm_external//:repositories.bzl", "rules_jvm_external_deps") |
| 48 | |
| 49 | rules_jvm_external_deps() |
| 50 | |
| 51 | load("@rules_jvm_external//:setup.bzl", "rules_jvm_external_setup") |
| 52 | |
| 53 | rules_jvm_external_setup() |
| 54 | |
Derek Perez | bc45f92 | 2021-04-20 11:36:32 -0700 | [diff] [blame] | 55 | load("@rules_jvm_external//:defs.bzl", "maven_install") |
Adam Cozzette | 454f0cc | 2021-10-12 15:37:40 -0700 | [diff] [blame] | 56 | |
Adam Cozzette | c7dfd0d | 2021-10-28 10:34:54 -0700 | [diff] [blame] | 57 | maven_install( |
| 58 | artifacts = PROTOBUF_MAVEN_ARTIFACTS, |
| 59 | # For updating instructions, see: |
| 60 | # https://github.com/bazelbuild/rules_jvm_external#updating-maven_installjson |
| 61 | maven_install_json = "//:maven_install.json", |
Derek Perez | bc45f92 | 2021-04-20 11:36:32 -0700 | [diff] [blame] | 62 | repositories = [ |
Jingwen Chen | 51d9876 | 2019-12-02 12:35:00 -0500 | [diff] [blame] | 63 | "https://repo1.maven.org/maven2", |
Derek Perez | 87d140f | 2021-04-22 12:12:41 -0700 | [diff] [blame] | 64 | "https://repo.maven.apache.org/maven2", |
Jingwen Chen | 51d9876 | 2019-12-02 12:35:00 -0500 | [diff] [blame] | 65 | ], |
Steven Parkes | a9244ca | 2016-03-10 17:50:25 -0800 | [diff] [blame] | 66 | ) |
| 67 | |
Derek Perez | db8f725 | 2021-04-21 16:26:05 -0700 | [diff] [blame] | 68 | load("@maven//:defs.bzl", "pinned_maven_install") |
Adam Cozzette | c7dfd0d | 2021-10-28 10:34:54 -0700 | [diff] [blame] | 69 | |
Derek Perez | db8f725 | 2021-04-21 16:26:05 -0700 | [diff] [blame] | 70 | pinned_maven_install() |
| 71 | |
Derek Perez | 6168922 | 2021-04-21 18:05:18 -0700 | [diff] [blame] | 72 | # For `cc_proto_blacklist_test` and `build_test`. |
Yannic | 948740b | 2020-01-15 19:27:35 +0100 | [diff] [blame] | 73 | load("@bazel_skylib//:workspace.bzl", "bazel_skylib_workspace") |
Adam Cozzette | c7dfd0d | 2021-10-28 10:34:54 -0700 | [diff] [blame] | 74 | |
Yannic | 948740b | 2020-01-15 19:27:35 +0100 | [diff] [blame] | 75 | bazel_skylib_workspace() |
Derek Perez | 3a4d931 | 2021-11-04 22:57:29 +0000 | [diff] [blame] | 76 | |
| 77 | load("@rules_pkg//:deps.bzl", "rules_pkg_dependencies") |
Jason Lunn | 456dec4 | 2023-07-12 15:16:41 -0700 | [diff] [blame] | 78 | |
Derek Perez | 3a4d931 | 2021-11-04 22:57:29 +0000 | [diff] [blame] | 79 | rules_pkg_dependencies() |
Deanna Garcia | dfd99e7 | 2022-01-12 21:54:30 +0000 | [diff] [blame] | 80 | |
Mike Kruskal | 633e8f7 | 2023-01-03 12:11:31 -0800 | [diff] [blame] | 81 | load("@build_bazel_rules_apple//apple:repositories.bzl", "apple_rules_dependencies") |
Jason Lunn | 456dec4 | 2023-07-12 15:16:41 -0700 | [diff] [blame] | 82 | |
Mike Kruskal | 633e8f7 | 2023-01-03 12:11:31 -0800 | [diff] [blame] | 83 | apple_rules_dependencies() |
| 84 | |
Deanna Garcia | dfd99e7 | 2022-01-12 21:54:30 +0000 | [diff] [blame] | 85 | # For `kt_jvm_library` |
Deanna Garcia | dfd99e7 | 2022-01-12 21:54:30 +0000 | [diff] [blame] | 86 | load("@io_bazel_rules_kotlin//kotlin:repositories.bzl", "kotlin_repositories") |
Jason Lunn | 456dec4 | 2023-07-12 15:16:41 -0700 | [diff] [blame] | 87 | |
Deanna Garcia | dfd99e7 | 2022-01-12 21:54:30 +0000 | [diff] [blame] | 88 | kotlin_repositories() |
| 89 | |
| 90 | load("@io_bazel_rules_kotlin//kotlin:core.bzl", "kt_register_toolchains") |
Jason Lunn | 456dec4 | 2023-07-12 15:16:41 -0700 | [diff] [blame] | 91 | |
Deanna Garcia | dfd99e7 | 2022-01-12 21:54:30 +0000 | [diff] [blame] | 92 | kt_register_toolchains() |
Joshua Haberman | a6901f0 | 2022-04-25 22:00:57 +0000 | [diff] [blame] | 93 | |
Mike Kruskal | 633e8f7 | 2023-01-03 12:11:31 -0800 | [diff] [blame] | 94 | load("@rules_ruby//ruby:defs.bzl", "ruby_runtime") |
Jason Lunn | 456dec4 | 2023-07-12 15:16:41 -0700 | [diff] [blame] | 95 | |
Mike Kruskal | 633e8f7 | 2023-01-03 12:11:31 -0800 | [diff] [blame] | 96 | ruby_runtime("system_ruby") |
Jason Lunn | 456dec4 | 2023-07-12 15:16:41 -0700 | [diff] [blame] | 97 | |
Mike Kruskal | 633e8f7 | 2023-01-03 12:11:31 -0800 | [diff] [blame] | 98 | register_toolchains("@system_ruby//:toolchain") |
| 99 | |
Jason Lunn | 456dec4 | 2023-07-12 15:16:41 -0700 | [diff] [blame] | 100 | # Uncomment pairs of ruby_runtime() + register_toolchain() calls below to enable |
| 101 | # local JRuby testing. Do not submit the changes (due to impact on test duration |
| 102 | # for non JRuby builds due to downloading JRuby SDKs). |
| 103 | #ruby_runtime("jruby-9.2") |
| 104 | # |
| 105 | #register_toolchains("@jruby-9.2//:toolchain") |
| 106 | # |
| 107 | #ruby_runtime("jruby-9.3") |
| 108 | # |
| 109 | #register_toolchains("@jruby-9.3//:toolchain") |
| 110 | |
Mike Kruskal | 633e8f7 | 2023-01-03 12:11:31 -0800 | [diff] [blame] | 111 | load("@system_ruby//:bundle.bzl", "ruby_bundle") |
Jason Lunn | 456dec4 | 2023-07-12 15:16:41 -0700 | [diff] [blame] | 112 | |
Mike Kruskal | 633e8f7 | 2023-01-03 12:11:31 -0800 | [diff] [blame] | 113 | ruby_bundle( |
| 114 | name = "protobuf_bundle", |
| 115 | srcs = ["//ruby:google-protobuf.gemspec"], |
| 116 | gemfile = "//ruby:Gemfile", |
| 117 | ) |
| 118 | |
Adam Cozzette | 6841d11 | 2023-08-11 11:45:54 -0700 | [diff] [blame] | 119 | http_archive( |
| 120 | name = "lua", |
Adam Cozzette | 501ecec | 2023-09-26 14:36:20 -0700 | [diff] [blame] | 121 | build_file = "//bazel:lua.BUILD", |
Adam Cozzette | 6841d11 | 2023-08-11 11:45:54 -0700 | [diff] [blame] | 122 | sha256 = "b9e2e4aad6789b3b63a056d442f7b39f0ecfca3ae0f1fc0ae4e9614401b69f4b", |
| 123 | strip_prefix = "lua-5.2.4", |
| 124 | urls = [ |
| 125 | "https://mirror.bazel.build/www.lua.org/ftp/lua-5.2.4.tar.gz", |
| 126 | "https://www.lua.org/ftp/lua-5.2.4.tar.gz", |
| 127 | ], |
| 128 | ) |
| 129 | |
| 130 | http_archive( |
| 131 | name = "com_github_google_benchmark", |
| 132 | urls = ["https://github.com/google/benchmark/archive/0baacde3618ca617da95375e0af13ce1baadea47.zip"], |
| 133 | strip_prefix = "benchmark-0baacde3618ca617da95375e0af13ce1baadea47", |
| 134 | sha256 = "62e2f2e6d8a744d67e4bbc212fcfd06647080de4253c97ad5c6749e09faf2cb0", |
| 135 | ) |
| 136 | |
| 137 | http_archive( |
| 138 | name = "com_google_googleapis", |
| 139 | urls = ["https://github.com/googleapis/googleapis/archive/30ed2662a85403cbdeb9ea38df1e414a2a276b83.zip"], |
| 140 | strip_prefix = "googleapis-30ed2662a85403cbdeb9ea38df1e414a2a276b83", |
| 141 | sha256 = "4dfc28101127d22abd6f0f6308d915d490c4594c0cfcf7643769c446d6763a46", |
Adam Cozzette | 501ecec | 2023-09-26 14:36:20 -0700 | [diff] [blame] | 142 | build_file = "//benchmarks:BUILD.googleapis", |
Adam Cozzette | 6841d11 | 2023-08-11 11:45:54 -0700 | [diff] [blame] | 143 | patch_cmds = ["find google -type f -name BUILD.bazel -delete"], |
| 144 | ) |
| 145 | |
Adam Cozzette | 501ecec | 2023-09-26 14:36:20 -0700 | [diff] [blame] | 146 | load("//bazel:system_python.bzl", "system_python") |
Jason Lunn | 456dec4 | 2023-07-12 15:16:41 -0700 | [diff] [blame] | 147 | |
Mike Kruskal | 3bc5049 | 2022-12-01 13:34:12 -0800 | [diff] [blame] | 148 | system_python( |
| 149 | name = "system_python", |
| 150 | minimum_python_version = "3.7", |
| 151 | ) |
| 152 | |
| 153 | load("@system_python//:pip.bzl", "pip_parse") |
Jason Lunn | 456dec4 | 2023-07-12 15:16:41 -0700 | [diff] [blame] | 154 | |
Mike Kruskal | 3bc5049 | 2022-12-01 13:34:12 -0800 | [diff] [blame] | 155 | pip_parse( |
Jason Lunn | 456dec4 | 2023-07-12 15:16:41 -0700 | [diff] [blame] | 156 | name = "pip_deps", |
Adam Cozzette | 501ecec | 2023-09-26 14:36:20 -0700 | [diff] [blame] | 157 | requirements = "//python:requirements.txt", |
Mike Kruskal | 3bc5049 | 2022-12-01 13:34:12 -0800 | [diff] [blame] | 158 | ) |
| 159 | |
| 160 | load("@pip_deps//:requirements.bzl", "install_deps") |
Jason Lunn | 456dec4 | 2023-07-12 15:16:41 -0700 | [diff] [blame] | 161 | |
Mike Kruskal | 3bc5049 | 2022-12-01 13:34:12 -0800 | [diff] [blame] | 162 | install_deps() |
Mike Kruskal | ed5c57a | 2022-08-10 22:51:29 -0700 | [diff] [blame] | 163 | |
Mike Kruskal | 8dc14f6 | 2023-02-03 16:36:30 -0800 | [diff] [blame] | 164 | http_archive( |
| 165 | name = "rules_fuzzing", |
Adam Cozzette | f247630 | 2023-11-06 16:10:42 -0800 | [diff] [blame] | 166 | sha256 = "ff52ef4845ab00e95d29c02a9e32e9eff4e0a4c9c8a6bcf8407a2f19eb3f9190", |
| 167 | strip_prefix = "rules_fuzzing-0.4.1", |
| 168 | urls = ["https://github.com/bazelbuild/rules_fuzzing/releases/download/v0.4.1/rules_fuzzing-0.4.1.zip"], |
| 169 | patches = ["//third_party:rules_fuzzing.patch"], |
| 170 | patch_args = ["-p1"], |
Mike Kruskal | 8dc14f6 | 2023-02-03 16:36:30 -0800 | [diff] [blame] | 171 | ) |
| 172 | |
| 173 | load("@rules_fuzzing//fuzzing:repositories.bzl", "rules_fuzzing_dependencies") |
Jason Lunn | 456dec4 | 2023-07-12 15:16:41 -0700 | [diff] [blame] | 174 | |
Mike Kruskal | 8dc14f6 | 2023-02-03 16:36:30 -0800 | [diff] [blame] | 175 | rules_fuzzing_dependencies() |
| 176 | |
Adam Cozzette | f247630 | 2023-11-06 16:10:42 -0800 | [diff] [blame] | 177 | load("@rules_fuzzing//fuzzing:init.bzl", "rules_fuzzing_init") |
| 178 | |
| 179 | rules_fuzzing_init() |
| 180 | |
| 181 | load("@fuzzing_py_deps//:requirements.bzl", fuzzing_py_deps_install_deps = "install_deps") |
| 182 | |
| 183 | fuzzing_py_deps_install_deps() |
| 184 | |
Mike Kruskal | ed5c57a | 2022-08-10 22:51:29 -0700 | [diff] [blame] | 185 | bind( |
| 186 | name = "python_headers", |
Mike Kruskal | 3bc5049 | 2022-12-01 13:34:12 -0800 | [diff] [blame] | 187 | actual = "@system_python//:python_headers", |
Mike Kruskal | ed5c57a | 2022-08-10 22:51:29 -0700 | [diff] [blame] | 188 | ) |
Protobuf Team Bot | 89d6b74 | 2023-02-08 09:05:07 -0800 | [diff] [blame] | 189 | |
| 190 | http_archive( |
| 191 | name = "rules_rust", |
Krasimir Georgiev | 5eecee2 | 2023-10-20 09:35:03 -0700 | [diff] [blame] | 192 | sha256 = "9ecd0f2144f0a24e6bc71ebcc50a1ee5128cedeceb32187004532c9710cb2334", |
| 193 | urls = ["https://github.com/bazelbuild/rules_rust/releases/download/0.29.1/rules_rust-v0.29.1.tar.gz"], |
Protobuf Team Bot | 89d6b74 | 2023-02-08 09:05:07 -0800 | [diff] [blame] | 194 | ) |
| 195 | |
| 196 | load("@rules_rust//rust:repositories.bzl", "rules_rust_dependencies", "rust_register_toolchains") |
Jason Lunn | 456dec4 | 2023-07-12 15:16:41 -0700 | [diff] [blame] | 197 | |
Protobuf Team Bot | 89d6b74 | 2023-02-08 09:05:07 -0800 | [diff] [blame] | 198 | rules_rust_dependencies() |
Jason Lunn | 456dec4 | 2023-07-12 15:16:41 -0700 | [diff] [blame] | 199 | |
Marcel Hlopko | 3dc546d | 2023-03-06 14:09:46 -0800 | [diff] [blame] | 200 | rust_register_toolchains(edition = "2021") |
Hong Shin | 5e2f4fa | 2023-10-16 10:53:16 -0700 | [diff] [blame] | 201 | load("@rules_rust//crate_universe:defs.bzl", "crate", "crates_repository") |
| 202 | # to repin, invoke `CARGO_BAZEL_REPIN=1 bazel sync --only=crate_index` |
| 203 | crates_repository( |
| 204 | name = "crate_index", |
| 205 | cargo_lockfile = "//:Cargo.lock", |
| 206 | lockfile = "//:Cargo.bazel.lock", |
| 207 | packages = { |
| 208 | "googletest": crate.spec( |
| 209 | version = ">0.0.0", |
| 210 | ), |
Protobuf Team Bot | e1bb7d6 | 2023-10-17 14:15:37 -0700 | [diff] [blame] | 211 | "paste": crate.spec( |
| 212 | version = ">=1", |
| 213 | ), |
Hong Shin | 5e2f4fa | 2023-10-16 10:53:16 -0700 | [diff] [blame] | 214 | }, |
| 215 | ) |
| 216 | |
| 217 | load("@crate_index//:defs.bzl", "crate_repositories") |
| 218 | crate_repositories() |