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: 562614e91c10c75ab1c2b71e5d27f076
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: API documentation for libinput library
100 Summary(pl.UTF-8): Dokumentacja API biblioteki libinput
102 %if "%{_rpmversion}" >= "4.6"
107 API documentation for libinput library.
109 %description apidocs -l pl.UTF-8
110 Dokumentacja API biblioteki libinput.
112 %package -n zsh-completion-%{name}
113 Summary: Zsh completion for libinput command
114 Summary(pl.UTF-8): Dopełnianie parametrów w zsh dla polecenia libinput
115 Group: Applications/Shells
116 Requires: %{name} = %{epoch}:%{version}-%{release}
119 %description -n zsh-completion-%{name}
120 Zsh completion for libinput command.
122 %description -n zsh-completion-%{name} -l pl.UTF-8
123 Dopełnianie parametrów w zsh dla polecenia libinput.
128 %{__sed} -i -e '1s,/usr/bin/env python3,%{__python3},' \
129 tools/libinput-measure-{fuzz,touchpad-pressure,touch-size,touchpad-tap}.py \
130 tools/libinput-{replay,analyze-per-slot-delta.py,measure-touchpad-size.py}
134 -Ddebug-gui=%{__true_false gui} \
135 -Ddocumentation=%{__true_false doc} \
136 -Dudev-dir=/lib/udev \
137 -Dzshcompletiondir=%{zsh_compdir}
139 %ninja_build -C build
141 %{?with_tests:%ninja_test -C build}
144 rm -rf $RPM_BUILD_ROOT
146 %ninja_install -C build
148 %{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/libinput-test-suite.1
151 rm -rf $RPM_BUILD_ROOT
153 %post -p /sbin/ldconfig
154 %postun -p /sbin/ldconfig
157 %defattr(644,root,root,755)
158 %doc COPYING README.md
159 %attr(755,root,root) %{_bindir}/libinput
160 %attr(755,root,root) %{_libdir}/libinput.so.*.*.*
161 %attr(755,root,root) %ghost %{_libdir}/libinput.so.10
162 %dir %{_libexecdir}/libinput
163 %attr(755,root,root) %{_libexecdir}/libinput/libinput-analyze
164 %attr(755,root,root) %{_libexecdir}/libinput/libinput-analyze-per-slot-delta
165 %attr(755,root,root) %{_libexecdir}/libinput/libinput-debug-events
166 %attr(755,root,root) %{_libexecdir}/libinput/libinput-debug-tablet
167 %attr(755,root,root) %{_libexecdir}/libinput/libinput-list-devices
168 %attr(755,root,root) %{_libexecdir}/libinput/libinput-measure
169 %attr(755,root,root) %{_libexecdir}/libinput/libinput-measure-fuzz
170 %attr(755,root,root) %{_libexecdir}/libinput/libinput-measure-touchpad-pressure
171 %attr(755,root,root) %{_libexecdir}/libinput/libinput-measure-touchpad-size
172 %attr(755,root,root) %{_libexecdir}/libinput/libinput-measure-touchpad-tap
173 %attr(755,root,root) %{_libexecdir}/libinput/libinput-measure-touch-size
174 %attr(755,root,root) %{_libexecdir}/libinput/libinput-quirks
175 %attr(755,root,root) %{_libexecdir}/libinput/libinput-record
176 %attr(755,root,root) %{_libexecdir}/libinput/libinput-replay
177 %attr(755,root,root) /lib/udev/libinput-device-group
178 %attr(755,root,root) /lib/udev/libinput-fuzz-extract
179 %attr(755,root,root) /lib/udev/libinput-fuzz-to-zero
180 /lib/udev/rules.d/80-libinput-device-groups.rules
181 /lib/udev/rules.d/90-libinput-fuzz-override.rules
182 %dir %{_datadir}/libinput
183 %{_datadir}/libinput/*.quirks
184 %{_mandir}/man1/libinput.1*
185 %{_mandir}/man1/libinput-analyze.1*
186 %{_mandir}/man1/libinput-analyze-per-slot-delta.1*
187 %{_mandir}/man1/libinput-debug-events.1*
188 %{_mandir}/man1/libinput-debug-tablet.1*
189 %{_mandir}/man1/libinput-list-devices.1*
190 %{_mandir}/man1/libinput-measure.1*
191 %{_mandir}/man1/libinput-measure-fuzz.1*
192 %{_mandir}/man1/libinput-measure-touchpad-pressure.1*
193 %{_mandir}/man1/libinput-measure-touchpad-size.1*
194 %{_mandir}/man1/libinput-measure-touchpad-tap.1*
195 %{_mandir}/man1/libinput-measure-touch-size.1*
196 %{_mandir}/man1/libinput-quirks.1*
197 %{_mandir}/man1/libinput-quirks-list.1*
198 %{_mandir}/man1/libinput-quirks-validate.1*
199 %{_mandir}/man1/libinput-record.1*
200 %{_mandir}/man1/libinput-replay.1*
204 %defattr(644,root,root,755)
205 %attr(755,root,root) %{_libexecdir}/libinput/libinput-debug-gui
206 %{_mandir}/man1/libinput-debug-gui.1*
210 %defattr(644,root,root,755)
211 %attr(755,root,root) %{_libdir}/libinput.so
212 %{_includedir}/libinput.h
213 %{_pkgconfigdir}/libinput.pc
217 %defattr(644,root,root,755)
221 %files -n zsh-completion-%{name}
222 %defattr(644,root,root,755)
223 %{zsh_compdir}/_libinput