]> git.pld-linux.org Git - packages/qt5-qtwebkit.git/blame_incremental - qt5-qtwebkit.spec
- builds fine without gstreamer-plugins-bad-devel
[packages/qt5-qtwebkit.git] / qt5-qtwebkit.spec
... / ...
CommitLineData
1# NOTE: not splitting WebKit/WebKitWidgets, interdependencies are not clear
2# (e.g. WebProcess requires WebKitWidgets)
3#
4# Conditional build:
5%bcond_with bootstrap # disable features to able to build without installed qt5
6# -- build targets
7%bcond_without doc # documentation
8# -- features
9%bcond_with qtmultimedia # QtMultimedia support (instead of GStreamer)
10%bcond_with seccomp # WebProcess seccomp filters (broken as of 5.212.0-alpha4)
11
12%if %{with bootstrap}
13%undefine with_doc
14%endif
15
16# it's not possible to build this with debuginfo on 32bit archs due to
17# memory constraints during linking
18%ifarch %{ix86} x32
19%define _enable_debug_packages 0
20%endif
21
22%define snap alpha4
23%define rel 8
24
25%define orgname qtwebkit
26%define qtbase_ver 5.11
27%define qtdeclarative_ver 5.11
28%define qtlocation_ver 5.11
29%define qtmultimedia_ver 5.11
30%define qtsensors_ver 5.11
31%define qttools_ver 5.11
32%define qtwebchannel_ver 5.11
33Summary: The Qt5 WebKit libraries
34Summary(pl.UTF-8): Biblioteki Qt5 WebKit
35Name: qt5-%{orgname}
36Version: 5.212.0
37Release: 0.%{snap}.%{rel}
38License: LGPL v2+
39Group: X11/Libraries
40#Source0Download: https://github.com/qtwebkit/qtwebkit/releases
41Source0: https://github.com/qtwebkit/qtwebkit/releases/download/qtwebkit-%{version}-%{snap}/qtwebkit-%{version}-%{snap}.tar.xz
42# Source0-md5: 5b61a72497f06e51db09d57edc3c35fb
43Patch0: %{name}-css.patch
44Patch1: %{name}-docs.patch
45Patch2: glib2.68.patch
46Patch3: %{name}-gstreamer.patch
47Patch4: gcc13.patch
48Patch5: python3.patch
49Patch6: python3.9.patch
50# from FC
51Patch102: qtwebkit-5.212.0_cmake_cmp0071.patch
52Patch108: x32.patch
53URL: https://github.com/annulen/webkit
54BuildRequires: OpenGL-devel
55BuildRequires: Qt5Core-devel >= %{qtbase_ver}
56BuildRequires: Qt5Gui-devel >= %{qtbase_ver}
57%{?with_qtmultimedia:BuildRequires: Qt5MultimediaWidgets-devel >= %{qtmultimedia_ver}}
58BuildRequires: Qt5Network-devel >= %{qtbase_ver}
59BuildRequires: Qt5OpenGL-devel >= %{qtbase_ver}
60BuildRequires: Qt5Positioning-devel >= %{qtlocation_ver}
61BuildRequires: Qt5PrintSupport-devel >= %{qtbase_ver}
62BuildRequires: Qt5Qml-devel >= %{qtdeclarative_ver}
63BuildRequires: Qt5Quick-devel >= %{qtdeclarative_ver}
64BuildRequires: Qt5Sensors-devel >= %{qtsensors_ver}
65BuildRequires: Qt5WebChannel-devel >= %{qtwebchannel_ver}
66BuildRequires: Qt5Widgets-devel >= %{qtbase_ver}
67BuildRequires: bison >= 2.1
68BuildRequires: dwz >= 0.13
69BuildRequires: glib2-devel >= 1:2.36
70BuildRequires: gperf >= 3.0.1
71BuildRequires: gstreamer-devel >= 1.0.3
72BuildRequires: gstreamer-gl-devel >= 1.6.0
73BuildRequires: gstreamer-plugins-base-devel >= 1.0.3
74BuildRequires: hyphen-devel
75BuildRequires: libicu-devel
76BuildRequires: libjpeg-devel
77BuildRequires: libpng-devel
78%{?with_seccomp:BuildRequires: libseccomp-devel}
79BuildRequires: libwebp-devel
80BuildRequires: libxml2-devel >= 1:2.8.0
81BuildRequires: libxslt-devel >= 1.1.7
82BuildRequires: perl-base >= 1:5.10.0
83BuildRequires: pkgconfig
84BuildRequires: python3 >= 1:3.2
85BuildRequires: ruby >= 1:1.9
86%if %{with doc}
87BuildRequires: qt5-assistant >= %{qttools_ver}
88%endif
89BuildRequires: qt5-build >= %{qtbase_ver}
90BuildRequires: qt5-qmake >= %{qtbase_ver}
91BuildRequires: rpm-build >= 4.6
92BuildRequires: rpmbuild(macros) >= 1.752
93BuildRequires: sqlite3-devel >= 3
94BuildRequires: tar >= 1:1.22
95BuildRequires: woff2-devel >= 1.0.1
96BuildRequires: xorg-lib-libX11-devel
97BuildRequires: xorg-lib-libXcomposite-devel
98BuildRequires: xorg-lib-libXrender-devel
99BuildRequires: xz
100BuildRequires: zlib-devel
101BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
102
103%define specflags -fno-strict-aliasing -DU_DEFINE_FALSE_AND_TRUE=1
104%define qt5dir %{_libdir}/qt5
105
106%description
107Qt is a cross-platform application and UI framework. Using Qt, you can
108write web-enabled applications once and deploy them across desktop,
109mobile and embedded systems without rewriting the source code.
110
111This package contains Qt5 WebKit libraries.
112
113%description -l pl.UTF-8
114Qt to wieloplatformowy szkielet aplikacji i interfejsów użytkownika.
115Przy użyciu Qt można pisać aplikacje powiązane z WWW i wdrażać je w
116systemach biurkowych, przenośnych i wbudowanych bez przepisywania kodu
117źródłowego.
118
119Ten pakiet zawiera biblioteki Qt5 WebKit.
120
121%package -n Qt5WebKit
122Summary: The Qt5 WebKit libraries
123Summary(pl.UTF-8): Biblioteki Qt5 WebKit
124Group: X11/Libraries
125Requires: Qt5Core >= %{qtbase_ver}
126Requires: Qt5Gui >= %{qtbase_ver}
127%{?with_qtmultimedia:Requires: Qt5MultimediaWidgets >= %{qtmultimedia_ver}}
128Requires: Qt5Network >= %{qtbase_ver}
129Requires: Qt5OpenGL >= %{qtbase_ver}
130Requires: Qt5Positioning >= %{qtlocation_ver}
131Requires: Qt5PrintSupport >= %{qtbase_ver}
132Requires: Qt5Qml >= %{qtdeclarative_ver}
133Requires: Qt5Quick >= %{qtdeclarative_ver}
134Requires: Qt5Sensors >= %{qtsensors_ver}
135Requires: Qt5Sql >= %{qtbase_ver}
136Requires: Qt5Widgets >= %{qtbase_ver}
137
138%description -n Qt5WebKit
139Qt5 WebKit libraries provide a web browser engine as well as C++
140classes to render and interact with web content.
141
142%description -n Qt5WebKit -l pl.UTF-8
143Biblioteki Qt5 WebKit dostarczają silnik przeglądarki WWW, a także
144klasy C++ do renderowania i interakcji z treścią WWW.
145
146%package -n Qt5WebKit-devel
147Summary: Qt5 WebKit libraries - development files
148Summary(pl.UTF-8): Biblioteki Qt5 WebKit - pliki programistyczne
149Group: X11/Development/Libraries
150Requires: Qt5Core-devel >= %{qtbase_ver}
151Requires: Qt5Gui-devel >= %{qtbase_ver}
152%{?with_qtmultimedia:Requires: Qt5MultimediaWidgets-devel >= %{qtmultimedia_ver}}
153Requires: Qt5Network-devel >= %{qtbase_ver}
154Requires: Qt5OpenGL-devel >= %{qtbase_ver}
155Requires: Qt5Positioning-devel >= %{qtlocation_ver}
156Requires: Qt5PrintSupport-devel >= %{qtbase_ver}
157Requires: Qt5Quick-devel >= %{qtdeclarative_ver}
158Requires: Qt5Sensors-devel >= %{qtsensors_ver}
159Requires: Qt5WebKit = %{version}-%{release}
160Requires: Qt5Widgets-devel >= %{qtbase_ver}
161
162%description -n Qt5WebKit-devel
163Qt5 WebKit libraries - development files.
164
165%description -n Qt5WebKit-devel -l pl.UTF-8
166Biblioteki Qt5 WebKit - pliki programistyczne.
167
168%package doc
169Summary: Qt5 WebKit documentation in HTML format
170Summary(pl.UTF-8): Dokumentacja do bibliotek Qt5 WebKit w formacie HTML
171Group: Documentation
172Requires: qt5-doc-common >= %{qtbase_ver}
173BuildArch: noarch
174
175%description doc
176Qt5 WebKit documentation in HTML format.
177
178%description doc -l pl.UTF-8
179Dokumentacja do bibliotek Qt5 WebKit w formacie HTML.
180
181%package doc-qch
182Summary: Qt5 WebKit documentation in QCH format
183Summary(pl.UTF-8): Dokumentacja do bibliotek Qt5 WebKit w formacie QCH
184Group: Documentation
185Requires: qt5-doc-common >= %{qtbase_ver}
186BuildArch: noarch
187
188%description doc-qch
189Qt5 WebKit documentation in QCH format.
190
191%description doc-qch -l pl.UTF-8
192Dokumentacja do bibliotek Qt5 WebKit w formacie QCH.
193
194%prep
195%setup -q -n qtwebkit-%{version}-%{snap}
196%patch0 -p1
197%patch1 -p1
198%patch2 -p1
199%patch3 -p1
200%patch4 -p1
201%patch5 -p1
202%patch6 -p1
203%patch102 -p1
204%patch108 -p1
205
206%build
207mkdir -p build
208cd build
209CFLAGS="%{rpmcflags}"; export CFLAGS
210CXXFLAGS="%{rpmcxxflags} -fpermissive"; export CXXFLAGS
211# We cannot use default cmake macro here as it overwrites some settings queried
212# by qtwebkit cmake from qmake
213cmake \
214 -DPORT=Qt \
215 -DCMAKE_BUILD_TYPE=Release \
216 -DENABLE_NETSCAPE_PLUGIN_API=ON \
217 %{?with_seccomp:-DENABLE_SECCOMP_FILTERS=ON} \
218 -DENABLE_TOOLS=OFF \
219 -DENABLE_X11_TARGET=ON \
220 -DCMAKE_C_FLAGS_RELEASE:STRING="-DNDEBUG" \
221 -DCMAKE_CXX_FLAGS_RELEASE:STRING="-DNDEBUG" \
222 -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON \
223 %{?with_qtmultimedia:-DUSE_GSTREAMER:BOOL=OFF -DUSE_QT_MULTIMEDIA:BOOL=ON} \
224 %{?with_doc:-DGENERATE_DOCUMENTATION=ON} \
225%if "%{_lib}" == "lib64"
226 -DLIB_SUFFIX=64 \
227%endif
228%if "%{_lib}" == "libx32"
229 -DLIB_SUFFIX=x32 \
230%endif
231%ifarch x32
232 -DENABLE_JIT=OFF \
233%endif
234 ..
235
236%{__make}
237
238%install
239rm -rf $RPM_BUILD_ROOT
240
241%{__make} -C build install \
242 DESTDIR=$RPM_BUILD_ROOT
243
244# normalize paths
245%{__sed} -i -e '/^Libs:/ s,-L/[^ ]*,-L%{_libdir},' \
246 -e '/^Cflags:/ s,-I[^ ]*/include/qt5,-I%{_includedir}/qt5,' \
247 $RPM_BUILD_ROOT%{_pkgconfigdir}/*.pc
248
249%clean
250rm -rf $RPM_BUILD_ROOT
251
252%post -n Qt5WebKit -p /sbin/ldconfig
253%postun -n Qt5WebKit -p /sbin/ldconfig
254
255%files -n Qt5WebKit
256%defattr(644,root,root,755)
257%attr(755,root,root) %{_libdir}/libQt5WebKit.so.*.*.*
258%attr(755,root,root) %ghost %{_libdir}/libQt5WebKit.so.5
259%attr(755,root,root) %{_libdir}/libQt5WebKitWidgets.so.*.*.*
260%attr(755,root,root) %ghost %{_libdir}/libQt5WebKitWidgets.so.5
261%dir %{_libdir}/qt5/qml/QtWebKit
262%attr(755,root,root) %{_libdir}/qt5/qml/QtWebKit/libqmlwebkitplugin.so
263%{_libdir}/qt5/qml/QtWebKit/plugins.qmltypes
264%{_libdir}/qt5/qml/QtWebKit/qmldir
265%dir %{_libdir}/qt5/qml/QtWebKit/experimental
266%attr(755,root,root) %{_libdir}/qt5/qml/QtWebKit/experimental/libqmlwebkitexperimentalplugin.so
267%{_libdir}/qt5/qml/QtWebKit/experimental/qmldir
268%attr(755,root,root) %{_libdir}/qt5/libexec/QtWebProcess
269%attr(755,root,root) %{_libdir}/qt5/libexec/QtWebNetworkProcess
270%attr(755,root,root) %{_libdir}/qt5/libexec/QtWebPluginProcess
271%attr(755,root,root) %{_libdir}/qt5/libexec/QtWebStorageProcess
272
273%files -n Qt5WebKit-devel
274%defattr(644,root,root,755)
275%attr(755,root,root) %{_libdir}/libQt5WebKit.so
276%attr(755,root,root) %{_libdir}/libQt5WebKitWidgets.so
277%{_includedir}/qt5/QtWebKit
278%{_includedir}/qt5/QtWebKitWidgets
279%{_pkgconfigdir}/Qt5WebKit.pc
280%{_pkgconfigdir}/Qt5WebKitWidgets.pc
281%{_libdir}/cmake/Qt5WebKit
282%{_libdir}/cmake/Qt5WebKitWidgets
283%{qt5dir}/mkspecs/modules/qt_lib_webkit.pri
284%{qt5dir}/mkspecs/modules/qt_lib_webkit_private.pri
285%{qt5dir}/mkspecs/modules/qt_lib_webkitwidgets.pri
286%{qt5dir}/mkspecs/modules/qt_lib_webkitwidgets_private.pri
287
288%if %{with doc}
289%files doc
290%defattr(644,root,root,755)
291%{_docdir}/qt5-doc/qtwebkit
292
293%files doc-qch
294%defattr(644,root,root,755)
295%{_docdir}/qt5-doc/qtwebkit.qch
296%endif
This page took 0.212871 seconds and 5 git commands to generate.