8 releases (5 breaking)

0.6.0+e46383f Jul 2, 2023
0.5.2+6195bf8 Feb 16, 2023
0.5.1+b9232f9 Mar 2, 2022
0.5.0+b9232f9 Feb 25, 2022
0.1.0 Oct 23, 2020

#144 in Build Utils

Download history 1789/week @ 2023-12-18 782/week @ 2023-12-25 1955/week @ 2024-01-01 2839/week @ 2024-01-08 2748/week @ 2024-01-15 2957/week @ 2024-01-22 2417/week @ 2024-01-29 2706/week @ 2024-02-05 2811/week @ 2024-02-12 2161/week @ 2024-02-19 2586/week @ 2024-02-26 1655/week @ 2024-03-04 1624/week @ 2024-03-11 1938/week @ 2024-03-18 1548/week @ 2024-03-25 2019/week @ 2024-04-01

7,218 downloads per month
Used in 14 crates (via grpcio-sys)

MIT/Apache

16MB
496K SLoC

GNU Style Assembly 207K SLoC // 0.0% comments C 78K SLoC // 0.2% comments C++ 69K SLoC // 0.1% comments Assembly 63K SLoC // 0.0% comments Perl 56K SLoC // 0.1% comments Go 21K SLoC // 0.1% comments Bazel 1K SLoC // 0.0% comments Python 1K SLoC // 0.3% comments Shell 187 SLoC // 0.2% comments Rust 140 SLoC // 0.0% comments

Contains (static library, 6KB) sample.lib, (ELF exe/lib, 2KB) bar.cc.o, (ELF exe/lib, 2KB) foo.c.o, (static library, 4KB) libsample.a, (Mach-o exe, 1KB) bar.cc.o, (Mach-o exe, 1KB) foo.c.o and 1 more.

boringssl-src

A crate for building boringssl.

This crate is intended to integrate with other build script to build boringssl.

  1. To use the crate, just include it as build-dependency:
[build-dependencies]
boringssl-src = "0.6"
  1. And then build it in build script:
let artifact = boringssl_src::Build::new().build();
  1. If you just need to link it to your library, then let it setup directly:
artifacts.print_cargo_metadata();

If you want to make it available to existing build system, take CMake as an example, you can setup by using OPENSSL_ROOT_PATH:

let config = cmake::Config::new("native project");
config.define("OPENSSL_ROOT_DIR", format!("{}", boringssl_artifact.root_dir().display()));

Then cmake should be able to find the library by find_package(OpenSSL).

How and When is boringssl updated?

It's updated periodically. It for now serves as a build dependency for tikv/grpc-rs, so whenever grpc updates boringssl, this crate also updates the native dependency.

Dependencies