summaryrefslogtreecommitdiffstats
path: root/meta
diff options
context:
space:
mode:
authorRoss Burton <ross.burton@arm.com>2025-03-19 14:23:10 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2025-03-20 11:29:04 +0000
commitc05046519ccb6268ab6fbc5d4a6ea47ac7dce17d (patch)
tree6d9153d0347379984b95d138fc4da4559264c99b /meta
parentd86bb7085b2f77674dd5b41522359ff6bc3a34eb (diff)
downloadpoky-c05046519ccb6268ab6fbc5d4a6ea47ac7dce17d.tar.gz
pciutils: work around pseudo symlink creation race
Richard managed to reproduce a pseudo bug that pciutils in a minimal test case[1] which confirmed that it was the symlink creation causing issues. The pciutils Makefile has several installation targets: - install: binaries, manpages, shared library - install-lib: headers, library symlinks, shared library We need to run both targets to install the full set of files we want to be installed, but notably they both create the .so symlink and as they're running in parallel this is what triggers the bug in pseudo. Until the bug has been resolved (or the Makefiles don't duplicate rules), just run the two targets separately. [ YOCTO #14957 ] [1] https://lore.kernel.org/openembedded-core/20250319133457.806384-1-richard.purdie@linuxfoundation.org/T/#u (From OE-Core rev: a5fc49fafe910a25be7372c82bfbd7876871ce3f) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta')
-rw-r--r--meta/recipes-bsp/pciutils/pciutils_3.13.0.bb5
1 files changed, 4 insertions, 1 deletions
diff --git a/meta/recipes-bsp/pciutils/pciutils_3.13.0.bb b/meta/recipes-bsp/pciutils/pciutils_3.13.0.bb
index 74edd8686b..6478722838 100644
--- a/meta/recipes-bsp/pciutils/pciutils_3.13.0.bb
+++ b/meta/recipes-bsp/pciutils/pciutils_3.13.0.bb
@@ -32,7 +32,10 @@ EXTRA_OEMAKE += "CC="${CC} ${CFLAGS}" AR="${AR}" STRIP= LDFLAGS="${LDFLAGS}""
32EXTRA_OEMAKE += "PREFIX=${prefix} LIBDIR=${libdir} SBINDIR=${sbindir} SHAREDIR=${datadir} MANDIR=${mandir}" 32EXTRA_OEMAKE += "PREFIX=${prefix} LIBDIR=${libdir} SBINDIR=${sbindir} SHAREDIR=${datadir} MANDIR=${mandir}"
33 33
34do_install () { 34do_install () {
35 oe_runmake DESTDIR=${D} install install-lib 35 # Do these in separate calls as they expose a race in pseudo when creating
36 # symlinks when ran in parallel.
37 oe_runmake DESTDIR=${D} install
38 oe_runmake DESTDIR=${D} install-lib
36 39
37 install -d ${D}${bindir} 40 install -d ${D}${bindir}
38 41