summaryrefslogtreecommitdiffstats
path: root/meta/classes-recipe
diff options
context:
space:
mode:
authorAlexander Kanavin <alex.kanavin@gmail.com>2023-06-28 17:00:43 +0200
committerRichard Purdie <richard.purdie@linuxfoundation.org>2023-06-28 23:02:50 +0100
commit9400e5bd58cc1e73c2cf4e35ac0829d792e969ad (patch)
treec5a4b27bca1b4b2d156a7ada86ac2bba72bd673f /meta/classes-recipe
parentde230d6abdf29be37bd279a1733fe3ee010bdc22 (diff)
downloadpoky-9400e5bd58cc1e73c2cf4e35ac0829d792e969ad.tar.gz
time64.inc: annotate and clean up recipe-specific Y2038 exceptions
Additionally: - drop pseudo from INSANE_SKIP for 32bit time API check (pseudo passes the check; it's not clear where the issue may have been) - move rust exceptions to the cargo class, as the problem is common across the ecosystem, and needs to be fixed in the libc crate. (From OE-Core rev: d3d406bf636e579c17708b408e11c12d252533ee) Signed-off-by: Alexander Kanavin <alex@linutronix.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/classes-recipe')
-rw-r--r--meta/classes-recipe/cargo_common.bbclass12
1 files changed, 12 insertions, 0 deletions
diff --git a/meta/classes-recipe/cargo_common.bbclass b/meta/classes-recipe/cargo_common.bbclass
index 1ca0be471c..db54826ddb 100644
--- a/meta/classes-recipe/cargo_common.bbclass
+++ b/meta/classes-recipe/cargo_common.bbclass
@@ -174,3 +174,15 @@ oe_cargo_fix_env () {
174EXTRA_OECARGO_PATHS ??= "" 174EXTRA_OECARGO_PATHS ??= ""
175 175
176EXPORT_FUNCTIONS do_configure 176EXPORT_FUNCTIONS do_configure
177
178# The culprit for this setting is the libc crate,
179# which as of Jun 2023 calls directly into 32 bit time functions in glibc,
180# bypassing all of glibc provisions to choose the right Y2038-safe functions. As
181# rust components statically link with that crate, pretty much everything
182# is affected, and so there's no point trying to have recipe-specific
183# INSANE_SKIP entries.
184#
185# Upstream ticket and PR:
186# https://github.com/rust-lang/libc/issues/3223
187# https://github.com/rust-lang/libc/pull/3175
188INSANE_SKIP:append = " 32bit-time"