@@ -4,19 +4,49 @@ load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
44
55def p4_constraints_deps ():
66 """Sets up 3rd party workspaces needed to compile p4_constraints."""
7+ if not native .existing_rule ("com_github_nelhage_rules_boost" ):
8+ # This version includes the fix for boost failures due to the xz library issue.
9+ http_archive (
10+ name = "com_github_nelhage_rules_boost" ,
11+ url = "https://github.com/nelhage/rules_boost/archive/5160325dbdc8c9e499f9d9917d913f35f1785d52.zip" ,
12+ strip_prefix = "rules_boost-5160325dbdc8c9e499f9d9917d913f35f1785d52" ,
13+ sha256 = "feb4b1294684c79df7c1e08f1aec5da0da52021e33db59c88edbe86b4d1a017a" ,
14+ patch_args = ["-p1" ],
15+ patches = [
16+ "@com_google_gutil//:bazel/patches/boost-001-temp_fix_for_build_failure.patch" ,
17+ ],
18+ )
19+ if not native .existing_rule ("com_github_grpc_grpc" ):
20+ http_archive (
21+ name = "com_github_grpc_grpc" ,
22+ url = "https://github.com/grpc/grpc/archive/v1.63.0.zip" ,
23+ strip_prefix = "grpc-1.63.0" ,
24+ sha256 = "daa1b06a19b5f7e4603e1f8980eeab43cf69b6e89bee3b2547f275fa5af7f480" ,
25+ patch_args = ["-p1" ],
26+ patches = [
27+ "@com_google_gutil//:bazel/patches/grpc-003-fix_go_gazelle_register_toolchain.patch" ,
28+ ],
29+ )
730 if not native .existing_rule ("com_google_absl" ):
831 http_archive (
932 name = "com_google_absl" ,
1033 urls = ["https://github.com/abseil/abseil-cpp/releases/download/20240722.0/abseil-cpp-20240722.0.tar.gz" ],
1134 strip_prefix = "abseil-cpp-20240722.0" ,
1235 )
36+ if not native .existing_rule ("com_google_googleapis" ):
37+ http_archive (
38+ name = "com_google_googleapis" ,
39+ url = "https://github.com/googleapis/googleapis/archive/f405c718d60484124808adb7fb5963974d654bb4.zip" ,
40+ strip_prefix = "googleapis-f405c718d60484124808adb7fb5963974d654bb4" ,
41+ sha256 = "406b64643eede84ce3e0821a1d01f66eaf6254e79cb9c4f53be9054551935e79" ,
42+ )
1343 if not native .existing_rule ("com_google_gutil" ):
1444 http_archive (
1545 name = "com_google_gutil" ,
16- # Newest commit on main as of 2025-05-14 .
17- url = "https://github.com/google/gutil/archive/d2f1bdd819287c3951adaba5ea6e5426d2eefff1 .zip" ,
18- strip_prefix = "gutil-d2f1bdd819287c3951adaba5ea6e5426d2eefff1 " ,
19- sha256 = "033bcab2835a0aea0427d38503f5ae2bd478af134ab8f3e75b65d2cd444ac8ca " ,
46+ # Newest commit on main as of 2025-07-01 .
47+ url = "https://github.com/google/gutil/archive/4904fcbed388703c581ddcac529e574785386769 .zip" ,
48+ strip_prefix = "gutil-4904fcbed388703c581ddcac529e574785386769 " ,
49+ sha256 = "ead4303a3e155149bca23c6ad503a42f664ebce07ffec86f04685b27d4109879 " ,
2050 )
2151 if not native .existing_rule ("com_google_googletest" ):
2252 http_archive (
@@ -27,9 +57,8 @@ def p4_constraints_deps():
2757 if not native .existing_rule ("com_google_protobuf" ):
2858 http_archive (
2959 name = "com_google_protobuf" ,
30- url = "https://github.com/protocolbuffers/protobuf/archive/refs/tags/v25.2.zip" ,
31- strip_prefix = "protobuf-25.2" ,
32- sha256 = "ddd0f5271f31b549efc74eb39061e142132653d5d043071fcec265bd571e73c4" ,
60+ url = "https://github.com/protocolbuffers/protobuf/releases/download/v29.1/protobuf-29.1.tar.gz" ,
61+ strip_prefix = "protobuf-29.1" ,
3362 )
3463 if not native .existing_rule ("com_googlesource_code_re2" ):
3564 http_archive (
@@ -40,22 +69,25 @@ def p4_constraints_deps():
4069 if not native .existing_rule ("rules_proto" ):
4170 http_archive (
4271 name = "rules_proto" ,
43- url = "https://github.com/bazelbuild/rules_proto/archive/5.3.0-21.7.tar.gz " ,
44- strip_prefix = "rules_proto-5.3.0-21.7 " ,
45- sha256 = "dc3fb206a2cb3441b485eb1e423165b231235a1ea9b031b4433cf7bc1fa460dd " ,
72+ sha256 = "0e5c64a2599a6e26c6a03d6162242d231ecc0de219534c38cb4402171def21e8 " ,
73+ strip_prefix = "rules_proto-7.0.2 " ,
74+ url = "https://github.com/bazelbuild/rules_proto/releases/download/7.0.2/rules_proto-7.0.2.tar.gz " ,
4675 )
4776 if not native .existing_rule ("com_github_p4lang_p4runtime" ):
4877 http_archive (
4978 name = "com_github_p4lang_p4runtime" ,
50- urls = ["https://github.com/p4lang/p4runtime/archive/970cbdc1d8663356214d33e3ba213cb91676b491.tar.gz" ],
51- strip_prefix = "p4runtime-970cbdc1d8663356214d33e3ba213cb91676b491/proto" ,
79+ # Newest commit on main as of 2025-05-09.
80+ urls = ["https://github.com/p4lang/p4runtime/archive/baaf39325ceabd89b04b0d03226b6f13fc9eca29.zip" ],
81+ strip_prefix = "p4runtime-baaf39325ceabd89b04b0d03226b6f13fc9eca29/proto" ,
82+ sha256 = "8b71b8a9e59c3ee7d99653e394afc44a0bfc6437dec14df619d5e1f766f129c6" ,
5283 )
5384 if not native .existing_rule ("com_github_p4lang_p4c" ):
5485 http_archive (
5586 name = "com_github_p4lang_p4c" ,
56- # Newest commit on main on 2021-12-07.
57- url = "https://github.com/p4lang/p4c/archive/80629201abb61d9172639fefc7bb5b9d6007db08.zip" ,
58- strip_prefix = "p4c-80629201abb61d9172639fefc7bb5b9d6007db08" ,
87+ # Newest commit on main on 2024-08-01.
88+ url = "https://github.com/p4lang/p4c/archive/44dbcda9c7e3d26d24baadb884b31b32d215edef.zip" ,
89+ strip_prefix = "p4c-44dbcda9c7e3d26d24baadb884b31b32d215edef" ,
90+ sha256 = "ae4d53d0fd41572c38b03e881a8e2d2e472df246f75d6a64555f9ff1b656b574" ,
5991 )
6092 if not native .existing_rule ("com_github_z3prover_z3" ):
6193 http_archive (
0 commit comments