Commit Graph

48 Commits

Author SHA1 Message Date
Khem Raj
fb95946eb5 emacs,libgpiod,cockpit: Fix override syntax in using FILES_${PN}
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2021-08-06 20:38:40 -07:00
Martin Jansa
c61dc077bb Convert to new override syntax
This is the result of automated script (0.9.1) conversion:

oe-core/scripts/contrib/convert-overrides.py .

converting the metadata to use ":" as the override character instead of "_".

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2021-08-03 10:21:25 -07:00
Signed-off-by: Bartosz Golaszewski
46eb101cf7 Revert "libgpiod: ptest: warn if the gpio-mockup kernel module is not selected"
This reverts commit 977c5f5619.

This recipe doesn't see the final value of KERNEL_FEATURES that the
linux-yocto recipe uses - that's why this warning was always triggered
if the gpio-mockup feature was not defined globally in this variable.
The linux-yocto recipe pulls in gpio-mockup automatically if ptest is
in DISTRO_FEATURES so we don't really needs thich check.

Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2021-06-09 12:53:53 -07:00
Bartosz Golaszewski
18960fe1c1 libgpiod: update my email address
I now maintain the project and this recipe in my own time. Update my
email address in the AUTHOR field.

Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2021-06-09 12:53:48 -07:00
Bartosz Golaszewski
4b16dedac6 libgpiod: add the python test-suite to the ptest package
One more follow-up to the ptest updates - the python test suite was
missed and is still in the main library package. Move it to
libgpiod-ptest.

Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2021-06-09 08:49:20 -07:00
Bartosz Golaszewski
3018b3af38 libgpiod: ptest: only rrecommend a single module that we need
We don't need to pull in all kernel modules. It's enough to just
rrecommend gpio-mockup.

Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2021-06-04 07:08:13 -07:00
Bartosz Golaszewski
657bbdf163 libgpiod: ptest: add kernel-modules to RRECOMMENDS
libgpiod needs the gpio-mockup kernel module to be loadable (not
built-in). Add kernel-modules to RRECOMMENDS.

Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2021-06-04 07:08:13 -07:00
Bartosz Golaszewski
977c5f5619 libgpiod: ptest: warn if the gpio-mockup kernel module is not selected
libgpiod test-suites work with the gpio-mockup kernel module. When using
linux-yocto, it's enabled using the gpio/mockup.scc kernel feature. Check
if this feature is present in KERNEL_FEATURE and warn if not.

Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2021-06-04 07:08:13 -07:00
Bartosz Golaszewski
2530ace540 libgpiod: ptest: run all test-suites if possible
We have four test-suites total in libgpiod: for the core C library,
gpio-tools and for C++ and Python bindings. Modify the recipe to install
all of them depending on build settings and make run-ptest execute them
if available.

Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2021-06-04 07:08:13 -07:00
Bartosz Golaszewski
66561c713e libgpiod: redirect stdout from the ptest executable to a file
Most tests redirect their standard output to a file. Let's make libgpiod
consistent with this pattern.

Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2021-06-04 07:08:13 -07:00
Bartosz Golaszewski
e75cc87c4f libgpiod: add RDEPENDS for tests
The libgpiod-tools test-suite requires bats at run-time. The python
test-suite needs the packaging module. Add both to the RDEPENDS in the
tests PACKAGECONFIG option

Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2021-06-04 07:08:13 -07:00
Bartosz Golaszewski
2d163d0e18 libgpiod: correctly split output files into packages
Currently, the files that should go into libgpiod-ptest are part of
either the main library package of libgpiod-tools. Use more fine-grained
values for package files variables.

Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2021-06-04 07:08:13 -07:00
Bartosz Golaszewski
1b26441296 libgpiod: fix RRECOMMENDS for python bindings
RRECOMMENDS for the python module doesn't work because it specifies
the module itself as its own RRECOMMENDS. Fix it to recommend the python
package if python3 is in PACKAGECONFIG for the main package.

Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2021-06-04 07:08:13 -07:00
Bartosz Golaszewski
187beae6bc libgpiod: list all packages in a single assignment
Don't have assignments to PACKAGES scattered across the recipe - use a
single place for that before assigning FILES.

Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2021-06-04 07:08:13 -07:00
Bartosz Golaszewski
f3d670d9b3 libgpiod: coding style fixes
The recipe is getting bigger so try to keep a consistent coding style.
Use four spaces instead of tabs and use the common way of splitting
multi-line strings for minimum git diff lines at modification.

Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2021-06-04 07:08:13 -07:00
Bartosz Golaszewski
d25fb9ee17 libgpiod: update v1.6.2 -> v1.6.3
This is a small bugfix release addressing some issues with C++ and
Python bindings.

Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2021-03-22 09:25:16 -07:00
Christian B. Sørensen
96db316f75 libgpiod: packageqa problem => static python lib to ${PN}-staticdev
Problem:
QA Issue: non -staticdev package contains static .a library

Reason:
Both /usr/lib/python3.8/site-packages/gpiod.a and
/usr/lib/python3.8/site-packages/gpiod.so are in ${PN}-python.

Signed-off-by: Christian Bräuner Sørensen <yocto@bsorensen.net>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2021-02-23 11:08:21 -08:00
Sakib Sajal
43560d8e22 libgpiod: add ptest
Added ptest for libgpiod. Requires CONFIG_GPIO_MOCKUP
kernel config to be enabled.

Signed-off-by: Sakib Sajal <sakib.sajal@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2021-01-28 16:53:13 -08:00
Bartosz Golaszewski
e1f6b98842 libgpiod: update v1.4.5 -> v1.6.2
We're now by default on linux v5.8 so the GPIO features supported by
libgpiod v1.6 are available. Bump the version to v1.6.2 and extend the
recipe to depend on additional testing packages if tests are being built.

Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-11-30 22:42:20 -08:00
Bartosz Golaszewski
5380eb42d6 libgpiod: update v1.4.4 -> v1.4.5
This bugfix release contains a couple fixes for C++ and Python bindings.

Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-11-02 09:00:52 -08:00
Bartosz Golaszewski
1ea3e2c4d2 libgpiod: consolidate the recipe files
After dropping the support for v0.3.x, we no longer need the split into
.bb and .inc files. Let's move the contents of libgpiod.inc into
libgpiod_1.4.4.bb.

While at it: do some refactoring: let's use ${BPN} in the URL, consolidate
certain variables and add some explanatory comments.

Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-10-05 10:47:38 -07:00
Bartosz Golaszewski
0ef9d45bda libgpiod: drop support for 0.3.3
I no longer support the v0.x.y series. Remove the recipe for v0.3.3.
While at it: the tests PACKAGECONFIG is duplicated so remove one
instance.

Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-09-17 08:57:11 -07:00
Bartosz Golaszewski
8340965ac6 libgpiod: update v1.4.3 -> v1.4.4
This is a bug-fix release fixing the issue with reading line values for
bulks of lineevents.

Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-08-26 19:20:40 -07:00
Rasmus Villemoes
533ad71725 libgpiod: split c++ library to its own package
I need (some of) the gpiod tools in my initramfs. That, of course,
pulls in the workhorse in the form of the libgpiod C library. But it
also pulls in the C++ library which is cobundled with libgpiod, which
in turn means that libstdc++ gets pulled in, adding about 2.5MB to the
initramfs.

Fix that by splitting the C++ library to its own package.

Signed-off-by: Rasmus Villemoes <rasmus.villemoes@prevas.dk>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-05-06 23:20:29 -07:00
Bartosz Golaszewski
a6e846dadc libgpiod: update v1.4.2 -> v1.4.3
This contains a bugfix for gpiod_chip_open() failing for symbolic links
to devices.

Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-03-31 07:03:29 -07:00
Bartosz Golaszewski
3b3de3fc6b libgpiod: update v1.4.1 -> v1.4.2
While the v1.5 version of libgpiod has already been released - we can't
integrate it in yocto yet as it requires v5.5 linux kernel headers to
build. In the meantime - update the recipe to build the latest bug-fix
release from the v1.4.x branch.

Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-01-31 07:13:55 -08:00
Bartosz Golaszewski
4339c28ff4 libgpiod: put gpio utils into an actual separate package
Currently tools are built conditionally depending on whether the
corresponding PACKAGECONFIG option has been set and, although they
live in a separate libgpiod-tools package, the user cannot simply
select it - he has to additionally extend PACKAGECONFIG. While this
makes sense for python and C++ bindings, the tools don't have any
dependencies other the libgpiod. Make libgpiod-tools an actual
stand-alone package: always build them but install them only if
user selected libgpiod-tools.

Disable setting tools in default PACKAGECONFIGS

Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>

s
2019-11-17 12:34:21 -08:00
Khem Raj
98625eb6c5 libgpiod: nherit python3native unconditionally
this recipe inherits python3native class conditionally, this condition
depends on a given packageconfig, however inherit ${VAR} syntax requires
VAR to be evaluated before inheriting it, therefore if someone appends
python3 to packageconfig via a bbappend, then the packageconfig will
become effective and add --enable-bindings-python to configure but
inherit wont evaluate correctly since the expression adding to
packageconfig

PACKAGECONFIG_append = " python3"

will be coming _after_ the inherit, and the builds will fail e.g.

| ../../../libgpiod-1.3/bindings/python/gpiodmodule.c:8:10: fatal error: Python.h: No such file or directory
|  #include <Python.h>

This will still mean that python3native is always inherited but the
effective configure option will be --disable-bindings-python and that
will do the right thing

See. https://github.com/openembedded/meta-openembedded/issues/140

Signed-off-by: Khem Raj <raj.khem@gmail.com>
2019-08-28 07:13:20 -07:00
Bartosz Golaszewski
c79bce945c libgpiod: bump version to v1.4.1
This is a bug-fix release addressing the following issues:

- fix GCC8 warnings when building python bindings
- fix a bug in gpioinfo where lines used by the kernel without any
  consumer string were reported as unused
- fix a bug in line::event_get_fd() in C++ bindings where the exception
  wouldn't be thrown in error cases due to a missing 'throw' keyword
- fix a couple issues with the test-suite

Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2019-08-08 10:04:23 -07:00
Bartosz Golaszewski
d7a9d70898 libgpiod: upgrade to v1.4
This release contains a couple fixes for C++ bindings and testing framework
refactoring. The --enable-install-tests option has been removed as it was
redundant. More info in NEWS.

Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2019-06-16 22:52:36 -07:00
James Feist
9c4cfa8905 libgpiod: Enable cxx bindings by default
If we move the packageconfig settings from the shared
inc file into the individual version recipes, we can
enable the cxx bindings by default for the newer version
of libgpiod.

Signed-off-by: James Feist <james.feist@linux.intel.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2019-06-15 16:45:33 -07:00
Bartosz Golaszewski
b19957052e libgpiod: bump version to v1.3
There are several new features in this release. The one that impacts
the recipe is the option to install the test executable to bindir using
the new options (--enable-install-tests). This requires separate
PACKAGECONFIG entries for 0.x and 1.x series.

Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2019-03-26 09:43:57 -07:00
Bartosz Golaszewski
2032f0f4d5 libgpiod: bump version to v1.2.1
This is a bugfix release fixing two problems in C++ bindings.

Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2019-02-17 12:21:27 -08:00
Ferry
c44679b494 libgpiod_1.2: add dependency on python when building python bindings
Commit ab54dd75 "libgpiod: Rrecommend python3 only for PN-python package" also removes the build dependency
on python3 however this results in fatal error: Python.h: No such file or directory #include <Python.h>

Signed-off-by: Ferry Toth <ftoth@exalondelft.nl>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2019-01-10 09:05:36 -08:00
Khem Raj
56fe916ab5 libgpiod: Rrecommend python3 only for PN-python package
Fixes overdependency on PN

Signed-off-by: Khem Raj <raj.khem@gmail.com>
2018-12-23 13:29:20 -08:00
Bartosz Golaszewski
016b243f10 libgpiod: bump version to v1.2
Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2018-11-09 07:29:59 -08:00
Bartosz Golaszewski
37e7ce413f libgpiod: bump version to v1.1.1
This is a bug-fix release that fixes a couple memory leaks and bugs in
python bindings discovered in the v1.1 release.

Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2018-07-27 07:19:10 -07:00
Bartosz Golaszewski
5554fd12ac libgpiod: add packageconfig for C++ bindings
Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2018-06-14 08:57:14 -07:00
Martin Hundebøll
bb57bac845 libgpiod: add packageconfig for python bindings
Signed-off-by: Martin Hundebøll <mnhu@prevas.dk>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2018-05-26 21:10:55 -07:00
Martin Hundebøll
034bb63ad8 libgpiod: update to 1.1
Add native dependency on autoconf-archive as it is now used by the
libgpiod autotools.

Signed-off-by: Martin Hundebøll <mnhu@prevas.dk>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2018-05-26 21:10:55 -07:00
Bartosz Golaszewski
1d1a1ae7a5 libgpiod: add support for v1.x series
Add a recipe for libgpiod v1.0.1. It can live next to the one for v0.3.3.

Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
2018-05-01 18:15:44 -07:00
Bartosz Golaszewski
22aca9c557 libgpiod: bump version to v0.3.3
This is a bug fix release of the v0.3.x series.

Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
2018-05-01 18:15:44 -07:00
Bartosz Golaszewski
266ccace9c libgpiod: split recipe into .inc and .bb files
The build works the same for v0.x and v1.x series - leave only the
hashes in the .bb file and put everything else into .inc.

Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
2018-05-01 18:15:44 -07:00
Bartosz Golaszewski
331e3d406e libgpiod: include the version in the recipe filename
As the first step in supporting both v0.x and v1.x series: include the
version in the recipe filename.

Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
2018-05-01 18:15:44 -07:00
Martin Hundebøll
c09fcd618e libgpiod: fix packaging of tools
The default packaging adds files from ${bindir} to the primary package,
so that following packages don't see any files in ${bindir}. This causes
the libgpiod-tools package to empty, as it is appended (+=) to PACKAGES.

Change the assignment to PACKAGES to a prepend (=+) to populate the
libgpiod-tools package with the gpio{detect,find,get,info,mon,set}
executables.

To avoid missing tools for existing installations of libgpiod, the
libgpiod-tools package is setup as a recommendation by libgpiod when the
tools package config is enabled.

Signed-off-by: Martin Hundebøll <mnhu@prevas.dk>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
2018-03-21 18:41:47 -07:00
Bartosz Golaszewski
4ab1b815ca libgpiod: bump version to v0.3.2
Bug fix release:
- correctly handle signal interrupts when polling in gpiod_simple_event_loop()
- fix the linking order when building with static libraries
- pass the correct consumer string to gpiod_simple_get_value_multiple() in
  gpioget
- fix a line test case: don't use open-drain or open-source flags for input
  mode
- fix the flags passed to ar in order to supress a build warning
- set the last error code in gpiod_chip_open_by_label() to ENOENT if a chip
  can't be found

Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
2017-11-15 16:34:05 -08:00
Bartosz Golaszewski
453cd9bc0c libgpiod: bump version to v0.3.1
The project is now hosted at kernel.org. Updates since v0.2 include
a couple bug-fixes and new features for gpiomon.

Signed-off-by: Bartosz Golaszewski <bartekgola@gmail.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2017-09-18 10:17:56 +02:00
Marek Belisko
ce3ad5a67b recipes-support: Move libgpiod to meta-oe directory
Previously it was placed in meta directory which is
wrong. Move to meta-oe.

Signed-off-by: Marek Belisko <marek.belisko@open-nandra.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2017-06-05 11:01:46 +02:00