On Mon, Jul 14, 2025 at 09:31:42AM +0200, Lars Alex Pedersen wrote:
> * Add new options to install the dbus daemon with and without systemd.
> * Add gpio in group
> * Add gpio-manager user and group
> * Python binding now requires host pybuild and pip for build and install
> * Removed ac_cv_prog_has_python_config line in rule, since it has been
>   fixed in this release
> * Configure options updated and reordered to match configure helper
> 
> https://git.kernel.org/pub/scm/libs/libgpiod/libgpiod.git/tree/NEWS?h=v2.2.2
> 
> Signed-off-by: Lars Alex Pedersen <[email protected]>
> ---
>  projectroot/etc/group  |  2 ++
>  projectroot/etc/passwd |  1 +
>  rules/libgpiod.in      | 27 ++++++++++++++++++++++++---
>  rules/libgpiod.make    | 29 ++++++++++++++++++++++++-----
>  4 files changed, 51 insertions(+), 8 deletions(-)

> diff --git a/rules/libgpiod.in b/rules/libgpiod.in
> index 94bff5164..43f813fa8 100644
> --- a/rules/libgpiod.in
> +++ b/rules/libgpiod.in
> @@ -3,9 +3,14 @@
>  menuconfig LIBGPIOD
>       tristate
>       prompt "libgpiod                      "
> -     select HOST_SYSTEM_PYTHON3
> -     select GCCLIBS_CXX      if LIBGPIOD_CXX
> -     select PYTHON3          if LIBGPIOD_PYTHON3
> +     select HOST_SYSTEM_PYTHON3      if LIBGPIOD_PYTHON3
> +     select HOST_PYTHON3_PYBUILD     if LIBGPIOD_PYTHON3
> +     select HOST_PYTHON3_PIP         if LIBGPIOD_PYTHON3

Python bindings compile and work now after this local adaption of
bindings/python/Makefile as proposed in your last mail:

    $(PYTHON) -m build --skip-dependency-check --wheel --no-isolation

I don't know either if that's the right solution.

> +config LIBGPIOD_DBUS_DAEMON
> +     bool
> +     prompt "Install dbus daemon"
> +     select LIBGPIOD_TOOLS

This is wrong because PTXCONF_LIBGPIOD_TOOLS controls
--enable/--disable-tools which is used for the tools/ directory only.

> diff --git a/rules/libgpiod.make b/rules/libgpiod.make
> index 6272333b5..cf4656150 100644
> --- a/rules/libgpiod.make
> +++ b/rules/libgpiod.make
> @@ -63,6 +67,8 @@ LIBGPIOD_TOOLS-$(PTXCONF_LIBGPIOD_GPIOGET)  += gpioget
>  LIBGPIOD_TOOLS-$(PTXCONF_LIBGPIOD_GPIOSET)   += gpioset
>  LIBGPIOD_TOOLS-$(PTXCONF_LIBGPIOD_GPIOMON)   += gpiomon
>  LIBGPIOD_TOOLS-$(PTXCONF_LIBGPIOD_GPIONOTIFY)        += gpionotify
> +LIBGPIOD_TOOLS-$(PTXCONF_LIBGPIOD_DBUS_DAEMON)       += gpio-manager
> +LIBGPIOD_TOOLS-$(PTXCONF_LIBGPIOD_DBUS_DAEMON)       += gpiocli
>  
>  # 
> ----------------------------------------------------------------------------
>  # Target-Install
> @@ -84,6 +90,19 @@ $(STATEDIR)/libgpiod.targetinstall:
>                       /usr/bin/$$tool); \
>       done
>  
> +ifdef PTXCONF_LIBGPIOD_DBUS_DAEMON
> +     @$(call install_tree, libgpiod, 0, 0, -, /usr/share/dbus-1/interfaces)
> +     @$(call install_tree, libgpiod, 0, 0, -, /etc/dbus-1/system.d)
> +     @$(call install_lib, libgpiod, 0, 0, 0644, libgpiodbus)
> +     @$(call install_lib, libgpiod, 0, 0, 0644, libgpiod-glib)
> +endif
> +ifdef PTXCONF_LIBGPIOD_DBUS_DAEMON_SYSTEMD
> +     @$(call install_tree, libgpiod, 0, 0, -, /usr/lib/udev/rules.d)
> +     @$(call install_alternative, libgpiod, 0, 0, 0644, \
> +             /usr/lib/systemd/system/gpio-manager.service)
> +     @$(call install_link, libgpiod, ../gpio-manager.service, \
> +             
> /usr/lib/systemd/system/multi-user.target.wants/gpio-manager.service)
> +endif

License information is still missing.
It would also be incomplete with active PTXCONF_LIBGPIOD_TOOLS part.

Markus

Reply via email to