2 # - opencl support (BR: OpenCL-devel, WEBKIT_CONFIG+=opencl) ?
3 # - seccomp support (BR: libseccomp-devel, WEBKIT_CONFIG+=seccomp_filters) ?
4 # - system leveldb (requires memenv helper library)
5 # NOTE: not splitting WebKit/WebKitWidgets, interdependencies are not clear
6 # (e.g. WebProcess requires WebKitWidgets)
7 # - switch to building using cmake directly, reenable doc
10 %bcond_with bootstrap # disable features to able to build without installed qt5
12 %bcond_with doc # Documentation
14 %bcond_with qtmultimedia # QtMultimedia support
20 # it's not possible to build this with debuginfo on 32bit archs due to
21 # memory constraints during linking
23 %define _enable_debug_packages 0
28 %define orgname qtwebkit
29 %define qtbase_ver 5.11
30 %define qtdeclarative_ver 5.11
31 %define qtlocation_ver 5.11
32 %define qtmultimedia_ver 5.11
33 %define qtsensors_ver 5.11
34 %define qttools_ver 5.11
35 Summary: The Qt5 WebKit libraries
36 Summary(pl.UTF-8): Biblioteki Qt5 WebKit
42 Source0: https://github.com/annulen/webkit/archive/qtwebkit-%{version}-%{snap}.tar.gz
43 # Source0-md5: 9216661f6626fe4224ac477adf8d4162
45 Patch100: qt5-qtwebkit-5.212.0-alpha2-fix-pagewidth.patch
46 Patch101: qtwebkit-5.212.0-alpha2-fix-null-pointer-dereference.patch
47 Patch102: qtwebkit-5.212.0_cmake_cmp0071.patch
48 Patch103: qtwebkit-5.212.0_fix_missing_sources.patch
49 Patch104: 0016-cmake-Import-ECMEnableSanitizers.patch
50 Patch105: 0031-Disable-ES6-Proxy-object.patch
51 Patch106: 0111-ECM-Update-ECMGeneratePkgConfigFile-to-latest-versio.patch
52 Patch107: 0012-cmake-Fix-include-dir-in-the-generated-pkg-config-fi.patch
53 URL: https://github.com/annulen/webkit
54 BuildRequires: OpenGL-devel
55 BuildRequires: Qt5Core-devel >= %{qtbase_ver}
56 BuildRequires: Qt5Gui-devel >= %{qtbase_ver}
57 %{?with_qtmultimedia:BuildRequires: Qt5MultimediaWidgets-devel >= %{qtmultimedia_ver}}
58 BuildRequires: Qt5Network-devel >= %{qtbase_ver}
59 BuildRequires: Qt5OpenGL-devel >= %{qtbase_ver}
60 BuildRequires: Qt5Positioning-devel >= %{qtlocation_ver}
61 BuildRequires: Qt5PrintSupport-devel >= %{qtbase_ver}
62 BuildRequires: Qt5Qml-devel >= %{qtdeclarative_ver}
63 BuildRequires: Qt5Quick-devel >= %{qtdeclarative_ver}
64 BuildRequires: Qt5Sensors-devel >= %{qtsensors_ver}
65 BuildRequires: Qt5Sql-devel >= %{qtbase_ver}
66 BuildRequires: Qt5Widgets-devel >= %{qtbase_ver}
67 BuildRequires: Qt5WebChannel-devel >= %{qtbase_ver}
68 BuildRequires: glib2-devel >= 2.0
70 BuildRequires: gstreamer-devel >= 1.0
71 BuildRequires: gstreamer-plugins-base-devel >= 1.0
72 BuildRequires: libicu-devel
73 BuildRequires: libjpeg-devel
74 BuildRequires: libpng-devel
75 BuildRequires: libwebp-devel
76 BuildRequires: libxml2-devel >= 2.0
77 BuildRequires: libxslt-devel
78 BuildRequires: pkgconfig
79 BuildRequires: rpmbuild(macros) >= 1.654
81 BuildRequires: qt5-assistant >= %{qttools_ver}
83 BuildRequires: qt5-build >= %{qtbase_ver}
84 BuildRequires: qt5-qmake >= %{qtbase_ver}
85 BuildRequires: rpmbuild(macros) >= 1.654
86 BuildRequires: sqlite3-devel >= 3
87 BuildRequires: tar >= 1:1.22
88 BuildRequires: xorg-lib-libX11-devel
89 BuildRequires: xorg-lib-libXcomposite-devel
90 BuildRequires: xorg-lib-libXrender-devel
92 BuildRequires: zlib-devel
93 BuildConflicts: leveldb-devel
94 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
96 %define specflags -fno-strict-aliasing
97 %define qt5dir %{_libdir}/qt5
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.
104 This package contains Qt5 WebKit libraries.
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
112 Ten pakiet zawiera biblioteki Qt5 WebKit.
114 %package -n Qt5WebKit
115 Summary: The Qt5 WebKit libraries
116 Summary(pl.UTF-8): Biblioteki Qt5 WebKit
118 Requires: Qt5Core >= %{qtbase_ver}
119 Requires: Qt5Gui >= %{qtbase_ver}
120 %{?with_qtmultimedia:Requires: Qt5MultimediaWidgets >= %{qtmultimedia_ver}}
121 Requires: Qt5Network >= %{qtbase_ver}
122 Requires: Qt5OpenGL >= %{qtbase_ver}
123 Requires: Qt5Positioning >= %{qtlocation_ver}
124 Requires: Qt5PrintSupport >= %{qtbase_ver}
125 Requires: Qt5Qml >= %{qtdeclarative_ver}
126 Requires: Qt5Quick >= %{qtdeclarative_ver}
127 Requires: Qt5Sensors >= %{qtsensors_ver}
128 Requires: Qt5Sql >= %{qtbase_ver}
129 Requires: Qt5Widgets >= %{qtbase_ver}
131 %description -n Qt5WebKit
132 Qt5 WebKit libraries provide a web browser engine as well as C++
133 classes to render and interact with web content.
135 %description -n Qt5WebKit -l pl.UTF-8
136 Biblioteki Qt5 WebKit dostarczają silnik przeglądarki WWW, a także
137 klasy C++ do renderowania i interakcji z treścią WWW.
139 %package -n Qt5WebKit-devel
140 Summary: Qt5 WebKit libraries - development files
141 Summary(pl.UTF-8): Biblioteki Qt5 WebKit - pliki programistyczne
142 Group: X11/Development/Libraries
143 Requires: Qt5Core-devel >= %{qtbase_ver}
144 Requires: Qt5Gui-devel >= %{qtbase_ver}
145 %{?with_qtmultimedia:Requires: Qt5MultimediaWidgets-devel >= %{qtmultimedia_ver}}
146 Requires: Qt5Network-devel >= %{qtbase_ver}
147 Requires: Qt5OpenGL-devel >= %{qtbase_ver}
148 Requires: Qt5Positioning-devel >= %{qtlocation_ver}
149 Requires: Qt5PrintSupport-devel >= %{qtbase_ver}
150 Requires: Qt5Quick-devel >= %{qtbase_ver}
151 Requires: Qt5Sensors-devel >= %{qtsensors_ver}
152 Requires: Qt5WebKit = %{version}-%{release}
153 Requires: Qt5Widgets-devel >= %{qtbase_ver}
155 %description -n Qt5WebKit-devel
156 Qt5 WebKit libraries - development files.
158 %description -n Qt5WebKit-devel -l pl.UTF-8
159 Biblioteki Qt5 WebKit - pliki programistyczne.
162 Summary: Qt5 WebKit documentation in HTML format
163 Summary(pl.UTF-8): Dokumentacja do bibliotek Qt5 WebKit w formacie HTML
165 Requires: qt5-doc-common >= %{qtbase_ver}
166 %if "%{_rpmversion}" >= "5"
171 Qt5 WebKit documentation in HTML format.
173 %description doc -l pl.UTF-8
174 Dokumentacja do bibliotek Qt5 WebKit w formacie HTML.
177 Summary: Qt5 WebKit documentation in QCH format
178 Summary(pl.UTF-8): Dokumentacja do bibliotek Qt5 WebKit w formacie QCH
180 Requires: qt5-doc-common >= %{qtbase_ver}
181 %if "%{_rpmversion}" >= "5"
186 Qt5 WebKit documentation in QCH format.
188 %description doc-qch -l pl.UTF-8
189 Dokumentacja do bibliotek Qt5 WebKit w formacie QCH.
192 %setup -q -n webkit-qtwebkit-%{version}-%{snap}
203 CXXFLAGS="%{rpmcxxflags} -fpermissive"; export CXXFLAGS
205 %{?with_qtmultimedia:WEBKIT_CONFIG+=use_qtmultimedia}
208 %{?with_doc:%{__make} docs}
211 rm -rf $RPM_BUILD_ROOT
213 INSTALL_ROOT=$RPM_BUILD_ROOT
216 %{__make} install_docs \
217 INSTALL_ROOT=$RPM_BUILD_ROOT
220 # kill unnecessary -L%{_libdir} from *.pc
221 %{__sed} -i -e "s,-L%{_libdir} \?,,g" \
222 $RPM_BUILD_ROOT%{_pkgconfigdir}/*.pc
223 # kill unwanted Libs.private (containing many bogus entries) from *.pc files
224 %{__sed} -i -e '/^Libs\.private/d' $RPM_BUILD_ROOT%{_pkgconfigdir}/*.pc
227 rm -rf $RPM_BUILD_ROOT
229 %post -n Qt5WebKit -p /sbin/ldconfig
230 %postun -n Qt5WebKit -p /sbin/ldconfig
233 %defattr(644,root,root,755)
234 %attr(755,root,root) %{_libdir}/libQt5WebKit.so.*.*.*
235 %attr(755,root,root) %ghost %{_libdir}/libQt5WebKit.so.5
236 %attr(755,root,root) %{_libdir}/libQt5WebKitWidgets.so.*.*.*
237 %attr(755,root,root) %ghost %{_libdir}/libQt5WebKitWidgets.so.5
238 %dir %{_libdir}/qt5/qml/QtWebKit
239 %attr(755,root,root) %{_libdir}/qt5/qml/QtWebKit/libqmlwebkitplugin.so
240 %{_libdir}/qt5/qml/QtWebKit/plugins.qmltypes
241 %{_libdir}/qt5/qml/QtWebKit/qmldir
242 %dir %{_libdir}/qt5/qml/QtWebKit/experimental
243 %attr(755,root,root) %{_libdir}/qt5/qml/QtWebKit/experimental/libqmlwebkitexperimentalplugin.so
244 %{_libdir}/qt5/qml/QtWebKit/experimental/qmldir
245 %dir %{_libdir}/qt5/libexec
246 %attr(755,root,root) %{_libdir}/qt5/libexec/QtWebProcess
247 %attr(755,root,root) %{_libdir}/qt5/libexec/QtWebDatabaseProcess
248 %attr(755,root,root) %{_libdir}/qt5/libexec/QtWebNetworkProcess
250 %files -n Qt5WebKit-devel
251 %defattr(644,root,root,755)
252 %attr(755,root,root) %{_libdir}/libQt5WebKit.so
253 %attr(755,root,root) %{_libdir}/libQt5WebKitWidgets.so
254 %{_includedir}/qt5/QtWebKit
255 %{_includedir}/qt5/QtWebKitWidgets
256 %{_pkgconfigdir}/Qt5WebKit.pc
257 %{_pkgconfigdir}/Qt5WebKitWidgets.pc
258 %{_libdir}/cmake/Qt5WebKit
259 %{_libdir}/cmake/Qt5WebKitWidgets
260 %{qt5dir}/mkspecs/modules/qt_lib_webkit.pri
261 %{qt5dir}/mkspecs/modules/qt_lib_webkitwidgets.pri
265 %defattr(644,root,root,755)
266 %{_docdir}/qt5-doc/qtwebkit
269 %defattr(644,root,root,755)
270 %{_docdir}/qt5-doc/qtwebkit.qch