From: Chen Qi Date: Tue, 11 Feb 2025 01:59:49 +0000 (-0800) Subject: glibc: fix header file conflict in case of multilib X-Git-Tag: uninative-4.7~65 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=e13d464db8db4e0fdec6c076aecff5284a27c510;p=thirdparty%2Fopenembedded%2Fopenembedded-core.git 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. Signed-off-by: Chen Qi Signed-off-by: Mathieu Dubois-Briand Signed-off-by: Richard Purdie --- diff --git a/meta/recipes-core/glibc/glibc-package.inc b/meta/recipes-core/glibc/glibc-package.inc index bba9449d349..21f2200d19b 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