diff --git a/meta-python/recipes-devtools/python/python3-pydantic-core/0002-Dont-embed-RUSTFLAGS-in-final-binary.patch b/meta-python/recipes-devtools/python/python3-pydantic-core/0002-Dont-embed-RUSTFLAGS-in-final-binary.patch new file mode 100644 index 0000000000..1c195e294b --- /dev/null +++ b/meta-python/recipes-devtools/python/python3-pydantic-core/0002-Dont-embed-RUSTFLAGS-in-final-binary.patch @@ -0,0 +1,47 @@ +From b3282b301096253a11b1f887f915d0a2a2183597 Mon Sep 17 00:00:00 2001 +From: Frank de Brabander +Date: Thu, 8 Aug 2024 08:04:48 +0200 +Subject: [PATCH] Dont embed RUSTFLAGS in final binary + +Upstream-Status: Backport [https://github.com/pydantic/pydantic-core/commit/e07c41b3bad75948201a2201387225694c2fb501] +--- + build.rs | 9 +++++++++ + src/lib.rs | 5 ++++- + 2 files changed, 13 insertions(+), 1 deletion(-) + +diff --git a/build.rs b/build.rs +index 7f59e1f..7fe6490 100644 +--- a/build.rs ++++ b/build.rs +@@ -35,6 +35,15 @@ fn main() { + if let Some(true) = version_check::supports_feature("coverage_attribute") { + println!("cargo:rustc-cfg=has_coverage_attribute"); + } ++ ++ if std::env::var("RUSTFLAGS") ++ .unwrap_or_default() ++ .contains("-Cprofile-use=") ++ { ++ println!("cargo:rustc-cfg=specified_profile_use"); ++ } ++ println!("cargo:rustc-check-cfg=cfg(specified_profile_use)"); ++ + generate_self_schema(); + println!("cargo:rustc-env=PROFILE={}", std::env::var("PROFILE").unwrap()); + } +diff --git a/src/lib.rs b/src/lib.rs +index d55e836..206a7a1 100644 +--- a/src/lib.rs ++++ b/src/lib.rs +@@ -111,7 +111,10 @@ pub fn build_info() -> String { + format!( + "profile={} pgo={}", + env!("PROFILE"), +- option_env!("RUSTFLAGS").unwrap_or("").contains("-Cprofile-use="), ++ // We use a `cfg!` here not `env!`/`option_env!` as those would ++ // embed `RUSTFLAGS` into the generated binary which causes problems ++ // with reproducable builds. ++ cfg!(specified_profile_use), + ) + } + diff --git a/meta-python/recipes-devtools/python/python3-pydantic-core_2.18.4.bb b/meta-python/recipes-devtools/python/python3-pydantic-core_2.18.4.bb index cd8ebf9c07..58afc6cd1c 100644 --- a/meta-python/recipes-devtools/python/python3-pydantic-core_2.18.4.bb +++ b/meta-python/recipes-devtools/python/python3-pydantic-core_2.18.4.bb @@ -8,7 +8,8 @@ HOMEPAGE = "https://github.com/pydantic/pydantic-core" LICENSE = "MIT" LIC_FILES_CHKSUM = "file://LICENSE;md5=ab599c188b4a314d2856b3a55030c75c" -SRC_URI += "file://0001-Set-rust-version-from-1.76-to-1.75-in-Cargo.toml.patch" +SRC_URI += "file://0001-Set-rust-version-from-1.76-to-1.75-in-Cargo.toml.patch \ + file://0002-Dont-embed-RUSTFLAGS-in-final-binary.patch" SRC_URI[sha256sum] = "ec3beeada09ff865c344ff3bc2f427f5e6c26401cc6113d77e372c3fdac73864" DEPENDS = "python3-maturin-native python3-typing-extensions" @@ -25,7 +26,6 @@ RDEPENDS:${PN} += " \ " INSANE_SKIP:${PN} = "already-stripped" -INSANE_SKIP:${PN} += "buildpaths" inherit ptest SRC_URI += "file://run-ptest"