mirror of
https://github.com/pseXperiments/icicle.git
synced 2026-01-09 13:07:59 -05:00
This PR introduces major updates for ICICLE Core, Rust and Golang bindings --------- Co-authored-by: Yuval Shekel <yshekel@gmail.com> Co-authored-by: DmytroTym <dmytrotym1@gmail.com> Co-authored-by: Otsar <122266060+Otsar-Raikou@users.noreply.github.com> Co-authored-by: VitaliiH <vhnatyk@gmail.com> Co-authored-by: release-bot <release-bot@ingonyama.com> Co-authored-by: Stas <spolonsky@icloud.com> Co-authored-by: Jeremy Felder <jeremy.felder1@gmail.com> Co-authored-by: ImmanuelSegol <3ditds@gmail.com> Co-authored-by: JimmyHongjichuan <45908291+JimmyHongjichuan@users.noreply.github.com> Co-authored-by: pierre <pierreuu@gmail.com> Co-authored-by: Leon Hibnik <107353745+LeonHibnik@users.noreply.github.com> Co-authored-by: nonam3e <timur@ingonyama.com> Co-authored-by: Vlad <88586482+vladfdp@users.noreply.github.com> Co-authored-by: LeonHibnik <leon@ingonyama.com> Co-authored-by: nonam3e <71525212+nonam3e@users.noreply.github.com> Co-authored-by: vladfdp <vlad.heintz@gmail.com>
35 lines
906 B
Rust
35 lines
906 B
Rust
use cmake::Config;
|
|
|
|
fn main() {
|
|
println!("cargo:rerun-if-env-changed=CXXFLAGS");
|
|
println!("cargo:rerun-if-changed=../../../../icicle");
|
|
|
|
// Base config
|
|
let mut config = Config::new("../../../../icicle/");
|
|
config
|
|
.define("CURVE", "bn254")
|
|
.define("CMAKE_BUILD_TYPE", "Release");
|
|
|
|
// Optional Features
|
|
#[cfg(feature = "g2")]
|
|
config.define("G2", "ON");
|
|
|
|
#[cfg(feature = "ec_ntt")]
|
|
config.define("ECNTT", "ON");
|
|
|
|
#[cfg(feature = "devmode")]
|
|
config.define("DEVMODE", "ON");
|
|
|
|
// Build
|
|
let out_dir = config
|
|
.build_target("icicle_curve")
|
|
.build();
|
|
|
|
println!("cargo:rustc-link-search={}/build/lib/", out_dir.display());
|
|
|
|
println!("cargo:rustc-link-lib=ingo_field_bn254");
|
|
println!("cargo:rustc-link-lib=ingo_curve_bn254");
|
|
println!("cargo:rustc-link-lib=stdc++");
|
|
println!("cargo:rustc-link-lib=cudart");
|
|
}
|