diff options
author | Frank de Brabander <debrabander@gmail.com> | 2024-08-08 10:44:58 +0200 |
---|---|---|
committer | Armin Kuster <akuster808@gmail.com> | 2024-08-14 10:15:30 -0400 |
commit | e041b4d270cd074ebfd6d906466bc68776ae3bf9 (patch) | |
tree | fcea7536714976f26f6fdaee8129638abd290059 | |
parent | 994221f60ca12c75e3c107e9882fcb5ccdc5ea4e (diff) | |
download | meta-openembedded-e041b4d270cd074ebfd6d906466bc68776ae3bf9.tar.gz |
python3-pydantic-core: fix TMPDIR path reference
Backport a new upstream fix to remove the TMPDIR
reference from the rust code.
Signed-off-by: Frank de Brabander <debrabander@gmail.com>
We've seen TMPDIR [build-paths] contamination in the
built pydantic_core/_pydantic_core.cpython-*-*-linux-gnu.so
See discussion upstream in:
https://github.com/pydantic/pydantic-core/issues/1365
Backport fix from:
https://github.com/pydantic/pydantic-core/commit/e07c41b3bad75948201a2201387225694c2fb501
Similar to Styhead 6f0a41130c0dcf80e22f6f3fd93d39369c235693, but for 2.18.4
Signed-off-by: Tim Orling <tim.orling@konsulko.com>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
-rw-r--r-- | meta-python/recipes-devtools/python/python3-pydantic-core/0002-Dont-embed-RUSTFLAGS-in-final-binary.patch | 47 | ||||
-rw-r--r-- | meta-python/recipes-devtools/python/python3-pydantic-core_2.18.4.bb | 4 |
2 files changed, 49 insertions, 2 deletions
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 @@ | |||
1 | From b3282b301096253a11b1f887f915d0a2a2183597 Mon Sep 17 00:00:00 2001 | ||
2 | From: Frank de Brabander <debrabander@gmail.com> | ||
3 | Date: Thu, 8 Aug 2024 08:04:48 +0200 | ||
4 | Subject: [PATCH] Dont embed RUSTFLAGS in final binary | ||
5 | |||
6 | Upstream-Status: Backport [https://github.com/pydantic/pydantic-core/commit/e07c41b3bad75948201a2201387225694c2fb501] | ||
7 | --- | ||
8 | build.rs | 9 +++++++++ | ||
9 | src/lib.rs | 5 ++++- | ||
10 | 2 files changed, 13 insertions(+), 1 deletion(-) | ||
11 | |||
12 | diff --git a/build.rs b/build.rs | ||
13 | index 7f59e1f..7fe6490 100644 | ||
14 | --- a/build.rs | ||
15 | +++ b/build.rs | ||
16 | @@ -35,6 +35,15 @@ fn main() { | ||
17 | if let Some(true) = version_check::supports_feature("coverage_attribute") { | ||
18 | println!("cargo:rustc-cfg=has_coverage_attribute"); | ||
19 | } | ||
20 | + | ||
21 | + if std::env::var("RUSTFLAGS") | ||
22 | + .unwrap_or_default() | ||
23 | + .contains("-Cprofile-use=") | ||
24 | + { | ||
25 | + println!("cargo:rustc-cfg=specified_profile_use"); | ||
26 | + } | ||
27 | + println!("cargo:rustc-check-cfg=cfg(specified_profile_use)"); | ||
28 | + | ||
29 | generate_self_schema(); | ||
30 | println!("cargo:rustc-env=PROFILE={}", std::env::var("PROFILE").unwrap()); | ||
31 | } | ||
32 | diff --git a/src/lib.rs b/src/lib.rs | ||
33 | index d55e836..206a7a1 100644 | ||
34 | --- a/src/lib.rs | ||
35 | +++ b/src/lib.rs | ||
36 | @@ -111,7 +111,10 @@ pub fn build_info() -> String { | ||
37 | format!( | ||
38 | "profile={} pgo={}", | ||
39 | env!("PROFILE"), | ||
40 | - option_env!("RUSTFLAGS").unwrap_or("").contains("-Cprofile-use="), | ||
41 | + // We use a `cfg!` here not `env!`/`option_env!` as those would | ||
42 | + // embed `RUSTFLAGS` into the generated binary which causes problems | ||
43 | + // with reproducable builds. | ||
44 | + cfg!(specified_profile_use), | ||
45 | ) | ||
46 | } | ||
47 | |||
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" | |||
8 | LICENSE = "MIT" | 8 | LICENSE = "MIT" |
9 | LIC_FILES_CHKSUM = "file://LICENSE;md5=ab599c188b4a314d2856b3a55030c75c" | 9 | LIC_FILES_CHKSUM = "file://LICENSE;md5=ab599c188b4a314d2856b3a55030c75c" |
10 | 10 | ||
11 | SRC_URI += "file://0001-Set-rust-version-from-1.76-to-1.75-in-Cargo.toml.patch" | 11 | SRC_URI += "file://0001-Set-rust-version-from-1.76-to-1.75-in-Cargo.toml.patch \ |
12 | file://0002-Dont-embed-RUSTFLAGS-in-final-binary.patch" | ||
12 | SRC_URI[sha256sum] = "ec3beeada09ff865c344ff3bc2f427f5e6c26401cc6113d77e372c3fdac73864" | 13 | SRC_URI[sha256sum] = "ec3beeada09ff865c344ff3bc2f427f5e6c26401cc6113d77e372c3fdac73864" |
13 | 14 | ||
14 | DEPENDS = "python3-maturin-native python3-typing-extensions" | 15 | DEPENDS = "python3-maturin-native python3-typing-extensions" |
@@ -25,7 +26,6 @@ RDEPENDS:${PN} += " \ | |||
25 | " | 26 | " |
26 | 27 | ||
27 | INSANE_SKIP:${PN} = "already-stripped" | 28 | INSANE_SKIP:${PN} = "already-stripped" |
28 | INSANE_SKIP:${PN} += "buildpaths" | ||
29 | 29 | ||
30 | inherit ptest | 30 | inherit ptest |
31 | SRC_URI += "file://run-ptest" | 31 | SRC_URI += "file://run-ptest" |