summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBartosz Golaszewski <bartosz.golaszewski@linaro.org>2024-12-06 12:11:29 +0100
committerKhem Raj <raj.khem@gmail.com>2024-12-06 20:55:57 -0800
commit0718d6e84d59ac84d47e3093280fa5369bf4c435 (patch)
treee14dfb96f47f6b61cfd331f3a904f2d02135283c
parentf3d301643e51f1421634972e6612fc33a5c8beaf (diff)
downloadmeta-openembedded-0718d6e84d59ac84d47e3093280fa5369bf4c435.tar.gz
libgpiod: minimize intra-recipe dependencies for ptest
Make the packaging a bit more fine-grained. Create separate packages for the libgpiosim library and gpio-manager configuration files. Make the ptest package run-time depend on only the gpio-manager config. This way, we don't pull the entire daemon infrastructure if all we want is to run its test suite. While at it: add GPIO udev rules to the gpio-manager config package. Currently they are in the main libgpiod package where they don't really belong. Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org> Signed-off-by: Khem Raj <raj.khem@gmail.com>
-rw-r--r--meta-oe/recipes-support/libgpiod/libgpiod_2.2.bb19
1 files changed, 11 insertions, 8 deletions
diff --git a/meta-oe/recipes-support/libgpiod/libgpiod_2.2.bb b/meta-oe/recipes-support/libgpiod/libgpiod_2.2.bb
index 224918a55a..259ee04d28 100644
--- a/meta-oe/recipes-support/libgpiod/libgpiod_2.2.bb
+++ b/meta-oe/recipes-support/libgpiod/libgpiod_2.2.bb
@@ -20,27 +20,30 @@ PACKAGECONFIG[tests] = " \
20 --enable-tests --enable-tools --enable-bindings-cxx --enable-bindings-glib --enable-gpioset-interactive --enable-dbus, \ 20 --enable-tests --enable-tools --enable-bindings-cxx --enable-bindings-glib --enable-gpioset-interactive --enable-dbus, \
21 --disable-tests, \ 21 --disable-tests, \
22 kmod util-linux glib-2.0 catch2 libedit glib-2.0-native libgudev, \ 22 kmod util-linux glib-2.0 catch2 libedit glib-2.0-native libgudev, \
23 bash dbus glib-2.0-utils libgpiod-manager shunit2 \ 23 bash dbus glib-2.0-utils libgpiod-manager-cfg shunit2 \
24" 24"
25PACKAGECONFIG[gpioset-interactive] = "--enable-gpioset-interactive,--disable-gpioset-interactive,libedit" 25PACKAGECONFIG[gpioset-interactive] = "--enable-gpioset-interactive,--disable-gpioset-interactive,libedit"
26PACKAGECONFIG[glib] = "--enable-bindings-glib,--disable-bindings-glib,glib-2.0 glib-2.0-native" 26PACKAGECONFIG[glib] = "--enable-bindings-glib,--disable-bindings-glib,glib-2.0 glib-2.0-native"
27PACKAGECONFIG[dbus] = "--enable-dbus,--disable-dbus,glib-2.0 glib-2.0-native libgudev,dbus" 27PACKAGECONFIG[dbus] = "--enable-dbus,--disable-dbus,glib-2.0 glib-2.0-native libgudev,dbus"
28 28
29PACKAGES =+ "${PN}-ptest-dev ${PN}-glib ${PN}-manager ${PN}-cli" 29PACKAGES =+ "${PN}-gpiosim ${PN}-glib ${PN}-manager ${PN}-manager-cfg ${PN}-cli"
30FILES:${PN}-tools += "${bindir}/gpionotify" 30FILES:${PN}-tools += "${bindir}/gpionotify"
31FILES:${PN}-ptest += "${libdir}/libgpiosim.so.*" 31FILES:${PN}-gpiosim += "${libdir}/libgpiosim.so.*"
32FILES:${PN}-ptest-dev += "${includedir}/gpiosim.h" 32FILES:${PN}-gpiosim-dev += "${includedir}/gpiosim.h"
33FILES:${PN}-glib += "${libdir}/libgpiod-glib.so.*" 33FILES:${PN}-glib += "${libdir}/libgpiod-glib.so.*"
34FILES:${PN}-manager += " \ 34FILES:${PN}-manager += " \
35 ${bindir}/gpio-manager \ 35 ${bindir}/gpio-manager \
36 ${sysconfdir}/dbus-1/system.d/io.gpiod1.conf \
37 ${datadir}/dbus-1/interfaces/io.gpiod1.xml \
38 ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', '${systemd_system_unitdir}/gpio-manager.service', '', d)} \ 36 ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', '${systemd_system_unitdir}/gpio-manager.service', '', d)} \
39 ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', '${sysconfdir}/init.d/gpio-manager', '', d)} \ 37 ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', '${sysconfdir}/init.d/gpio-manager', '', d)} \
40" 38"
39FILES:${PN}-manager-cfg += " \
40 ${sysconfdir}/dbus-1/system.d/io.gpiod1.conf \
41 ${datadir}/dbus-1/interfaces/io.gpiod1.xml \
42 ${nonarch_base_libdir}/udev/rules.d/90-gpio.rules \
43"
41FILES:${PN}-cli += "${bindir}/gpiocli" 44FILES:${PN}-cli += "${bindir}/gpiocli"
42 45
43RDEPENDS:${PN}-manager += "dbus" 46RDEPENDS:${PN}-manager += "dbus ${PN}-manager-cfg"
44RDEPENDS:${PN}-cli += "${PN}-manager" 47RDEPENDS:${PN}-cli += "${PN}-manager"
45 48
46SYSTEMD_PACKAGES = "${PN}-manager" 49SYSTEMD_PACKAGES = "${PN}-manager"
@@ -74,7 +77,7 @@ USERADD_PARAM:${PN}-manager = "--system -M -s /bin/nologin -g gpio gpio-manager"
74RDEPENDS:${PN}-ptest += " \ 77RDEPENDS:${PN}-ptest += " \
75 ${@bb.utils.contains('PTEST_ENABLED', '1', 'shunit2 bash', '', d)} \ 78 ${@bb.utils.contains('PTEST_ENABLED', '1', 'shunit2 bash', '', d)} \
76" 79"
77RRECOMMENDS:${PN}-ptest += "kernel-module-gpio-sim kernel-module-configfs" 80RRECOMMENDS:${PN}-gpiosim += "kernel-module-gpio-sim kernel-module-configfs"
78INSANE_SKIP:${PN}-ptest += "buildpaths" 81INSANE_SKIP:${PN}-ptest += "buildpaths"
79 82
80do_compile:prepend() { 83do_compile:prepend() {