up to 1.15.5
[packages/libinput.git] / libinput.spec
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.15.5
17 Release:        1
18 License:        MIT
19 Group:          Libraries
20 Source0:        https://www.freedesktop.org/software/libinput/%{name}-%{version}.tar.xz
21 # Source0-md5:  c9a1b15bb932eaf22f840efe4c3f84eb
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.41.0
28 BuildRequires:  mtdev-devel >= 1.1.0
29 BuildRequires:  ninja >= 1.5
30 BuildRequires:  pkgconfig
31 BuildRequires:  rpmbuild(macros) >= 1.728
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 static
99 Summary:        Static libinput library
100 Summary(pl.UTF-8):      Statyczna biblioteka libinput
101 Group:          Development/Libraries
102 Requires:       %{name}-devel = %{version}-%{release}
103
104 %description static
105 Static libinput library.
106
107 %description static -l pl.UTF-8
108 Statyczna biblioteka libinput.
109
110 %package apidocs
111 Summary:        API documentation for libinput library
112 Summary(pl.UTF-8):      Dokumentacja API biblioteki libinput
113 Group:          Documentation
114 %if "%{_rpmversion}" >= "5"
115 BuildArch:      noarch
116 %endif
117
118 %description apidocs
119 API documentation for libinput library.
120
121 %description apidocs -l pl.UTF-8
122 Dokumentacja API biblioteki libinput.
123
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}
129 Requires:       zsh
130
131 %description -n zsh-completion-%{name}
132 Zsh completion for libinput command.
133
134 %description -n zsh-completion-%{name} -l pl.UTF-8
135 Dopełnianie parametrów w zsh dla polecenia libinput.
136
137 %prep
138 %setup -q
139
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
143
144 %build
145 %meson build \
146         -Ddebug-gui=%{__true_false gui} \
147         -Ddocumentation=%{__true_false doc} \
148         -Dudev-dir=/lib/udev \
149         -Dzshcompletiondir=%{zsh_compdir}
150 %meson_build -C build
151
152 %{?with_tests:%meson_test -C build}
153
154 %install
155 rm -rf $RPM_BUILD_ROOT
156
157 %meson_install -C build
158
159 %{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/libinput-test-suite.1
160
161 %clean
162 rm -rf $RPM_BUILD_ROOT
163
164 %post   -p /sbin/ldconfig
165 %postun -p /sbin/ldconfig
166
167 %files
168 %defattr(644,root,root,755)
169 %doc COPYING README.md
170 %attr(755,root,root) %{_bindir}/libinput
171 %attr(755,root,root) %{_libdir}/libinput.so.*.*.*
172 %attr(755,root,root) %ghost %{_libdir}/libinput.so.10
173 %dir %{_libexecdir}/libinput
174 %attr(755,root,root) %{_libexecdir}/libinput/libinput-debug-events
175 %attr(755,root,root) %{_libexecdir}/libinput/libinput-debug-tablet
176 %attr(755,root,root) %{_libexecdir}/libinput/libinput-list-devices
177 %attr(755,root,root) %{_libexecdir}/libinput/libinput-measure
178 %attr(755,root,root) %{_libexecdir}/libinput/libinput-measure-fuzz
179 %attr(755,root,root) %{_libexecdir}/libinput/libinput-measure-touchpad-pressure
180 %attr(755,root,root) %{_libexecdir}/libinput/libinput-measure-touchpad-tap
181 %attr(755,root,root) %{_libexecdir}/libinput/libinput-measure-touch-size
182 %attr(755,root,root) %{_libexecdir}/libinput/libinput-quirks
183 %attr(755,root,root) %{_libexecdir}/libinput/libinput-record
184 %attr(755,root,root) %{_libexecdir}/libinput/libinput-replay
185 %attr(755,root,root) /lib/udev/libinput-device-group
186 %attr(755,root,root) /lib/udev/libinput-fuzz-extract
187 %attr(755,root,root) /lib/udev/libinput-fuzz-to-zero
188 /lib/udev/rules.d/80-libinput-device-groups.rules
189 /lib/udev/rules.d/90-libinput-fuzz-override.rules
190 %dir %{_datadir}/libinput
191 %{_datadir}/libinput/*.quirks
192 %{_mandir}/man1/libinput.1*
193 %{_mandir}/man1/libinput-debug-events.1*
194 %{_mandir}/man1/libinput-debug-tablet.1*
195 %{_mandir}/man1/libinput-list-devices.1*
196 %{_mandir}/man1/libinput-measure.1*
197 %{_mandir}/man1/libinput-measure-fuzz.1*
198 %{_mandir}/man1/libinput-measure-touchpad-pressure.1*
199 %{_mandir}/man1/libinput-measure-touchpad-tap.1*
200 %{_mandir}/man1/libinput-measure-touch-size.1*
201 %{_mandir}/man1/libinput-quirks.1*
202 %{_mandir}/man1/libinput-quirks-list.1*
203 %{_mandir}/man1/libinput-quirks-validate.1*
204 %{_mandir}/man1/libinput-record.1*
205 %{_mandir}/man1/libinput-replay.1*
206
207 %if %{with gui}
208 %files gui
209 %defattr(644,root,root,755)
210 %attr(755,root,root) %{_libexecdir}/libinput/libinput-debug-gui
211 %{_mandir}/man1/libinput-debug-gui.1*
212 %endif
213
214 %files devel
215 %defattr(644,root,root,755)
216 %attr(755,root,root) %{_libdir}/libinput.so
217 %{_includedir}/libinput.h
218 %{_pkgconfigdir}/libinput.pc
219
220 %if %{with doc}
221 %files apidocs
222 %defattr(644,root,root,755)
223 %doc build/api/*
224 %endif
225
226 %files -n zsh-completion-%{name}
227 %defattr(644,root,root,755)
228 %{zsh_compdir}/_libinput
This page took 0.104453 seconds and 3 git commands to generate.