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