dbus-broker: package ptest files from nonarch_libdir

dbus-broker's meson build installs its test and benchmark binaries to a
hardcoded path derived from the prefix:

    conf.set('testdir', get_option('prefix') / 'lib/dbus-broker/tests')

i.e. always ${prefix}/lib/dbus-broker/tests, regardless of ${baselib}.
In OE terms that is ${nonarch_libdir}, not ${libdir}.

The recipe however collects them with ${libdir}, which only matches on
targets where baselib is "lib". On lib64 targets and for multilib
variants (e.g. lib32-dbus-broker) ${libdir} differs from the hardcoded
install path, so the installed tests are not captured by any package and
do_package fails with:

    QA Issue: dbus-broker: Files/directories were installed but not
    shipped in any package:
      /usr/lib/dbus-broker/tests/unit/test-...
      /usr/lib/dbus-broker/tests/dbus/test-...
    [installed-vs-shipped]

Use ${nonarch_libdir} so the FILES glob always matches meson's install
location.

Signed-off-by: Khem Raj <raj.khem@gmail.com>
This commit is contained in:
Khem Raj
2026-07-14 19:00:09 -07:00
committed by Khem Raj
parent 3e67d23808
commit 74b76f0b8a
+1 -1
View File
@@ -40,7 +40,7 @@ RDEPENDS:${PN} += "dbus-common dbus-tools"
FILES:${PN} += "${nonarch_libdir}/systemd/catalog"
FILES:${PN} += "${systemd_system_unitdir}"
FILES:${PN} += "${systemd_user_unitdir}"
FILES:${PN}-ptest += "${libdir}/${PN}/tests"
FILES:${PN}-ptest += "${nonarch_libdir}/${PN}/tests"
# test-sockopt fails to compile with musl without this flag
CFLAGS:append:libc-musl = "${@bb.utils.contains('PTEST_ENABLED', '1', ' -Wno-error=incompatible-pointer-types ', '', d)}"