##// END OF EJS Templates
revlog: using two new functions in C capsule from Rust code...
revlog: using two new functions in C capsule from Rust code We expose `index_length` and `index_node` in the C capsule, so that the Rust representation of the C index can implement the `RevlogIndex` trait. Because our `Node` is actually a one-field struct, we have to decorate it for direct FFI exchange with the C `char*` It would be a good thing to get a length from the C layer, but doing so right now would probably interfere with the upcoming changes that will happen there for the hash length. Differential Revision: https://phab.mercurial-scm.org/D8152

File last commit:

r44786:d8d4fa9a default
r44989:16634951 default
Show More
build.rs
25 lines | 548 B | application/rls-services+xml | RustLexer
// build.rs
//
// Copyright 2020 Raphaël Gomès <rgomes@octobus.net>
//
// This software may be used and distributed according to the terms of the
// GNU General Public License version 2 or any later version.
#[cfg(feature = "with-re2")]
use cc;
#[cfg(feature = "with-re2")]
fn compile_re2() {
cc::Build::new()
.cpp(true)
.flag("-std=c++11")
.file("src/re2/rust_re2.cpp")
.compile("librustre.a");
println!("cargo:rustc-link-lib=re2");
}
fn main() {
#[cfg(feature = "with-re2")]
compile_re2();
}