]>
Commit | Line | Data |
---|---|---|
1 | # TODO: | |
2 | # - package user docs from build/Documentation | |
3 | # | |
4 | # Conditional build: | |
5 | %bcond_without gui # libinput-debug-gui | |
6 | %bcond_without libunwind # libunwind debugging support | |
7 | %bcond_without doc # documentation | |
8 | %bcond_without tests # tests | |
9 | ||
10 | %ifnarch %{ix86} %{x8664} %{arm} hppa ia64 mips ppc ppc64 sh | |
11 | %undefine with_libunwind | |
12 | %endif | |
13 | Summary: Input device library | |
14 | Summary(pl.UTF-8): Biblioteka urządzeń wejściowych | |
15 | Name: libinput | |
16 | Version: 1.16.4 | |
17 | Release: 1 | |
18 | License: MIT | |
19 | Group: Libraries | |
20 | Source0: https://www.freedesktop.org/software/libinput/%{name}-%{version}.tar.xz | |
21 | # Source0-md5: 1fdc670e62a08bcebceabd23af3d639a | |
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 | |
34 | %if %{with gui} | |
35 | BuildRequires: cairo-devel | |
36 | BuildRequires: glib2-devel >= 2.0 | |
37 | BuildRequires: gtk+3-devel >= 3.20 | |
38 | %endif | |
39 | %if %{with doc} | |
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 | |
45 | %endif | |
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) | |
50 | ||
51 | %description | |
52 | libinput is a library that handles input devices for display servers | |
53 | and other applications that need to directly deal with input devices. | |
54 | ||
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 | |
58 | that users expect. | |
59 | ||
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ń | |
63 | wejściowych. | |
64 | ||
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ść. | |
69 | ||
70 | %package gui | |
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 | |
76 | ||
77 | %description gui | |
78 | Debugging GUI for libinput. | |
79 | ||
80 | %description gui -l pl.UTF-8 | |
81 | Graficzny interfejs diagnostyczny do libinput. | |
82 | ||
83 | %package devel | |
84 | Summary: Development files for libinput | |
85 | Summary(pl.UTF-8): Pliki programistyczne biblioteki libinput | |
86 | Group: Development/Libraries | |
87 | Requires: %{name} = %{version}-%{release} | |
88 | Requires: udev-devel | |
89 | ||
90 | %description devel | |
91 | This package contains the header files for developing applications | |
92 | that use libinput. | |
93 | ||
94 | %description devel -l pl.UTF-8 | |
95 | Ten pakiet zawiera pliki nagłówkowe niezbędne do tworzenia aplikacji | |
96 | wykorzystujących bibliotekę libinput. | |
97 | ||
98 | %package apidocs | |
99 | Summary: API documentation for libinput library | |
100 | Summary(pl.UTF-8): Dokumentacja API biblioteki libinput | |
101 | Group: Documentation | |
102 | %if "%{_rpmversion}" >= "4.6" | |
103 | BuildArch: noarch | |
104 | %endif | |
105 | ||
106 | %description apidocs | |
107 | API documentation for libinput library. | |
108 | ||
109 | %description apidocs -l pl.UTF-8 | |
110 | Dokumentacja API biblioteki libinput. | |
111 | ||
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} | |
117 | Requires: zsh | |
118 | ||
119 | %description -n zsh-completion-%{name} | |
120 | Zsh completion for libinput command. | |
121 | ||
122 | %description -n zsh-completion-%{name} -l pl.UTF-8 | |
123 | Dopełnianie parametrów w zsh dla polecenia libinput. | |
124 | ||
125 | %prep | |
126 | %setup -q | |
127 | ||
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} | |
131 | ||
132 | %build | |
133 | %meson build \ | |
134 | -Ddebug-gui=%{__true_false gui} \ | |
135 | -Ddocumentation=%{__true_false doc} \ | |
136 | -Dudev-dir=/lib/udev \ | |
137 | -Dzshcompletiondir=%{zsh_compdir} | |
138 | ||
139 | %ninja_build -C build | |
140 | ||
141 | %{?with_tests:%ninja_test -C build} | |
142 | ||
143 | %install | |
144 | rm -rf $RPM_BUILD_ROOT | |
145 | ||
146 | %ninja_install -C build | |
147 | ||
148 | %{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/libinput-test-suite.1 | |
149 | ||
150 | %clean | |
151 | rm -rf $RPM_BUILD_ROOT | |
152 | ||
153 | %post -p /sbin/ldconfig | |
154 | %postun -p /sbin/ldconfig | |
155 | ||
156 | %files | |
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* | |
201 | ||
202 | %if %{with gui} | |
203 | %files gui | |
204 | %defattr(644,root,root,755) | |
205 | %attr(755,root,root) %{_libexecdir}/libinput/libinput-debug-gui | |
206 | %{_mandir}/man1/libinput-debug-gui.1* | |
207 | %endif | |
208 | ||
209 | %files devel | |
210 | %defattr(644,root,root,755) | |
211 | %attr(755,root,root) %{_libdir}/libinput.so | |
212 | %{_includedir}/libinput.h | |
213 | %{_pkgconfigdir}/libinput.pc | |
214 | ||
215 | %if %{with doc} | |
216 | %files apidocs | |
217 | %defattr(644,root,root,755) | |
218 | %doc build/api/* | |
219 | %endif | |
220 | ||
221 | %files -n zsh-completion-%{name} | |
222 | %defattr(644,root,root,755) | |
223 | %{zsh_compdir}/_libinput |