On Wed Aug 26, 2026 at 9:37 AM CEST, Peter via lists.openembedded.org Tatrai 
wrote:
> From: Peter Tatrai <[email protected]>
>
> When SDKMACHINE is set to i686 or i586, nativesdk binaries are compiled
> as 32-bit. Without -D_TIME_BITS=64 and -D_FILE_OFFSET_BITS=64, stat()
> and time-related syscalls use 32-bit types, causing EOVERFLOW on
> filesystems with large inode numbers (e.g. container overlay filesystems)
> and Y2038 issues.
>
> Add SDK_CC_ARCH appends for class-nativesdk:i686 and class-nativesdk:i586
> using GLIBC_64BIT_TIME_FLAGS, mirroring how target architectures are
> handled.
>
> Signed-off-by: Peter Tatrai <[email protected]>"
> Signed-off-by: Richard Purdie <[email protected]>
> (cherry picked from commit d9f62a45555673842021d5746437e66c40d3f3cc)
> Signed-off-by: Peter Tatrai <[email protected]>
> ---
>  meta/conf/distro/include/time64.inc | 10 ++++++++++
>  1 file changed, 10 insertions(+)
>
> diff --git a/meta/conf/distro/include/time64.inc 
> b/meta/conf/distro/include/time64.inc
> index dd29105db4..7f02774839 100644
> --- a/meta/conf/distro/include/time64.inc
> +++ b/meta/conf/distro/include/time64.inc
> @@ -32,6 +32,16 @@ GLIBC_64BIT_TIME_FLAGS:pn-pulseaudio = ""
>  # libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp
>  GLIBC_64BIT_TIME_FLAGS:pn-gcc-sanitizers = ""
>  
> +# Apply the same flags to nativesdk packages when building for a 32-bit SDK
> +# host (i686, i586).
> +SDK_CC_ARCH:append:class-nativesdk:i686 = "${GLIBC_64BIT_TIME_FLAGS}"
> +SDK_CC_ARCH:append:class-nativesdk:i586 = "${GLIBC_64BIT_TIME_FLAGS}"
> +
> +# nativesdk-pseudo wraps both 32-bit and 64-bit libc calls; enabling LFS 
> flags
> +# causes duplicate symbol errors (e.g. creat64, fopen64) on i686 because 
> glibc
> +# aliases the non-LFS names to their 64-bit counterparts via macros.
> +GLIBC_64BIT_TIME_FLAGS:pn-nativesdk-pseudo = ""
> +
>  # Caused by the flags exceptions above
>  INSANE_SKIP:append:pn-gcc-sanitizers = " 32bit-time"
>  INSANE_SKIP:append:pn-glibc = " 32bit-time"

Hello,

This patch does break some builds:
qemux86 debian11-vk-1 scarthgap completed at 2026-08-30 14:36:35+00:00
https://autobuilder.yoctoproject.org/valkyrie/?#/builders/30/builds/4505
qemuarm-oecore rocky8-vk-1 scarthgap completed at 2026-08-30 14:06:41+00:00
https://autobuilder.yoctoproject.org/valkyrie/?#/builders/40/builds/4502
buildtools ubuntu2404-vk-1 scarthgap completed at 2026-08-30 14:00:30+00:00
https://autobuilder.yoctoproject.org/valkyrie/?#/builders/43/builds/4546
qemux86-64 debian12-vk-4 scarthgap completed at 2026-08-30 14:14:14+00:00
https://autobuilder.yoctoproject.org/valkyrie/?#/builders/68/builds/4636

(And, also, I suspect meta-mingw ubuntu2404-vk-3 scarthgap completed at 
2026-08-30 13:35:59+00:00
https://autobuilder.yoctoproject.org/valkyrie/?#/builders/7/builds/3475)

I've reproduced this locally:
With SDKMACHINE="i686"
"bitbake nativesdk-glibc" fails with this patch and succeed without.

The error message boils down to:
| Error: symbol '__sigtimedwait64' is already defined.

Can you look into this?

Thanks!
-- 
Yoann Congal
Smile ECS

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#244688): 
https://lists.openembedded.org/g/openembedded-core/message/244688
Mute This Topic: https://lists.openembedded.org/mt/120933672/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to