From 3116032a83a891f9495698bf0692ccc59ceef6e2 Mon Sep 17 00:00:00 2001 From: Kornel Date: Fri, 26 Sep 2025 11:45:40 +0100 Subject: [PATCH] Skip Rust version detection for bindgen --- Cargo.toml | 1 - boring-sys/Cargo.toml | 2 +- boring-sys/build/main.rs | 10 +++------- 3 files changed, 4 insertions(+), 9 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index d693db43..d27cf8db 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -48,5 +48,4 @@ openssl-macros = "0.1.1" tower = "0.4" tower-layer = "0.3" tower-service = "0.3" -autocfg = "1.3.0" brotli = "6.0" diff --git a/boring-sys/Cargo.toml b/boring-sys/Cargo.toml index 5cd8e214..166d62f5 100644 --- a/boring-sys/Cargo.toml +++ b/boring-sys/Cargo.toml @@ -13,6 +13,7 @@ build = "build/main.rs" readme = "README.md" categories = ["cryptography", "external-ffi-bindings"] edition = { workspace = true } +rust-version = "1.77" include = [ "/*.md", "/*.toml", @@ -89,7 +90,6 @@ pq-experimental = [] underscore-wildcards = [] [build-dependencies] -autocfg = { workspace = true } bindgen = { workspace = true } cmake = { workspace = true } fs_extra = { workspace = true } diff --git a/boring-sys/build/main.rs b/boring-sys/build/main.rs index 1270311f..cc85532b 100644 --- a/boring-sys/build/main.rs +++ b/boring-sys/build/main.rs @@ -741,12 +741,8 @@ fn generate_bindings(config: &Config) { } }); - // bindgen 0.70 replaced the run-time layout tests with compile-time ones, - // but they depend on std::mem::offset_of, stabilized in 1.77. - let supports_layout_tests = autocfg::new().probe_rustc_version(1, 77); - let Ok(target_rust_version) = bindgen::RustTarget::stable(68, 0) else { - panic!("bindgen does not recognize target rust version"); - }; + let target_rust_version = + bindgen::RustTarget::stable(77, 0).expect("bindgen does not recognize target rust version"); let mut builder = bindgen::Builder::default() .rust_target(target_rust_version) // bindgen MSRV is 1.70, so this is enough @@ -762,7 +758,7 @@ fn generate_bindings(config: &Config) { .generate_comments(true) .fit_macro_constants(false) .size_t_is_usize(true) - .layout_tests(supports_layout_tests) + .layout_tests(config.env.debug.is_some()) .prepend_enum_name(true) .blocklist_type("max_align_t") // Not supported by bindgen on all targets, not used by BoringSSL .clang_args(get_extra_clang_args_for_bindgen(config))