From 76e071a79b8f0e2ce9010725297db4b01fd9ec62 Mon Sep 17 00:00:00 2001 From: Chen Qi Date: Mon, 10 Feb 2025 17:59:49 -0800 Subject: [PATCH] glibc: fix header file conflict in case of multilib When enabling multilib for qemuarm64, populate_sdk would fail with the following error: Error: Transaction test error: file /usr/include/bits/indirect-return.h conflicts between installs of lib32-libc6-dev-2.41 and libc6-dev-2.41+ The problem could be reproduced by adding the following lines in local.conf and then run 'bitbake core-image-minimal -c populate_sdk': MACHINE ?= "qemuarm64" require conf/multilib.conf MULTILIBS ?= "multilib:lib32" DEFAULTTUNE:virtclass-multilib-lib32 ?= "armv7athf-neon" Use oe_multilib_header to handle bits/indrect-return.h to fix this issue. (From OE-Core rev: e13d464db8db4e0fdec6c076aecff5284a27c510) Signed-off-by: Chen Qi Signed-off-by: Mathieu Dubois-Briand Signed-off-by: Richard Purdie --- meta/recipes-core/glibc/glibc-package.inc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/meta/recipes-core/glibc/glibc-package.inc b/meta/recipes-core/glibc/glibc-package.inc index bba9449d34..21f2200d19 100644 --- a/meta/recipes-core/glibc/glibc-package.inc +++ b/meta/recipes-core/glibc/glibc-package.inc @@ -88,7 +88,7 @@ do_install() { rmdir --ignore-fail-on-non-empty ${D}${libexecdir} fi - oe_multilib_header bits/syscall.h bits/long-double.h bits/floatn.h bits/endianness.h bits/struct_rwlock.h bits/math-vector.h + oe_multilib_header bits/syscall.h bits/long-double.h bits/floatn.h bits/endianness.h bits/struct_rwlock.h bits/math-vector.h bits/indirect-return.h if [ -f ${D}${bindir}/mtrace ]; then sed -i -e '1s,#!.*perl,#! ${USRBINPATH}/env perl,' -e '2s,exec.*perl,exec ${USRBINPATH}/env perl,' ${D}${bindir}/mtrace