mailarchive of the ptxdist mailing list
 help / color / mirror / Atom feed
* [ptxdist] [PATCH] libgpiod: version bump 2.1.3 -> 2.2.2
@ 2025-07-09 12:51 Lars Alex Pedersen
  0 siblings, 0 replies; only message in thread
From: Lars Alex Pedersen @ 2025-07-09 12:51 UTC (permalink / raw)
  To: ptxdist; +Cc: Lars Alex Pedersen

* Revert commit 0b38f33360be9221c1bca62f7023ffdcb9a9c0e5, since it has
  been fixed in release 2.2.2.
* Add new options to install the dbus daemon with and without systemd.
* Add gpio in group
* Add gpio-manager user and group

https://github.com/brgl/libgpiod/blob/v2.2.x/NEWS

Signed-off-by: Lars Alex Pedersen <lapeddk@gmail.com>
---
 projectroot/etc/group  |  2 ++
 projectroot/etc/passwd |  1 +
 rules/libgpiod.in      | 17 +++++++++++++++++
 rules/libgpiod.make    | 28 +++++++++++++++++++++++-----
 4 files changed, 43 insertions(+), 5 deletions(-)

diff --git a/projectroot/etc/group b/projectroot/etc/group
index 1a8e2eeb2..176e21194 100644
--- a/projectroot/etc/group
+++ b/projectroot/etc/group
@@ -39,4 +39,6 @@ seat:x:215:
 pipewire:x:216:
 mongodb:x:217:
 polkitd:x:218:
+gpio:x:219:
+gpio-manager:x:220:gpio
 nogroup:x:65534:
diff --git a/projectroot/etc/passwd b/projectroot/etc/passwd
index 89763295a..d6daf13c0 100644
--- a/projectroot/etc/passwd
+++ b/projectroot/etc/passwd
@@ -21,5 +21,6 @@ redis:x:212:213:redis:/dev/null:/bin/false
 pipewire:x:213:216:pipewire:/dev/null:/bin/false
 mongodb:x:214:217:mongodb:/dev/null:/bin/false
 polkitd:x:215:218:polkitd:/dev/null:/bin/false
+gpio-manager:x:216:220:gpio-manager:/dev/null:/bin/false
 rpcuser:x:65533:65534:RPC user:/dev/null:/bin/false
 nobody:x:65534:65534:Unprivileged Nobody:/dev/null:/bin/false
diff --git a/rules/libgpiod.in b/rules/libgpiod.in
index 94bff5164..4c4d60909 100644
--- a/rules/libgpiod.in
+++ b/rules/libgpiod.in
@@ -4,6 +4,9 @@ menuconfig LIBGPIOD
 	tristate
 	prompt "libgpiod                      "
 	select HOST_SYSTEM_PYTHON3
+	select DBUS		if LIBGPIOD_DBUS_DAEMON
+	select LIBGUDEV		if LIBGPIOD_DBUS_DAEMON
+	select GLIB		if LIBGPIOD_DBUS_DAEMON
 	select GCCLIBS_CXX	if LIBGPIOD_CXX
 	select PYTHON3		if LIBGPIOD_PYTHON3
 	help
@@ -57,6 +60,20 @@ config LIBGPIOD_GPIONOTIFY
 	help
 	  Waits for info changes on GPIO lines
 
+config LIBGPIOD_DBUS_DAEMON
+	bool
+	prompt "Install dbus daemon"
+	help
+	  Add a D-Bus interface to libgpiod together with a
+	  daemon implementing it and a command-line client
+
+config LIBGPIOD_DBUS_DAEMON_SYSTEMD
+	bool
+	prompt "Install dbus daemon systemd files"
+	depends on INITMETHOD_SYSTEMD
+	help
+	  Install dbus daemon systemd unit and udev files
+
 config LIBGPIOD_CXX
 	bool
 	prompt "Install C++ bindings"
diff --git a/rules/libgpiod.make b/rules/libgpiod.make
index 6272333b5..44f623b66 100644
--- a/rules/libgpiod.make
+++ b/rules/libgpiod.make
@@ -14,8 +14,8 @@ PACKAGES-$(PTXCONF_LIBGPIOD) += libgpiod
 #
 # Paths and names
 #
-LIBGPIOD_VERSION	:= 2.1.3
-LIBGPIOD_MD5		:= dd37487da746569b7311b2c8fd2f907d
+LIBGPIOD_VERSION	:= 2.2.2
+LIBGPIOD_MD5		:= 11e80ef978c7dbffc6f16dbac412ce42
 LIBGPIOD		:= libgpiod-$(LIBGPIOD_VERSION)
 LIBGPIOD_SUFFIX		:= tar.gz
 LIBGPIOD_URL		:= https://www.kernel.org/pub/software/libs/libgpiod/$(LIBGPIOD).$(LIBGPIOD_SUFFIX)
@@ -45,15 +45,18 @@ LIBGPIOD_CONF_OPT	:= \
 	--disable-tests \
 	--disable-profiling \
 	--disable-examples \
+	--$(call ptx/endis, PTXCONF_LIBGPIOD_DBUS_DAEMON)-bindings-glib \
+	--disable-introspection	\
+	--$(call ptx/endis, PTXCONF_LIBGPIOD_DBUS_DAEMON_SYSTEMD)-systemd \
+	--$(call ptx/endis, PTXCONF_LIBGPIOD_DBUS_DAEMON)-dbus \
 	--$(call ptx/endis, PTXCONF_LIBGPIOD_CXX)-bindings-cxx \
 	--$(call ptx/endis, PTXCONF_LIBGPIOD_PYTHON3)-bindings-python \
 	--disable-bindings-rust
 
 LIBGPIOD_CONF_ENV := \
 	$(CROSS_ENV) \
-	$(if $(PTXCONF_LIBGPIOD_PYTHON3), \
-		ac_cv_path_PYTHON=$(CROSS_PYTHON3) \
-		ac_cv_prog_has_python_config=python$(PYTHON3_MAJORMINOR)-config)
+	systemdsystemunitdir=/usr/lib/systemd/system
+		
 
 LIBGPIOD_LDFLAGS:= -Wl,-rpath-link,$(LIBGPIOD_DIR)/lib/.libs
 
@@ -63,6 +66,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 +89,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
 ifdef PTXCONF_LIBGPIOD_CXX
 	@$(call install_lib, libgpiod, 0, 0, 0644, libgpiodcxx)
 endif

base-commit: 51f6fea554acb994e4f082af28077e82aab221cc
-- 
2.50.0




^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2025-07-09 12:51 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-07-09 12:51 [ptxdist] [PATCH] libgpiod: version bump 2.1.3 -> 2.2.2 Lars Alex Pedersen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox