]> git.pld-linux.org Git - packages/libinput.git/blob - libinput.spec
- missing BRs: valgring, ninja >= 1.5, fixed doc bcond
[packages/libinput.git] / libinput.spec
1 #
2 # Conditional build:
3 %bcond_without  gui             # libinput-debug-gui
4 %bcond_without  libunwind       # libunwind debugging support
5 %bcond_with     static_libs     # static library
6 %bcond_without  doc             # documentation
7 %bcond_without  tests           # tests
8
9 %ifnarch %{ix86} %{x8664} %{arm} hppa ia64 mips ppc ppc64 sh
10 %undefine       with_libunwind
11 %endif
12 Summary:        Input device library
13 Summary(pl.UTF-8):      Biblioteka urządzeń wejściowych
14 Name:           libinput
15 Version:        1.10.2
16 Release:        1
17 License:        MIT
18 Group:          Libraries
19 Source0:        https://www.freedesktop.org/software/libinput/%{name}-%{version}.tar.xz
20 # Source0-md5:  f188d826de5b958cc561eec2b0c3d254
21 URL:            https://www.freedesktop.org/wiki/Software/libinput/
22 BuildRequires:  check-devel >= 0.9.10
23 %if %{with gui}
24 BuildRequires:  cairo-devel
25 BuildRequires:  glib2-devel >= 2.0
26 BuildRequires:  gtk+3-devel >= 3.20
27 %endif
28 %if %{with doc}
29 BuildRequires:  doxygen >= 1.8.3
30 BuildRequires:  graphviz >= 2.26.0
31 %endif
32 BuildRequires:  libevdev-devel >= 1.3
33 %{?with_libunwind:BuildRequires:        libunwind-devel}
34 BuildRequires:  libwacom-devel >= 0.20
35 BuildRequires:  meson >= 0.40.0
36 BuildRequires:  mtdev-devel >= 1.1.0
37 BuildRequires:  ninja >= 1.5
38 BuildRequires:  pkgconfig
39 BuildRequires:  rpmbuild(macros) >= 1.728
40 BuildRequires:  udev-devel
41 BuildRequires:  valgrind
42 Requires:       libevdev >= 1.3
43 Requires:       libwacom >= 0.20
44 Requires:       mtdev >= 1.1.0
45 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
46
47 %description
48 libinput is a library that handles input devices for display servers
49 and other applications that need to directly deal with input devices.
50
51 It provides device detection, device handling, input device event
52 processing and abstraction so minimize the amount of custom input code
53 the user of libinput need to provide the common set of functionality
54 that users expect.
55
56 %description -l pl.UTF-8
57 libinput to biblioteka obsługująca urządzenia wejściowe dla serwerów
58 grafiki i innych aplikacji wymagających bezpośredniej obsługi urządzeń
59 wejściowych.
60
61 Biblioteka zapewnia wykrywanie urządzeń, obsługę urządzeń,
62 przetwarzanie zdarzeń urządzeń wejściowych oraz abstrakcję,
63 minimalizując ilość własnego kodu, który musi napisać użytkownik
64 biblioteki, aby zapewnić oczekiwaną funkcjonalność.
65
66 %package gui
67 Summary:        Debugging GUI for libinput
68 Summary(pl.UTF-8):      Graficzny interfejs diagnostyczny do libinput
69 Group:          X11/Applications
70 Requires:       %{name} = %{version}-%{release}
71 Requires:       gtk+3 >= 3.20
72
73 %description gui
74 Debugging GUI for libinput.
75
76 %description gui -l pl.UTF-8
77 Graficzny interfejs diagnostyczny do libinput.
78
79 %package devel
80 Summary:        Development files for libinput
81 Summary(pl.UTF-8):      Pliki programistyczne biblioteki libinput
82 Group:          Development/Libraries
83 Requires:       %{name} = %{version}-%{release}
84 Requires:       udev-devel
85
86 %description devel
87 This package contains the header files for developing applications
88 that use libinput.
89
90 %description devel -l pl.UTF-8
91 Ten pakiet zawiera pliki nagłówkowe niezbędne do tworzenia aplikacji
92 wykorzystujących bibliotekę libinput.
93
94 %package static
95 Summary:        Static libinput library
96 Summary(pl.UTF-8):      Statyczna biblioteka libinput
97 Group:          Development/Libraries
98 Requires:       %{name}-devel = %{version}-%{release}
99
100 %description static
101 Static libinput library.
102
103 %description static -l pl.UTF-8
104 Statyczna biblioteka libinput.
105
106 %package apidocs
107 Summary:        API documentation for libinput library
108 Summary(pl.UTF-8):      Dokumentacja API biblioteki libinput
109 Group:          Documentation
110 %if "%{_rpmversion}" >= "5"
111 BuildArch:      noarch
112 %endif
113
114 %description apidocs
115 API documentation for libinput library.
116
117 %description apidocs -l pl.UTF-8
118 Dokumentacja API biblioteki libinput.
119
120 %prep
121 %setup -q
122
123 %{__sed} -i -e '1s,/usr/bin/env python3,%{__python3},' tools/libinput-measure-{trackpoint-range,touchpad-pressure,touch-size,touchpad-tap}
124
125 %build
126 %meson build \
127         -Ddebug-gui=%{__true_false gui} \
128         -Ddocumentation=%{__true_false doc} \
129         -Dudev-dir=/lib/udev
130 %meson_build -C build
131
132 %{?with_tests:%meson_test -C build}
133
134 %install
135 rm -rf $RPM_BUILD_ROOT
136
137 %meson_install -C build
138
139 %clean
140 rm -rf $RPM_BUILD_ROOT
141
142 %post   -p /sbin/ldconfig
143 %postun -p /sbin/ldconfig
144
145 %files
146 %defattr(644,root,root,755)
147 %doc COPYING README.md
148 %attr(755,root,root) %{_bindir}/libinput
149 %attr(755,root,root) %{_bindir}/libinput-debug-events
150 %attr(755,root,root) %{_bindir}/libinput-list-devices
151 %attr(755,root,root) %{_libdir}/libinput.so.*.*.*
152 %attr(755,root,root) %ghost %{_libdir}/libinput.so.10
153 %dir %{_libexecdir}/libinput
154 %attr(755,root,root) %{_libexecdir}/libinput/libinput-debug-events
155 %attr(755,root,root) %{_libexecdir}/libinput/libinput-list-devices
156 %attr(755,root,root) %{_libexecdir}/libinput/libinput-measure
157 %attr(755,root,root) %{_libexecdir}/libinput/libinput-measure-touchpad-pressure
158 %attr(755,root,root) %{_libexecdir}/libinput/libinput-measure-touchpad-tap
159 %attr(755,root,root) %{_libexecdir}/libinput/libinput-measure-touch-size
160 %attr(755,root,root) %{_libexecdir}/libinput/libinput-measure-trackpoint-range
161 %attr(755,root,root) /lib/udev/libinput-device-group
162 %attr(755,root,root) /lib/udev/libinput-model-quirks
163 /lib/udev/rules.d/80-libinput-device-groups.rules
164 /lib/udev/hwdb.d/90-libinput-model-quirks.hwdb
165 /lib/udev/rules.d/90-libinput-model-quirks.rules
166 %{_mandir}/man1/libinput.1*
167 %{_mandir}/man1/libinput-debug-events.1*
168 %{_mandir}/man1/libinput-list-devices.1*
169 %{_mandir}/man1/libinput-measure.1*
170 %{_mandir}/man1/libinput-measure-touchpad-pressure.1*
171 %{_mandir}/man1/libinput-measure-touchpad-tap.1*
172 %{_mandir}/man1/libinput-measure-touch-size.1*
173 %{_mandir}/man1/libinput-measure-trackpoint-range.1*
174
175 %if %{with gui}
176 %files gui
177 %defattr(644,root,root,755)
178 %attr(755,root,root) %{_libexecdir}/libinput/libinput-debug-gui
179 %{_mandir}/man1/libinput-debug-gui.1*
180 %endif
181
182 %files devel
183 %defattr(644,root,root,755)
184 %attr(755,root,root) %{_libdir}/libinput.so
185 %{_includedir}/libinput.h
186 %{_pkgconfigdir}/libinput.pc
187
188 %if %{with static_libs}
189 %files static
190 %defattr(644,root,root,755)
191 %{_libdir}/libinput.a
192 %endif
193
194 %if %{with doc}
195 %files apidocs
196 %defattr(644,root,root,755)
197 %doc build/html/*
198 %endif
This page took 0.038867 seconds and 4 git commands to generate.