]> git.pld-linux.org Git - packages/libinput.git/blob - libinput.spec
up to 1.12.1
[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.12.1
17 Release:        1
18 License:        MIT
19 Group:          Libraries
20 Source0:        https://www.freedesktop.org/software/libinput/%{name}-%{version}.tar.xz
21 # Source0-md5:  0b6fff34e30cf7aafc33c8f884806960
22 URL:            https://www.freedesktop.org/wiki/Software/libinput/
23 BuildRequires:  check-devel >= 0.9.10
24 %if %{with gui}
25 BuildRequires:  cairo-devel
26 BuildRequires:  glib2-devel >= 2.0
27 BuildRequires:  gtk+3-devel >= 3.20
28 %endif
29 %if %{with doc}
30 BuildRequires:  doxygen >= 1.8.3
31 BuildRequires:  graphviz >= 2.26.0
32 BuildRequires:  python3-recommonmark
33 BuildRequires:  python3-sphinx_rtd_theme
34 BuildRequires:  sphinx-pdg-3
35 %endif
36 BuildRequires:  libevdev-devel >= 1.3
37 %{?with_libunwind:BuildRequires:        libunwind-devel}
38 BuildRequires:  libwacom-devel >= 0.20
39 BuildRequires:  meson >= 0.40.0
40 BuildRequires:  mtdev-devel >= 1.1.0
41 BuildRequires:  ninja >= 1.5
42 BuildRequires:  pkgconfig
43 BuildRequires:  rpmbuild(macros) >= 1.728
44 BuildRequires:  udev-devel
45 BuildRequires:  valgrind
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 %prep
125 %setup -q
126
127 %{__sed} -i -e '1s,/usr/bin/env python3,%{__python3},' tools/libinput-measure-{touchpad-pressure,touch-size,touchpad-tap}.py
128
129 %build
130 %meson build \
131         -Ddebug-gui=%{__true_false gui} \
132         -Ddocumentation=%{__true_false doc} \
133         -Dudev-dir=/lib/udev
134 %meson_build -C build
135
136 %{?with_tests:%meson_test -C build}
137
138 %install
139 rm -rf $RPM_BUILD_ROOT
140
141 %meson_install -C build
142
143 %clean
144 rm -rf $RPM_BUILD_ROOT
145
146 %post   -p /sbin/ldconfig
147 %postun -p /sbin/ldconfig
148
149 %files
150 %defattr(644,root,root,755)
151 %doc COPYING README.md
152 %attr(755,root,root) %{_bindir}/libinput
153 %attr(755,root,root) %{_libdir}/libinput.so.*.*.*
154 %attr(755,root,root) %ghost %{_libdir}/libinput.so.10
155 %dir %{_libexecdir}/libinput
156 %attr(755,root,root) %{_libexecdir}/libinput/libinput-debug-events
157 %attr(755,root,root) %{_libexecdir}/libinput/libinput-list-devices
158 %attr(755,root,root) %{_libexecdir}/libinput/libinput-measure
159 %attr(755,root,root) %{_libexecdir}/libinput/libinput-measure-fuzz
160 %attr(755,root,root) %{_libexecdir}/libinput/libinput-measure-touchpad-pressure
161 %attr(755,root,root) %{_libexecdir}/libinput/libinput-measure-touchpad-tap
162 %attr(755,root,root) %{_libexecdir}/libinput/libinput-measure-touch-size
163 %attr(755,root,root) %{_libexecdir}/libinput/libinput-quirks
164 %attr(755,root,root) %{_libexecdir}/libinput/libinput-record
165 %attr(755,root,root) %{_libexecdir}/libinput/libinput-replay
166 %attr(755,root,root) /lib/udev/libinput-device-group
167 %attr(755,root,root) /lib/udev/libinput-model-quirks
168 /lib/udev/rules.d/80-libinput-device-groups.rules
169 /lib/udev/rules.d/90-libinput-model-quirks.rules
170 %dir %{_datadir}/libinput
171 %{_datadir}/libinput/*.quirks
172 %{_mandir}/man1/libinput.1*
173 %{_mandir}/man1/libinput-debug-events.1*
174 %{_mandir}/man1/libinput-list-devices.1*
175 %{_mandir}/man1/libinput-measure.1*
176 %{_mandir}/man1/libinput-measure-fuzz.1*
177 %{_mandir}/man1/libinput-measure-touchpad-pressure.1*
178 %{_mandir}/man1/libinput-measure-touchpad-tap.1*
179 %{_mandir}/man1/libinput-measure-touch-size.1*
180 %{_mandir}/man1/libinput-quirks.1*
181 %{_mandir}/man1/libinput-quirks-list.1*
182 %{_mandir}/man1/libinput-quirks-validate.1*
183 %{_mandir}/man1/libinput-record.1*
184 %{_mandir}/man1/libinput-replay.1*
185
186 %if %{with gui}
187 %files gui
188 %defattr(644,root,root,755)
189 %attr(755,root,root) %{_libexecdir}/libinput/libinput-debug-gui
190 %{_mandir}/man1/libinput-debug-gui.1*
191 %endif
192
193 %files devel
194 %defattr(644,root,root,755)
195 %attr(755,root,root) %{_libdir}/libinput.so
196 %{_includedir}/libinput.h
197 %{_pkgconfigdir}/libinput.pc
198
199 %if %{with doc}
200 %files apidocs
201 %defattr(644,root,root,755)
202 %doc build/api/*
203 %endif
This page took 0.073125 seconds and 4 git commands to generate.