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