]>
Commit | Line | Data |
---|---|---|
daa4415e JB |
1 | # |
2 | # Conditional build: | |
de8a9faa | 3 | %bcond_without doc # Documentation |
37b97c17 | 4 | %bcond_without system_libvpx # Build with system libvpx |
daa4415e JB |
5 | |
6 | %define orgname qtwebengine | |
daa4415e JB |
7 | Summary: The Qt5 WebEngine library |
8 | Summary(pl.UTF-8): Biblioteka Qt5 WebEngine | |
9 | Name: qt5-%{orgname} | |
e5ae5bcf | 10 | Version: 5.15.1 |
5984d1ff | 11 | Release: 3 |
daa4415e JB |
12 | License: LGPL v3 or GPL v2+ or commercial |
13 | Group: X11/Libraries | |
c91e1c7d | 14 | Source0: http://download.qt.io/official_releases/qt/5.15/%{version}/submodules/%{orgname}-everywhere-src-%{version}.tar.xz |
e5ae5bcf | 15 | # Source0-md5: e37c44664e8a55471b92b07695f7f7db |
6b0906cb | 16 | Patch0: x32.patch |
5984d1ff | 17 | Patch1: renderer_crash.patch |
daa4415e | 18 | URL: http://www.qt.io/ |
ce64a084 JP |
19 | BuildRequires: Mesa-khrplatform-devel |
20 | BuildRequires: Qt5Core-devel >= %{version} | |
21 | BuildRequires: Qt5Designer-devel >= %{version} | |
22 | BuildRequires: Qt5Gui-devel >= %{version} | |
23 | BuildRequires: Qt5Network-devel >= %{version} | |
24 | BuildRequires: Qt5Positioning-devel >= %{version} | |
25 | BuildRequires: Qt5PrintSupport-devel >= %{version} | |
26 | BuildRequires: Qt5Qml-devel >= %{version} | |
27 | BuildRequires: Qt5Quick-devel >= %{version} | |
8eb70dcd | 28 | BuildRequires: Qt5Svg-devel >= %{version} |
ce64a084 JP |
29 | BuildRequires: Qt5UiTools-devel >= %{version} |
30 | BuildRequires: Qt5WebChannel-devel >= %{version} | |
31 | BuildRequires: Qt5WebSockets-devel >= %{version} | |
32 | BuildRequires: Qt5Widgets-devel >= %{version} | |
33 | BuildRequires: alsa-lib-devel >= 1.0.10 | |
34 | BuildRequires: bison | |
35 | BuildRequires: dbus-devel | |
36 | BuildRequires: ffmpeg-devel | |
37 | BuildRequires: flex | |
38 | BuildRequires: fontconfig-devel | |
39 | BuildRequires: freetype-devel >= 2.4.2 | |
40 | BuildRequires: glib2-devel >= 1:2.32.0 | |
41 | BuildRequires: glibc-misc >= 2.17 | |
42 | BuildRequires: gperf | |
c91e1c7d | 43 | BuildRequires: harfbuzz-devel >= 2.2.0 |
ce64a084 JP |
44 | BuildRequires: jsoncpp-devel |
45 | BuildRequires: lcms2-devel | |
46 | BuildRequires: libdrm-devel | |
47 | BuildRequires: libevent-devel | |
c91e1c7d | 48 | BuildRequires: libicu-devel >= 64 |
ce64a084 JP |
49 | BuildRequires: libjpeg-devel |
50 | BuildRequires: libpng-devel >= 1.6.0 | |
0725f1e0 JP |
51 | BuildRequires: libstdc++-devel |
52 | BuildRequires: libstdc++-static | |
ce64a084 JP |
53 | %{?with_system_libvpx:BuildRequires: libvpx-devel >= 1.8.0} |
54 | BuildRequires: libwebp-devel | |
55 | BuildRequires: libxml2-devel | |
56 | BuildRequires: libxslt-devel | |
57 | BuildRequires: minizip-devel | |
58 | BuildRequires: ninja | |
e5ae5bcf | 59 | BuildRequires: nodejs |
ce64a084 | 60 | BuildRequires: nss-devel >= 3.26 |
c91e1c7d | 61 | BuildRequires: opus-devel >= 1.3.1 |
ce64a084 JP |
62 | BuildRequires: pkgconfig |
63 | BuildRequires: poppler-cpp-devel | |
64 | BuildRequires: protobuf-devel | |
65 | BuildRequires: pulseaudio-devel >= 0.9.10 | |
66 | BuildRequires: re2-devel | |
67 | BuildRequires: snappy-devel | |
de8a9faa | 68 | %if %{with doc} |
ce64a084 | 69 | BuildRequires: qt5-assistant >= %{version} |
daa4415e | 70 | %endif |
ce64a084 JP |
71 | BuildRequires: qt5-build >= %{version} |
72 | BuildRequires: qt5-qmake >= %{version} | |
daa4415e JB |
73 | BuildRequires: rpmbuild(macros) >= 1.654 |
74 | BuildRequires: tar >= 1:1.22 | |
ce64a084 JP |
75 | BuildRequires: xorg-lib-libX11-devel |
76 | BuildRequires: xorg-lib-libXcomposite-devel | |
77 | BuildRequires: xorg-lib-libXcursor-devel | |
78 | BuildRequires: xorg-lib-libXi-devel | |
79 | BuildRequires: xorg-lib-libXrandr-devel | |
80 | BuildRequires: xorg-lib-libXtst-devel | |
c91e1c7d | 81 | BuildRequires: xorg-lib-libxkbcommon-devel |
daa4415e | 82 | BuildRequires: xz |
ce64a084 | 83 | BuildRequires: zlib-devel |
2d29c405 | 84 | BuildConflicts: Qt5WebEngine-devel |
c91e1c7d JP |
85 | Requires: alsa-lib >= 1.0.10 |
86 | Requires: freetype >= 2.4.2 | |
87 | Requires: harfbuzz >= 2.2.0 | |
88 | Requires: libicu >= 64 | |
89 | Requires: libpng >= 1.6.0 | |
90 | %{?with_system_libvpx:Requires: libvpx >= 1.8.0} | |
91 | Requires: nss >= 3.26 | |
92 | Requires: opus >= 1.3.1 | |
93 | Requires: pulseaudio-libs >= 0.9.10 | |
daa4415e JB |
94 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) |
95 | ||
96 | %define specflags -fno-strict-aliasing | |
97 | %define qt5dir %{_libdir}/qt5 | |
98 | ||
99 | %description | |
100 | Qt is a cross-platform application and UI framework. Using Qt, you can | |
101 | write web-enabled applications once and deploy them across desktop, | |
102 | mobile and embedded systems without rewriting the source code. | |
103 | ||
104 | This package contains Qt5 WebEngine library. | |
105 | ||
106 | %description -l pl.UTF-8 | |
107 | Qt to wieloplatformowy szkielet aplikacji i interfejsów użytkownika. | |
108 | Przy użyciu Qt można pisać aplikacje powiązane z WWW i wdrażać je w | |
109 | systemach biurkowych, przenośnych i wbudowanych bez przepisywania kodu | |
110 | źródłowego. | |
111 | ||
112 | Ten pakiet zawiera bibliotekę Qt5 WebEngine. | |
113 | ||
114 | %package -n Qt5WebEngine | |
115 | Summary: The Qt5 WebEngine library | |
116 | Summary(pl.UTF-8): Biblioteka Qt5 WebEngine | |
117 | Group: Libraries | |
ce64a084 JP |
118 | Requires: Qt5Core >= %{version} |
119 | Requires: Qt5Network >= %{version} | |
120 | Requires: Qt5Qml >= %{version} | |
daa4415e JB |
121 | |
122 | %description -n Qt5WebEngine | |
123 | Qt5 WebEngine library provides seamless integration of C++ and QML | |
124 | applications with HTML/JavaScript clients. | |
125 | ||
126 | %description -n Qt5WebEngine -l pl.UTF-8 | |
127 | Biblioteka Qt5 WebEngine udostępnia integrację aplikacji C++ i QML z | |
128 | klientami w HTML-u/JavaScripcie. | |
129 | ||
130 | %package -n Qt5WebEngine-devel | |
131 | Summary: Qt5 WebEngine library - development files | |
132 | Summary(pl.UTF-8): Biblioteka Qt5 WebEngine - pliki programistyczne | |
133 | Group: Development/Libraries | |
ce64a084 JP |
134 | Requires: Qt5Core-devel >= %{version} |
135 | Requires: Qt5Network-devel >= %{version} | |
136 | Requires: Qt5Qml-devel >= %{version} | |
daa4415e JB |
137 | Requires: Qt5WebEngine = %{version}-%{release} |
138 | ||
139 | %description -n Qt5WebEngine-devel | |
140 | Qt5 WebEngine library - development files. | |
141 | ||
142 | %description -n Qt5WebEngine-devel -l pl.UTF-8 | |
143 | Biblioteka Qt5 WebEngine - pliki programistyczne. | |
144 | ||
145 | %package doc | |
146 | Summary: Qt5 WebEngine documentation in HTML format | |
147 | Summary(pl.UTF-8): Dokumentacja do biblioteki Qt5 WebEngine w formacie HTML | |
148 | Group: Documentation | |
ce64a084 | 149 | Requires: qt5-doc-common >= %{version} |
daa4415e JB |
150 | %if "%{_rpmversion}" >= "5" |
151 | BuildArch: noarch | |
152 | %endif | |
153 | ||
154 | %description doc | |
155 | Qt5 WebEngine documentation in HTML format. | |
156 | ||
157 | %description doc -l pl.UTF-8 | |
158 | Dokumentacja do biblioteki Qt5 WebEngine w formacie HTML. | |
159 | ||
160 | %package doc-qch | |
161 | Summary: Qt5 WebEngine documentation in QCH format | |
162 | Summary(pl.UTF-8): Dokumentacja do biblioteki Qt5 WebEngine w formacie QCH | |
163 | Group: Documentation | |
ce64a084 | 164 | Requires: qt5-doc-common >= %{version} |
daa4415e JB |
165 | %if "%{_rpmversion}" >= "5" |
166 | BuildArch: noarch | |
167 | %endif | |
168 | ||
169 | %description doc-qch | |
170 | Qt5 WebEngine documentation in QCH format. | |
171 | ||
172 | %description doc-qch -l pl.UTF-8 | |
173 | Dokumentacja do biblioteki Qt5 WebEngine w formacie QCH. | |
174 | ||
175 | %package examples | |
176 | Summary: Qt5 WebEngine examples | |
177 | Summary(pl.UTF-8): Przykłady do biblioteki Qt5 WebEngine | |
178 | Group: X11/Development/Libraries | |
179 | %if "%{_rpmversion}" >= "5" | |
180 | BuildArch: noarch | |
181 | %endif | |
182 | ||
183 | %description examples | |
184 | Qt5 WebEngine examples. | |
185 | ||
186 | %description examples -l pl.UTF-8 | |
187 | Przykłady do biblioteki Qt5 WebEngine. | |
188 | ||
c91e1c7d JP |
189 | %package -n Qt5Pdf |
190 | Summary: The Qt5 Pdf library | |
191 | Summary(pl.UTF-8): Biblioteka Qt5 Pdf | |
192 | Group: Libraries | |
193 | Requires: Qt5Core >= %{version} | |
194 | Requires: Qt5Gui >= %{version} | |
195 | Requires: Qt5Network >= %{version} | |
196 | Requires: Qt5Qml >= %{version} | |
197 | Requires: Qt5Widgets >= %{version} | |
198 | ||
199 | %description -n Qt5Pdf | |
200 | Qt5 Pdf module contains classes and functions for rendering PDF | |
201 | documents. | |
202 | ||
203 | %description -n Qt5Pdf -l pl.UTF-8 | |
204 | Moduł Qt5 Pdf zawiera klasy i funkcje do renderowania dokumentów PDF. | |
205 | ||
206 | %package -n Qt5Pdf-devel | |
207 | Summary: Qt5 Pdf library - development files | |
208 | Summary(pl.UTF-8): Biblioteka Qt5 Pdf - pliki programistyczne | |
209 | Group: Development/Libraries | |
210 | Requires: Qt5Core-devel >= %{version} | |
211 | Requires: Qt5Gui-devel >= %{version} | |
212 | Requires: Qt5Network-devel >= %{version} | |
213 | Requires: Qt5Pdf = %{version}-%{release} | |
214 | Requires: Qt5Qml-devel >= %{version} | |
215 | Requires: Qt5Widgets-devel >= %{version} | |
216 | ||
217 | %description -n Qt5Pdf-devel | |
218 | Qt5 Pdf library - development files. | |
219 | ||
220 | %description -n Qt5Pdf-devel -l pl.UTF-8 | |
221 | Biblioteka Qt5 Pdf - pliki programistyczne. | |
222 | ||
daa4415e | 223 | %prep |
7ed59526 | 224 | %setup -q -n %{orgname}-everywhere-src-%{version} |
06e41866 | 225 | %ifarch x32 |
6b0906cb | 226 | %patch0 -p1 |
06e41866 | 227 | %endif |
5984d1ff JP |
228 | cd src/3rdparty |
229 | %patch1 -p1 | |
230 | cd ../.. | |
1abc1d3c | 231 | |
daa4415e | 232 | %build |
06e41866 JR |
233 | %ifarch x32 |
234 | export V8_TARGET_ARCH="x32" | |
235 | %endif | |
ce64a084 JP |
236 | qmake-qt5 -- \ |
237 | -webengine-ffmpeg \ | |
2d011345 | 238 | -webengine-icu \ |
e5ae5bcf JP |
239 | -webengine-opus \ |
240 | -webengine-proprietary-codecs \ | |
241 | -webengine-webp \ | |
242 | -webengine-webrtc | |
0a1dd662 | 243 | %{?__jobs:NINJAJOBS="-j %__jobs"} \ |
1abc1d3c | 244 | %{__make} |
de8a9faa | 245 | %{?with_doc:%{__make} docs} |
daa4415e JB |
246 | |
247 | %install | |
248 | rm -rf $RPM_BUILD_ROOT | |
249 | %{__make} install \ | |
250 | INSTALL_ROOT=$RPM_BUILD_ROOT | |
251 | ||
de8a9faa JR |
252 | %if %{with doc} |
253 | %{__make} install_docs \ | |
daa4415e | 254 | INSTALL_ROOT=$RPM_BUILD_ROOT |
de8a9faa | 255 | %endif |
daa4415e JB |
256 | |
257 | # useless symlinks | |
7ed59526 | 258 | %{__rm} $RPM_BUILD_ROOT%{_libdir}/libQt5*.so.5.?? |
daa4415e JB |
259 | # actually drop *.la, follow policy of not packaging them when *.pc exist |
260 | %{__rm} $RPM_BUILD_ROOT%{_libdir}/libQt5*.la | |
261 | ||
262 | # Prepare some files list | |
263 | ifecho() { | |
264 | r="$RPM_BUILD_ROOT$2" | |
265 | if [ -d "$r" ]; then | |
266 | echo "%%dir $2" >> $1.files | |
267 | elif [ -x "$r" ] ; then | |
268 | echo "%%attr(755,root,root) $2" >> $1.files | |
269 | elif [ -f "$r" ]; then | |
270 | echo "$2" >> $1.files | |
271 | else | |
272 | echo "Error generation $1 files list!" | |
273 | echo "$r: no such file or directory!" | |
274 | return 1 | |
275 | fi | |
276 | } | |
277 | ifecho_tree() { | |
278 | ifecho $1 $2 | |
279 | for f in `find $RPM_BUILD_ROOT$2 -printf "%%P "`; do | |
280 | ifecho $1 $2/$f | |
281 | done | |
282 | } | |
283 | ||
284 | echo "%defattr(644,root,root,755)" > examples.files | |
daa4415e | 285 | ifecho_tree examples %{_examplesdir}/qt5/webengine |
1abc1d3c | 286 | ifecho_tree examples %{_examplesdir}/qt5/webenginewidgets |
daa4415e JB |
287 | |
288 | %clean | |
289 | rm -rf $RPM_BUILD_ROOT | |
290 | ||
291 | %post -n Qt5WebEngine -p /sbin/ldconfig | |
292 | %postun -n Qt5WebEngine -p /sbin/ldconfig | |
293 | ||
c91e1c7d JP |
294 | %post -n Qt5Pdf -p /sbin/ldconfig |
295 | %postun -n Qt5Pdf -p /sbin/ldconfig | |
296 | ||
daa4415e JB |
297 | %files -n Qt5WebEngine |
298 | %defattr(644,root,root,755) | |
299 | %attr(755,root,root) %{_libdir}/libQt5WebEngine.so.*.*.* | |
300 | %attr(755,root,root) %ghost %{_libdir}/libQt5WebEngine.so.5 | |
1abc1d3c AM |
301 | %attr(755,root,root) %{_libdir}/libQt5WebEngineCore.so.*.*.* |
302 | %attr(755,root,root) %ghost %{_libdir}/libQt5WebEngineCore.so.5 | |
303 | %attr(755,root,root) %{_libdir}/libQt5WebEngineWidgets.so.*.*.* | |
304 | %attr(755,root,root) %ghost %{_libdir}/libQt5WebEngineWidgets.so.5 | |
daa4415e | 305 | %dir %{qt5dir}/qml/QtWebEngine |
daa4415e JB |
306 | %{qt5dir}/qml/QtWebEngine/plugins.qmltypes |
307 | %{qt5dir}/qml/QtWebEngine/qmldir | |
1abc1d3c AM |
308 | %{qt5dir}/qml/QtWebEngine/Controls1Delegates |
309 | %{qt5dir}/qml/QtWebEngine/Controls2Delegates | |
310 | %attr(755,root,root) %{qt5dir}/qml/QtWebEngine/libqtwebengineplugin.so | |
cdd0ffa8 | 311 | %dir %{_datadir}/qt5/resources |
1abc1d3c AM |
312 | %{_datadir}/qt5/resources/qtwebengine*.pak |
313 | %attr(755,root,root) %{_libdir}/qt5/bin/qwebengine_convert_dict | |
314 | %attr(755,root,root) %{_libdir}/qt5/libexec/QtWebEngineProcess | |
315 | %attr(755,root,root) %{_libdir}/qt5/plugins/designer/libqwebengineview.so | |
daa4415e JB |
316 | |
317 | %files -n Qt5WebEngine-devel | |
318 | %defattr(644,root,root,755) | |
319 | %attr(755,root,root) %{_libdir}/libQt5WebEngine.so | |
1abc1d3c AM |
320 | %attr(755,root,root) %{_libdir}/libQt5WebEngineCore.so |
321 | %attr(755,root,root) %{_libdir}/libQt5WebEngineWidgets.so | |
daa4415e | 322 | %{_libdir}/libQt5WebEngine.prl |
1abc1d3c AM |
323 | %{_libdir}/libQt5WebEngineCore.prl |
324 | %{_libdir}/libQt5WebEngineWidgets.prl | |
daa4415e | 325 | %{_includedir}/qt5/QtWebEngine |
1abc1d3c AM |
326 | %{_includedir}/qt5/QtWebEngineCore |
327 | %{_includedir}/qt5/QtWebEngineWidgets | |
daa4415e | 328 | %{_pkgconfigdir}/Qt5WebEngine.pc |
1abc1d3c AM |
329 | %{_pkgconfigdir}/Qt5WebEngineCore.pc |
330 | %{_pkgconfigdir}/Qt5WebEngineWidgets.pc | |
daa4415e | 331 | %{_libdir}/cmake/Qt5WebEngine |
1abc1d3c AM |
332 | %{_libdir}/cmake/Qt5WebEngineCore |
333 | %{_libdir}/cmake/Qt5WebEngineWidgets | |
334 | %{_libdir}/cmake/Qt5Designer/Qt5Designer_QWebEngineViewPlugin.cmake | |
daa4415e JB |
335 | %{qt5dir}/mkspecs/modules/qt_lib_webengine.pri |
336 | %{qt5dir}/mkspecs/modules/qt_lib_webengine_private.pri | |
1abc1d3c AM |
337 | %{_libdir}/qt5/mkspecs/modules/qt_lib_webenginecore.pri |
338 | %{_libdir}/qt5/mkspecs/modules/qt_lib_webenginecore_private.pri | |
339 | %{_libdir}/qt5/mkspecs/modules/qt_lib_webenginecoreheaders_private.pri | |
340 | %{_libdir}/qt5/mkspecs/modules/qt_lib_webenginewidgets.pri | |
341 | %{_libdir}/qt5/mkspecs/modules/qt_lib_webenginewidgets_private.pri | |
daa4415e | 342 | |
de8a9faa | 343 | %if %{with doc} |
daa4415e JB |
344 | %files doc |
345 | %defattr(644,root,root,755) | |
346 | %{_docdir}/qt5-doc/qtwebengine | |
347 | ||
daa4415e JB |
348 | %files doc-qch |
349 | %defattr(644,root,root,755) | |
350 | %{_docdir}/qt5-doc/qtwebengine.qch | |
351 | %endif | |
352 | ||
353 | %files examples -f examples.files | |
354 | %defattr(644,root,root,755) | |
355 | # XXX: dir shared with qt5-qtbase-examples | |
356 | %dir %{_examplesdir}/qt5 | |
c91e1c7d JP |
357 | |
358 | %files -n Qt5Pdf | |
359 | %defattr(644,root,root,755) | |
360 | %attr(755,root,root) %{_libdir}/libQt5Pdf.so.*.*.* | |
361 | %attr(755,root,root) %ghost %{_libdir}/libQt5Pdf.so.5 | |
362 | %attr(755,root,root) %{_libdir}/libQt5PdfWidgets.so.*.*.* | |
363 | %attr(755,root,root) %ghost %{_libdir}/libQt5PdfWidgets.so.5 | |
364 | %dir %{qt5dir}/qml/QtQuick/Pdf | |
365 | %{qt5dir}/qml/QtQuick/Pdf/plugins.qmltypes | |
366 | %{qt5dir}/qml/QtQuick/Pdf/qmldir | |
367 | %{qt5dir}/qml/QtQuick/Pdf/qml | |
368 | %attr(755,root,root) %{qt5dir}/qml/QtQuick/Pdf/libpdfplugin.so | |
369 | %attr(755,root,root) %{_libdir}/qt5/plugins/imageformats/libqpdf.so | |
370 | ||
371 | %files -n Qt5Pdf-devel | |
372 | %defattr(644,root,root,755) | |
373 | %attr(755,root,root) %{_libdir}/libQt5Pdf.so | |
374 | %attr(755,root,root) %{_libdir}/libQt5PdfWidgets.so | |
375 | %{_libdir}/libQt5Pdf.prl | |
376 | %{_libdir}/libQt5PdfWidgets.prl | |
377 | %{_includedir}/qt5/QtPdf | |
378 | %{_includedir}/qt5/QtPdfWidgets | |
379 | %{_pkgconfigdir}/Qt5Pdf.pc | |
380 | %{_pkgconfigdir}/Qt5PdfWidgets.pc | |
381 | %{_libdir}/cmake/Qt5Gui/Qt5Gui_QPdfPlugin.cmake | |
382 | %{_libdir}/cmake/Qt5Pdf | |
383 | %{_libdir}/cmake/Qt5PdfWidgets | |
384 | %{qt5dir}/mkspecs/modules/qt_lib_pdf.pri | |
385 | %{qt5dir}/mkspecs/modules/qt_lib_pdf_private.pri | |
386 | %{qt5dir}/mkspecs/modules/qt_lib_pdfwidgets.pri | |
387 | %{qt5dir}/mkspecs/modules/qt_lib_pdfwidgets_private.pri |