diff options
| author | Bartosz Golaszewski <bartosz.golaszewski@oss.qualcomm.com> | 2026-02-23 12:09:45 +0100 |
|---|---|---|
| committer | Khem Raj <raj.khem@gmail.com> | 2026-02-24 22:30:26 -0800 |
| commit | 172c473caf11c00ce4221f786050f0b9805d868c (patch) | |
| tree | d241654f1a94096ec199805ee9a176a7c0379d24 /meta-oe/recipes-support/libgpiod/libgpiod_2.2.3.bb | |
| parent | e3b6caa4f134a4c40bee0d5fb1019b99fdeb68cd (diff) | |
| download | meta-openembedded-172c473caf11c00ce4221f786050f0b9805d868c.tar.gz | |
libgpiod: update to v2.2.3
Bug-fix release addressing a couple problems in gpio-manager and tests.
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@oss.qualcomm.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Diffstat (limited to 'meta-oe/recipes-support/libgpiod/libgpiod_2.2.3.bb')
| -rw-r--r-- | meta-oe/recipes-support/libgpiod/libgpiod_2.2.3.bb | 104 |
1 files changed, 104 insertions, 0 deletions
diff --git a/meta-oe/recipes-support/libgpiod/libgpiod_2.2.3.bb b/meta-oe/recipes-support/libgpiod/libgpiod_2.2.3.bb new file mode 100644 index 0000000000..a23d65bcaa --- /dev/null +++ b/meta-oe/recipes-support/libgpiod/libgpiod_2.2.3.bb | |||
| @@ -0,0 +1,104 @@ | |||
| 1 | require libgpiod.inc | ||
| 2 | |||
| 3 | inherit systemd update-rc.d useradd gobject-introspection | ||
| 4 | |||
| 5 | LICENSE = "GPL-2.0-or-later & LGPL-2.1-or-later & CC-BY-SA-4.0" | ||
| 6 | LIC_FILES_CHKSUM = " \ | ||
| 7 | file://LICENSES/GPL-2.0-or-later.txt;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ | ||
| 8 | file://LICENSES/LGPL-2.1-or-later.txt;md5=4b54a1fd55a448865a0b32d41598759d \ | ||
| 9 | file://LICENSES/CC-BY-SA-4.0.txt;md5=fba3b94d88bfb9b81369b869a1e9a20f \ | ||
| 10 | " | ||
| 11 | |||
| 12 | FILESEXTRAPATHS:prepend := "${THISDIR}/${BPN}-2.x:" | ||
| 13 | |||
| 14 | SRC_URI += "file://gpio-manager.init" | ||
| 15 | |||
| 16 | SRC_URI[sha256sum] = "70012b0262e4b90f140431efa841ca89643b02ea6c09f507e23cec664a51b71a" | ||
| 17 | |||
| 18 | # Enable all project features for ptest | ||
| 19 | PACKAGECONFIG[tests] = " \ | ||
| 20 | --enable-tests --enable-tools --enable-bindings-cxx --enable-bindings-glib --enable-gpioset-interactive --enable-dbus, \ | ||
| 21 | --disable-tests, \ | ||
| 22 | kmod util-linux glib-2.0 catch2 libedit glib-2.0-native libgudev, \ | ||
| 23 | bash ${VIRTUAL-RUNTIME_dbus} glib-2.0-utils libgpiod-manager-cfg shunit2 \ | ||
| 24 | " | ||
| 25 | PACKAGECONFIG[gpioset-interactive] = "--enable-gpioset-interactive,--disable-gpioset-interactive,libedit" | ||
| 26 | PACKAGECONFIG[glib] = "--enable-bindings-glib,--disable-bindings-glib,glib-2.0 glib-2.0-native" | ||
| 27 | PACKAGECONFIG[dbus] = "--enable-dbus,--disable-dbus,glib-2.0 glib-2.0-native libgudev,${VIRTUAL-RUNTIME_dbus}" | ||
| 28 | |||
| 29 | PACKAGES =+ "${PN}-gpiosim ${PN}-glib ${PN}-manager ${PN}-manager-cfg ${PN}-cli" | ||
| 30 | FILES:${PN}-tools += "${bindir}/gpionotify" | ||
| 31 | FILES:${PN}-gpiosim += "${libdir}/libgpiosim.so.*" | ||
| 32 | FILES:${PN}-gpiosim-dev += "${includedir}/gpiosim.h" | ||
| 33 | FILES:${PN}-glib += "${libdir}/libgpiod-glib.so.*" | ||
| 34 | FILES:${PN}-manager += " \ | ||
| 35 | ${bindir}/gpio-manager \ | ||
| 36 | ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', '${systemd_system_unitdir}/gpio-manager.service', '', d)} \ | ||
| 37 | ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', '${sysconfdir}/init.d/gpio-manager', '', d)} \ | ||
| 38 | " | ||
| 39 | FILES:${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 | " | ||
| 44 | FILES:${PN}-cli += "${bindir}/gpiocli" | ||
| 45 | |||
| 46 | RDEPENDS:${PN}-manager += "${VIRTUAL-RUNTIME_dbus} ${PN}-manager-cfg" | ||
| 47 | RDEPENDS:${PN}-cli += "${PN}-manager" | ||
| 48 | |||
| 49 | SYSTEMD_PACKAGES = "${PN}-manager" | ||
| 50 | |||
| 51 | python __anonymous() { | ||
| 52 | distro_features = d.getVar("DISTRO_FEATURES").split() | ||
| 53 | packageconfig = d.getVar("PACKAGECONFIG").split() | ||
| 54 | pn = d.getVar("PN") | ||
| 55 | |||
| 56 | if "systemd" in distro_features and "dbus" in packageconfig: | ||
| 57 | d.appendVar("EXTRA_OECONF", " --enable-systemd") | ||
| 58 | # We need to set it conditionally or else the systemd class will look | ||
| 59 | # for the file that we don't install with systemd support disabled. | ||
| 60 | d.setVar("SYSTEMD_SERVICE:{}-manager".format(pn), "gpio-manager.service") | ||
| 61 | else: | ||
| 62 | d.appendVar("EXTRA_OECONF", " --disable-systemd") | ||
| 63 | |||
| 64 | # Disable gobject introspection set by the bbclass if we don't want it. | ||
| 65 | if not any(cfg in ["glib", "dbus", "ptest"] for cfg in packageconfig): | ||
| 66 | d.setVar("GI_DATA_ENABLED", "False") | ||
| 67 | } | ||
| 68 | |||
| 69 | UPDATERCPN = "${PN}-manager" | ||
| 70 | INITSCRIPT_NAME = "gpio-manager" | ||
| 71 | INITSCRIPT_PARAMS = "start 20 2 3 4 5 . stop 20 0 1 6 ." | ||
| 72 | |||
| 73 | USERADD_PACKAGES = "${PN}-manager" | ||
| 74 | GROUPADD_PARAM:${PN}-manager = "--system gpio" | ||
| 75 | USERADD_PARAM:${PN}-manager = "--system -M -s /bin/nologin -g gpio gpio-manager" | ||
| 76 | |||
| 77 | RDEPENDS:${PN}-ptest += " \ | ||
| 78 | ${@bb.utils.contains('PTEST_ENABLED', '1', 'shunit2 bash', '', d)} \ | ||
| 79 | " | ||
| 80 | RRECOMMENDS:${PN}-gpiosim += "kernel-module-gpio-sim kernel-module-configfs" | ||
| 81 | INSANE_SKIP:${PN}-ptest += "buildpaths" | ||
| 82 | |||
| 83 | do_compile:prepend() { | ||
| 84 | export GIR_EXTRA_LIBS_PATH="${B}/lib/.libs" | ||
| 85 | } | ||
| 86 | |||
| 87 | do_install:append() { | ||
| 88 | if ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then | ||
| 89 | install -d ${D}${sysconfdir}/init.d | ||
| 90 | install -m 0755 ${UNPACKDIR}/gpio-manager.init ${D}${sysconfdir}/init.d/gpio-manager | ||
| 91 | fi | ||
| 92 | } | ||
| 93 | |||
| 94 | do_install_ptest:append() { | ||
| 95 | install -m 0755 ${B}/bindings/cxx/tests/.libs/gpiod-cxx-test ${D}${PTEST_PATH}/tests/ | ||
| 96 | install -m 0755 ${S}/tools/gpio-tools-test.bash ${D}${PTEST_PATH}/tests/ | ||
| 97 | install -m 0644 ${S}/tests/scripts/gpiod-bash-test-helper.inc ${D}${PTEST_PATH}/tests/ | ||
| 98 | install -m 0644 ${S}/tests/gpiosim/gpiosim.h ${D}${includedir}/gpiosim.h | ||
| 99 | install -m 0755 ${B}/bindings/glib/tests/.libs/gpiod-glib-test ${D}${PTEST_PATH}/tests/ | ||
| 100 | install -m 0755 ${B}/dbus/tests/.libs/gpiodbus-test ${D}${PTEST_PATH}/tests/ | ||
| 101 | install -m 0755 ${S}/dbus/client/gpiocli-test.bash ${D}${PTEST_PATH}/tests/ | ||
| 102 | install -m 0755 ${B}/dbus/manager/.libs/gpio-manager ${D}${PTEST_PATH}/tests/ | ||
| 103 | install -m 0755 ${B}/dbus/client/.libs/gpiocli ${D}${PTEST_PATH}/tests/ | ||
| 104 | } | ||
