2 # - package user docs from build/Documentation
5 %bcond_without gui # libinput-debug-gui
6 %bcond_without libunwind # libunwind debugging support
7 %bcond_without doc # documentation
8 %bcond_without tests # tests
10 %ifnarch %{ix86} %{x8664} %{arm} hppa ia64 mips ppc ppc64 sh
11 %undefine with_libunwind
13 Summary: Input device library
14 Summary(pl.UTF-8): Biblioteka urządzeń wejściowych
20 Source0: https://www.freedesktop.org/software/libinput/%{name}-%{version}.tar.xz
21 # Source0-md5: 51454993fcc576f4480aba8c1c3232ac
22 URL: https://www.freedesktop.org/wiki/Software/libinput/
23 BuildRequires: check-devel >= 0.9.10
24 BuildRequires: libevdev-devel >= 1.3
25 %{?with_libunwind:BuildRequires: libunwind-devel}
26 BuildRequires: libwacom-devel >= 0.20
27 BuildRequires: meson >= 0.45.0
28 BuildRequires: mtdev-devel >= 1.1.0
29 BuildRequires: ninja >= 1.5
30 BuildRequires: pkgconfig
31 BuildRequires: rpmbuild(macros) >= 1.736
32 BuildRequires: udev-devel
33 BuildRequires: valgrind
35 BuildRequires: cairo-devel
36 BuildRequires: glib2-devel >= 2.0
37 BuildRequires: gtk+3-devel >= 3.20
40 BuildRequires: doxygen >= 1.8.3
41 BuildRequires: graphviz >= 2.26.0
42 BuildRequires: python3-recommonmark
43 BuildRequires: python3-sphinx_rtd_theme
44 BuildRequires: sphinx-pdg-3
46 Requires: libevdev >= 1.3
47 Requires: libwacom >= 0.20
48 Requires: mtdev >= 1.1.0
49 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
52 libinput is a library that handles input devices for display servers
53 and other applications that need to directly deal with input devices.
55 It provides device detection, device handling, input device event
56 processing and abstraction so minimize the amount of custom input code
57 the user of libinput need to provide the common set of functionality
60 %description -l pl.UTF-8
61 libinput to biblioteka obsługująca urządzenia wejściowe dla serwerów
62 grafiki i innych aplikacji wymagających bezpośredniej obsługi urządzeń
65 Biblioteka zapewnia wykrywanie urządzeń, obsługę urządzeń,
66 przetwarzanie zdarzeń urządzeń wejściowych oraz abstrakcję,
67 minimalizując ilość własnego kodu, który musi napisać użytkownik
68 biblioteki, aby zapewnić oczekiwaną funkcjonalność.
71 Summary: Debugging GUI for libinput
72 Summary(pl.UTF-8): Graficzny interfejs diagnostyczny do libinput
73 Group: X11/Applications
74 Requires: %{name} = %{version}-%{release}
75 Requires: gtk+3 >= 3.20
78 Debugging GUI for libinput.
80 %description gui -l pl.UTF-8
81 Graficzny interfejs diagnostyczny do libinput.
84 Summary: Development files for libinput
85 Summary(pl.UTF-8): Pliki programistyczne biblioteki libinput
86 Group: Development/Libraries
87 Requires: %{name} = %{version}-%{release}
91 This package contains the header files for developing applications
94 %description devel -l pl.UTF-8
95 Ten pakiet zawiera pliki nagłówkowe niezbędne do tworzenia aplikacji
96 wykorzystujących bibliotekę libinput.
99 Summary: Static libinput library
100 Summary(pl.UTF-8): Statyczna biblioteka libinput
101 Group: Development/Libraries
102 Requires: %{name}-devel = %{version}-%{release}
105 Static libinput library.
107 %description static -l pl.UTF-8
108 Statyczna biblioteka libinput.
111 Summary: API documentation for libinput library
112 Summary(pl.UTF-8): Dokumentacja API biblioteki libinput
114 %if "%{_rpmversion}" >= "4.6"
119 API documentation for libinput library.
121 %description apidocs -l pl.UTF-8
122 Dokumentacja API biblioteki libinput.
124 %package -n zsh-completion-%{name}
125 Summary: Zsh completion for libinput command
126 Summary(pl.UTF-8): Dopełnianie parametrów w zsh dla polecenia libinput
127 Group: Applications/Shells
128 Requires: %{name} = %{epoch}:%{version}-%{release}
131 %description -n zsh-completion-%{name}
132 Zsh completion for libinput command.
134 %description -n zsh-completion-%{name} -l pl.UTF-8
135 Dopełnianie parametrów w zsh dla polecenia libinput.
140 %{__sed} -i -e '1s,/usr/bin/env python3,%{__python3},' \
141 tools/libinput-measure-{fuzz,touchpad-pressure,touch-size,touchpad-tap}.py \
142 tools/libinput-{replay,analyze-per-slot-delta.py,measure-touchpad-size.py}
146 -Ddebug-gui=%{__true_false gui} \
147 -Ddocumentation=%{__true_false doc} \
148 -Dudev-dir=/lib/udev \
149 -Dzshcompletiondir=%{zsh_compdir}
151 %ninja_build -C build
153 %{?with_tests:%ninja_test -C build}
156 rm -rf $RPM_BUILD_ROOT
158 %ninja_install -C build
160 %{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/libinput-test-suite.1
163 rm -rf $RPM_BUILD_ROOT
165 %post -p /sbin/ldconfig
166 %postun -p /sbin/ldconfig
169 %defattr(644,root,root,755)
170 %doc COPYING README.md
171 %attr(755,root,root) %{_bindir}/libinput
172 %attr(755,root,root) %{_libdir}/libinput.so.*.*.*
173 %attr(755,root,root) %ghost %{_libdir}/libinput.so.10
174 %dir %{_libexecdir}/libinput
175 %attr(755,root,root) %{_libexecdir}/libinput/libinput-analyze
176 %attr(755,root,root) %{_libexecdir}/libinput/libinput-analyze-per-slot-delta
177 %attr(755,root,root) %{_libexecdir}/libinput/libinput-debug-events
178 %attr(755,root,root) %{_libexecdir}/libinput/libinput-debug-tablet
179 %attr(755,root,root) %{_libexecdir}/libinput/libinput-list-devices
180 %attr(755,root,root) %{_libexecdir}/libinput/libinput-measure
181 %attr(755,root,root) %{_libexecdir}/libinput/libinput-measure-fuzz
182 %attr(755,root,root) %{_libexecdir}/libinput/libinput-measure-touchpad-pressure
183 %attr(755,root,root) %{_libexecdir}/libinput/libinput-measure-touchpad-size
184 %attr(755,root,root) %{_libexecdir}/libinput/libinput-measure-touchpad-tap
185 %attr(755,root,root) %{_libexecdir}/libinput/libinput-measure-touch-size
186 %attr(755,root,root) %{_libexecdir}/libinput/libinput-quirks
187 %attr(755,root,root) %{_libexecdir}/libinput/libinput-record
188 %attr(755,root,root) %{_libexecdir}/libinput/libinput-replay
189 %attr(755,root,root) /lib/udev/libinput-device-group
190 %attr(755,root,root) /lib/udev/libinput-fuzz-extract
191 %attr(755,root,root) /lib/udev/libinput-fuzz-to-zero
192 /lib/udev/rules.d/80-libinput-device-groups.rules
193 /lib/udev/rules.d/90-libinput-fuzz-override.rules
194 %dir %{_datadir}/libinput
195 %{_datadir}/libinput/*.quirks
196 %{_mandir}/man1/libinput.1*
197 %{_mandir}/man1/libinput-analyze.1*
198 %{_mandir}/man1/libinput-analyze-per-slot-delta.1*
199 %{_mandir}/man1/libinput-debug-events.1*
200 %{_mandir}/man1/libinput-debug-tablet.1*
201 %{_mandir}/man1/libinput-list-devices.1*
202 %{_mandir}/man1/libinput-measure.1*
203 %{_mandir}/man1/libinput-measure-fuzz.1*
204 %{_mandir}/man1/libinput-measure-touchpad-pressure.1*
205 %{_mandir}/man1/libinput-measure-touchpad-size.1*
206 %{_mandir}/man1/libinput-measure-touchpad-tap.1*
207 %{_mandir}/man1/libinput-measure-touch-size.1*
208 %{_mandir}/man1/libinput-quirks.1*
209 %{_mandir}/man1/libinput-quirks-list.1*
210 %{_mandir}/man1/libinput-quirks-validate.1*
211 %{_mandir}/man1/libinput-record.1*
212 %{_mandir}/man1/libinput-replay.1*
216 %defattr(644,root,root,755)
217 %attr(755,root,root) %{_libexecdir}/libinput/libinput-debug-gui
218 %{_mandir}/man1/libinput-debug-gui.1*
222 %defattr(644,root,root,755)
223 %attr(755,root,root) %{_libdir}/libinput.so
224 %{_includedir}/libinput.h
225 %{_pkgconfigdir}/libinput.pc
229 %defattr(644,root,root,755)
233 %files -n zsh-completion-%{name}
234 %defattr(644,root,root,755)
235 %{zsh_compdir}/_libinput