Hello all, On Thu, 2024-10-24 at 15:51 +0200, Bartosz Golaszewski wrote: > From: Bartosz Golaszewski <[email protected]> > > This is a big update for libgpiod bringing in the D-Bus daemon and its > command-line client. This is why the patch is pretty hefty. The majority > of the line count comes from the removed patch that is now upstream but > the v2.2 recipe also now contains a lot of bits and pieces that make the > D-Bus daemon work both with system as well as sysvinit. > > The project now packages the systemd service and udev rules that allow > the manager to run under its own user in a well sandboxed environment > but the sysvsinit script is carried in the recipe as I don't want to > put support for legacy systems in libgpiod repo. > > The patch also updates the ptests for libgpiod to run three new > test-suites: one for GLib bindings, one for the command-line D-Bus > client and finally one testing some daemon corner-cases not supported by > the client. > > Build tested with various config options with systemd and sysvinit (the > latter with glibc and musl) on 32- and 64-bit architectures. > > The complete changelog since v2.1 (taken verbatim from the NEWS file) is > below: > > libgpiod v2.2 > ============= > > New features: > - add GObject bindings with introspection > - add a D-Bus interface to libgpiod together with a daemon implementing it and > a command-line client > - split out the common shell test code for gpio-tools into a reusable test > harness for GPIO command-line tools > - add minutes as a new supported time unit for tools and allow longer periods > for timeouts, line holding, etc. > - add a script for generating sdist and wheels for python bindings > - migrate C++ tests to using Catch2 v3 > > Improvements: > - relicense C++ bindings under LGPL-2.1-or-later in order to make the project > more attractive to users with GPL-3.0 restrictions > - remove dependency on grep from tools' tests > - make shell scripts pass shellcheck treewide > - use ppoll() in tools to actually achieve the advertised microsecond > granularity of timeouts > - documentation improvements > - improve typing info in python bindings > - improve __repr__() implementations in python bindings > - make reconfiguring lines more flexible in python bindings by relaxing the > requirement to carry the ordering of the config entries from the request > - support casting of line.Value to bool in python bindings > - various new test-cases for improved coverage treewide > - align the test cases with the current kernel requirement for specifying > direction explicitly when reconfiguring lines > > Bug fixes: > - fix C++ bindings build using slibtool > - accept the new style automatic GPIO chip labels from gpio-sim in bash tests > - fix C++ tests with recent kernels which introduced stricter reconfigure > behavior > - fix a use-after-free bug in python bindings > - fix passing the event clock property to line requests in python bindings > - fix a memory leak in tools > - make sure the string buffers in line-info and chip-info are big enough to > not > truncate the strings they hold below the size accepted by the kernel > - remove buggy and unnecessary flags sanitization from line-config > - fix python bindings installation with Makefile build > - sanitize the return values of GPIO ioctl()s which in some cases may be > erroneously positive > - fix requesting lines by name with multiple entries in python bindings > > Signed-off-by: Bartosz Golaszewski <[email protected]>
I admit I had to backport it to scarthgap to test (along with glib 2.80, etc), but I didn't notice any problems and I'm able to start gpio-manager (systemd service) and control it over gpiocli. Thanks a lot Bartosz! Reviewed-by: Alexander Sverdlin <[email protected]> Tested-by: Alexander Sverdlin <[email protected]> > --- > Changes in v3: > - make dbus a runtime dependency for the 'dbus' and 'tests' PACKAGECONFIG > switches > - make libgpiod-manager a runtime dependency for libgpiod-cli > > Changes in v2: > - fix SRC_URI[sha256sum] value > > ...cxx-Migrate-C-tests-to-use-Catch2-v3.patch | 530 ------------------ > .../libgpiod/libgpiod-2.x/gpio-manager.init | 76 +++ > .../libgpiod/libgpiod-2.x/run-ptest | 43 +- > .../libgpiod/libgpiod_2.1.3.bb | 33 -- > .../recipes-support/libgpiod/libgpiod_2.2.bb | 99 ++++ > 5 files changed, 206 insertions(+), 575 deletions(-) > delete mode 100644 > meta-oe/recipes-support/libgpiod/libgpiod-2.x/0001-bindings-cxx-Migrate-C-tests-to-use-Catch2-v3.patch > create mode 100644 > meta-oe/recipes-support/libgpiod/libgpiod-2.x/gpio-manager.init > delete mode 100644 meta-oe/recipes-support/libgpiod/libgpiod_2.1.3.bb > create mode 100644 meta-oe/recipes-support/libgpiod/libgpiod_2.2.bb -- Alexander Sverdlin Siemens AG www.siemens.com
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#113170): https://lists.openembedded.org/g/openembedded-devel/message/113170 Mute This Topic: https://lists.openembedded.org/mt/109190169/21656 Group Owner: [email protected] Unsubscribe: https://lists.openembedded.org/g/openembedded-devel/unsub [[email protected]] -=-=-=-=-=-=-=-=-=-=-=-
