]>
Commit | Line | Data |
---|---|---|
3adcb0b8 JB |
1 | # |
2 | # Conditional build: | |
0cb34c60 | 3 | %bcond_without drm # DRM compositor |
11c18ab6 | 4 | %bcond_without rdp # RDP compositor |
0cb34c60 JB |
5 | %bcond_without wayland # wayland (nested) compositor |
6 | %bcond_without x11 # X11 compositor | |
131b29b1 | 7 | %bcond_without libunwind # libunwind usage for backtraces |
9c73a052 | 8 | %bcond_without vaapi # vaapi recorder |
11b2a742 | 9 | %bcond_without vnc # VNC backend |
0cb34c60 | 10 | %bcond_without xwayland # X server launcher |
5e85efbd | 11 | %bcond_without dclients # demo clients |
0cb34c60 | 12 | %bcond_without sclients # simple clients |
b1b43d2b | 13 | %bcond_without clients # non-simple clients |
b38afc9e | 14 | %bcond_without remoting # remoting-plugin (requires DRM compositor + GStreamer) |
11b2a742 | 15 | %bcond_without pipewire # pipewire backend and plugin |
5e85efbd | 16 | %bcond_with apidocs # documentation (requires Sphinx 2.1+) |
131b29b1 | 17 | |
b38afc9e JB |
18 | %if %{without drm} |
19 | %undefine with_remoting | |
20 | %endif | |
3adcb0b8 JB |
21 | Summary: Weston - Wayland demos |
22 | Summary(pl.UTF-8): Weston - programy demonstracyjne dla protokołu Wayland | |
23 | Name: weston | |
35bdbced | 24 | Version: 13.0.1 |
11c18ab6 | 25 | Release: 1 |
3adcb0b8 JB |
26 | License: MIT |
27 | Group: Applications | |
11c18ab6 JP |
28 | #Source0Download: https://gitlab.freedesktop.org/wayland/weston/-/releases/ |
29 | Source0: https://gitlab.freedesktop.org/wayland/weston/-/releases/%{version}/downloads/%{name}-%{version}.tar.xz | |
35bdbced | 30 | # Source0-md5: 5795b9bfcfdd5f62f170e8bb3f01a3a5 |
d130821f | 31 | Patch0: %{name}-freerdp2.patch |
0606bec5 | 32 | Patch1: %{name}-noarch-protocols.patch |
bc222cc7 | 33 | URL: https://wayland.freedesktop.org/ |
3220cc8b JB |
34 | BuildRequires: EGL-devel |
35 | BuildRequires: OpenGLESv2-devel | |
11b2a742 JB |
36 | %if %{with vnc} |
37 | BuildRequires: aml-devel >= 0.3.0 | |
38 | BuildRequires: aml-devel < 0.4 | |
39 | %endif | |
0cb34c60 | 40 | BuildRequires: cairo-devel >= 1.10.0 |
09c3888d | 41 | BuildRequires: colord-devel >= 0.1.27 |
701d5d1a | 42 | BuildRequires: dbus-devel >= 1.6 |
ff471f7a | 43 | BuildRequires: doxygen |
11b2a742 | 44 | %{?with_rdp:BuildRequires: freerdp2-devel >= 2.3.0} |
5e85efbd | 45 | BuildRequires: glib2-devel >= 1:2.36 |
b38afc9e JB |
46 | %if %{with remoting} |
47 | BuildRequires: gstreamer-devel >= 1.0 | |
48 | BuildRequires: gstreamer-plugins-base-devel >= 1.0 | |
49 | %endif | |
11c18ab6 JP |
50 | BuildRequires: lcms2-devel >= 2.9 |
51 | BuildRequires: libdrm-devel >= 2.4.107 | |
b38afc9e | 52 | BuildRequires: libevdev-devel |
11b2a742 | 53 | BuildRequires: libinput-devel >= 1.2.0 |
0cb34c60 | 54 | BuildRequires: libjpeg-devel |
3adcb0b8 | 55 | BuildRequires: libpng-devel |
018fa030 | 56 | %{?with_drm:BuildRequires: libseat-devel >= 0.4} |
131b29b1 | 57 | %{?with_libunwind:BuildRequires: libunwind-devel} |
0cb34c60 | 58 | BuildRequires: libwebp-devel |
11b2a742 JB |
59 | BuildRequires: meson >= 0.63.0 |
60 | %if %{with vnc} | |
018fa030 JP |
61 | BuildRequires: neatvnc-devel >= 0.7.0 |
62 | BuildRequires: neatvnc-devel < 0.8 | |
11b2a742 | 63 | %endif |
5e85efbd | 64 | BuildRequires: ninja >= 1.5 |
11c18ab6 | 65 | %{?with_pipewire:BuildRequires: pipewire-devel >= 0.3} |
3b2a67c3 | 66 | BuildRequires: pixman-devel >= 0.26 |
3adcb0b8 | 67 | BuildRequires: pkgconfig |
3220cc8b JB |
68 | BuildRequires: pkgconfig(egl) |
69 | BuildRequires: pkgconfig(glesv2) | |
11b2a742 | 70 | BuildRequires: python3 >= 1:3 |
20ff2cfb | 71 | BuildRequires: rpm-build >= 4.6 |
5e85efbd | 72 | BuildRequires: rpmbuild(macros) >= 1.736 |
018fa030 | 73 | BuildRequires: systemd-devel |
3adcb0b8 | 74 | BuildRequires: tar >= 1:1.22 |
11b2a742 | 75 | # wayland-client, wayland-cursor, wayland-server |
018fa030 | 76 | BuildRequires: wayland-devel >= 1.22.0 |
a95a80fe JB |
77 | # for wayland and sclients, but also desktop-shell, which is always enabled |
78 | BuildRequires: wayland-egl-devel | |
11b2a742 JB |
79 | BuildRequires: wayland-protocols >= 1.31 |
80 | BuildRequires: xcb-util-cursor-devel | |
1cb405cb | 81 | BuildRequires: xorg-lib-libxkbcommon-devel >= 0.5.0 |
3adcb0b8 | 82 | BuildRequires: xz |
0cb34c60 | 83 | %if %{with drm} |
11c18ab6 | 84 | BuildRequires: Mesa-libgbm-devel >= 21.1.1 |
11b2a742 JB |
85 | BuildRequires: libdisplay-info-devel >= 0.1.1 |
86 | BuildRequires: libdisplay-info-devel < 0.2 | |
0cb34c60 | 87 | BuildRequires: mtdev-devel >= 1.1.0 |
6c4f66d1 | 88 | BuildRequires: udev-devel >= 1:136 |
0cb34c60 | 89 | %endif |
3b2a67c3 JB |
90 | %if %{with vaapi} |
91 | BuildRequires: libva-devel >= 1.2.0 | |
92 | BuildRequires: libva-drm-devel >= 1.2.0 | |
93 | # API versions | |
94 | BuildRequires: pkgconfig(libva) >= 0.34.0 | |
95 | BuildRequires: pkgconfig(libva-drm) >= 0.34.0 | |
96 | %endif | |
0cb34c60 | 97 | %if %{with x11} |
eab4380b JB |
98 | # xcb >= 1.8 xcb-xkb >= 1.9 xcb-shm |
99 | BuildRequires: libxcb-devel >= 1.9 | |
0cb34c60 JB |
100 | BuildRequires: xorg-lib-libX11-devel |
101 | %endif | |
87cc7398 | 102 | %if %{with vnc} |
0cb34c60 | 103 | BuildRequires: pam-devel |
0cb34c60 JB |
104 | %endif |
105 | %if %{with xwayland} | |
6f48f53b | 106 | # xcb xcb-composite xcb-xfixes |
0cb34c60 | 107 | BuildRequires: libxcb-devel |
1cb405cb | 108 | BuildRequires: pango-devel >= 1:1.10 |
6c4f66d1 JB |
109 | BuildRequires: pkgconfig(cairo-xcb) |
110 | BuildRequires: xorg-lib-libXcursor-devel | |
11c18ab6 | 111 | BuildRequires: xorg-xserver-Xwayland-devel |
0cb34c60 | 112 | %endif |
5e85efbd JB |
113 | %if %{with apidocs} |
114 | BuildRequires: doxygen >= 1.8 | |
115 | BuildRequires: python3-breathe >= 4.11 | |
116 | BuildRequires: sphinx-pdg >= 2.1.0 | |
b1b43d2b | 117 | %endif |
b38ed305 | 118 | Requires: %{name}-libs = %{version}-%{release} |
b38ed305 | 119 | Requires: colord-libs >= 0.1.27 |
3adcb0b8 JB |
120 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) |
121 | ||
122 | %description | |
123 | Weston contains a few demo application for the Wayland project. | |
124 | There's a sample compositor that can run on KMS, under X11 or under | |
125 | another Wayland compositor and there's a handful of simple clients | |
126 | that demonstrate various aspects of Wayland. | |
127 | ||
128 | %description -l pl.UTF-8 | |
129 | Weston zawiera kilka aplikacji demonstracyjnych dla projektu Wayland. | |
130 | Jest przykładowy serwer składający, który można uruchomić pod KMS, pod | |
131 | X11 lub pod innym serwerem składającym Wayland; są także proste | |
132 | programy klienckie demonstrujące różne aspekty protokołu Wayland. | |
133 | ||
5f05a417 JB |
134 | %package devel |
135 | Summary: Header files for Weston plugin development | |
136 | Summary(pl.UTF-8): Pliki nagłówkowe do tworzenia wtyczek dla Westona | |
137 | Group: Development/Libraries | |
b38ed305 | 138 | Requires: %{name}-libs-devel = %{version}-%{release} |
3220cc8b JB |
139 | Requires: EGL-devel |
140 | Requires: OpenGLESv2-devel | |
5f05a417 JB |
141 | |
142 | %description devel | |
143 | Header files for Weston plugin development. | |
144 | ||
145 | %description devel -l pl.UTF-8 | |
146 | Pliki nagłówkowe do tworzenia wtyczek dla Westona. | |
147 | ||
0606bec5 JB |
148 | %package protocols |
149 | Summary: Weston protocol files | |
150 | Summary(pl.UTF-8): Pliki protokołu Weston | |
151 | Group: Libraries | |
152 | Conflicts: weston < 9.0.0-2 | |
153 | Conflicts: weston-libs-devel < 9.0.0-2 | |
0606bec5 | 154 | BuildArch: noarch |
0606bec5 JB |
155 | |
156 | %description protocols | |
157 | Weston protocol files. | |
158 | ||
159 | %description protocols -l pl.UTF-8 | |
160 | Pliki protokołu Weston. | |
161 | ||
b38ed305 JB |
162 | %package libs |
163 | Summary: Weston compositor libraries | |
164 | Summary(pl.UTF-8): Biblioteki serwera składania Weston | |
165 | Group: Libraries | |
11c18ab6 | 166 | Requires: wayland >= 1.18.0 |
b38ed305 | 167 | Requires: pixman >= 0.26 |
1cb405cb | 168 | Requires: xorg-lib-libxkbcommon >= 0.5.0 |
b38ed305 | 169 | # the rest is for modules: |
a95a80fe | 170 | %{?with_drm:Requires: Mesa-libgbm >= 17.2} |
b38ed305 JB |
171 | Requires: cairo >= 1.10.0 |
172 | Requires: dbus-libs >= 1.6 | |
11c18ab6 JP |
173 | Requires: lcms2 >= 2.9 |
174 | Requires: libdrm >= 2.4.107 | |
11b2a742 | 175 | Requires: libinput >= 1.2.0 |
018fa030 | 176 | %{?with_drm:Requires: libseat >= 0.4} |
b38ed305 JB |
177 | %if %{with vaapi} |
178 | Requires: libva >= 1.2.0 | |
179 | Requires: libva-drm >= 1.2.0 | |
180 | %endif | |
eab4380b | 181 | %{?with_x11:Requires: libxcb >= 1.9} |
b38ed305 | 182 | %{?with_drm:Requires: mtdev >= 1.1.0} |
b38ed305 | 183 | %{?with_drm:Requires: udev-libs >= 1:136} |
124210ef | 184 | Requires: wayland-egl |
b38ed305 JB |
185 | |
186 | %description libs | |
187 | Weston compositor libraries. | |
188 | ||
189 | %description libs -l pl.UTF-8 | |
190 | Biblioteki serwera składania Weston. | |
191 | ||
192 | %package libs-devel | |
193 | Summary: Header files for libweston compositors development | |
194 | Summary(pl.UTF-8): Pliki nagłówkowe do rozwijania modułów składających biblioteki libweston | |
195 | Group: Development/Libraries | |
196 | Requires: %{name}-libs = %{version}-%{release} | |
35bdbced | 197 | Requires: pixman-devel >= 0.26 |
b38ed305 | 198 | # wayland-server |
018fa030 | 199 | Requires: wayland-devel >= 1.22.0 |
1cb405cb | 200 | Requires: xorg-lib-libxkbcommon-devel >= 0.5.0 |
b38ed305 JB |
201 | |
202 | %description libs-devel | |
203 | Header files for libweston compositors development. | |
204 | ||
205 | %description libs-devel -l pl.UTF-8 | |
206 | Pliki nagłówkowe do rozwijania modułów składających biblioteki | |
207 | libweston. | |
208 | ||
209 | %package compositor-rdp | |
210 | Summary: RDP compositor plugin for Weston | |
211 | Summary(pl.UTF-8): Wtyczka składająca RDP dla Westona | |
212 | Group: Libraries | |
213 | Requires: %{name} = %{version}-%{release} | |
11b2a742 | 214 | Requires: freerdp2 >= 2.3.0 |
b38ed305 JB |
215 | |
216 | %description compositor-rdp | |
217 | RDP compositor plugin for Weston. | |
218 | ||
219 | %description compositor-rdp -l pl.UTF-8 | |
220 | Wtyczka składająca RDP dla Westona. | |
221 | ||
3adcb0b8 JB |
222 | %prep |
223 | %setup -q | |
d130821f | 224 | %patch0 -p1 |
0606bec5 | 225 | %patch1 -p1 |
3adcb0b8 JB |
226 | |
227 | %build | |
5e85efbd JB |
228 | %meson build \ |
229 | %{!?with_drm:-Dbackend-drm=false} \ | |
230 | %{!?with_vaapi:-Dbackend-drm-screencast-vaapi=false} \ | |
11b2a742 | 231 | %{!?with_pipewire:-Dbackend-pipewire=false} \ |
5e85efbd JB |
232 | %{!?with_rdp:-Dbackend-rdp=false} \ |
233 | %{!?with_x11:-Dbackend-x11=false} \ | |
234 | %{!?with_dclients:-Ddemo-clients=""} \ | |
11b2a742 JB |
235 | -Ddeprecated-color-management-colord=true \ |
236 | -Ddeprecated-color-management-static=true \ | |
5e85efbd | 237 | %{?with_apidocs:-Ddoc=true} \ |
11b2a742 | 238 | %{!?with_pipewire:-Dpipewire=false} \ |
5e85efbd JB |
239 | %{!?with_remoting:-Dremoting=false} \ |
240 | %{!?with_sclients:-Dsimple-clients=""} \ | |
018fa030 | 241 | %{!?with_xwayland:-Dxwayland=false} |
5e85efbd JB |
242 | |
243 | %ninja_build -C build | |
3adcb0b8 JB |
244 | |
245 | %install | |
246 | rm -rf $RPM_BUILD_ROOT | |
247 | ||
5e85efbd | 248 | %ninja_install -C build |
3adcb0b8 JB |
249 | |
250 | %clean | |
251 | rm -rf $RPM_BUILD_ROOT | |
252 | ||
b38ed305 JB |
253 | %post libs -p /sbin/ldconfig |
254 | %postun libs -p /sbin/ldconfig | |
255 | ||
3adcb0b8 JB |
256 | %files |
257 | %defattr(644,root,root,755) | |
a95a80fe | 258 | %doc COPYING README.md |
6c4f66d1 | 259 | %attr(755,root,root) %{_bindir}/wcap-decode |
3adcb0b8 JB |
260 | # composer |
261 | %attr(755,root,root) %{_bindir}/weston | |
5e85efbd JB |
262 | %attr(755,root,root) %{_bindir}/weston-calibrator |
263 | %attr(755,root,root) %{_bindir}/weston-debug | |
b38afc9e | 264 | %attr(755,root,root) %{_bindir}/weston-screenshooter |
3adcb0b8 | 265 | %attr(755,root,root) %{_bindir}/weston-terminal |
5e85efbd JB |
266 | %attr(755,root,root) %{_bindir}/weston-touch-calibrator |
267 | %if %{with dclients} | |
268 | %attr(755,root,root) %{_bindir}/weston-clickdot | |
269 | %attr(755,root,root) %{_bindir}/weston-cliptest | |
018fa030 | 270 | %attr(755,root,root) %{_bindir}/weston-constraints |
5e85efbd JB |
271 | %attr(755,root,root) %{_bindir}/weston-content_protection |
272 | %attr(755,root,root) %{_bindir}/weston-dnd | |
273 | %attr(755,root,root) %{_bindir}/weston-editor | |
274 | %attr(755,root,root) %{_bindir}/weston-eventdemo | |
275 | %attr(755,root,root) %{_bindir}/weston-flower | |
276 | %attr(755,root,root) %{_bindir}/weston-fullscreen | |
277 | %attr(755,root,root) %{_bindir}/weston-image | |
278 | %attr(755,root,root) %{_bindir}/weston-multi-resource | |
279 | %attr(755,root,root) %{_bindir}/weston-presentation-shm | |
280 | %attr(755,root,root) %{_bindir}/weston-resizor | |
281 | %attr(755,root,root) %{_bindir}/weston-scaler | |
282 | %attr(755,root,root) %{_bindir}/weston-smoke | |
283 | %attr(755,root,root) %{_bindir}/weston-stacking | |
284 | %attr(755,root,root) %{_bindir}/weston-subsurfaces | |
11b2a742 | 285 | %attr(755,root,root) %{_bindir}/weston-tablet |
5e85efbd JB |
286 | %attr(755,root,root) %{_bindir}/weston-transformed |
287 | %endif | |
288 | %if %{with sclients} | |
289 | %attr(755,root,root) %{_bindir}/weston-simple-damage | |
290 | %attr(755,root,root) %{_bindir}/weston-simple-dmabuf-egl | |
11c18ab6 | 291 | %attr(755,root,root) %{_bindir}/weston-simple-dmabuf-feedback |
5e85efbd JB |
292 | %attr(755,root,root) %{_bindir}/weston-simple-dmabuf-v4l |
293 | %attr(755,root,root) %{_bindir}/weston-simple-egl | |
294 | %attr(755,root,root) %{_bindir}/weston-simple-shm | |
295 | %attr(755,root,root) %{_bindir}/weston-simple-touch | |
296 | %endif | |
3adcb0b8 | 297 | %attr(755,root,root) %{_libexecdir}/weston-desktop-shell |
5e85efbd | 298 | %attr(755,root,root) %{_libexecdir}/weston-ivi-shell-user-interface |
09c3888d | 299 | %attr(755,root,root) %{_libexecdir}/weston-keyboard |
09c3888d | 300 | %attr(755,root,root) %{_libexecdir}/weston-simple-im |
3adcb0b8 | 301 | %dir %{_libdir}/weston |
5e85efbd | 302 | %attr(755,root,root) %{_libdir}/weston/libexec_weston.so* |
09c3888d JB |
303 | %attr(755,root,root) %{_libdir}/weston/cms-colord.so |
304 | %attr(755,root,root) %{_libdir}/weston/cms-static.so | |
3adcb0b8 | 305 | %attr(755,root,root) %{_libdir}/weston/desktop-shell.so |
d9a79ece | 306 | %attr(755,root,root) %{_libdir}/weston/fullscreen-shell.so |
326e7c83 JB |
307 | %attr(755,root,root) %{_libdir}/weston/hmi-controller.so |
308 | %attr(755,root,root) %{_libdir}/weston/ivi-shell.so | |
aa85db3d | 309 | %attr(755,root,root) %{_libdir}/weston/kiosk-shell.so |
5e85efbd JB |
310 | %attr(755,root,root) %{_libdir}/weston/screen-share.so |
311 | %attr(755,root,root) %{_libdir}/weston/systemd-notify.so | |
3adcb0b8 | 312 | %{_datadir}/weston |
326e7c83 JB |
313 | %dir %{_datadir}/wayland-sessions |
314 | %{_datadir}/wayland-sessions/weston.desktop | |
9c19f94f | 315 | %{_mandir}/man1/weston.1* |
b38afc9e | 316 | %{_mandir}/man1/weston-debug.1* |
8228963f | 317 | %{_mandir}/man5/weston.ini.5* |
5e85efbd | 318 | %{_mandir}/man7/weston-bindings.7* |
e9c620bf | 319 | %{_mandir}/man7/weston-drm.7* |
3adcb0b8 | 320 | |
5f05a417 JB |
321 | %files devel |
322 | %defattr(644,root,root,755) | |
323 | %{_includedir}/weston | |
324 | %{_pkgconfigdir}/weston.pc | |
b38ed305 | 325 | |
0606bec5 JB |
326 | %files protocols |
327 | %defattr(644,root,root,755) | |
018fa030 JP |
328 | %dir %{_datadir}/libweston-13 |
329 | %{_datadir}/libweston-13/protocols | |
330 | %{_npkgconfigdir}/libweston-13-protocols.pc | |
0606bec5 | 331 | |
b38ed305 JB |
332 | %files libs |
333 | %defattr(644,root,root,755) | |
018fa030 JP |
334 | %attr(755,root,root) %{_libdir}/libweston-13.so.*.*.* |
335 | %attr(755,root,root) %ghost %{_libdir}/libweston-13.so.0 | |
336 | %dir %{_libdir}/libweston-13 | |
337 | %attr(755,root,root) %{_libdir}/libweston-13/color-lcms.so | |
b38ed305 | 338 | %if %{with drm} |
018fa030 | 339 | %attr(755,root,root) %{_libdir}/libweston-13/drm-backend.so |
11b2a742 | 340 | %endif |
018fa030 JP |
341 | %attr(755,root,root) %{_libdir}/libweston-13/gl-renderer.so |
342 | %attr(755,root,root) %{_libdir}/libweston-13/headless-backend.so | |
11b2a742 | 343 | %if %{with pipewire} |
018fa030 JP |
344 | %attr(755,root,root) %{_libdir}/libweston-13/pipewire-backend.so |
345 | %attr(755,root,root) %{_libdir}/libweston-13/pipewire-plugin.so | |
b38afc9e | 346 | %endif |
b38afc9e | 347 | %if %{with remoting} |
018fa030 | 348 | %attr(755,root,root) %{_libdir}/libweston-13/remoting-plugin.so |
11b2a742 JB |
349 | %endif |
350 | %if %{with vnc} | |
018fa030 | 351 | %attr(755,root,root) %{_libdir}/libweston-13/vnc-backend.so |
b38ed305 | 352 | %endif |
b38ed305 | 353 | %if %{with wayland} |
018fa030 | 354 | %attr(755,root,root) %{_libdir}/libweston-13/wayland-backend.so |
b38ed305 JB |
355 | %endif |
356 | %if %{with x11} | |
018fa030 | 357 | %attr(755,root,root) %{_libdir}/libweston-13/x11-backend.so |
b38ed305 JB |
358 | %endif |
359 | %if %{with xwayland} | |
018fa030 | 360 | %attr(755,root,root) %{_libdir}/libweston-13/xwayland.so |
b38ed305 | 361 | %endif |
11b2a742 JB |
362 | %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/weston-remote-access |
363 | %{_mandir}/man7/weston-vnc.7* | |
b38ed305 JB |
364 | |
365 | %files libs-devel | |
366 | %defattr(644,root,root,755) | |
018fa030 JP |
367 | %attr(755,root,root) %{_libdir}/libweston-13.so |
368 | %{_includedir}/libweston-13 | |
369 | %{_pkgconfigdir}/libweston-13.pc | |
b38ed305 JB |
370 | |
371 | %if %{with rdp} | |
372 | %files compositor-rdp | |
373 | %defattr(644,root,root,755) | |
018fa030 | 374 | %attr(755,root,root) %{_libdir}/libweston-13/rdp-backend.so |
eab4380b | 375 | %{_mandir}/man7/weston-rdp.7* |
b38ed305 | 376 | %endif |