@@ -57,6 +57,7 @@ bazel_dep(name = "platforms", version = "1.1.0")
5757bazel_dep (name = "protobuf" , version = "34.0.bcr.1" , repo_name = "com_google_protobuf" )
5858bazel_dep (name = "rules_cc" , version = "0.2.8" )
5959bazel_dep (name = "rules_proto" , version = "7.1.0" )
60+ bazel_dep (name = "rules_python" , version = "1.6.3" )
6061bazel_dep (name = "llvm" , version = "0.7.7" )
6162bazel_dep (name = "aspect_tools_telemetry" , version = "0.3.3" )
6263
@@ -97,6 +98,19 @@ crate.from_cargo(
9798 "x86_64-pc-windows-msvc" ,
9899 ],
99100)
101+ crate .from_cargo (
102+ name = "rpyo3c" ,
103+ cargo_lock = "//rs/private/pyo3:Cargo.lock" ,
104+ cargo_toml = "//rs/private/pyo3:Cargo.toml" ,
105+ platform_triples = [
106+ "aarch64-apple-darwin" ,
107+ "aarch64-pc-windows-msvc" ,
108+ "aarch64-unknown-linux-gnu" ,
109+ "x86_64-apple-darwin" ,
110+ "x86_64-pc-windows-msvc" ,
111+ "x86_64-unknown-linux-gnu" ,
112+ ],
113+ )
100114crate .annotation (
101115 crate = "protoc-gen-prost" ,
102116 gen_binaries = ["protoc-gen-prost" ],
@@ -105,11 +119,45 @@ crate.annotation(
105119 crate = "protoc-gen-tonic" ,
106120 gen_binaries = ["protoc-gen-tonic" ],
107121)
122+ crate .annotation (
123+ build_script_data = [
124+ "@rules_rust//extensions/pyo3:current_pyo3_toolchain" ,
125+ ],
126+ build_script_env = {
127+ "PYO3_CROSS" : "$(PYO3_CROSS)" ,
128+ "PYO3_CROSS_LIB_DIR" : "$(PYO3_CROSS_LIB_DIR)" ,
129+ "PYO3_CROSS_PYTHON_IMPLEMENTATION" : "$(PYO3_CROSS_PYTHON_IMPLEMENTATION)" ,
130+ "PYO3_CROSS_PYTHON_VERSION" : "$(PYO3_CROSS_PYTHON_VERSION)" ,
131+ "PYO3_NO_PYTHON" : "$(PYO3_NO_PYTHON)" ,
132+ "PYO3_PYTHON" : "$(PYO3_PYTHON)" ,
133+ },
134+ build_script_toolchains = [
135+ "@rules_rust//extensions/pyo3:current_pyo3_toolchain" ,
136+ ],
137+ crate = "pyo3-build-config" ,
138+ patch_args = ["-p1" ],
139+ patches = ["@rules_rust//extensions/pyo3/3rdparty/patches:resolve_cross_compile_config_path.patch" ],
140+ )
141+ crate .annotation (
142+ build_script_data = [
143+ "@rules_rust//extensions/pyo3:current_pyo3_toolchain" ,
144+ ],
145+ build_script_env = {
146+ "PYO3_CROSS" : "$(PYO3_CROSS)" ,
147+ "PYO3_CROSS_LIB_DIR" : "$(PYO3_CROSS_LIB_DIR)" ,
148+ "PYO3_CROSS_PYTHON_IMPLEMENTATION" : "$(PYO3_CROSS_PYTHON_IMPLEMENTATION)" ,
149+ "PYO3_CROSS_PYTHON_VERSION" : "$(PYO3_CROSS_PYTHON_VERSION)" ,
150+ "PYO3_NO_PYTHON" : "$(PYO3_NO_PYTHON)" ,
151+ "PYO3_PYTHON" : "$(PYO3_PYTHON)" ,
152+ },
153+ build_script_toolchains = [
154+ "@rules_rust//extensions/pyo3:current_pyo3_toolchain" ,
155+ ],
156+ crate = "pyo3-ffi" ,
157+ )
108158use_repo (crate , "rrra" )
109159use_repo (crate , "rrprd" )
110-
111- rules_rust_prost = use_extension ("//rs:rules_rust_prost.bzl" , "rules_rust_prost" )
112- use_repo (rules_rust_prost , "rules_rust_prost" )
160+ use_repo (crate , "rpyo3c" )
113161
114162bazel_dep (name = "rules_go" , version = "0.59.0" , dev_dependency = True )
115163bazel_dep (name = "gazelle" , version = "0.47.0" , dev_dependency = True )
@@ -121,6 +169,13 @@ register_toolchains(
121169 dev_dependency = True ,
122170)
123171
172+ register_toolchains (
173+ "@rules_rust//extensions/prost:default_prost_toolchain" ,
174+ "@rules_rust//extensions/pyo3/toolchains:rust_toolchain" ,
175+ "@rules_rust//extensions/pyo3/toolchains:toolchain" ,
176+ dev_dependency = True ,
177+ )
178+
124179register_toolchains (
125180 "@llvm//toolchain:all" ,
126181 dev_dependency = True ,
0 commit comments