Accepting request 841810 from home:StefanBruens:branches:X11:Wayland

- Split libinput-debug-gui from the library package build,
  removes GTK3 and transient build dependencies from libinput.
- Fix cleanup of python3-libevdev dependent helpers, now
  located under libexecdir
- Fix installation path of zsh-completion helpers, move to
  tools package.

OBS-URL: https://build.opensuse.org/request/show/841810
OBS-URL: https://build.opensuse.org/package/show/X11:Wayland/libinput?expand=0&rev=237
This commit is contained in:
Jan Engelhardt 2020-10-14 17:44:34 +00:00 committed by Git OBS Bridge
parent 748366d883
commit ddfd5ce73f
3 changed files with 81 additions and 14 deletions

3
_multibuild Normal file
View File

@ -0,0 +1,3 @@
<multibuild>
<package>extra</package>
</multibuild>

View File

@ -1,3 +1,13 @@
-------------------------------------------------------------------
Wed Oct 14 17:26:11 UTC 2020 - Stefan Brüns <stefan.bruens@rwth-aachen.de>
- Split libinput-debug-gui from the library package build,
removes GTK3 and transient build dependencies from libinput.
- Fix cleanup of python3-libevdev dependent helpers, now
located under libexecdir
- Fix installation path of zsh-completion helpers, move to
tools package.
------------------------------------------------------------------- -------------------------------------------------------------------
Wed Oct 7 05:21:18 UTC 2020 - Jan Engelhardt <jengelh@inai.de> Wed Oct 7 05:21:18 UTC 2020 - Jan Engelhardt <jengelh@inai.de>

View File

@ -16,10 +16,28 @@
# #
%bcond_with documentation %global flavor @BUILD_FLAVOR@%{nil}
%if "%flavor" == ""
Name: libinput Name: libinput
%bcond_without completion
%bcond_with documentation
%bcond_with debug_gui
%endif
%if "%flavor" == "extra"
Name: libinput-extra
%bcond_with completion
# no python3-recommonmark
%bcond_with documentation
%bcond_without debug_gui
%endif
# no python3-libevdev available
%bcond_with python3_libevdev
%define lname libinput10 %define lname libinput10
%define pname libinput
Version: 1.16.2 Version: 1.16.2
Release: 0 Release: 0
Summary: Input device and event processing library Summary: Input device and event processing library
@ -28,10 +46,10 @@ Group: Development/Libraries/C and C++
URL: https://www.freedesktop.org/wiki/Software/libinput/ URL: https://www.freedesktop.org/wiki/Software/libinput/
#Git-Web: https://gitlab.freedesktop.org/libinput/libinput/ #Git-Web: https://gitlab.freedesktop.org/libinput/libinput/
Source: http://freedesktop.org/software/libinput/%name-%version.tar.xz Source: http://freedesktop.org/software/libinput/%pname-%version.tar.xz
Source2: http://freedesktop.org/software/libinput/%name-%version.tar.xz.sig Source2: http://freedesktop.org/software/libinput/%pname-%version.tar.xz.sig
Source3: baselibs.conf Source3: baselibs.conf
Source4: %name.keyring Source4: %pname.keyring
Source5: libinput-rpmlintrc Source5: libinput-rpmlintrc
Patch1: kill-env.diff Patch1: kill-env.diff
@ -40,13 +58,16 @@ BuildRequires: gcc-c++
%if %{with documentation} %if %{with documentation}
BuildRequires: doxygen BuildRequires: doxygen
BuildRequires: graphviz >= 2.26 BuildRequires: graphviz >= 2.26
BuildRequires: python3-Sphinx
BuildRequires: python3-recommonmark
%endif %endif
BuildRequires: grep
BuildRequires: meson >= 0.41.0 BuildRequires: meson >= 0.41.0
BuildRequires: pkg-config BuildRequires: pkg-config
%if %{with debug_gui}
BuildRequires: pkgconfig(cairo) BuildRequires: pkgconfig(cairo)
BuildRequires: pkgconfig(glib-2.0) BuildRequires: pkgconfig(glib-2.0)
BuildRequires: pkgconfig(gtk+-3.0) >= 3.20 BuildRequires: pkgconfig(gtk+-3.0) >= 3.20
%endif
BuildRequires: pkgconfig(libevdev) >= 0.4 BuildRequires: pkgconfig(libevdev) >= 0.4
BuildRequires: pkgconfig(libudev) BuildRequires: pkgconfig(libudev)
BuildRequires: pkgconfig(libwacom) >= 0.20 BuildRequires: pkgconfig(libwacom) >= 0.20
@ -83,11 +104,23 @@ functionality that users expect.
%package tools %package tools
Summary: Utilities to display libinput configuration Summary: Utilities to display libinput configuration
Group: Hardware/Other Group: Hardware/Other
%if %{with python3_libevdev}
Requires: python3-libevdev
%endif
%description tools %description tools
This tool lists the locally recognised devices and their respective This tool lists the locally recognised devices and their respective
configuration options and configuration defaults. configuration options and configuration defaults.
%package -n %pname-debug-gui
Summary: Graphical libinput debug tool
Group: Hardware/Other
Requires: libinput-tools == %{version}-%{release}
%description -n %pname-debug-gui
This tool allows graphical libinput debugging. It visualizes
all events processed by libinput.
%package devel %package devel
Summary: Development files for the Input Device Library Summary: Development files for the Input Device Library
Group: Development/Libraries/C and C++ Group: Development/Libraries/C and C++
@ -101,26 +134,36 @@ This package contains all necessary include files and libraries needed
to develop applications that require libinput. to develop applications that require libinput.
%prep %prep
%autosetup -p1 %autosetup -p1 -n %pname-%version
%build %build
%meson \ %meson \
--includedir="%_includedir/%name" \ --includedir="%_includedir/%pname" \
--datadir="%_datadir/%name-%version" \ --datadir="%_datadir/%pname-%version" \
-Dzshcompletiondir=%{?with_completion:"%_datadir/zsh/site-functions"}%{!?with_completion:"no"} \
-Dudev-dir="%_prefix/lib/udev" \ -Dudev-dir="%_prefix/lib/udev" \
-Dtests=false \ -Dtests=false \
-Ddebug-gui=%{?with_debug_gui:true}%{!?with_debug_gui:false} \
-Ddocumentation=%{?with_documentation:true}%{!?with_documentation:false} \ -Ddocumentation=%{?with_documentation:true}%{!?with_documentation:false} \
%nil %nil
%meson_build %meson_build
%install %install
%meson_install %meson_install
%fdupes %buildroot/%_prefix
# no python3-libevdev available %if %{without python3_libevdev}
for i in libinput-measure-fuzz libinput-measure-touch-size libinput-measure-touchpad-pressure libinput-measure-touchpad-tap libinput-replay; do for i in libinput-measure-fuzz libinput-measure-touch-size libinput-measure-touchpad-pressure libinput-measure-touchpad-tap libinput-replay; do
rm -fv "%buildroot/usr/lib/libinput/$i" rm -fv "%buildroot/%_libexecdir/libinput/$i"
rm -fv "%buildroot/%_mandir/man1/$i".1* rm -fv "%buildroot/%_mandir/man1/$i".1*
done done
%endif
%if "%flavor" == "extra"
find "%buildroot/" \( -type f -o -type l \) -not -iname \*libinput-debug-gui\* -delete
find "%buildroot/" -type d -empty -delete
%endif
%fdupes %buildroot/%_prefix
%post -n %lname -p /sbin/ldconfig %post -n %lname -p /sbin/ldconfig
%postun -n %lname -p /sbin/ldconfig %postun -n %lname -p /sbin/ldconfig
@ -128,6 +171,7 @@ done
%post udev %post udev
[ -x /usr/bin/udevadm ] && /usr/bin/udevadm hwdb --update || : [ -x /usr/bin/udevadm ] && /usr/bin/udevadm hwdb --update || :
%if "%flavor" == ""
%files udev %files udev
%_prefix/lib/udev/libinput-device-group %_prefix/lib/udev/libinput-device-group
%_prefix/lib/udev/libinput-fuzz-* %_prefix/lib/udev/libinput-fuzz-*
@ -142,10 +186,20 @@ done
%_bindir/libinput %_bindir/libinput
%_libexecdir/libinput/ %_libexecdir/libinput/
%_mandir/man1/* %_mandir/man1/*
%dir %_datadir/zsh
%_datadir/zsh/site-functions
%files devel %files devel
%_includedir/%name/ %_includedir/%pname/
%_libdir/pkgconfig/libinput.pc %_libdir/pkgconfig/libinput.pc
%_libdir/libinput.so %_libdir/libinput.so
%endif
%if "%flavor" == "extra"
%files -n %pname-debug-gui
%dir %_libexecdir/libinput/
%_libexecdir/libinput/libinput-debug-gui
%_mandir/man1/libinput-debug-gui*
%endif
%changelog %changelog