Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package libgpiod for openSUSE:Factory 
checked in at 2025-06-23 15:06:13
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libgpiod (Old)
 and      /work/SRC/openSUSE:Factory/.libgpiod.new.7067 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "libgpiod"

Mon Jun 23 15:06:13 2025 rev:16 rq:1287887 version:2.2.1

Changes:
--------
--- /work/SRC/openSUSE:Factory/libgpiod/libgpiod.changes        2022-10-14 
15:43:22.832002683 +0200
+++ /work/SRC/openSUSE:Factory/.libgpiod.new.7067/libgpiod.changes      
2025-06-23 15:07:19.726879577 +0200
@@ -1,0 +2,7 @@
+Mon Jun 16 14:42:34 UTC 2025 - Guillaume GARDET <guillaume.gar...@opensuse.org>
+
+- Upgrade to 2.2.1
+  * Major rework / Breaks API
+  * Support Catch2 v3
+
+-------------------------------------------------------------------

Old:
----
  libgpiod-1.6.3.tar.gz

New:
----
  gpiod-sysusers.conf
  libgpiod-2.2.1.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ libgpiod.spec ++++++
--- /var/tmp/diff_new_pack.MHE9vp/_old  2025-06-23 15:07:20.450909771 +0200
+++ /var/tmp/diff_new_pack.MHE9vp/_new  2025-06-23 15:07:20.454909938 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package libgpiod
 #
-# Copyright (c) 2022 SUSE LLC
+# Copyright (c) 2025 SUSE LLC
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -16,45 +16,51 @@
 #
 
 
-%define libgpiod_soversion 2
-%define libgpiodcxx_soversion 1
-%define libgpiomockup_soversion 0
-# Tests are only available for kernel 5.5+ (so TW and 15.4+ only)
-%if 0%{?suse_version} > 1500 || 0%{?sle_version} >= 150400
+%define libgpiod_soversion 3
+%define libgpiodbus_soversion 1
+%define libgpiodcxx_soversion 2
+%define libgpiodglib_soversion 1
+%define libgpiosim_soversion 1
+# Enable tests on openSUSE only - bsc#1243926
+%if 0%{?is_opensuse}
 %bcond_without libgpiod_tests
 %else
 %bcond_with libgpiod_tests
 %endif
+# Enable python
+%bcond_without libgpiod_python
 Name:           libgpiod
-Version:        1.6.3
+Version:        2.2.1
 Release:        0
 Summary:        C library and tools for interacting with the linux GPIO 
character device
 License:        LGPL-2.1-or-later
 Group:          Development/Libraries/C and C++
 URL:            https://git.kernel.org/pub/scm/libs/libgpiod/libgpiod.git/
 Source0:        
https://git.kernel.org/pub/scm/libs/libgpiod/libgpiod.git/snapshot/libgpiod-%{version}.tar.gz
-BuildRequires:  autoconf
+Source1:        gpiod-sysusers.conf
+BuildRequires:  autoconf >= 2.71
 BuildRequires:  autoconf-archive
 BuildRequires:  automake
 BuildRequires:  gcc
 BuildRequires:  gcc-c++
+BuildRequires:  libgudev-1_0-devel >= 230
 BuildRequires:  libkmod-devel
 BuildRequires:  libtool
 BuildRequires:  make
+%if %{with libgpiod_python}
 BuildRequires:  python3-devel >= 3.5
+BuildRequires:  python3-pip
+BuildRequires:  python3-setuptools
+%endif
 %if %{with libgpiod_tests}
-%if 0%{suse_version} > 1550
-# Only Tumbleweed bumped Catch2 to version 3.x
-BuildRequires:  Catch2-2-devel
-%else
 BuildRequires:  Catch2-devel
-%endif
 BuildRequires:  glib2-devel >= 2.50
 BuildRequires:  kernel-devel >= 5.5
 BuildRequires:  pkgconfig(libudev)
 %else
 BuildRequires:  kernel-devel >= 4.8
 %endif
+BuildRequires:  systemd
 
 %description
 The libgpiod library encapsulates the ioctl calls and data structures
@@ -64,8 +70,6 @@
 %package utils
 Summary:        Tools for interacting with the linux GPIO character device
 Group:          Development/Libraries/C and C++
-Provides:       libgpiod = %{version}-%{release}
-Obsoletes:      libgpiod < %{version}-%{release}
 
 %description utils
 The libgpiod library encapsulates the ioctl calls and data structures
@@ -86,6 +90,18 @@
 
 C library part.
 
+%package -n libgpiodbus%{libgpiodbus_soversion}
+Summary:        DBus for libgpiod
+Group:          System/Libraries
+Conflicts:      libgpiod1
+
+%description -n libgpiodbus%{libgpiodbus_soversion}
+The libgpiod library encapsulates the ioctl calls and data structures
+of the GPIO character devices, the latter of which superseded the
+GPIO sysfs interface in Linux 4.8.
+
+DBus part.
+
 %package -n libgpiodcxx%{libgpiodcxx_soversion}
 Summary:        C++library for interacting with the linux GPIO character device
 Group:          System/Libraries
@@ -98,17 +114,29 @@
 
 C++ library part.
 
-%package -n libgpiomockup%{libgpiomockup_soversion}
-Summary:        C library for interacting with the linux GPIO character device
+%package -n libgpiod-glib%{libgpiodglib_soversion}
+Summary:        GLib2 binding for libgpiod
 Group:          System/Libraries
 Conflicts:      libgpiod1
 
-%description -n libgpiomockup%{libgpiomockup_soversion}
+%description -n libgpiod-glib%{libgpiodglib_soversion}
 The libgpiod library encapsulates the ioctl calls and data structures
 of the GPIO character devices, the latter of which superseded the
 GPIO sysfs interface in Linux 4.8.
 
-GPIO mockup library part.
+Glib2 binding part.
+
+%package -n libgpiosim%{libgpiosim_soversion}
+Summary:        C library for controlling the gpio-sim kernel module
+Group:          System/Libraries
+Conflicts:      libgpiod1
+
+%description -n libgpiosim%{libgpiosim_soversion}
+The libgpiod library encapsulates the ioctl calls and data structures
+of the GPIO character devices, the latter of which superseded the
+GPIO sysfs interface in Linux 4.8.
+
+GPIO sim library part. (This aims at replacing the old gpio-mockup)
 
 %package devel
 Summary:        Devel files for libgpiod
@@ -117,7 +145,7 @@
 Requires:       libgpiod%{libgpiod_soversion} = %{version}
 Requires:       libgpiodcxx%{libgpiodcxx_soversion} = %{version}
 %if %{with libgpiod_tests}
-Requires:       libgpiomockup%{libgpiomockup_soversion} = %{version}
+Requires:       libgpiosim%{libgpiosim_soversion} = %{version}
 %endif
 
 %description devel
@@ -127,6 +155,7 @@
 
 Devel files part.
 
+%if %{with libgpiod_python}
 %package -n python3-gpiod
 Summary:        Python binding for libgpiod
 Group:          Development/Languages/Python
@@ -139,66 +168,140 @@
 GPIO sysfs interface in Linux 4.8.
 
 Python binding part.
+%endif
+
+%package        manager
+Summary:        DBus manager for GPIO
+Requires:       %{name}%{?_isa} = %{version}-%{release}
+ 
+%description manager
+DBus manager for interacting with GPIO character devices.
 
 %prep
 %autosetup -p1
+# python bindings build is set to use isolation. Remove this for distro build 
so it uses the
+# system installed dependencies instead of trying to use pip to install from 
the network
+sed -i 's/-m build/-m pip wheel --wheel-dir dist --no-build-isolation ./' 
bindings/python/Makefile*
+# Once the following commit is merged, replace the above line with the command 
below:
+# 
https://lore.kernel.org/linux-gpio/20250407181116.1070816-1-yselk...@redhat.com/T/#u
+#sed -i 's/-m pip wheel/& --no-build-isolation/' bindings/python/Makefile*
 
 %build
 ./autogen.sh
 %configure \
+  --enable-dbus \
+  --enable-systemd \
 %if %{with libgpiod_tests}
        --enable-tests \
 %endif
        --enable-tools=yes \
+%if %{with libgpiod_python}
        --enable-bindings-python \
-       --enable-bindings-cxx
+%else
+  --disable-bindings-python \
+%endif
+  --enable-bindings-glib \
+  --enable-bindings-cxx \
+  --disable-bindings-rust \
+  --disable-static
 make %{?_smp_mflags}
 
 %install
 %make_install
-rm -rf %{buildroot}%{_libdir}/*.{a,la}
-rm -rf %{buildroot}%{python3_sitearch}/*.{a,la}
-
-%if %{with libgpiod_tests}
-# Fix scripts interpreters
-sed -i 's#%{_bindir}/env bash#/bin/bash#' 
%{buildroot}/%{_bindir}/gpio-tools-test
-sed -i 's#%{_bindir}/env bats#%{_bindir}/bats#' 
%{buildroot}/%{_bindir}/gpio-tools-test.bats
-sed -i 's#%{_bindir}/env python3#%{_bindir}/python3#' 
%{buildroot}/%{_bindir}/gpiod_py_test.py
+# Install sysusers file
+install -p -D -m 0644 %{SOURCE1} %{buildroot}%{_sysusersdir}/gpiod.conf
+# Fix udev rule location
+%ifnarch %{ix86} %{arm}
+mkdir -p %{buildroot}/%{_udevrulesdir}/
+mv -f %{buildroot}/%{_libdir}/udev/rules.d/90-gpio.rules 
%{buildroot}/%{_udevrulesdir}/90-gpio.rules
 %endif
+# Remove libtool archives.
+find %{buildroot} -name '*.la' -delete
 
 %post -n libgpiod%{libgpiod_soversion} -p /sbin/ldconfig
 %postun -n libgpiod%{libgpiod_soversion} -p /sbin/ldconfig
 %post -n libgpiodcxx%{libgpiodcxx_soversion} -p /sbin/ldconfig
 %postun -n libgpiodcxx%{libgpiodcxx_soversion} -p /sbin/ldconfig
+%post -n libgpiodbus%{libgpiodbus_soversion} -p /sbin/ldconfig
+%postun -n libgpiodbus%{libgpiodbus_soversion} -p /sbin/ldconfig
+%post -n libgpiod-glib%{libgpiodglib_soversion} -p /sbin/ldconfig
+%postun -n libgpiod-glib%{libgpiodglib_soversion} -p /sbin/ldconfig
 
 %if %{with libgpiod_tests}
-%post -n libgpiomockup%{libgpiomockup_soversion} -p /sbin/ldconfig
-%postun -n libgpiomockup%{libgpiomockup_soversion} -p /sbin/ldconfig
+%post -n libgpiosim%{libgpiosim_soversion} -p /sbin/ldconfig
+%postun -n libgpiosim%{libgpiosim_soversion} -p /sbin/ldconfig
 %endif
 
+%pre manager
+%service_add_pre gpio-manager.service
+
+%post manager
+%service_add_post gpio-manager.service
+ 
+%preun manager
+%service_del_preun gpio-manager.service
+ 
+%postun manager
+%service_del_postun  gpio-manager.service
+
+%files
+%license COPYING
+%doc README.md
+%{_sysusersdir}/gpiod.conf
+%{_udevrulesdir}/90-gpio.rules
+
 %files utils
-%{_bindir}/gpio*
+%{_bindir}/gpiodetect
+%{_bindir}/gpioget
+%{_bindir}/gpioinfo
+%{_bindir}/gpiomon
+%{_bindir}/gpionotify
+%{_bindir}/gpioset
+#%%{_mandir}/man*/gpio*
 
 %files -n libgpiod%{libgpiod_soversion}
 %{_libdir}/libgpiod.so.%{libgpiod_soversion}
 %{_libdir}/libgpiod.so.%{libgpiod_soversion}.*
 
+%files -n libgpiodbus%{libgpiodbus_soversion}
+%{_libdir}/libgpiodbus.so.%{libgpiodbus_soversion}
+%{_libdir}/libgpiodbus.so.%{libgpiodbus_soversion}.*
+
 %files -n libgpiodcxx%{libgpiodcxx_soversion}
 %{_libdir}/libgpiodcxx.so.%{libgpiodcxx_soversion}
 %{_libdir}/libgpiodcxx.so.%{libgpiodcxx_soversion}.*
 
+%files -n libgpiod-glib%{libgpiodglib_soversion}
+%{_libdir}/libgpiod-glib.so.%{libgpiodglib_soversion}
+%{_libdir}/libgpiod-glib.so.%{libgpiodglib_soversion}.*
+
 %if %{with libgpiod_tests}
-%files -n libgpiomockup%{libgpiomockup_soversion}
-%{_libdir}/libgpiomockup.so.%{libgpiomockup_soversion}
-%{_libdir}/libgpiomockup.so.%{libgpiomockup_soversion}.*
+%files -n libgpiosim%{libgpiosim_soversion}
+%{_libdir}/libgpiosim.so.%{libgpiosim_soversion}
+%{_libdir}/libgpiosim.so.%{libgpiosim_soversion}.*
 %endif
 
 %files devel
 %{_includedir}/*.h*
+%dir %{_includedir}/gpiod-glib/
+%{_includedir}/gpiod-glib/*.h
+%dir %{_includedir}/gpiodcxx/
+%{_includedir}/gpiodcxx/*.hpp
 %{_libdir}/*.so
 %{_libdir}/pkgconfig/libgpiod.pc
 %{_libdir}/pkgconfig/libgpiodcxx.pc
+%{_libdir}/pkgconfig/gpiod-glib.pc
 
+%if %{with libgpiod_python}
 %files -n python3-gpiod
-%{python3_sitearch}/*.so
+%{python3_sitearch}/gpiod/
+%{python3_sitearch}/gpiod-*.dist-info
+%endif
+
+%files manager
+%{_bindir}/gpio-manager
+%{_bindir}/gpiocli
+%config %{_sysconfdir}/dbus-1/system.d/io.gpiod1.conf
+%{_datadir}/dbus-1/interfaces/io.gpiod1.xml
+%{_unitdir}/gpio-manager.service
 

++++++ gpiod-sysusers.conf ++++++
#Type Name         ID  GECOS                     Home directory Shell
g     gpio         -
u     gpio-manager -   "gpio-manager account"    -              -
m     gpio-manager gpio

++++++ libgpiod-1.6.3.tar.gz -> libgpiod-2.2.1.tar.gz ++++++
++++ 77364 lines of diff (skipped)

Reply via email to