]> git.pld-linux.org Git - packages/weston.git/blame - weston.spec
up to 13.0.0
[packages/weston.git] / weston.spec
CommitLineData
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
21Summary: Weston - Wayland demos
22Summary(pl.UTF-8): Weston - programy demonstracyjne dla protokołu Wayland
23Name: weston
018fa030 24Version: 13.0.0
11c18ab6 25Release: 1
3adcb0b8
JB
26License: MIT
27Group: Applications
11c18ab6
JP
28#Source0Download: https://gitlab.freedesktop.org/wayland/weston/-/releases/
29Source0: https://gitlab.freedesktop.org/wayland/weston/-/releases/%{version}/downloads/%{name}-%{version}.tar.xz
018fa030 30# Source0-md5: cdd0ec2c360eebdf878f1b5d3113dc6c
d130821f 31Patch0: %{name}-freerdp2.patch
0606bec5 32Patch1: %{name}-noarch-protocols.patch
bc222cc7 33URL: https://wayland.freedesktop.org/
3220cc8b
JB
34BuildRequires: EGL-devel
35BuildRequires: OpenGLESv2-devel
11b2a742
JB
36%if %{with vnc}
37BuildRequires: aml-devel >= 0.3.0
38BuildRequires: aml-devel < 0.4
39%endif
0cb34c60 40BuildRequires: cairo-devel >= 1.10.0
09c3888d 41BuildRequires: colord-devel >= 0.1.27
701d5d1a 42BuildRequires: dbus-devel >= 1.6
ff471f7a 43BuildRequires: doxygen
11b2a742 44%{?with_rdp:BuildRequires: freerdp2-devel >= 2.3.0}
5e85efbd 45BuildRequires: glib2-devel >= 1:2.36
b38afc9e
JB
46%if %{with remoting}
47BuildRequires: gstreamer-devel >= 1.0
48BuildRequires: gstreamer-plugins-base-devel >= 1.0
49%endif
11c18ab6
JP
50BuildRequires: lcms2-devel >= 2.9
51BuildRequires: libdrm-devel >= 2.4.107
b38afc9e 52BuildRequires: libevdev-devel
11b2a742 53BuildRequires: libinput-devel >= 1.2.0
0cb34c60 54BuildRequires: libjpeg-devel
3adcb0b8 55BuildRequires: libpng-devel
018fa030 56%{?with_drm:BuildRequires: libseat-devel >= 0.4}
131b29b1 57%{?with_libunwind:BuildRequires: libunwind-devel}
0cb34c60 58BuildRequires: libwebp-devel
11b2a742
JB
59BuildRequires: meson >= 0.63.0
60%if %{with vnc}
018fa030
JP
61BuildRequires: neatvnc-devel >= 0.7.0
62BuildRequires: neatvnc-devel < 0.8
11b2a742 63%endif
5e85efbd 64BuildRequires: ninja >= 1.5
11c18ab6 65%{?with_pipewire:BuildRequires: pipewire-devel >= 0.3}
3b2a67c3 66BuildRequires: pixman-devel >= 0.26
3adcb0b8 67BuildRequires: pkgconfig
3220cc8b
JB
68BuildRequires: pkgconfig(egl)
69BuildRequires: pkgconfig(glesv2)
11b2a742 70BuildRequires: python3 >= 1:3
20ff2cfb 71BuildRequires: rpm-build >= 4.6
5e85efbd 72BuildRequires: rpmbuild(macros) >= 1.736
018fa030 73BuildRequires: systemd-devel
3adcb0b8 74BuildRequires: tar >= 1:1.22
11b2a742 75# wayland-client, wayland-cursor, wayland-server
018fa030 76BuildRequires: wayland-devel >= 1.22.0
a95a80fe
JB
77# for wayland and sclients, but also desktop-shell, which is always enabled
78BuildRequires: wayland-egl-devel
11b2a742
JB
79BuildRequires: wayland-protocols >= 1.31
80BuildRequires: xcb-util-cursor-devel
1cb405cb 81BuildRequires: xorg-lib-libxkbcommon-devel >= 0.5.0
3adcb0b8 82BuildRequires: xz
0cb34c60 83%if %{with drm}
11c18ab6 84BuildRequires: Mesa-libgbm-devel >= 21.1.1
11b2a742
JB
85BuildRequires: libdisplay-info-devel >= 0.1.1
86BuildRequires: libdisplay-info-devel < 0.2
0cb34c60 87BuildRequires: mtdev-devel >= 1.1.0
6c4f66d1 88BuildRequires: udev-devel >= 1:136
0cb34c60 89%endif
3b2a67c3
JB
90%if %{with vaapi}
91BuildRequires: libva-devel >= 1.2.0
92BuildRequires: libva-drm-devel >= 1.2.0
93# API versions
94BuildRequires: pkgconfig(libva) >= 0.34.0
95BuildRequires: 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
99BuildRequires: libxcb-devel >= 1.9
0cb34c60
JB
100BuildRequires: xorg-lib-libX11-devel
101%endif
87cc7398 102%if %{with vnc}
0cb34c60 103BuildRequires: pam-devel
0cb34c60
JB
104%endif
105%if %{with xwayland}
6f48f53b 106# xcb xcb-composite xcb-xfixes
0cb34c60 107BuildRequires: libxcb-devel
1cb405cb 108BuildRequires: pango-devel >= 1:1.10
6c4f66d1
JB
109BuildRequires: pkgconfig(cairo-xcb)
110BuildRequires: xorg-lib-libXcursor-devel
11c18ab6 111BuildRequires: xorg-xserver-Xwayland-devel
0cb34c60 112%endif
5e85efbd
JB
113%if %{with apidocs}
114BuildRequires: doxygen >= 1.8
115BuildRequires: python3-breathe >= 4.11
116BuildRequires: sphinx-pdg >= 2.1.0
b1b43d2b 117%endif
b38ed305 118Requires: %{name}-libs = %{version}-%{release}
b38ed305 119Requires: colord-libs >= 0.1.27
3adcb0b8
JB
120BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
121
122%description
123Weston contains a few demo application for the Wayland project.
124There's a sample compositor that can run on KMS, under X11 or under
125another Wayland compositor and there's a handful of simple clients
126that demonstrate various aspects of Wayland.
127
128%description -l pl.UTF-8
129Weston zawiera kilka aplikacji demonstracyjnych dla projektu Wayland.
130Jest przykładowy serwer składający, który można uruchomić pod KMS, pod
131X11 lub pod innym serwerem składającym Wayland; są także proste
132programy klienckie demonstrujące różne aspekty protokołu Wayland.
133
5f05a417
JB
134%package devel
135Summary: Header files for Weston plugin development
136Summary(pl.UTF-8): Pliki nagłówkowe do tworzenia wtyczek dla Westona
137Group: Development/Libraries
b38ed305 138Requires: %{name}-libs-devel = %{version}-%{release}
3220cc8b
JB
139Requires: EGL-devel
140Requires: OpenGLESv2-devel
5f05a417
JB
141
142%description devel
143Header files for Weston plugin development.
144
145%description devel -l pl.UTF-8
146Pliki nagłówkowe do tworzenia wtyczek dla Westona.
147
0606bec5
JB
148%package protocols
149Summary: Weston protocol files
150Summary(pl.UTF-8): Pliki protokołu Weston
151Group: Libraries
152Conflicts: weston < 9.0.0-2
153Conflicts: weston-libs-devel < 9.0.0-2
0606bec5 154BuildArch: noarch
0606bec5
JB
155
156%description protocols
157Weston protocol files.
158
159%description protocols -l pl.UTF-8
160Pliki protokołu Weston.
161
b38ed305
JB
162%package libs
163Summary: Weston compositor libraries
164Summary(pl.UTF-8): Biblioteki serwera składania Weston
165Group: Libraries
11c18ab6 166Requires: wayland >= 1.18.0
b38ed305 167Requires: pixman >= 0.26
1cb405cb 168Requires: xorg-lib-libxkbcommon >= 0.5.0
b38ed305 169# the rest is for modules:
a95a80fe 170%{?with_drm:Requires: Mesa-libgbm >= 17.2}
b38ed305
JB
171Requires: cairo >= 1.10.0
172Requires: dbus-libs >= 1.6
11c18ab6
JP
173Requires: lcms2 >= 2.9
174Requires: libdrm >= 2.4.107
11b2a742 175Requires: libinput >= 1.2.0
018fa030 176%{?with_drm:Requires: libseat >= 0.4}
b38ed305
JB
177%if %{with vaapi}
178Requires: libva >= 1.2.0
179Requires: 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 184Requires: wayland-egl
b38ed305
JB
185
186%description libs
187Weston compositor libraries.
188
189%description libs -l pl.UTF-8
190Biblioteki serwera składania Weston.
191
192%package libs-devel
193Summary: Header files for libweston compositors development
194Summary(pl.UTF-8): Pliki nagłówkowe do rozwijania modułów składających biblioteki libweston
195Group: Development/Libraries
196Requires: %{name}-libs = %{version}-%{release}
197Requires: pixman-devel >= 0.26
198# wayland-server
018fa030 199Requires: wayland-devel >= 1.22.0
1cb405cb 200Requires: xorg-lib-libxkbcommon-devel >= 0.5.0
b38ed305
JB
201
202%description libs-devel
203Header files for libweston compositors development.
204
205%description libs-devel -l pl.UTF-8
206Pliki nagłówkowe do rozwijania modułów składających biblioteki
207libweston.
208
209%package compositor-rdp
210Summary: RDP compositor plugin for Weston
211Summary(pl.UTF-8): Wtyczka składająca RDP dla Westona
212Group: Libraries
213Requires: %{name} = %{version}-%{release}
11b2a742 214Requires: freerdp2 >= 2.3.0
b38ed305
JB
215
216%description compositor-rdp
217RDP compositor plugin for Weston.
218
219%description compositor-rdp -l pl.UTF-8
220Wtyczka 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
246rm -rf $RPM_BUILD_ROOT
247
5e85efbd 248%ninja_install -C build
3adcb0b8
JB
249
250%clean
251rm -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
This page took 0.212242 seconds and 4 git commands to generate.