]> git.pld-linux.org Git - packages/qt5-qtwayland.git/blob - qt5-qtwayland.spec
up to 5.15.13
[packages/qt5-qtwayland.git] / qt5-qtwayland.spec
1 # TODO:
2 # - brcm_egl, libhybris_egl_server
3 #
4 # Conditional build:
5 %bcond_without  doc             # Build documentation
6 %bcond_without  qtcompositor    # QtCompositor API
7
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
14 Name:           qt5-%{orgname}
15 Version:        5.15.13
16 Release:        1
17 License:        LGPL v3 or GPL v2 or GPL v3 or commercial
18 Group:          Libraries
19 Source0:        https://download.qt.io/official_releases/qt/5.15/%{version}/submodules/%{orgname}-everywhere-opensource-src-%{version}.tar.xz
20 # Source0-md5:  307aa7b48e2d5378167873cedb486298
21 Patch0:         %{name}-revert-QTBUG-83303.patch
22 URL:            https://www.qt.io/
23 BuildRequires:  EGL-devel
24 BuildRequires:  OpenGL-GLX-devel
25 BuildRequires:  Qt5AccessibilitySupport-devel >= %{qtbase_ver}
26 BuildRequires:  Qt5Core-devel >= %{qtbase_ver}
27 BuildRequires:  Qt5EglSupport-devel >= %{qtbase_ver}
28 BuildRequires:  Qt5EventDispatcherSupport-devel >= %{qtbase_ver}
29 BuildRequires:  Qt5FontDatabaseSupport-devel >= %{qtbase_ver}
30 BuildRequires:  Qt5GlxSupport-devel >= %{qtbase_ver}
31 BuildRequires:  Qt5Gui-devel >= %{qtbase_ver}
32 BuildRequires:  Qt5PlatformCompositorSupport-devel >= %{qtbase_ver}
33 BuildRequires:  Qt5ServiceSupport-devel >= %{qtbase_ver}
34 BuildRequires:  Qt5ThemeSupport-devel >= %{qtbase_ver}
35 BuildRequires:  Qt5VulkanSupport-devel >= %{qtbase_ver}
36 BuildRequires:  Qt5XkbCommonSupport-devel >= %{qtbase_ver}
37 BuildRequires:  libdrm-devel
38 BuildRequires:  pkgconfig
39 %if %{with doc}
40 BuildRequires:  qt5-assistant >= %{qttools_ver}
41 %endif
42 BuildRequires:  qt5-build >= %{qtbase_ver}
43 BuildRequires:  qt5-qmake >= %{qtbase_ver}
44 BuildRequires:  rpm-build >= 4.6
45 BuildRequires:  rpmbuild(macros) >= 2.016
46 BuildRequires:  tar >= 1:1.22
47 BuildRequires:  wayland-devel >= 1.4.0
48 BuildRequires:  wayland-egl-devel
49 BuildRequires:  xorg-lib-libX11-devel
50 BuildRequires:  xorg-lib-libXcomposite-devel
51 BuildRequires:  xorg-lib-libxkbcommon-devel >= 0.2.0
52 BuildRequires:  xz
53 %if %{with qtcompositor}
54 BuildRequires:  Qt5Qml-devel >= %{qtdeclarative_ver}
55 BuildRequires:  Qt5Quick-devel >= %{qtdeclarative_ver}
56 %endif
57 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
58
59 %define         specflags       -fno-strict-aliasing
60 %define         qt5dir          %{_libdir}/qt5
61
62 %description
63 Qt is a cross-platform application and UI framework. Using Qt, you can
64 write web-enabled applications once and deploy them across desktop,
65 mobile and embedded systems without rewriting the source code.
66
67 This package contains Qt5 Wayland libraries.
68
69 %description -l pl.UTF-8
70 Qt to wieloplatformowy szkielet aplikacji i interfejsów użytkownika.
71 Przy użyciu Qt można pisać aplikacje powiązane z WWW i wdrażać je w
72 systemach biurkowych, przenośnych i wbudowanych bez przepisywania kodu
73 źródłowego.
74
75 Ten pakiet zawiera biblioteki Qt5 Wayland.
76
77 %package -n Qt5WaylandCompositor
78 Summary:        The Qt5 WaylandCompositor library
79 Summary(pl.UTF-8):      Biblioteka Qt5 WaylandCompositor
80 Group:          Libraries
81 %requires_eq_to Qt5Core Qt5Core-devel
82 Requires:       Qt5Gui >= %{qtbase_ver}
83 Requires:       Qt5Qml >= %{qtdeclarative_ver}
84 Requires:       Qt5Quick >= %{qtdeclarative_ver}
85 Requires:       wayland >= 1.4.0
86 Requires:       xorg-lib-libxkbcommon >= 0.2.0
87 Obsoletes:      Qt5Compositor < 5.8.0
88
89 %description -n Qt5WaylandCompositor
90 Qt5 WaylandCompositor library enables the creation of Wayland
91 compositors using Qt and QtQuick.
92
93 %description -n Qt5WaylandCompositor -l pl.UTF-8
94 Biblioteka Qt5 WaylandCompositor pozwala na tworzenie kompozytorów
95 Wayland przy użyciu bibliotek Qt i QtQuick.
96
97 %package -n Qt5WaylandCompositor-devel
98 Summary:        Qt5 WaylandCompositor library - development files
99 Summary(pl.UTF-8):      Biblioteka Qt5 WaylandCompositor - pliki programistyczne
100 Group:          Development/Libraries
101 Requires:       OpenGL-devel
102 Requires:       Qt5WaylandCompositor = %{version}-%{release}
103 Requires:       Qt5Core-devel >= %{qtbase_ver}
104 Requires:       Qt5Gui-devel >= %{qtbase_ver}
105 Requires:       Qt5Network-devel >= %{qtbase_ver}
106 Requires:       Qt5Qml-devel >= %{qtdeclarative_ver}
107 Requires:       Qt5Quick-devel >= %{qtdeclarative_ver}
108 Requires:       wayland-devel >= 1.4.0
109 Requires:       xorg-lib-libxkbcommon-devel >= 0.2.0
110 Obsoletes:      Qt5Compositor-devel < 5.8.0
111
112 %description -n Qt5WaylandCompositor-devel
113 Qt5 WaylandCompositor library - development files.
114
115 %description -n Qt5WaylandCompositor-devel -l pl.UTF-8
116 Biblioteka Qt5 WaylandCompositor - pliki programistyczne.
117
118 %package -n Qt5WaylandClient
119 Summary:        The Qt5 WaylandClient library
120 Summary(pl.UTF-8):      Biblioteka Qt5 WaylandClient
121 Group:          Libraries
122 %requires_eq_to Qt5Core Qt5Core-devel
123 Requires:       Qt5DBus >= %{qtbase_ver}
124 Requires:       Qt5Gui >= %{qtbase_ver}
125 Requires:       wayland >= 1.4.0
126 Requires:       xorg-lib-libxkbcommon >= 0.2.0
127
128 %description -n Qt5WaylandClient
129 Qt5 WaylandClient library enables Qt applications to be run as Wayland
130 clients.
131
132 %description -n Qt5WaylandClient -l pl.UTF-8
133 Biblioteka Qt5 WaylandClient pozwala na uruchamianie aplikacji Qt jako
134 klientów Wayland.
135
136 %package -n Qt5WaylandClient-devel
137 Summary:        Qt5 WaylandClient library - development files
138 Summary(pl.UTF-8):      Biblioteka Qt5 WaylandClient - pliki programistyczne
139 Group:          Development/Libraries
140 Requires:       Qt5Core-devel >= %{qtbase_ver}
141 Requires:       Qt5DBus-devel >= %{qtbase_ver}
142 Requires:       Qt5Gui-devel >= %{qtbase_ver}
143 Requires:       Qt5PlatformCompositorSupport-devel >= %{qtbase_ver}
144 Requires:       Qt5WaylandClient = %{version}-%{release}
145 Requires:       wayland-devel >= 1.4.0
146 Requires:       xorg-lib-libxkbcommon-devel >= 0.2.0
147
148 %description -n Qt5WaylandClient-devel
149 Qt5 WaylandClient library - development files.
150
151 %description -n Qt5WaylandClient-devel -l pl.UTF-8
152 Biblioteka Qt5 WaylandClient - pliki programistyczne.
153
154 %package doc
155 Summary:        Qt5 Wayland documentation in HTML format
156 Summary(pl.UTF-8):      Dokumentacja do bibliotek Qt5 Wayland w formacie HTML
157 Group:          Documentation
158 Requires:       qt5-doc-common >= %{qtbase_ver}
159 BuildArch:      noarch
160
161 %description doc
162 Qt5 Wayland documentation in HTML format.
163
164 %description doc -l pl.UTF-8
165 Dokumentacja do bibliotek Qt5 Wayland w formacie HTML.
166
167 %package doc-qch
168 Summary:        Qt5 Wayland documentation in QCH format
169 Summary(pl.UTF-8):      Dokumentacja do bibliotek Qt5 Wayland w formacie QCH
170 Group:          Documentation
171 Requires:       qt5-doc-common >= %{qtbase_ver}
172 BuildArch:      noarch
173
174 %description doc-qch
175 Qt5 Wayland documentation in QCH format.
176
177 %description doc-qch -l pl.UTF-8
178 Dokumentacja do bibliotek Qt5 Wayland w formacie QCH.
179
180 %package examples
181 Summary:        Qt5 Wayland examples
182 Summary(pl.UTF-8):      Przykłady do bibliotek Qt5 Wayland
183 Group:          X11/Development/Libraries
184 BuildArch:      noarch
185
186 %description examples
187 Qt5 Wayland examples.
188
189 %description examples -l pl.UTF-8
190 Przykłady do bibliotek Qt5 Wayland.
191
192 %prep
193 %setup -q -n %{orgname}-everywhere-src-%{version}
194 %patch0 -p1
195
196 %build
197 %{qmake_qt5} \
198         %{?with_qtcompositor:CONFIG+=wayland-compositor}
199 %{__make}
200 %{?with_doc:%{__make} docs}
201
202 %install
203 rm -rf $RPM_BUILD_ROOT
204
205 %{__make} install \
206         INSTALL_ROOT=$RPM_BUILD_ROOT
207
208 %if %{with doc}
209 %{__make} install_docs \
210         INSTALL_ROOT=$RPM_BUILD_ROOT
211 %endif
212
213 # useless symlinks
214 %{__rm} $RPM_BUILD_ROOT%{_libdir}/libQt5*.so.5.??
215 # actually drop *.la, follow policy of not packaging them when *.pc exist
216 %{__rm} $RPM_BUILD_ROOT%{_libdir}/libQt5*.la
217
218 # Prepare some files list
219 ifecho() {
220         r="$RPM_BUILD_ROOT$2"
221         if [ -d "$r" ]; then
222                 echo "%%dir $2" >> $1.files
223         elif [ -x "$r" ] ; then
224                 echo "%%attr(755,root,root) $2" >> $1.files
225         elif [ -f "$r" ]; then
226                 echo "$2" >> $1.files
227         else
228                 echo "Error generation $1 files list!"
229                 echo "$r: no such file or directory!"
230                 return 1
231         fi
232 }
233 ifecho_tree() {
234         ifecho $1 $2
235         for f in `find $RPM_BUILD_ROOT$2 -printf "%%P "`; do
236                 ifecho $1 $2/$f
237         done
238 }
239
240 # examples present only for QtCompositor (as of 5.5.1)
241 %if %{with qtcompositor}
242 echo "%defattr(644,root,root,755)" > examples.files
243 ifecho_tree examples %{_examplesdir}/qt5/wayland
244 %endif
245
246 %clean
247 rm -rf $RPM_BUILD_ROOT
248
249 %post   -n Qt5WaylandCompositor -p /sbin/ldconfig
250 %postun -n Qt5WaylandCompositor -p /sbin/ldconfig
251
252 %post   -n Qt5WaylandClient -p /sbin/ldconfig
253 %postun -n Qt5WaylandClient -p /sbin/ldconfig
254
255 %if %{with qtcompositor}
256 %files -n Qt5WaylandCompositor
257 %defattr(644,root,root,755)
258 %attr(755,root,root) %{_libdir}/libQt5WaylandCompositor.so.*.*.*
259 %attr(755,root,root) %ghost %{_libdir}/libQt5WaylandCompositor.so.5
260 %dir %{qt5dir}/plugins/wayland-graphics-integration-server
261 %attr(755,root,root) %{qt5dir}/plugins/wayland-graphics-integration-server/libqt-wayland-compositor-dmabuf-server-buffer.so
262 %attr(755,root,root) %{qt5dir}/plugins/wayland-graphics-integration-server/libqt-wayland-compositor-drm-egl-server-buffer.so
263 %attr(755,root,root) %{qt5dir}/plugins/wayland-graphics-integration-server/libqt-wayland-compositor-linux-dmabuf-unstable-v1.so
264 %attr(755,root,root) %{qt5dir}/plugins/wayland-graphics-integration-server/libqt-wayland-compositor-shm-emulation-server.so
265 %attr(755,root,root) %{qt5dir}/plugins/wayland-graphics-integration-server/libqt-wayland-compositor-vulkan-server.so
266 %attr(755,root,root) %{qt5dir}/plugins/wayland-graphics-integration-server/libqt-wayland-compositor-wayland-egl.so
267 %attr(755,root,root) %{qt5dir}/plugins/wayland-graphics-integration-server/libqt-wayland-compositor-wayland-eglstream-controller.so
268 %attr(755,root,root) %{qt5dir}/plugins/wayland-graphics-integration-server/libqt-wayland-compositor-xcomposite-egl.so
269 %attr(755,root,root) %{qt5dir}/plugins/wayland-graphics-integration-server/libqt-wayland-compositor-xcomposite-glx.so
270 # dir shared Qt5WaylandClient
271 %dir %{qt5dir}/qml/QtWayland
272 %dir %{qt5dir}/qml/QtWayland/Compositor
273 %attr(755,root,root) %{qt5dir}/qml/QtWayland/Compositor/libqwaylandcompositorplugin.so
274 %{qt5dir}/qml/QtWayland/Compositor/plugins.qmltypes
275 %{qt5dir}/qml/QtWayland/Compositor/qmldir
276 %dir %{qt5dir}/qml/QtWayland/Compositor/TextureSharingExtension
277 %attr(755,root,root) %{qt5dir}/qml/QtWayland/Compositor/TextureSharingExtension/libqwaylandtexturesharingextension.so
278 %{qt5dir}/qml/QtWayland/Compositor/TextureSharingExtension/qmldir
279
280 %files -n Qt5WaylandCompositor-devel
281 %defattr(644,root,root,755)
282 %attr(755,root,root) %{_libdir}/libQt5WaylandCompositor.so
283 %{_libdir}/libQt5WaylandCompositor.prl
284 %{_includedir}/qt5/QtWaylandCompositor
285 %{_pkgconfigdir}/Qt5WaylandCompositor.pc
286 %{_libdir}/cmake/Qt5Gui/Qt5Gui_QWaylandXCompositeEglPlatformIntegrationPlugin.cmake
287 %{_libdir}/cmake/Qt5Gui/Qt5Gui_QWaylandXCompositeGlxPlatformIntegrationPlugin.cmake
288 %{_libdir}/cmake/Qt5WaylandCompositor
289 %{qt5dir}/mkspecs/modules/qt_lib_waylandcompositor.pri
290 %{qt5dir}/mkspecs/modules/qt_lib_waylandcompositor_private.pri
291 %endif
292
293 %files -n Qt5WaylandClient
294 %defattr(644,root,root,755)
295 %doc LICENSE.GPL3-EXCEPT README dist/changes-*
296 %attr(755,root,root) %{_libdir}/libQt5WaylandClient.so.*.*.*
297 %attr(755,root,root) %ghost %{_libdir}/libQt5WaylandClient.so.5
298 %attr(755,root,root) %{qt5dir}/bin/qtwaylandscanner
299 %attr(755,root,root) %{qt5dir}/plugins/platforms/libqwayland-egl.so
300 %attr(755,root,root) %{qt5dir}/plugins/platforms/libqwayland-generic.so
301 %attr(755,root,root) %{qt5dir}/plugins/platforms/libqwayland-xcomposite-egl.so
302 %attr(755,root,root) %{qt5dir}/plugins/platforms/libqwayland-xcomposite-glx.so
303 %dir %{qt5dir}/plugins/wayland-decoration-client
304 %attr(755,root,root) %{qt5dir}/plugins/wayland-decoration-client/libbradient.so
305 %dir %{qt5dir}/plugins/wayland-graphics-integration-client
306 %attr(755,root,root) %{qt5dir}/plugins/wayland-graphics-integration-client/libdmabuf-server.so
307 %attr(755,root,root) %{qt5dir}/plugins/wayland-graphics-integration-client/libdrm-egl-server.so
308 %attr(755,root,root) %{qt5dir}/plugins/wayland-graphics-integration-client/libqt-plugin-wayland-egl.so
309 %attr(755,root,root) %{qt5dir}/plugins/wayland-graphics-integration-client/libshm-emulation-server.so
310 %attr(755,root,root) %{qt5dir}/plugins/wayland-graphics-integration-client/libvulkan-server.so
311 %attr(755,root,root) %{qt5dir}/plugins/wayland-graphics-integration-client/libxcomposite-egl.so
312 %attr(755,root,root) %{qt5dir}/plugins/wayland-graphics-integration-client/libxcomposite-glx.so
313 %dir %{qt5dir}/plugins/wayland-shell-integration
314 %attr(755,root,root) %{qt5dir}/plugins/wayland-shell-integration/libfullscreen-shell-v1.so
315 %attr(755,root,root) %{qt5dir}/plugins/wayland-shell-integration/libivi-shell.so
316 %attr(755,root,root) %{qt5dir}/plugins/wayland-shell-integration/libwl-shell.so
317 %attr(755,root,root) %{qt5dir}/plugins/wayland-shell-integration/libxdg-shell.so
318 %attr(755,root,root) %{qt5dir}/plugins/wayland-shell-integration/libxdg-shell-v5.so
319 %attr(755,root,root) %{qt5dir}/plugins/wayland-shell-integration/libxdg-shell-v6.so
320 # dir shared Qt5WaylandCompositor
321 %dir %{qt5dir}/qml/QtWayland
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
326
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
338
339 %if %{with doc}
340 %files doc
341 %defattr(644,root,root,755)
342 %{_docdir}/qt5-doc/qtwaylandcompositor
343
344 %files doc-qch
345 %defattr(644,root,root,755)
346 %{_docdir}/qt5-doc/qtwaylandcompositor.qch
347 %endif
348
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
354 %endif
This page took 0.178294 seconds and 4 git commands to generate.