]>
Commit | Line | Data |
---|---|---|
1 | # | |
2 | # Conditional build: | |
3 | %bcond_without drm # DRM compositor | |
4 | %bcond_without rdp # RDP compositor (needs freerdp2 or freerdp >= 1.1.0) | |
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 wlaunch # weston launch | |
10 | %bcond_without xwayland # X server launcher | |
11 | %bcond_without sclients # simple clients | |
12 | %bcond_without clients # non-simple clients | |
13 | %bcond_with glclients # full GL clients [require cairo-gl/cairo-egl, not recommended] | |
14 | %bcond_without remoting # remoting-plugin (requires DRM compositor + GStreamer) | |
15 | ||
16 | %if %{without drm} | |
17 | %undefine with_remoting | |
18 | %endif | |
19 | Summary: Weston - Wayland demos | |
20 | Summary(pl.UTF-8): Weston - programy demonstracyjne dla protokołu Wayland | |
21 | Name: weston | |
22 | Version: 6.0.0 | |
23 | Release: 1 | |
24 | License: MIT | |
25 | Group: Applications | |
26 | #Source0Download: https://wayland.freedesktop.org/releases.html | |
27 | Source0: https://wayland.freedesktop.org/releases/%{name}-%{version}.tar.xz | |
28 | # Source0-md5: 7c634e262f8a464a076c97fd50ad36b3 | |
29 | Patch0: %{name}-freerdp2.patch | |
30 | URL: https://wayland.freedesktop.org/ | |
31 | BuildRequires: Mesa-libEGL-devel >= 7.10 | |
32 | # GLESv2 | |
33 | BuildRequires: Mesa-libGLES-devel | |
34 | BuildRequires: autoconf >= 2.64 | |
35 | BuildRequires: automake >= 1:1.11 | |
36 | BuildRequires: cairo-devel >= 1.10.0 | |
37 | BuildRequires: colord-devel >= 0.1.27 | |
38 | BuildRequires: dbus-devel >= 1.6 | |
39 | BuildRequires: doxygen | |
40 | # or freerdp >= 1.1.0 (without freerdp2 patch) | |
41 | %{?with_rdp:BuildRequires: freerdp2-devel >= 2.0.0-0.20180809.1} | |
42 | %if %{with remoting} | |
43 | BuildRequires: gstreamer-devel >= 1.0 | |
44 | BuildRequires: gstreamer-plugins-base-devel >= 1.0 | |
45 | %endif | |
46 | BuildRequires: lcms2-devel >= 2 | |
47 | BuildRequires: libdrm-devel >= 2.4.68 | |
48 | BuildRequires: libevdev-devel | |
49 | BuildRequires: libinput-devel >= 0.8.0 | |
50 | BuildRequires: libjpeg-devel | |
51 | BuildRequires: libpng-devel | |
52 | BuildRequires: libtool >= 2:2.2 | |
53 | %{?with_libunwind:BuildRequires: libunwind-devel} | |
54 | BuildRequires: libwebp-devel | |
55 | BuildRequires: pixman-devel >= 0.26 | |
56 | BuildRequires: pkgconfig | |
57 | BuildRequires: tar >= 1:1.22 | |
58 | # wayland-server always; wayland-client if with_wayland || with_sclients || with_clients; wayland-cursor if with_clients | |
59 | BuildRequires: wayland-devel >= 1.12.0 | |
60 | # for wayland and sclients, but also desktop-shell, which is always enabled | |
61 | BuildRequires: wayland-egl-devel | |
62 | BuildRequires: wayland-protocols >= 1.17 | |
63 | BuildRequires: xorg-lib-libxkbcommon-devel >= 0.5.0 | |
64 | BuildRequires: xz | |
65 | %if %{with drm} | |
66 | BuildRequires: Mesa-libgbm-devel >= 17.2 | |
67 | BuildRequires: libdrm-devel >= 2.4.83 | |
68 | BuildRequires: mtdev-devel >= 1.1.0 | |
69 | BuildRequires: udev-devel >= 1:136 | |
70 | %endif | |
71 | %if %{with vaapi} | |
72 | BuildRequires: libva-devel >= 1.2.0 | |
73 | BuildRequires: libva-drm-devel >= 1.2.0 | |
74 | # API versions | |
75 | BuildRequires: pkgconfig(libva) >= 0.34.0 | |
76 | BuildRequires: pkgconfig(libva-drm) >= 0.34.0 | |
77 | %endif | |
78 | %if %{with x11} | |
79 | # xcb >= 1.8 xcb-xkb >= 1.9 xcb-shm | |
80 | BuildRequires: libxcb-devel >= 1.9 | |
81 | BuildRequires: xorg-lib-libX11-devel | |
82 | %endif | |
83 | %if %{with wlaunch} | |
84 | BuildRequires: pam-devel | |
85 | BuildRequires: systemd-devel >= 1:209 | |
86 | %endif | |
87 | %if %{with xwayland} | |
88 | BuildRequires: glib2-devel >= 1:2.36 | |
89 | # xcb xcb-composite xcb-xfixes | |
90 | BuildRequires: libxcb-devel | |
91 | BuildRequires: pango-devel >= 1:1.10 | |
92 | BuildRequires: pkgconfig(cairo-xcb) | |
93 | BuildRequires: xorg-lib-libXcursor-devel | |
94 | %endif | |
95 | %if %{with clients} | |
96 | BuildRequires: OpenGL-GLU-devel | |
97 | BuildRequires: cairo-devel >= 1.11.3 | |
98 | %if %{with glclients} | |
99 | BuildRequires: pkgconfig(cairo-egl) >= 1.11.3 | |
100 | BuildRequires: pkgconfig(cairo-gl) | |
101 | %endif | |
102 | %endif | |
103 | Requires: %{name}-libs = %{version}-%{release} | |
104 | %if %{with clients} | |
105 | Requires: cairo >= 1.11.3 | |
106 | %endif | |
107 | Requires: colord-libs >= 0.1.27 | |
108 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) | |
109 | ||
110 | %description | |
111 | Weston contains a few demo application for the Wayland project. | |
112 | There's a sample compositor that can run on KMS, under X11 or under | |
113 | another Wayland compositor and there's a handful of simple clients | |
114 | that demonstrate various aspects of Wayland. | |
115 | ||
116 | %description -l pl.UTF-8 | |
117 | Weston zawiera kilka aplikacji demonstracyjnych dla projektu Wayland. | |
118 | Jest przykładowy serwer składający, który można uruchomić pod KMS, pod | |
119 | X11 lub pod innym serwerem składającym Wayland; są także proste | |
120 | programy klienckie demonstrujące różne aspekty protokołu Wayland. | |
121 | ||
122 | %package devel | |
123 | Summary: Header files for Weston plugin development | |
124 | Summary(pl.UTF-8): Pliki nagłówkowe do tworzenia wtyczek dla Westona | |
125 | Group: Development/Libraries | |
126 | Requires: %{name}-libs-devel = %{version}-%{release} | |
127 | Requires: Mesa-libEGL-devel >= 7.10 | |
128 | # GLESv2 | |
129 | Requires: Mesa-libGLES-devel | |
130 | ||
131 | %description devel | |
132 | Header files for Weston plugin development. | |
133 | ||
134 | %description devel -l pl.UTF-8 | |
135 | Pliki nagłówkowe do tworzenia wtyczek dla Westona. | |
136 | ||
137 | %package libs | |
138 | Summary: Weston compositor libraries | |
139 | Summary(pl.UTF-8): Biblioteki serwera składania Weston | |
140 | Group: Libraries | |
141 | Requires: wayland >= 1.12.0 | |
142 | Requires: pixman >= 0.26 | |
143 | Requires: xorg-lib-libxkbcommon >= 0.5.0 | |
144 | # the rest is for modules: | |
145 | Requires: Mesa-libEGL >= 7.10 | |
146 | %{?with_drm:Requires: Mesa-libgbm >= 17.2} | |
147 | Requires: cairo >= 1.10.0 | |
148 | Requires: dbus-libs >= 1.6 | |
149 | %if %{with drm} | |
150 | Requires: libdrm >= 2.4.83 | |
151 | %else | |
152 | Requires: libdrm >= 2.4.68 | |
153 | %endif | |
154 | Requires: libinput >= 0.8.0 | |
155 | %if %{with vaapi} | |
156 | Requires: libva >= 1.2.0 | |
157 | Requires: libva-drm >= 1.2.0 | |
158 | %endif | |
159 | %{?with_x11:Requires: libxcb >= 1.9} | |
160 | %{?with_drm:Requires: mtdev >= 1.1.0} | |
161 | %{?with_wlaunch:Requires: systemd-libs >= 1:209} | |
162 | %{?with_drm:Requires: udev-libs >= 1:136} | |
163 | Requires: wayland-egl | |
164 | ||
165 | %description libs | |
166 | Weston compositor libraries. | |
167 | ||
168 | %description libs -l pl.UTF-8 | |
169 | Biblioteki serwera składania Weston. | |
170 | ||
171 | %package libs-devel | |
172 | Summary: Header files for libweston compositors development | |
173 | Summary(pl.UTF-8): Pliki nagłówkowe do rozwijania modułów składających biblioteki libweston | |
174 | Group: Development/Libraries | |
175 | Requires: %{name}-libs = %{version}-%{release} | |
176 | Requires: pixman-devel >= 0.26 | |
177 | # wayland-server | |
178 | Requires: wayland-devel >= 1.12.0 | |
179 | Requires: xorg-lib-libxkbcommon-devel >= 0.5.0 | |
180 | ||
181 | %description libs-devel | |
182 | Header files for libweston compositors development. | |
183 | ||
184 | %description libs-devel -l pl.UTF-8 | |
185 | Pliki nagłówkowe do rozwijania modułów składających biblioteki | |
186 | libweston. | |
187 | ||
188 | %package compositor-rdp | |
189 | Summary: RDP compositor plugin for Weston | |
190 | Summary(pl.UTF-8): Wtyczka składająca RDP dla Westona | |
191 | Group: Libraries | |
192 | Requires: %{name} = %{version}-%{release} | |
193 | Requires: freerdp2 >= 2.0.0-0.20180809.1 | |
194 | ||
195 | %description compositor-rdp | |
196 | RDP compositor plugin for Weston. | |
197 | ||
198 | %description compositor-rdp -l pl.UTF-8 | |
199 | Wtyczka składająca RDP dla Westona. | |
200 | ||
201 | %prep | |
202 | %setup -q | |
203 | %patch0 -p1 | |
204 | ||
205 | %build | |
206 | %{__libtoolize} | |
207 | %{__aclocal} -I m4 | |
208 | %{__autoconf} | |
209 | %{__autoheader} | |
210 | %{__automake} | |
211 | %configure \ | |
212 | --enable-autotools \ | |
213 | %{!?with_clients:--disable-clients} \ | |
214 | %{!?with_drm:--disable-drm-compositor} \ | |
215 | %{!?with_libunwind:--disable-libunwind} \ | |
216 | %{?with_rdp:--enable-rdp-compositor} \ | |
217 | %{?with_remoting:--enable-remoting} \ | |
218 | %{!?with_sclients:--disable-simple-clients} \ | |
219 | --disable-setuid-install \ | |
220 | --disable-silent-rules \ | |
221 | %{!?with_vaapi:--disable-vaapi-recorder} \ | |
222 | %{!?with_wlaunch:--disable-weston-launch} \ | |
223 | %{!?with_x11:--disable-x11-compositor} \ | |
224 | %{!?with_xwayland:--disable-xwayland} \ | |
225 | %{?with_glclients:--with-cairo=gl} | |
226 | %{__make} | |
227 | ||
228 | %install | |
229 | rm -rf $RPM_BUILD_ROOT | |
230 | ||
231 | %{__make} install \ | |
232 | DESTDIR=$RPM_BUILD_ROOT | |
233 | ||
234 | %{__rm} $RPM_BUILD_ROOT%{_libdir}/libweston-*.la | |
235 | %{__rm} $RPM_BUILD_ROOT%{_libdir}/libweston-6/*.la \ | |
236 | $RPM_BUILD_ROOT%{_libdir}/weston/*.la | |
237 | ||
238 | %clean | |
239 | rm -rf $RPM_BUILD_ROOT | |
240 | ||
241 | %post libs -p /sbin/ldconfig | |
242 | %postun libs -p /sbin/ldconfig | |
243 | ||
244 | %files | |
245 | %defattr(644,root,root,755) | |
246 | %doc COPYING README.md | |
247 | %attr(755,root,root) %{_bindir}/wcap-decode | |
248 | # composer | |
249 | %attr(755,root,root) %{_bindir}/weston | |
250 | %if %{with wlaunch} | |
251 | %attr(755,root,root) %{_bindir}/weston-launch | |
252 | %endif | |
253 | %if %{with clients} | |
254 | %attr(755,root,root) %{_bindir}/weston-debug | |
255 | %attr(755,root,root) %{_bindir}/weston-info | |
256 | %attr(755,root,root) %{_bindir}/weston-screenshooter | |
257 | %attr(755,root,root) %{_bindir}/weston-terminal | |
258 | %attr(755,root,root) %{_libexecdir}/weston-desktop-shell | |
259 | %attr(755,root,root) %{_libexecdir}/weston-keyboard | |
260 | %attr(755,root,root) %{_libexecdir}/weston-simple-im | |
261 | %endif | |
262 | %dir %{_libdir}/weston | |
263 | %attr(755,root,root) %{_libdir}/weston/cms-colord.so | |
264 | %attr(755,root,root) %{_libdir}/weston/cms-static.so | |
265 | %attr(755,root,root) %{_libdir}/weston/desktop-shell.so | |
266 | %attr(755,root,root) %{_libdir}/weston/fullscreen-shell.so | |
267 | # ivi shell | |
268 | %if %{with clients} | |
269 | %attr(755,root,root) %{_libexecdir}/weston-ivi-shell-user-interface | |
270 | %endif | |
271 | %attr(755,root,root) %{_libdir}/weston/hmi-controller.so | |
272 | %attr(755,root,root) %{_libdir}/weston/ivi-shell.so | |
273 | %{_datadir}/weston | |
274 | %dir %{_datadir}/wayland-sessions | |
275 | %{_datadir}/wayland-sessions/weston.desktop | |
276 | %{_mandir}/man1/weston.1* | |
277 | %{_mandir}/man1/weston-debug.1* | |
278 | %{_mandir}/man5/weston.ini.5* | |
279 | %{_mandir}/man7/weston-drm.7* | |
280 | ||
281 | # noinst by default - --enable-demo-clients and package in %{name}-demos? | |
282 | # "simple clients" | |
283 | #%attr(755,root,root) %{_bindir}/weston-multi-resource | |
284 | #%attr(755,root,root) %{_bindir}/weston-simple-egl | |
285 | #%attr(755,root,root) %{_bindir}/weston-simple-shm | |
286 | #%attr(755,root,root) %{_bindir}/weston-simple-touch | |
287 | %if %{with clients} | |
288 | #%attr(755,root,root) %{_bindir}/weston-calibrator | |
289 | #%attr(755,root,root) %{_bindir}/weston-clickdot | |
290 | #%attr(755,root,root) %{_bindir}/weston-cliptest | |
291 | #%attr(755,root,root) %{_bindir}/weston-dnd | |
292 | #%attr(755,root,root) %{_bindir}/weston-editor | |
293 | #%attr(755,root,root) %{_bindir}/weston-eventdemo | |
294 | #%attr(755,root,root) %{_bindir}/weston-flower | |
295 | #%attr(755,root,root) %{_bindir}/weston-fullscreen | |
296 | #%attr(755,root,root) %{_bindir}/weston-image | |
297 | #%attr(755,root,root) %{_bindir}/weston-resizor | |
298 | #%attr(755,root,root) %{_bindir}/weston-scaler | |
299 | #%attr(755,root,root) %{_bindir}/weston-smoke | |
300 | #%attr(755,root,root) %{_bindir}/weston-stacking | |
301 | #%attr(755,root,root) %{_bindir}/weston-transformed | |
302 | %if %{with glclients} | |
303 | # "full GL" clients | |
304 | #%attr(755,root,root) %{_bindir}/weston-gears | |
305 | %endif | |
306 | %endif | |
307 | ||
308 | %files devel | |
309 | %defattr(644,root,root,755) | |
310 | %{_includedir}/weston | |
311 | %{_pkgconfigdir}/weston.pc | |
312 | ||
313 | %files libs | |
314 | %defattr(644,root,root,755) | |
315 | %attr(755,root,root) %{_libdir}/libweston-6.so.*.*.* | |
316 | %attr(755,root,root) %ghost %{_libdir}/libweston-6.so.0 | |
317 | %attr(755,root,root) %{_libdir}/libweston-desktop-6.so.*.*.* | |
318 | %attr(755,root,root) %ghost %{_libdir}/libweston-desktop-6.so.0 | |
319 | %dir %{_libdir}/libweston-6 | |
320 | %if %{with drm} | |
321 | %attr(755,root,root) %{_libdir}/libweston-6/drm-backend.so | |
322 | %endif | |
323 | %attr(755,root,root) %{_libdir}/libweston-6/fbdev-backend.so | |
324 | %attr(755,root,root) %{_libdir}/libweston-6/gl-renderer.so | |
325 | %attr(755,root,root) %{_libdir}/libweston-6/headless-backend.so | |
326 | %if %{with remoting} | |
327 | %attr(755,root,root) %{_libdir}/libweston-6/remoting-plugin.so | |
328 | %endif | |
329 | %if %{with wayland} | |
330 | %attr(755,root,root) %{_libdir}/libweston-6/wayland-backend.so | |
331 | %endif | |
332 | %if %{with x11} | |
333 | %attr(755,root,root) %{_libdir}/libweston-6/x11-backend.so | |
334 | %endif | |
335 | %if %{with xwayland} | |
336 | %attr(755,root,root) %{_libdir}/libweston-6/xwayland.so | |
337 | %endif | |
338 | ||
339 | %files libs-devel | |
340 | %defattr(644,root,root,755) | |
341 | %attr(755,root,root) %{_libdir}/libweston-6.so | |
342 | %attr(755,root,root) %{_libdir}/libweston-desktop-6.so | |
343 | %{_includedir}/libweston-6 | |
344 | %{_pkgconfigdir}/libweston-6.pc | |
345 | %{_pkgconfigdir}/libweston-desktop-6.pc | |
346 | %{_npkgconfigdir}/libweston-6-protocols.pc | |
347 | ||
348 | %if %{with rdp} | |
349 | %files compositor-rdp | |
350 | %defattr(644,root,root,755) | |
351 | %attr(755,root,root) %{_libdir}/libweston-6/rdp-backend.so | |
352 | %{_mandir}/man7/weston-rdp.7* | |
353 | %endif |