2 # - brcm_egl, libhybris_egl_server
5 %bcond_without doc # Build documentation
6 %bcond_without qtcompositor # QtCompositor API
8 %define orgname qtwayland
9 %define qtbase_ver %{version}
10 %define qtdeclarative_ver %{version}
11 %define qttools_ver %{version}
12 Summary: The Qt5 Wayland libraries
13 Summary(pl.UTF-8): Biblioteki Qt5 Wayland
17 License: LGPL v2.1 with Digia Qt LGPL Exception v1.1 or GPL v3.0
19 Source0: http://download.qt.io/official_releases/qt/5.14/%{version}/submodules/%{orgname}-everywhere-src-%{version}.tar.xz
20 # Source0-md5: e1e05e424229fb8519b677b824aa6d24
21 URL: http://www.qt.io/
22 BuildRequires: EGL-devel
23 BuildRequires: OpenGL-GLX-devel
24 BuildRequires: Qt5AccessibilitySupport-devel >= %{qtbase_ver}
25 BuildRequires: Qt5Core-devel >= %{qtbase_ver}
26 BuildRequires: Qt5EglSupport-devel >= %{qtbase_ver}
27 BuildRequires: Qt5EventDispatcherSupport-devel >= %{qtbase_ver}
28 BuildRequires: Qt5FontDatabaseSupport-devel >= %{qtbase_ver}
29 BuildRequires: Qt5GlxSupport-devel >= %{qtbase_ver}
30 BuildRequires: Qt5Gui-devel >= %{qtbase_ver}
31 BuildRequires: Qt5PlatformCompositorSupport-devel >= %{qtbase_ver}
32 BuildRequires: Qt5ServiceSupport-devel >= %{qtbase_ver}
33 BuildRequires: Qt5ThemeSupport-devel >= %{qtbase_ver}
34 BuildRequires: Qt5VulkanSupport-devel >= %{qtbase_ver}
35 BuildRequires: Qt5XkbCommonSupport-devel >= %{qtbase_ver}
36 BuildRequires: libdrm-devel
37 BuildRequires: pkgconfig
39 BuildRequires: qt5-assistant >= %{qttools_ver}
41 BuildRequires: qt5-build >= %{qtbase_ver}
42 BuildRequires: qt5-qmake >= %{qtbase_ver}
43 BuildRequires: rpmbuild(macros) >= 1.654
44 BuildRequires: tar >= 1:1.22
45 BuildRequires: wayland-devel >= 1.4.0
46 BuildRequires: wayland-egl-devel
47 BuildRequires: xorg-lib-libXcomposite-devel
48 BuildRequires: xorg-lib-libxkbcommon-devel >= 0.2.0
50 %if %{with qtcompositor}
51 BuildRequires: Qt5Qml-devel >= %{qtdeclarative_ver}
52 BuildRequires: Qt5Quick-devel >= %{qtdeclarative_ver}
53 BuildRequires: xorg-lib-libX11-devel
55 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
57 %define specflags -fno-strict-aliasing
58 %define qt5dir %{_libdir}/qt5
61 Qt is a cross-platform application and UI framework. Using Qt, you can
62 write web-enabled applications once and deploy them across desktop,
63 mobile and embedded systems without rewriting the source code.
65 This package contains Qt5 Wayland libraries.
67 %description -l pl.UTF-8
68 Qt to wieloplatformowy szkielet aplikacji i interfejsów użytkownika.
69 Przy użyciu Qt można pisać aplikacje powiązane z WWW i wdrażać je w
70 systemach biurkowych, przenośnych i wbudowanych bez przepisywania kodu
73 Ten pakiet zawiera biblioteki Qt5 Wayland.
75 %package -n Qt5WaylandCompositor
76 Summary: The Qt5 WaylandCompositor library
77 Summary(pl.UTF-8): Biblioteka Qt5 WaylandCompositor
79 Requires: Qt5Core >= %{qtbase_ver}
80 Requires: Qt5Gui >= %{qtbase_ver}
81 Requires: Qt5Network >= %{qtbase_ver}
82 Requires: Qt5Qml >= %{qtdeclarative_ver}
83 Requires: Qt5Quick >= %{qtdeclarative_ver}
84 Requires: wayland >= 1.4.0
85 Requires: xorg-lib-libxkbcommon >= 0.2.0
86 Obsoletes: Qt5Compositor
88 %description -n Qt5WaylandCompositor
89 Qt5 WaylandCompositor library enables the creation of Wayland
90 compositors using Qt and QtQuick.
92 %description -n Qt5WaylandCompositor -l pl.UTF-8
93 Biblioteka Qt5 WaylandCompositor pozwala na tworzenie kompozytorów
94 Wayland przy użyciu bibliotek Qt i QtQuick.
96 %package -n Qt5WaylandCompositor-devel
97 Summary: Qt5 WaylandCompositor library - development files
98 Summary(pl.UTF-8): Biblioteka Qt5 WaylandCompositor - pliki programistyczne
99 Group: Development/Libraries
100 Requires: OpenGL-devel
101 Requires: Qt5WaylandCompositor = %{version}-%{release}
102 Requires: Qt5Core-devel >= %{qtbase_ver}
103 Requires: Qt5Gui-devel >= %{qtbase_ver}
104 Requires: Qt5Network-devel >= %{qtbase_ver}
105 Requires: Qt5Qml-devel >= %{qtdeclarative_ver}
106 Requires: Qt5Quick-devel >= %{qtdeclarative_ver}
107 Requires: wayland-devel >= 1.4.0
108 Requires: xorg-lib-libxkbcommon-devel >= 0.2.0
109 Obsoletes: Qt5Compositor-devel
111 %description -n Qt5WaylandCompositor-devel
112 Qt5 WaylandCompositor library - development files.
114 %description -n Qt5WaylandCompositor-devel -l pl.UTF-8
115 Biblioteka Qt5 WaylandCompositor - pliki programistyczne.
117 %package -n Qt5WaylandClient
118 Summary: The Qt5 WaylandClient library
119 Summary(pl.UTF-8): Biblioteka Qt5 WaylandClient
121 Requires: Qt5Core >= %{qtbase_ver}
122 Requires: Qt5Gui >= %{qtbase_ver}
123 Requires: wayland >= 1.4.0
124 Requires: xorg-lib-libxkbcommon >= 0.2.0
126 %description -n Qt5WaylandClient
127 Qt5 WaylandClient library enables Qt applications to be run as Wayland
130 %description -n Qt5WaylandClient -l pl.UTF-8
131 Biblioteka Qt5 WaylandClient pozwala na uruchamianie aplikacji Qt jako
134 %package -n Qt5WaylandClient-devel
135 Summary: Qt5 WaylandClient library - development files
136 Summary(pl.UTF-8): Biblioteka Qt5 WaylandClient - pliki programistyczne
137 Group: Development/Libraries
138 Requires: Qt5Core-devel >= %{qtbase_ver}
139 Requires: Qt5DBus-devel >= %{qtbase_ver}
140 Requires: Qt5Gui-devel >= %{qtbase_ver}
141 Requires: Qt5PlatformCompositorSupport-devel >= %{qtbase_ver}
142 Requires: Qt5WaylandClient = %{version}-%{release}
143 Requires: wayland-devel >= 1.4.0
144 Requires: xorg-lib-libxkbcommon-devel >= 0.2.0
146 %description -n Qt5WaylandClient-devel
147 Qt5 WaylandClient library - development files.
149 %description -n Qt5WaylandClient-devel -l pl.UTF-8
150 Biblioteka Qt5 WaylandClient - pliki programistyczne.
153 Summary: Qt5 Wayland documentation in HTML format
154 Summary(pl.UTF-8): Dokumentacja do bibliotek Qt5 Wayland w formacie HTML
156 Requires: qt5-doc-common >= %{qtbase_ver}
157 %if "%{_rpmversion}" >= "5"
162 Qt5 Wayland documentation in HTML format.
164 %description doc -l pl.UTF-8
165 Dokumentacja do bibliotek Qt5 Wayland w formacie HTML.
168 Summary: Qt5 Wayland documentation in QCH format
169 Summary(pl.UTF-8): Dokumentacja do bibliotek Qt5 Wayland w formacie QCH
171 Requires: qt5-doc-common >= %{qtbase_ver}
172 %if "%{_rpmversion}" >= "5"
177 Qt5 Wayland documentation in QCH format.
179 %description doc-qch -l pl.UTF-8
180 Dokumentacja do bibliotek Qt5 Wayland w formacie QCH.
183 Summary: Qt5 Wayland examples
184 Summary(pl.UTF-8): Przykłady do bibliotek Qt5 Wayland
185 Group: X11/Development/Libraries
186 %if "%{_rpmversion}" >= "5"
190 %description examples
191 Qt5 Wayland examples.
193 %description examples -l pl.UTF-8
194 Przykłady do bibliotek Qt5 Wayland.
197 %setup -q -n %{orgname}-everywhere-src-%{version}
201 %{?with_qtcompositor:CONFIG+=wayland-compositor}
203 %{?with_doc:%{__make} docs}
206 rm -rf $RPM_BUILD_ROOT
208 INSTALL_ROOT=$RPM_BUILD_ROOT
211 %{__make} install_docs \
212 INSTALL_ROOT=$RPM_BUILD_ROOT
216 %{__rm} $RPM_BUILD_ROOT%{_libdir}/libQt5*.so.5.??
217 # actually drop *.la, follow policy of not packaging them when *.pc exist
218 %{__rm} $RPM_BUILD_ROOT%{_libdir}/libQt5*.la
220 # Prepare some files list
222 r="$RPM_BUILD_ROOT$2"
224 echo "%%dir $2" >> $1.files
225 elif [ -x "$r" ] ; then
226 echo "%%attr(755,root,root) $2" >> $1.files
227 elif [ -f "$r" ]; then
228 echo "$2" >> $1.files
230 echo "Error generation $1 files list!"
231 echo "$r: no such file or directory!"
237 for f in `find $RPM_BUILD_ROOT$2 -printf "%%P "`; do
242 # examples present only for QtCompositor (as of 5.5.1)
243 %if %{with qtcompositor}
244 echo "%defattr(644,root,root,755)" > examples.files
245 ifecho_tree examples %{_examplesdir}/qt5/wayland
249 rm -rf $RPM_BUILD_ROOT
251 %post -n Qt5WaylandCompositor -p /sbin/ldconfig
252 %postun -n Qt5WaylandCompositor -p /sbin/ldconfig
254 %post -n Qt5WaylandClient -p /sbin/ldconfig
255 %postun -n Qt5WaylandClient -p /sbin/ldconfig
257 %if %{with qtcompositor}
258 %files -n Qt5WaylandCompositor
259 %defattr(644,root,root,755)
260 %attr(755,root,root) %{_libdir}/libQt5WaylandCompositor.so.*.*.*
261 %attr(755,root,root) %ghost %{_libdir}/libQt5WaylandCompositor.so.5
262 %attr(755,root,root) %{qt5dir}/plugins/platforms/libqwayland-xcomposite-egl.so
263 %attr(755,root,root) %{qt5dir}/plugins/platforms/libqwayland-xcomposite-glx.so
264 %dir %{qt5dir}/plugins/wayland-graphics-integration-server
265 %attr(755,root,root) %{qt5dir}/plugins/wayland-graphics-integration-server/libdmabuf-server.so
266 %attr(755,root,root) %{qt5dir}/plugins/wayland-graphics-integration-server/libdrm-egl-server.so
267 %attr(755,root,root) %{qt5dir}/plugins/wayland-graphics-integration-server/liblinux-dmabuf-unstable-v1.so
268 %attr(755,root,root) %{qt5dir}/plugins/wayland-graphics-integration-server/libqt-plugin-wayland-egl.so
269 %attr(755,root,root) %{qt5dir}/plugins/wayland-graphics-integration-server/libshm-emulation-server.so
270 %attr(755,root,root) %{qt5dir}/plugins/wayland-graphics-integration-server/libvulkan-server.so
271 %attr(755,root,root) %{qt5dir}/plugins/wayland-graphics-integration-server/libwayland-eglstream-controller.so
272 %attr(755,root,root) %{qt5dir}/plugins/wayland-graphics-integration-server/libxcomposite-egl.so
273 %attr(755,root,root) %{qt5dir}/plugins/wayland-graphics-integration-server/libxcomposite-glx.so
274 %dir %{qt5dir}/qml/QtWayland
275 %dir %{qt5dir}/qml/QtWayland/Compositor
276 %attr(755,root,root) %{qt5dir}/qml/QtWayland/Compositor/libqwaylandcompositorplugin.so
277 %{qt5dir}/qml/QtWayland/Compositor/plugins.qmltypes
278 %{qt5dir}/qml/QtWayland/Compositor/qmldir
279 %dir %{qt5dir}/qml/QtWayland/Compositor/TextureSharingExtension
280 %attr(755,root,root) %{qt5dir}/qml/QtWayland/Compositor/TextureSharingExtension/libqwaylandtexturesharingextension.so
281 %{qt5dir}/qml/QtWayland/Compositor/TextureSharingExtension/qmldir
283 %files -n Qt5WaylandCompositor-devel
284 %defattr(644,root,root,755)
285 %attr(755,root,root) %{_libdir}/libQt5WaylandCompositor.so
286 %{_libdir}/libQt5WaylandCompositor.prl
287 %{_includedir}/qt5/QtWaylandCompositor
288 %{_pkgconfigdir}/Qt5WaylandCompositor.pc
289 %{_libdir}/cmake/Qt5Gui/Qt5Gui_QWaylandXCompositeEglPlatformIntegrationPlugin.cmake
290 %{_libdir}/cmake/Qt5Gui/Qt5Gui_QWaylandXCompositeGlxPlatformIntegrationPlugin.cmake
291 %{_libdir}/cmake/Qt5WaylandCompositor
292 %{qt5dir}/mkspecs/modules/qt_lib_waylandcompositor.pri
293 %{qt5dir}/mkspecs/modules/qt_lib_waylandcompositor_private.pri
296 %files -n Qt5WaylandClient
297 %defattr(644,root,root,755)
298 %doc LICENSE.GPL3-EXCEPT README
300 %attr(755,root,root) %{_libdir}/libQt5WaylandClient.so.*.*.*
301 %attr(755,root,root) %ghost %{_libdir}/libQt5WaylandClient.so.5
302 %attr(755,root,root) %{qt5dir}/bin/qtwaylandscanner
303 %attr(755,root,root) %{qt5dir}/plugins/platforms/libqwayland-egl.so
304 %attr(755,root,root) %{qt5dir}/plugins/platforms/libqwayland-generic.so
305 %dir %{qt5dir}/plugins/wayland-decoration-client
306 %attr(755,root,root) %{qt5dir}/plugins/wayland-decoration-client/libbradient.so
307 %dir %{qt5dir}/plugins/wayland-graphics-integration-client
308 %attr(755,root,root) %{qt5dir}/plugins/wayland-graphics-integration-client/libdmabuf-server.so
309 %attr(755,root,root) %{qt5dir}/plugins/wayland-graphics-integration-client/libdrm-egl-server.so
310 %attr(755,root,root) %{qt5dir}/plugins/wayland-graphics-integration-client/libqt-plugin-wayland-egl.so
311 %attr(755,root,root) %{qt5dir}/plugins/wayland-graphics-integration-client/libshm-emulation-server.so
312 %attr(755,root,root) %{qt5dir}/plugins/wayland-graphics-integration-client/libvulkan-server.so
313 %attr(755,root,root) %{qt5dir}/plugins/wayland-graphics-integration-client/libxcomposite-egl.so
314 %attr(755,root,root) %{qt5dir}/plugins/wayland-graphics-integration-client/libxcomposite-glx.so
315 %dir %{qt5dir}/plugins/wayland-shell-integration
316 %attr(755,root,root) %{qt5dir}/plugins/wayland-shell-integration/libfullscreen-shell-v1.so
317 %attr(755,root,root) %{qt5dir}/plugins/wayland-shell-integration/libivi-shell.so
318 %attr(755,root,root) %{qt5dir}/plugins/wayland-shell-integration/libwl-shell.so
319 %attr(755,root,root) %{qt5dir}/plugins/wayland-shell-integration/libxdg-shell.so
320 %attr(755,root,root) %{qt5dir}/plugins/wayland-shell-integration/libxdg-shell-v5.so
321 %attr(755,root,root) %{qt5dir}/plugins/wayland-shell-integration/libxdg-shell-v6.so
322 %dir %{qt5dir}/qml/QtWayland/Client
323 %dir %{qt5dir}/qml/QtWayland/Client/TextureSharing
324 %attr(755,root,root) %{qt5dir}/qml/QtWayland/Client/TextureSharing/libqwaylandtexturesharing.so
325 %{qt5dir}/qml/QtWayland/Client/TextureSharing/qmldir
327 %files -n Qt5WaylandClient-devel
328 %defattr(644,root,root,755)
329 %attr(755,root,root) %{_libdir}/libQt5WaylandClient.so
330 %{_libdir}/libQt5WaylandClient.prl
331 %{_includedir}/qt5/QtWaylandClient
332 %{_pkgconfigdir}/Qt5WaylandClient.pc
333 %{_libdir}/cmake/Qt5Gui/Qt5Gui_QWaylandEglPlatformIntegrationPlugin.cmake
334 %{_libdir}/cmake/Qt5Gui/Qt5Gui_QWaylandIntegrationPlugin.cmake
335 %{_libdir}/cmake/Qt5WaylandClient
336 %{qt5dir}/mkspecs/modules/qt_lib_waylandclient.pri
337 %{qt5dir}/mkspecs/modules/qt_lib_waylandclient_private.pri
341 %defattr(644,root,root,755)
342 %{_docdir}/qt5-doc/qtwaylandcompositor
345 %defattr(644,root,root,755)
346 %{_docdir}/qt5-doc/qtwaylandcompositor.qch
349 %if %{with qtcompositor}
350 %files examples -f examples.files
351 %defattr(644,root,root,755)
352 # XXX: dir shared with qt5-qtbase-examples
353 %dir %{_examplesdir}/qt5