]> git.pld-linux.org Git - packages/weston.git/blob - weston.spec
- updated to 12.0.2, added vnc backend
[packages/weston.git] / weston.spec
1 #
2 # Conditional build:
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
19
20 %if %{without drm}
21 %undefine       with_remoting
22 %endif
23 Summary:        Weston - Wayland demos
24 Summary(pl.UTF-8):      Weston - programy demonstracyjne dla protokołu Wayland
25 Name:           weston
26 Version:        12.0.2
27 Release:        1
28 License:        MIT
29 Group:          Applications
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
38 %if %{with vnc}
39 BuildRequires:  aml-devel >= 0.3.0
40 BuildRequires:  aml-devel < 0.4
41 %endif
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
48 %if %{with remoting}
49 BuildRequires:  gstreamer-devel >= 1.0
50 BuildRequires:  gstreamer-plugins-base-devel >= 1.0
51 %endif
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
62 %if %{with vnc}
63 BuildRequires:  neatvnc-devel >= 0.6.0
64 BuildRequires:  neatvnc-devel < 0.7
65 %endif
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
84 BuildRequires:  xz
85 %if %{with drm}
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
91 %endif
92 %if %{with vaapi}
93 BuildRequires:  libva-devel >= 1.2.0
94 BuildRequires:  libva-drm-devel >= 1.2.0
95 # API versions
96 BuildRequires:  pkgconfig(libva) >= 0.34.0
97 BuildRequires:  pkgconfig(libva-drm) >= 0.34.0
98 %endif
99 %if %{with x11}
100 # xcb >= 1.8 xcb-xkb >= 1.9 xcb-shm
101 BuildRequires:  libxcb-devel >= 1.9
102 BuildRequires:  xorg-lib-libX11-devel
103 %endif
104 %if %{with vnc} || %{with wlaunch}
105 BuildRequires:  pam-devel
106 %endif
107 %if %{with xwayland}
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
114 %endif
115 %if %{with apidocs}
116 BuildRequires:  doxygen >= 1.8
117 BuildRequires:  python3-breathe >= 4.11
118 BuildRequires:  sphinx-pdg >= 2.1.0
119 %endif
120 Requires:       %{name}-libs = %{version}-%{release}
121 Requires:       colord-libs >= 0.1.27
122 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
123
124 %description
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.
129
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.
135
136 %package devel
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}
141 Requires:       EGL-devel
142 Requires:       OpenGLESv2-devel
143
144 %description devel
145 Header files for Weston plugin development.
146
147 %description devel -l pl.UTF-8
148 Pliki nagłówkowe do tworzenia wtyczek dla Westona.
149
150 %package protocols
151 Summary:        Weston protocol files
152 Summary(pl.UTF-8):      Pliki protokołu Weston
153 Group:          Libraries
154 Conflicts:      weston < 9.0.0-2
155 Conflicts:      weston-libs-devel < 9.0.0-2
156 BuildArch:      noarch
157
158 %description protocols
159 Weston protocol files.
160
161 %description protocols -l pl.UTF-8
162 Pliki protokołu Weston.
163
164 %package libs
165 Summary:        Weston compositor libraries
166 Summary(pl.UTF-8):      Biblioteki serwera składania Weston
167 Group:          Libraries
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}
179 %if %{with vaapi}
180 Requires:       libva >= 1.2.0
181 Requires:       libva-drm >= 1.2.0
182 %endif
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
188
189 %description libs
190 Weston compositor libraries.
191
192 %description libs -l pl.UTF-8
193 Biblioteki serwera składania Weston.
194
195 %package libs-devel
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 
201 # wayland-server
202 Requires:       wayland-devel >= 1.20.0
203 Requires:       xorg-lib-libxkbcommon-devel >= 0.5.0
204
205 %description libs-devel
206 Header files for libweston compositors development.
207
208 %description libs-devel -l pl.UTF-8
209 Pliki nagłówkowe do rozwijania modułów składających biblioteki
210 libweston.
211
212 %package compositor-rdp
213 Summary:        RDP compositor plugin for Weston
214 Summary(pl.UTF-8):      Wtyczka składająca RDP dla Westona
215 Group:          Libraries
216 Requires:       %{name} = %{version}-%{release}
217 Requires:       freerdp2 >= 2.3.0
218
219 %description compositor-rdp
220 RDP compositor plugin for Weston.
221
222 %description compositor-rdp -l pl.UTF-8
223 Wtyczka składająca RDP dla Westona.
224
225 %prep
226 %setup -q
227 %patch0 -p1
228 %patch1 -p1
229
230 %build
231 %meson build \
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}
247
248 %ninja_build -C build
249
250 %install
251 rm -rf $RPM_BUILD_ROOT
252
253 %ninja_install -C build
254
255 %clean
256 rm -rf $RPM_BUILD_ROOT
257
258 %post   libs -p /sbin/ldconfig
259 %postun libs -p /sbin/ldconfig
260
261 %files
262 %defattr(644,root,root,755)
263 %doc COPYING README.md
264 %attr(755,root,root) %{_bindir}/wcap-decode
265 # composer
266 %attr(755,root,root) %{_bindir}/weston
267 %attr(755,root,root) %{_bindir}/weston-calibrator
268 %attr(755,root,root) %{_bindir}/weston-debug
269 %if %{with wlaunch}
270 %attr(755,root,root) %{_bindir}/weston-launch
271 %endif
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
275 %if %{with dclients}
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
295 %endif
296 %if %{with sclients}
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
304 %endif
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
320 %{_datadir}/weston
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*
328
329 %files devel
330 %defattr(644,root,root,755)
331 %{_includedir}/weston
332 %{_pkgconfigdir}/weston.pc
333
334 %files protocols
335 %defattr(644,root,root,755)
336 %dir %{_datadir}/libweston-12
337 %{_datadir}/libweston-12/protocols
338 %{_npkgconfigdir}/libweston-12-protocols.pc
339
340 %files libs
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
346 %if %{with drm}
347 %attr(755,root,root) %{_libdir}/libweston-12/drm-backend.so
348 %endif
349 %attr(755,root,root) %{_libdir}/libweston-12/gl-renderer.so
350 %attr(755,root,root) %{_libdir}/libweston-12/headless-backend.so
351 %if %{with pipewire}
352 %attr(755,root,root) %{_libdir}/libweston-12/pipewire-backend.so
353 %attr(755,root,root) %{_libdir}/libweston-12/pipewire-plugin.so
354 %endif
355 %if %{with remoting}
356 %attr(755,root,root) %{_libdir}/libweston-12/remoting-plugin.so
357 %endif
358 %if %{with vnc}
359 %attr(755,root,root) %{_libdir}/libweston-12/vnc-backend.so
360 %endif
361 %if %{with wayland}
362 %attr(755,root,root) %{_libdir}/libweston-12/wayland-backend.so
363 %endif
364 %if %{with x11}
365 %attr(755,root,root) %{_libdir}/libweston-12/x11-backend.so
366 %endif
367 %if %{with xwayland}
368 %attr(755,root,root) %{_libdir}/libweston-12/xwayland.so
369 %endif
370 %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/weston-remote-access
371 %{_mandir}/man7/weston-vnc.7*
372
373 %files libs-devel
374 %defattr(644,root,root,755)
375 %attr(755,root,root) %{_libdir}/libweston-12.so
376 %{_includedir}/libweston-12
377 %{_pkgconfigdir}/libweston-12.pc
378
379 %if %{with rdp}
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*
384 %endif
This page took 0.180944 seconds and 3 git commands to generate.