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