]> git.ipfire.org Git - thirdparty/openembedded/openembedded-core.git/commitdiff
glibc: fix header file conflict in case of multilib
authorChen Qi <Qi.Chen@windriver.com>
Tue, 11 Feb 2025 01:59:49 +0000 (17:59 -0800)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Mon, 17 Feb 2025 22:06:55 +0000 (22:06 +0000)
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 <Qi.Chen@windriver.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/recipes-core/glibc/glibc-package.inc

index bba9449d349faae854772184f9e800c03e266db1..21f2200d19bc8b68e36460c98c41dd17226bd35e 100644 (file)
@@ -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