3 %bcond_without drm # DRM compositor
4 %bcond_without rdp # RDP compositor
5 %bcond_without wayland # wayland (nested) compositor
6 %bcond_without x11 # X11 compositor
7 %bcond_without libunwind # libunwind usage for backtraces
8 %bcond_without vaapi # vaapi recorder
9 %bcond_without vnc # VNC backend
10 %bcond_with wlaunch # deprecated weston launch
11 %bcond_without xwayland # X server launcher
12 %bcond_without dclients # demo clients
13 %bcond_without sclients # simple clients
14 %bcond_without clients # non-simple clients
15 %bcond_without remoting # remoting-plugin (requires DRM compositor + GStreamer)
16 %bcond_without pipewire # pipewire backend and plugin
17 %bcond_with apidocs # documentation (requires Sphinx 2.1+)
18 %bcond_without libseat # libseat support
21 %undefine with_remoting
23 Summary: Weston - Wayland demos
24 Summary(pl.UTF-8): Weston - programy demonstracyjne dla protokołu Wayland
30 #Source0Download: https://gitlab.freedesktop.org/wayland/weston/-/releases/
31 Source0: https://gitlab.freedesktop.org/wayland/weston/-/releases/%{version}/downloads/%{name}-%{version}.tar.xz
32 # Source0-md5: 6026a2f2cf4b37729d87e7fbc0c7abff
33 Patch0: %{name}-freerdp2.patch
34 Patch1: %{name}-noarch-protocols.patch
35 URL: https://wayland.freedesktop.org/
36 BuildRequires: EGL-devel
37 BuildRequires: OpenGLESv2-devel
39 BuildRequires: aml-devel >= 0.3.0
40 BuildRequires: aml-devel < 0.4
42 BuildRequires: cairo-devel >= 1.10.0
43 BuildRequires: colord-devel >= 0.1.27
44 BuildRequires: dbus-devel >= 1.6
45 BuildRequires: doxygen
46 %{?with_rdp:BuildRequires: freerdp2-devel >= 2.3.0}
47 BuildRequires: glib2-devel >= 1:2.36
49 BuildRequires: gstreamer-devel >= 1.0
50 BuildRequires: gstreamer-plugins-base-devel >= 1.0
52 BuildRequires: lcms2-devel >= 2.9
53 BuildRequires: libdrm-devel >= 2.4.107
54 BuildRequires: libevdev-devel
55 BuildRequires: libinput-devel >= 1.2.0
56 BuildRequires: libjpeg-devel
57 BuildRequires: libpng-devel
58 %{?with_libseat:BuildRequires: libseat-devel >= 0.4}
59 %{?with_libunwind:BuildRequires: libunwind-devel}
60 BuildRequires: libwebp-devel
61 BuildRequires: meson >= 0.63.0
63 BuildRequires: neatvnc-devel >= 0.6.0
64 BuildRequires: neatvnc-devel < 0.7
66 BuildRequires: ninja >= 1.5
67 %{?with_pipewire:BuildRequires: pipewire-devel >= 0.3}
68 BuildRequires: pixman-devel >= 0.26
69 BuildRequires: pkgconfig
70 BuildRequires: pkgconfig(egl)
71 BuildRequires: pkgconfig(glesv2)
72 BuildRequires: python3 >= 1:3
73 BuildRequires: rpm-build >= 4.6
74 BuildRequires: rpmbuild(macros) >= 1.736
75 BuildRequires: systemd-devel >= 1:209
76 BuildRequires: tar >= 1:1.22
77 # wayland-client, wayland-cursor, wayland-server
78 BuildRequires: wayland-devel >= 1.20.0
79 # for wayland and sclients, but also desktop-shell, which is always enabled
80 BuildRequires: wayland-egl-devel
81 BuildRequires: wayland-protocols >= 1.31
82 BuildRequires: xcb-util-cursor-devel
83 BuildRequires: xorg-lib-libxkbcommon-devel >= 0.5.0
86 BuildRequires: Mesa-libgbm-devel >= 21.1.1
87 BuildRequires: libdisplay-info-devel >= 0.1.1
88 BuildRequires: libdisplay-info-devel < 0.2
89 BuildRequires: mtdev-devel >= 1.1.0
90 BuildRequires: udev-devel >= 1:136
93 BuildRequires: libva-devel >= 1.2.0
94 BuildRequires: libva-drm-devel >= 1.2.0
96 BuildRequires: pkgconfig(libva) >= 0.34.0
97 BuildRequires: pkgconfig(libva-drm) >= 0.34.0
100 # xcb >= 1.8 xcb-xkb >= 1.9 xcb-shm
101 BuildRequires: libxcb-devel >= 1.9
102 BuildRequires: xorg-lib-libX11-devel
104 %if %{with vnc} || %{with wlaunch}
105 BuildRequires: pam-devel
108 # xcb xcb-composite xcb-xfixes
109 BuildRequires: libxcb-devel
110 BuildRequires: pango-devel >= 1:1.10
111 BuildRequires: pkgconfig(cairo-xcb)
112 BuildRequires: xorg-lib-libXcursor-devel
113 BuildRequires: xorg-xserver-Xwayland-devel
116 BuildRequires: doxygen >= 1.8
117 BuildRequires: python3-breathe >= 4.11
118 BuildRequires: sphinx-pdg >= 2.1.0
120 Requires: %{name}-libs = %{version}-%{release}
121 Requires: colord-libs >= 0.1.27
122 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
125 Weston contains a few demo application for the Wayland project.
126 There's a sample compositor that can run on KMS, under X11 or under
127 another Wayland compositor and there's a handful of simple clients
128 that demonstrate various aspects of Wayland.
130 %description -l pl.UTF-8
131 Weston zawiera kilka aplikacji demonstracyjnych dla projektu Wayland.
132 Jest przykładowy serwer składający, który można uruchomić pod KMS, pod
133 X11 lub pod innym serwerem składającym Wayland; są także proste
134 programy klienckie demonstrujące różne aspekty protokołu Wayland.
137 Summary: Header files for Weston plugin development
138 Summary(pl.UTF-8): Pliki nagłówkowe do tworzenia wtyczek dla Westona
139 Group: Development/Libraries
140 Requires: %{name}-libs-devel = %{version}-%{release}
142 Requires: OpenGLESv2-devel
145 Header files for Weston plugin development.
147 %description devel -l pl.UTF-8
148 Pliki nagłówkowe do tworzenia wtyczek dla Westona.
151 Summary: Weston protocol files
152 Summary(pl.UTF-8): Pliki protokołu Weston
154 Conflicts: weston < 9.0.0-2
155 Conflicts: weston-libs-devel < 9.0.0-2
158 %description protocols
159 Weston protocol files.
161 %description protocols -l pl.UTF-8
162 Pliki protokołu Weston.
165 Summary: Weston compositor libraries
166 Summary(pl.UTF-8): Biblioteki serwera składania Weston
168 Requires: wayland >= 1.18.0
169 Requires: pixman >= 0.26
170 Requires: xorg-lib-libxkbcommon >= 0.5.0
171 # the rest is for modules:
172 %{?with_drm:Requires: Mesa-libgbm >= 17.2}
173 Requires: cairo >= 1.10.0
174 Requires: dbus-libs >= 1.6
175 Requires: lcms2 >= 2.9
176 Requires: libdrm >= 2.4.107
177 Requires: libinput >= 1.2.0
178 %{?with_libseat:Requires: libseat >= 0.4}
180 Requires: libva >= 1.2.0
181 Requires: libva-drm >= 1.2.0
183 %{?with_x11:Requires: libxcb >= 1.9}
184 %{?with_drm:Requires: mtdev >= 1.1.0}
185 %{?with_wlaunch:Requires: systemd-libs >= 1:209}
186 %{?with_drm:Requires: udev-libs >= 1:136}
187 Requires: wayland-egl
190 Weston compositor libraries.
192 %description libs -l pl.UTF-8
193 Biblioteki serwera składania Weston.
196 Summary: Header files for libweston compositors development
197 Summary(pl.UTF-8): Pliki nagłówkowe do rozwijania modułów składających biblioteki libweston
198 Group: Development/Libraries
199 Requires: %{name}-libs = %{version}-%{release}
200 Requires: pixman-devel >= 0.26
202 Requires: wayland-devel >= 1.20.0
203 Requires: xorg-lib-libxkbcommon-devel >= 0.5.0
205 %description libs-devel
206 Header files for libweston compositors development.
208 %description libs-devel -l pl.UTF-8
209 Pliki nagłówkowe do rozwijania modułów składających biblioteki
212 %package compositor-rdp
213 Summary: RDP compositor plugin for Weston
214 Summary(pl.UTF-8): Wtyczka składająca RDP dla Westona
216 Requires: %{name} = %{version}-%{release}
217 Requires: freerdp2 >= 2.3.0
219 %description compositor-rdp
220 RDP compositor plugin for Weston.
222 %description compositor-rdp -l pl.UTF-8
223 Wtyczka składająca RDP dla Westona.
232 %{!?with_drm:-Dbackend-drm=false} \
233 %{!?with_vaapi:-Dbackend-drm-screencast-vaapi=false} \
234 %{!?with_pipewire:-Dbackend-pipewire=false} \
235 %{!?with_rdp:-Dbackend-rdp=false} \
236 %{!?with_x11:-Dbackend-x11=false} \
237 %{!?with_dclients:-Ddemo-clients=""} \
238 -Ddeprecated-color-management-colord=true \
239 -Ddeprecated-color-management-static=true \
240 %{?with_apidocs:-Ddoc=true} \
241 %{!?with_pipewire:-Dpipewire=false} \
242 %{!?with_remoting:-Dremoting=false} \
243 %{!?with_sclients:-Dsimple-clients=""} \
244 %{?with_wlaunch:-Ddeprecated-weston-launch=true} \
245 %{!?with_xwayland:-Dxwayland=false} \
246 -Dlauncher-libseat=%{__true_false libseat}
248 %ninja_build -C build
251 rm -rf $RPM_BUILD_ROOT
253 %ninja_install -C build
256 rm -rf $RPM_BUILD_ROOT
258 %post libs -p /sbin/ldconfig
259 %postun libs -p /sbin/ldconfig
262 %defattr(644,root,root,755)
263 %doc COPYING README.md
264 %attr(755,root,root) %{_bindir}/wcap-decode
266 %attr(755,root,root) %{_bindir}/weston
267 %attr(755,root,root) %{_bindir}/weston-calibrator
268 %attr(755,root,root) %{_bindir}/weston-debug
270 %attr(755,root,root) %{_bindir}/weston-launch
272 %attr(755,root,root) %{_bindir}/weston-screenshooter
273 %attr(755,root,root) %{_bindir}/weston-terminal
274 %attr(755,root,root) %{_bindir}/weston-touch-calibrator
276 %attr(755,root,root) %{_bindir}/weston-clickdot
277 %attr(755,root,root) %{_bindir}/weston-cliptest
278 %attr(755,root,root) %{_bindir}/weston-confine
279 %attr(755,root,root) %{_bindir}/weston-content_protection
280 %attr(755,root,root) %{_bindir}/weston-dnd
281 %attr(755,root,root) %{_bindir}/weston-editor
282 %attr(755,root,root) %{_bindir}/weston-eventdemo
283 %attr(755,root,root) %{_bindir}/weston-flower
284 %attr(755,root,root) %{_bindir}/weston-fullscreen
285 %attr(755,root,root) %{_bindir}/weston-image
286 %attr(755,root,root) %{_bindir}/weston-multi-resource
287 %attr(755,root,root) %{_bindir}/weston-presentation-shm
288 %attr(755,root,root) %{_bindir}/weston-resizor
289 %attr(755,root,root) %{_bindir}/weston-scaler
290 %attr(755,root,root) %{_bindir}/weston-smoke
291 %attr(755,root,root) %{_bindir}/weston-stacking
292 %attr(755,root,root) %{_bindir}/weston-subsurfaces
293 %attr(755,root,root) %{_bindir}/weston-tablet
294 %attr(755,root,root) %{_bindir}/weston-transformed
297 %attr(755,root,root) %{_bindir}/weston-simple-damage
298 %attr(755,root,root) %{_bindir}/weston-simple-dmabuf-egl
299 %attr(755,root,root) %{_bindir}/weston-simple-dmabuf-feedback
300 %attr(755,root,root) %{_bindir}/weston-simple-dmabuf-v4l
301 %attr(755,root,root) %{_bindir}/weston-simple-egl
302 %attr(755,root,root) %{_bindir}/weston-simple-shm
303 %attr(755,root,root) %{_bindir}/weston-simple-touch
305 %attr(755,root,root) %{_libexecdir}/weston-desktop-shell
306 %attr(755,root,root) %{_libexecdir}/weston-ivi-shell-user-interface
307 %attr(755,root,root) %{_libexecdir}/weston-keyboard
308 %attr(755,root,root) %{_libexecdir}/weston-simple-im
309 %dir %{_libdir}/weston
310 %attr(755,root,root) %{_libdir}/weston/libexec_weston.so*
311 %attr(755,root,root) %{_libdir}/weston/cms-colord.so
312 %attr(755,root,root) %{_libdir}/weston/cms-static.so
313 %attr(755,root,root) %{_libdir}/weston/desktop-shell.so
314 %attr(755,root,root) %{_libdir}/weston/fullscreen-shell.so
315 %attr(755,root,root) %{_libdir}/weston/hmi-controller.so
316 %attr(755,root,root) %{_libdir}/weston/ivi-shell.so
317 %attr(755,root,root) %{_libdir}/weston/kiosk-shell.so
318 %attr(755,root,root) %{_libdir}/weston/screen-share.so
319 %attr(755,root,root) %{_libdir}/weston/systemd-notify.so
321 %dir %{_datadir}/wayland-sessions
322 %{_datadir}/wayland-sessions/weston.desktop
323 %{_mandir}/man1/weston.1*
324 %{_mandir}/man1/weston-debug.1*
325 %{_mandir}/man5/weston.ini.5*
326 %{_mandir}/man7/weston-bindings.7*
327 %{_mandir}/man7/weston-drm.7*
330 %defattr(644,root,root,755)
331 %{_includedir}/weston
332 %{_pkgconfigdir}/weston.pc
335 %defattr(644,root,root,755)
336 %dir %{_datadir}/libweston-12
337 %{_datadir}/libweston-12/protocols
338 %{_npkgconfigdir}/libweston-12-protocols.pc
341 %defattr(644,root,root,755)
342 %attr(755,root,root) %{_libdir}/libweston-12.so.*.*.*
343 %attr(755,root,root) %ghost %{_libdir}/libweston-12.so.0
344 %dir %{_libdir}/libweston-12
345 %attr(755,root,root) %{_libdir}/libweston-12/color-lcms.so
347 %attr(755,root,root) %{_libdir}/libweston-12/drm-backend.so
349 %attr(755,root,root) %{_libdir}/libweston-12/gl-renderer.so
350 %attr(755,root,root) %{_libdir}/libweston-12/headless-backend.so
352 %attr(755,root,root) %{_libdir}/libweston-12/pipewire-backend.so
353 %attr(755,root,root) %{_libdir}/libweston-12/pipewire-plugin.so
356 %attr(755,root,root) %{_libdir}/libweston-12/remoting-plugin.so
359 %attr(755,root,root) %{_libdir}/libweston-12/vnc-backend.so
362 %attr(755,root,root) %{_libdir}/libweston-12/wayland-backend.so
365 %attr(755,root,root) %{_libdir}/libweston-12/x11-backend.so
368 %attr(755,root,root) %{_libdir}/libweston-12/xwayland.so
370 %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/weston-remote-access
371 %{_mandir}/man7/weston-vnc.7*
374 %defattr(644,root,root,755)
375 %attr(755,root,root) %{_libdir}/libweston-12.so
376 %{_includedir}/libweston-12
377 %{_pkgconfigdir}/libweston-12.pc
380 %files compositor-rdp
381 %defattr(644,root,root,755)
382 %attr(755,root,root) %{_libdir}/libweston-12/rdp-backend.so
383 %{_mandir}/man7/weston-rdp.7*