]> git.pld-linux.org Git - packages/libinput.git/blame - libinput.spec
up to 1.25.0
[packages/libinput.git] / libinput.spec
CommitLineData
578a3803
JP
1# TODO:
2# - package user docs from build/Documentation
11e9e5bb
JB
3#
4# Conditional build:
ef04d99c 5%bcond_without gui # libinput-debug-gui
1a316496 6%bcond_with gtk4 # build libinput-debug-gui with gtk4
f6d0d702 7%bcond_without libunwind # libunwind debugging support
a370658f 8%bcond_without doc # documentation
d254b872 9%bcond_without tests # tests
13fc90c9 10
f6d0d702
JB
11%ifnarch %{ix86} %{x8664} %{arm} hppa ia64 mips ppc ppc64 sh
12%undefine with_libunwind
13%endif
b1a834ff 14Summary: Input device library
66c98b1b 15Summary(pl.UTF-8): Biblioteka urządzeń wejściowych
b1a834ff 16Name: libinput
906a0fc3 17Version: 1.25.0
00a12037 18Release: 1
b1a834ff 19License: MIT
66c98b1b 20Group: Libraries
6b975982 21Source0: https://gitlab.freedesktop.org/libinput/libinput/-/archive/%{version}/%{name}-%{version}.tar.bz2
906a0fc3 22# Source0-md5: ab452d2dac4edc5d0eff21a329d2869a
c29a2c14 23URL: https://www.freedesktop.org/wiki/Software/libinput/
332a61be 24BuildRequires: check-devel >= 0.9.10
6258de66
JB
25BuildRequires: libevdev-devel >= 1.3
26%{?with_libunwind:BuildRequires: libunwind-devel}
27BuildRequires: libwacom-devel >= 0.20
906a0fc3 28BuildRequires: meson >= 0.56.0
6258de66
JB
29BuildRequires: mtdev-devel >= 1.1.0
30BuildRequires: ninja >= 1.5
31BuildRequires: pkgconfig
30108c5d 32BuildRequires: rpm-build >= 4.6
5143ab31 33BuildRequires: rpmbuild(macros) >= 1.752
30108c5d 34BuildRequires: sed >= 4.0
cedab715 35BuildRequires: tar >= 1:1.22
6258de66 36BuildRequires: udev-devel
e90f1041 37%{?with_tests:BuildRequires: valgrind}
cedab715 38BuildRequires: xz
a370658f
MK
39%if %{with gui}
40BuildRequires: cairo-devel
41BuildRequires: glib2-devel >= 2.0
1a316496 42%if %{with gtk4}
7892c2ae 43BuildRequires: gtk4-devel >= 4.0
1a316496 44%else
407ae804 45BuildRequires: gtk+3-devel >= 3.20
a370658f 46%endif
1a316496
JP
47BuildRequires: wayland-devel
48BuildRequires: wayland-protocols
49BuildRequires: xorg-lib-libX11-devel
50%endif
aed38082 51%if %{with doc}
407ae804 52BuildRequires: doxygen >= 1.8.3
bb392f52 53BuildRequires: graphviz >= 2.26.0
578a3803
JP
54BuildRequires: python3-recommonmark
55BuildRequires: python3-sphinx_rtd_theme
56BuildRequires: sphinx-pdg-3
a370658f 57%endif
ef04d99c 58Requires: libevdev >= 1.3
725df436
JB
59Requires: libwacom >= 0.20
60Requires: mtdev >= 1.1.0
66c98b1b 61BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
b1a834ff
AM
62
63%description
64libinput is a library that handles input devices for display servers
65and other applications that need to directly deal with input devices.
66
67It provides device detection, device handling, input device event
68processing and abstraction so minimize the amount of custom input code
69the user of libinput need to provide the common set of functionality
70that users expect.
71
66c98b1b
JB
72%description -l pl.UTF-8
73libinput to biblioteka obsługująca urządzenia wejściowe dla serwerów
74grafiki i innych aplikacji wymagających bezpośredniej obsługi urządzeń
75wejściowych.
76
77Biblioteka zapewnia wykrywanie urządzeń, obsługę urządzeń,
78przetwarzanie zdarzeń urządzeń wejściowych oraz abstrakcję,
79minimalizując ilość własnego kodu, który musi napisać użytkownik
80biblioteki, aby zapewnić oczekiwaną funkcjonalność.
81
ef04d99c
JB
82%package gui
83Summary: Debugging GUI for libinput
84Summary(pl.UTF-8): Graficzny interfejs diagnostyczny do libinput
85Group: X11/Applications
86Requires: %{name} = %{version}-%{release}
1a316496 87%if %{with gtk4}
7892c2ae 88Requires: gtk4 >= 4.0
1a316496 89%else
407ae804 90Requires: gtk+3 >= 3.20
1a316496 91%endif
ef04d99c
JB
92
93%description gui
94Debugging GUI for libinput.
95
96%description gui -l pl.UTF-8
97Graficzny interfejs diagnostyczny do libinput.
98
66c98b1b
JB
99%package devel
100Summary: Development files for libinput
101Summary(pl.UTF-8): Pliki programistyczne biblioteki libinput
102Group: Development/Libraries
b1a834ff 103Requires: %{name} = %{version}-%{release}
66c98b1b
JB
104Requires: udev-devel
105
106%description devel
107This package contains the header files for developing applications
108that use libinput.
109
110%description devel -l pl.UTF-8
111Ten pakiet zawiera pliki nagłówkowe niezbędne do tworzenia aplikacji
112wykorzystujących bibliotekę libinput.
113
66c98b1b
JB
114%package apidocs
115Summary: API documentation for libinput library
116Summary(pl.UTF-8): Dokumentacja API biblioteki libinput
117Group: Documentation
0ae83712 118BuildArch: noarch
66c98b1b
JB
119
120%description apidocs
121API documentation for libinput library.
122
123%description apidocs -l pl.UTF-8
124Dokumentacja API biblioteki libinput.
b1a834ff 125
45341a09
JP
126%package -n zsh-completion-%{name}
127Summary: Zsh completion for libinput command
128Summary(pl.UTF-8): Dopełnianie parametrów w zsh dla polecenia libinput
129Group: Applications/Shells
130Requires: %{name} = %{epoch}:%{version}-%{release}
131Requires: zsh
29f3c68c 132BuildArch: noarch
45341a09
JP
133
134%description -n zsh-completion-%{name}
135Zsh completion for libinput command.
136
137%description -n zsh-completion-%{name} -l pl.UTF-8
138Dopełnianie parametrów w zsh dla polecenia libinput.
139
b1a834ff
AM
140%prep
141%setup -q
142
6258de66 143%{__sed} -i -e '1s,/usr/bin/env python3,%{__python3},' \
73f60c09 144 tools/libinput-analyze-{per-slot-delta,recording,touch-down-state}.py \
bd55b903 145 tools/libinput-list-kernel-devices.py \
6258de66 146 tools/libinput-measure-{fuzz,touchpad-pressure,touch-size,touchpad-tap}.py \
73f60c09 147 tools/libinput-{replay,measure-touchpad-size}.py
bc749beb 148
30108c5d
JB
149%if %{without gtk4}
150%{__sed} -i -e "/dependency('gtk4'/ s/'gtk4'/'gtk4-disabled'/" meson.build
151%endif
152
b1a834ff 153%build
11306b0c 154%meson build \
2de91326
AM
155 -Ddebug-gui=%{__true_false gui} \
156 -Ddocumentation=%{__true_false doc} \
29ac39d3 157 -Dtests=%{__true_false tests} \
45341a09
JP
158 -Dudev-dir=/lib/udev \
159 -Dzshcompletiondir=%{zsh_compdir}
b1a834ff 160
2ea47e4f
JB
161%ninja_build -C build
162
163%{?with_tests:%ninja_test -C build}
b1a834ff
AM
164
165%install
166rm -rf $RPM_BUILD_ROOT
167
2ea47e4f 168%ninja_install -C build
66c98b1b 169
29ac39d3 170%{?with_tests:%{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/libinput-test-suite.1}
a3a0a290 171
b1a834ff
AM
172%clean
173rm -rf $RPM_BUILD_ROOT
174
66c98b1b
JB
175%post -p /sbin/ldconfig
176%postun -p /sbin/ldconfig
b1a834ff
AM
177
178%files
179%defattr(644,root,root,755)
ef04d99c
JB
180%doc COPYING README.md
181%attr(755,root,root) %{_bindir}/libinput
66c98b1b 182%attr(755,root,root) %{_libdir}/libinput.so.*.*.*
3bf5286f 183%attr(755,root,root) %ghost %{_libdir}/libinput.so.10
ef04d99c 184%dir %{_libexecdir}/libinput
f15e23dc
JP
185%attr(755,root,root) %{_libexecdir}/libinput/libinput-analyze
186%attr(755,root,root) %{_libexecdir}/libinput/libinput-analyze-per-slot-delta
73f60c09
JP
187%attr(755,root,root) %{_libexecdir}/libinput/libinput-analyze-recording
188%attr(755,root,root) %{_libexecdir}/libinput/libinput-analyze-touch-down-state
ef04d99c 189%attr(755,root,root) %{_libexecdir}/libinput/libinput-debug-events
7001c1ee 190%attr(755,root,root) %{_libexecdir}/libinput/libinput-debug-tablet
ef04d99c 191%attr(755,root,root) %{_libexecdir}/libinput/libinput-list-devices
bd55b903 192%attr(755,root,root) %{_libexecdir}/libinput/libinput-list-kernel-devices
ef04d99c 193%attr(755,root,root) %{_libexecdir}/libinput/libinput-measure
9a19d5af 194%attr(755,root,root) %{_libexecdir}/libinput/libinput-measure-fuzz
d254b872 195%attr(755,root,root) %{_libexecdir}/libinput/libinput-measure-touchpad-pressure
f15e23dc 196%attr(755,root,root) %{_libexecdir}/libinput/libinput-measure-touchpad-size
ef04d99c 197%attr(755,root,root) %{_libexecdir}/libinput/libinput-measure-touchpad-tap
d254b872 198%attr(755,root,root) %{_libexecdir}/libinput/libinput-measure-touch-size
578a3803 199%attr(755,root,root) %{_libexecdir}/libinput/libinput-quirks
9a19d5af
JP
200%attr(755,root,root) %{_libexecdir}/libinput/libinput-record
201%attr(755,root,root) %{_libexecdir}/libinput/libinput-replay
8dc131f6 202%attr(755,root,root) %{_libexecdir}/libinput/libinput-test
76cc7e64 203%attr(755,root,root) /lib/udev/libinput-device-group
7001c1ee
JP
204%attr(755,root,root) /lib/udev/libinput-fuzz-extract
205%attr(755,root,root) /lib/udev/libinput-fuzz-to-zero
76cc7e64 206/lib/udev/rules.d/80-libinput-device-groups.rules
ad4e8b69 207/lib/udev/rules.d/90-libinput-fuzz-override.rules
578a3803
JP
208%dir %{_datadir}/libinput
209%{_datadir}/libinput/*.quirks
ef04d99c 210%{_mandir}/man1/libinput.1*
f15e23dc
JP
211%{_mandir}/man1/libinput-analyze.1*
212%{_mandir}/man1/libinput-analyze-per-slot-delta.1*
73f60c09
JP
213%{_mandir}/man1/libinput-analyze-recording.1*
214%{_mandir}/man1/libinput-analyze-touch-down-state.1*
cf0d28df 215%{_mandir}/man1/libinput-debug-events.1*
7001c1ee 216%{_mandir}/man1/libinput-debug-tablet.1*
1573a790 217%{_mandir}/man1/libinput-list-devices.1*
bd55b903 218%{_mandir}/man1/libinput-list-kernel-devices.1*
ef04d99c 219%{_mandir}/man1/libinput-measure.1*
9a19d5af 220%{_mandir}/man1/libinput-measure-fuzz.1*
d254b872 221%{_mandir}/man1/libinput-measure-touchpad-pressure.1*
f15e23dc 222%{_mandir}/man1/libinput-measure-touchpad-size.1*
ef04d99c 223%{_mandir}/man1/libinput-measure-touchpad-tap.1*
d254b872 224%{_mandir}/man1/libinput-measure-touch-size.1*
578a3803
JP
225%{_mandir}/man1/libinput-quirks.1*
226%{_mandir}/man1/libinput-quirks-list.1*
227%{_mandir}/man1/libinput-quirks-validate.1*
9a19d5af
JP
228%{_mandir}/man1/libinput-record.1*
229%{_mandir}/man1/libinput-replay.1*
8dc131f6 230%{_mandir}/man1/libinput-test.1*
ef04d99c
JB
231
232%if %{with gui}
233%files gui
234%defattr(644,root,root,755)
235%attr(755,root,root) %{_libexecdir}/libinput/libinput-debug-gui
236%{_mandir}/man1/libinput-debug-gui.1*
237%endif
b1a834ff
AM
238
239%files devel
240%defattr(644,root,root,755)
b1a834ff 241%attr(755,root,root) %{_libdir}/libinput.so
66c98b1b 242%{_includedir}/libinput.h
b1a834ff 243%{_pkgconfigdir}/libinput.pc
66c98b1b 244
aed38082 245%if %{with doc}
66c98b1b
JB
246%files apidocs
247%defattr(644,root,root,755)
3a91b81a 248%doc build/doc/html/*
aed38082 249%endif
45341a09
JP
250
251%files -n zsh-completion-%{name}
252%defattr(644,root,root,755)
253%{zsh_compdir}/_libinput
This page took 0.234421 seconds and 4 git commands to generate.