36 lines
1.4 KiB
Rust
36 lines
1.4 KiB
Rust
fn main() -> Result<(), Box<dyn std::error::Error>> {
|
|
// NOTE: Tonic 0.14+ uses tonic_prost_build instead of tonic_build
|
|
let config = tonic_prost_build::configure();
|
|
|
|
config
|
|
.clone()
|
|
.build_server(true)
|
|
.build_client(true)
|
|
.compile_well_known_types(true)
|
|
.extern_path(".google.protobuf", "::prost_types")
|
|
.type_attribute(".", "#[derive(serde::Serialize, serde::Deserialize)]")
|
|
// Suppress warnings in generated code
|
|
.server_mod_attribute(".", "#[allow(unused_qualifications)]")
|
|
.client_mod_attribute(".", "#[allow(unused_qualifications)]")
|
|
.compile_protos(&["proto/ml_training.proto"], &["proto"])?;
|
|
|
|
// Compile TLI BacktestingService proto (client only -- for validation pipeline)
|
|
config
|
|
.build_server(false)
|
|
.build_client(true)
|
|
.compile_well_known_types(true)
|
|
.extern_path(".google.protobuf", "::prost_types")
|
|
.type_attribute(".", "#[derive(serde::Serialize, serde::Deserialize)]")
|
|
.server_mod_attribute(".", "#[allow(unused_qualifications)]")
|
|
.client_mod_attribute(".", "#[allow(unused_qualifications)]")
|
|
.compile_protos(
|
|
&["../../tli/proto/trading.proto"],
|
|
&["../../tli/proto"],
|
|
)?;
|
|
|
|
println!("cargo:rerun-if-changed=proto/ml_training.proto");
|
|
println!("cargo:rerun-if-changed=../../tli/proto/trading.proto");
|
|
|
|
Ok(())
|
|
}
|