meta-openembedded/meta-oe
Bartosz Golaszewski 9626e8a2c8
libgpiod: update to v2.2
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 <bartosz.golaszewski@linaro.org>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2024-10-24 07:06:31 -07:00
..
classes fitimage: fix name of default configuration 2024-10-16 08:16:06 -07:00
conf ptest-packagelists-meta-oe.inc: Add tomlplusplus 2024-10-17 14:07:45 -07:00
dynamic-layers netplan: upgrade 1.1 -> 1.1.1 2024-10-21 20:54:47 -07:00
files influxdb: Add missing group to static id 2024-02-17 17:35:24 -08:00
lib/oeqa/selftest/cases
licenses
recipes-benchmark fio: upgrade 3.37 -> 3.38 2024-10-10 12:53:49 -07:00
recipes-bsp fwupd: upgrade 1.9.24 -> 1.9.25 2024-09-30 07:34:22 -07:00
recipes-connectivity transmission: fix compliance checking 2024-10-15 20:39:55 -07:00
recipes-core dbus-broker: Add missing systemd user symlink 2024-10-21 20:54:48 -07:00
recipes-crypto cryptsetup: fix udev PACKAGECONFIG 2024-10-10 12:53:50 -07:00
recipes-dbs postgresql.inc: fix do_package_qa error 2024-10-24 05:52:20 -07:00
recipes-devtools doxygen: version bump 1.9.3 -> 1.12.0 2024-10-21 20:54:48 -07:00
recipes-extended fluentbit: fix building with wasm support 2024-10-21 20:54:48 -07:00
recipes-gnome adw-gtk3: upgrade 5.4 -> 5.5 2024-10-14 09:52:24 -07:00
recipes-graphics deqp-runner: update 0.20.0 -> 0.20.2 2024-10-19 20:26:51 -07:00
recipes-kernel makedumpfile: Remove recipe 2024-10-15 08:15:36 -07:00
recipes-multimedia libplacebo: reorganize dependencies 2024-10-17 14:07:46 -07:00
recipes-navigation gpsd: condition the runtime dependence of pyserial on the pygps 2024-09-27 06:18:13 -07:00
recipes-networking/cyrus-sasl recipes: Start WORKDIR -> UNPACKDIR transition 2024-05-23 08:44:44 -07:00
recipes-printing cups-filters: include UPSTREAM_CHECK_URI to fix UNKNOWN_BROKEN status 2024-07-24 08:56:30 -07:00
recipes-security nmap: Fix off-by-one overflow in the IP protocol table. 2024-10-14 23:25:11 -07:00
recipes-shells zsh: update 5.8 -> 5.9 2024-08-23 22:35:10 -07:00
recipes-support libgpiod: update to v2.2 2024-10-24 07:06:31 -07:00
recipes-test catch2: upgrade 3.7.0 -> 3.7.1 2024-09-29 10:01:07 -07:00
COPYING.MIT
README.md README.md: Hint at "git request-pull" 2024-09-14 08:43:55 -07:00

meta-oe

This layer depends on:

URI: git://github.com/openembedded/openembedded-core.git branch: master

luajit recipe requires host compiler to be able to generate 32bit code when target is 32bit e.g. arm, so ensure that $CC -m32 is functional on build host, if building this recipe, needed packages to fullfit this might have different names on different host distributions e.g. on archlinux based distributions install prerequisites like below

pacman -S lib32-gcc-libs lib32-glibc

Ubuntu sudo apt-get install gcc-multilib linux-libc-dev:i386

Send pull requests to openembedded-devel@lists.openembedded.org with '[meta-oe]' in the subject'

When sending single patches, please use something like: 'git send-email -M -1 --to openembedded-devel@lists.openembedded.org --subject-prefix="meta-oe][PATCH"'

You are encouraged to fork the mirror on GitHub https://github.com/openembedded/meta-openembedded to share your patches, this is preferred for patch sets consisting of more than one patch.

Note, it is discouraged to send patches via GitHub pull request system. Such patches get less attention from developers and can be mishandled or not reviewed properly. Please use emails instead. For exemple, you can use 'git request-pull' to generate an email referencing your git repository.

Other services like GitLab, repo.or.cz or self-hosted setups are of course accepted as well, 'git fetch ' works the same on all of them. We recommend GitHub because it is free, easy to use, has been proven to be reliable and has a really good web GUI.

layer maintainer: Khem Raj raj.khem@gmail.com