boring2/boring-sys
Eliza Weisman 2345c2f988 boring-sys: include all files needed to build FIPS
This commit modifies the Cargo `include` field for `boring-sys` to
include all the files necessary to actually build the FIPS-certified
revision of BoringSSL. Currently, some of these files are missing (see
#157 for details on this).

This branch improves on my previous approach in PR #158, which switched
from using a Cargo `include` to a Cargo `exclude`. Using `exclude`
rather than `include` resulted in a much larger crates.io package, but
at the time, I thought this was less likely to result in breakage in the
future, because I was concerned about the inability to verify that the
set of excludes/includes can build a new pinned `boringssl` git revision
without having to actually publish a crates.io release.

However, as @nox pointed out in [this comment][1], `cargo package` can
be used to verify a build with the `exclude`s/`include`s applied. This
branch therefore adds `cargo package` steps to CI that check that the
package can actually be built. This way, we are able to make a much
smaller change to the included files, resulting in a smaller package
published to crates.io.

On this branch, the package is 6.7MiB compressed, which is not much
larger than it was previously:

```
    Finished dev [unoptimized + debuginfo] target(s) in 55.65s
    Packaged 1851 files, 33.7MiB (6.7MiB compressed)
```

Fixes #157
Closes #158

[1]: https://github.com/cloudflare/boring/pull/158#issuecomment-1693067112,
2023-08-30 14:54:18 +01:00
..
cmake boring-sys: Add support for Linux ARM(v7) 2023-07-27 13:15:53 -07:00
deps Merge pull request #117 from nox/bump-boringssl 2023-05-11 16:23:28 +01:00
patches Reduce release bundle size by excluding PQ test data 2023-08-01 17:51:44 +01:00
src Update docs 2023-07-10 12:29:30 +01:00
Cargo.toml boring-sys: include all files needed to build FIPS 2023-08-30 14:54:18 +01:00
LICENSE-MIT Rename stuff 2020-11-11 17:47:30 +00:00
README.md Rename stuff 2020-11-11 17:47:30 +00:00
build.rs Separate `fips` and `fips-link-precompiled` features. 2023-08-30 11:41:20 +01:00

README.md

boring

crates.io

BoringSSL bindings for the Rust programming language and TLS adapters for tokio and hyper built on top of it.

Documentation

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed under the terms of both the Apache License, Version 2.0 and the MIT license without any additional terms or conditions.

Accolades

The project is based on a fork of rust-openssl.