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

#331 in Build Utils

Download history 1113/week @ 2024-10-26 1202/week @ 2024-11-02 1343/week @ 2024-11-09 1352/week @ 2024-11-16 1246/week @ 2024-11-23 1382/week @ 2024-11-30 1471/week @ 2024-12-07 1452/week @ 2024-12-14 918/week @ 2024-12-21 665/week @ 2024-12-28 1179/week @ 2025-01-04 1193/week @ 2025-01-11 1467/week @ 2025-01-18 1023/week @ 2025-01-25 1025/week @ 2025-02-01 943/week @ 2025-02-08

4,661 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