Add support for OpenSSL 3.0.0#86529
Conversation
This updates the `openssl` and `openssl-sys` crates to support building the toolchain with system libraries up to OpenSSL 3.0.0. This does not affect the static version used via `openssl-src` in CI builds. ref: rust-openssl/rust-openssl#1264
|
(rust-highfive has picked a reviewer for you, use r? to override) |
|
For a concrete use, CentOS Stream 9 is upgrading OpenSSL already: |
|
r=me presuming this doesn't bump minimum version requirements anywhere. It may be a good idea to bump the openssl version referenced in src/tools/rustc-workspace-hack/Cargo.toml or elsewhere to try to avoid this being accidentally reverted (though it's not entirely likely that will happen). |
Correct, it only adds more support, not taking anything away.
Good idea, done! r=Mark-Simulacrum |
|
@bors r+ |
|
📌 Commit 92eedb2 has been approved by |
Rollup of 7 pull requests Successful merges: - rust-lang#86059 (Add new tool to check HTML) - rust-lang#86529 (Add support for OpenSSL 3.0.0) - rust-lang#86657 (Fix `future_prelude_collision` false positive) - rust-lang#86661 (Editon 2021 enables precise capture) - rust-lang#86671 (Turn non_fmt_panic into a future_incompatible edition lint.) - rust-lang#86673 (Make disjoint_capture_migration an edition lint.) - rust-lang#86678 (Fix garbled suggestion for missing lifetime specifier) Failed merges: r? `@ghost` `@rustbot` modify labels: rollup
Resolves:
```
warning: build/expando.c:4:24: error: pasting "RUST_VERSION_OPENSSL_" and "(" does not give a valid preprocessing token
warning: 4 | #define VERSION2(n, v) RUST_VERSION_##n##_##v
warning: | ^~~~~~~~~~~~~
warning: build/expando.c:5:23: note: in expansion of macro 'VERSION2'
warning: 5 | #define VERSION(n, v) VERSION2(n, v)
warning: | ^~~~~~~~
warning: build/expando.c:10:1: note: in expansion of macro 'VERSION'
warning: 10 | VERSION(OPENSSL, OPENSSL_VERSION_NUMBER)
warning: | ^~~~~~~
error: failed to run custom build command for `openssl-sys v0.9.63`
```
From https://prow.ci.openshift.org/view/gs/origin-ci-test/pr-logs/pull/openshift_cincinnati/786/pull-ci-openshift-cincinnati-master-customrust-images/1653741007713341440#1:build-log.txt%3A3892-3900
I was inspecting that CI job and found out that bumping to CentOS Stream 9
contains a bump to OpenSSL 3.0.0 which needed special support in the
`openssl` package:
- https://bugzilla.redhat.com/show_bug.cgi?id=1948976
- rust-openssl/rust-openssl#1264
- rust-lang/rust#86529
This updates the
opensslandopenssl-syscrates to support buildingthe toolchain with system libraries up to OpenSSL 3.0.0. This does not
affect the static version used via
openssl-srcin CI builds.ref: rust-openssl/rust-openssl#1264