qt5-qtwebkit: Fixed building error

This commit is contained in:
gnaygnil 2020-03-18 14:15:04 +08:00
parent 332c8b411a
commit 01a5eac5f5

View File

@ -1,120 +1,107 @@
%undefine _annotated_build
%global _hardened_build 1
%global add_to_license_files() mkdir -p _license_files ; cp -p %1 _license_files/$(echo '%1' | sed -e 's!/!.!g')
%global __provides_exclude_from ^%{_qt5_archdatadir}/qml/.*\\.so$
Name: qt5-qtwebkit Name: qt5-qtwebkit
Version: 5.212.0 Version: 5.212.0
Release: 1 Release: 2
Summary: QtWebKit components Summary: QtWebKit components of Qt5
License: LGPLv2 and BSD License: LGPLv2 and BSD
URL: https://github.com/annulen/webkit URL: https://github.com/annulen/webkit
Source0: https://github.com/qtwebkit/qtwebkit/releases/download/qtwebkit-5.212.0-alpha2/qtwebkit-%{version}-alpha2.tar.xz Source0: https://github.com/annulen/webkit/releases/download/qtwebkit-%{version}-alpha2/qtwebkit-%{version}-alpha2.tar.xz
Patch0000: qt5-qtwebkit-5.212.0-alpha2-fix-pagewidth.patch BuildRequires: bison cmake flex pkgconfig(fontconfig) pkgconfig(gio-2.0) pkgconfig(glib-2.0) gperf
Patch0001: qtwebkit-5.212.0-alpha2-fix-null-pointer-dereference.patch BuildRequires: pkgconfig(gstreamer-1.0) pkgconfig(gstreamer-app-1.0) hyphen-devel pkgconfig(icu-i18n)
Patch0002: qtwebkit-5.212.0_cmake_cmp0071.patch BuildRequires: pkgconfig(icu-uc) libjpeg-devel pkgconfig(libpng) pkgconfig(libwebp) pkgconfig(xcomposite)
Patch0003: qtwebkit-5.212.0_fix_missing_sources.patch BuildRequires: pkgconfig(xrender) pkgconfig(libxslt) pkgconfig(gl) pkgconfig(gstreamer-gl-1.0)
Patch0004: 0016-cmake-Import-ECMEnableSanitizers.patch BuildRequires: pkgconfig(gstreamer-mpegts-1.0) perl-generators python2 qt5-qtbase-devel findutils
Patch0005: 0031-Disable-ES6-Proxy-object.patch BuildRequires: qt5-qtdeclarative-devel pkgconfig(ruby) rubygems pkgconfig(sqlite3) pkgconfig(zlib)
Patch0006: 0111-ECM-Update-ECMGeneratePkgConfigFile-to-latest-versio.patch
Patch0007: 0012-cmake-Fix-include-dir-in-the-generated-pkg-config-fi.patch
BuildRequires: bison cmake flex pkgconfig(fontconfig) pkgconfig(gio-2.0) pkgconfig(glib-2.0)
BuildRequires: gperf pkgconfig(gstreamer-1.0) pkgconfig(gstreamer-app-1.0) hyphen-devel
BuildRequires: pkgconfig(icu-i18n) pkgconfig(icu-uc) libjpeg-devel pkgconfig(libpng)
BuildRequires: pkgconfig(libwebp) pkgconfig(xcomposite) pkgconfig(xrender) pkgconfig(libxslt)
BuildRequires: pkgconfig(gl) pkgconfig(gstreamer-gl-1.0) pkgconfig(gstreamer-mpegts-1.0)
BuildRequires: perl-generators python2 qt5-qtbase-devel pkgconfig(Qt5Quick)
BuildRequires: pkgconfig(Qt5Location) pkgconfig(Qt5Sensors) pkgconfig(Qt5WebChannel)
BuildRequires: pkgconfig(ruby) rubygems pkgconfig(sqlite3) pkgconfig(zlib)
BuildRequires: qt5-qtbase-private-devel qt5-qtdeclarative-private-devel BuildRequires: qt5-qtbase-private-devel qt5-qtdeclarative-private-devel
%if ! 0%{?bootstrap}
BuildRequires: qt5-qtlocation-devel qt5-qtsensors-devel qt5-qtwebchannel-devel
Provides: bundled(angle) bundled(brotli) bundled(woff2)
%endif
%{?_qt5:Requires: %{_qt5} = %{_qt5_version}} %{?_qt5:Requires: %{_qt5} = %{_qt5_version}}
%{?_qt5:Requires: qt5-qtdeclarative = %{_qt5_version}} %{?_qt5:Requires: qt5-qtdeclarative = %{_qt5_version}}
%global __provides_exclude_from ^%{_qt5_archdatadir}/qml/.*\\.so$
Provides: bundled(angle) bundled(brotli) bundled(woff2) # Upstream patch to fix pagewidth issue with trojita
# https://github.com/annulen/webkit/issues/511
# https://github.com/annulen/webkit/commit/6faf11215e1af27d35e921ae669aa0251a01a1ab
# https://github.com/annulen/webkit/commit/76420459a13d9440b41864c93cb4ebb404bdab55
Patch0000: qt5-qtwebkit-5.212.0-alpha2-fix-pagewidth.patch
# Patch from Kevin Kofler to fix https://github.com/annulen/webkit/issues/573
Patch0001: qtwebkit-5.212.0-alpha2-fix-null-pointer-dereference.patch
# Patch for new CMake policy CMP0071 to explicitly use old behaviour.
Patch0002: qtwebkit-5.212.0_cmake_cmp0071.patch
# Patch to fix for missing source file.
Patch0003: qtwebkit-5.212.0_fix_missing_sources.patch
## upstream patches (qtwebkit-5.212 branch)
Patch0004: 0016-cmake-Import-ECMEnableSanitizers.patch
# disable ES6 Proxy
Patch0005: 0031-Disable-ES6-Proxy-object.patch
# ECM Update ECMGeneratePkgConfigFile to latest versio
Patch0006: 0111-ECM-Update-ECMGeneratePkgConfigFile-to-latest-versio.patch
## upstream patches (qtwebkit-stable branch)
Patch0007: 0012-cmake-Fix-include-dir-in-the-generated-pkg-config-fi.patch
%description %description
WebKit is an open source web browser engine. QtWebKit components of Qt5.
WebKit's HTML and JavaScript code began as a branch of the KHTML and KJS libraries from KDE.
As part of KDE framework KHTML was based on Qt
but during their porting efforts Apple's engineers made WebKit toolkit independent.
QtWebKit is a project aiming at porting this fabulous engine back to Qt.
%package devel %package devel
Summary: Development files for qt5-qtwebkit Summary: Development files for qt5-qtwebkit
Requires: qt5-qtwebkit = %{version}-%{release} qt5-qtbase-devel qt5-qtdeclarative-devel Requires: qt5-qtwebkit = %{version}-%{release}
Requires: qt5-qtbase-devel
Requires: qt5-qtdeclarative-devel
%description devel %description devel
Development files for qt5-qtwebkit. Development files for qt5-qtwebkit.
%package help
Summary: API documentation for qt5-qtwebkit
BuildRequires: qt5-qdoc qt5-qhelpgenerator
BuildArch: noarch
Provides: qt5-qtwebkit-doc = %{version}-%{release}
Obsoletes: qt5-qtwebkit-doc < %{version}-%{release}
%description help
API documentation for qt5-qtwebkit.
%prep %prep
%autosetup -p1 -n qtwebkit-%{version}-alpha2 %autosetup -n qtwebkit-%{version}-alpha2 -p1
test -f Source/WebCore/Resources/textAreaResizeCorner.png
%build %build
export CFLAGS="${CFLAGS:-%optflags}" %global _dwz_max_die_limit 250000000
export CXXFLAGS="${CXXFLAGS:-%optflags} -fpermissive"
export QT_VERSION_TAG=52120
export QT_VER=5.212.0
export QT_VERSION=5.212.0
export QT_INSTALL_DOCS=/usr/share/doc/qt5
export BUILDDIR=./
%{?__global_ldflags:export LDFLAGS="${LDFLAGS:-%__global_ldflags}"}
cmake -DPORT=Qt -DCMAKE_BUILD_TYPE=Release -DENABLE_TOOLS=OFF \
-DCMAKE_C_FLAGS_RELEASE:STRING="-DNDEBUG" -DCMAKE_CXX_FLAGS_RELEASE:STRING="-DNDEBUG" \
-DCMAKE_VERBOSE_MAKEFILE:BOOL=ON \
-DGENERATE_DOCUMENTATION=ON \
.
CFLAGS="${CFLAGS:-%optflags}" ; export CFLAGS ;
CXXFLAGS="${CXXFLAGS:-%optflags} -fpermissive" ; export CXXFLAGS ;
%{?__global_ldflags:LDFLAGS="${LDFLAGS:-%__global_ldflags}" ; export LDFLAGS ;}
cmake -DPORT=Qt -DCMAKE_BUILD_TYPE=Release -DENABLE_TOOLS=OFF -DCMAKE_C_FLAGS_RELEASE:STRING="-DNDEBUG" \
-DCMAKE_CXX_FLAGS_RELEASE:STRING="-DNDEBUG" -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON
%make_build %make_build
%make_build docs
%install %install
export QT_VERSION_TAG=52120
export QT_VER=5.212.0
export QT_VERSION=5.212.0
export QT_INSTALL_DOCS=/usr/share/doc/qt5
export BUILDDIR=./
%make_install %make_install
%delete_la find %{buildroot} -name '*.la' -exec rm -f {} ';'
sed -i "s,Libs: -L%{_qt5_libdir}/qt5/../ -lQt5WebKit,Libs: -L%{_qt5_libdir} -lQt5WebKit ,g" %{buildroot}%{_libdir}/pkgconfig/Qt5WebKit.pc sed -i "s,Libs: -L%{_qt5_libdir}/qt5/../ -lQt5WebKit,Libs: -L%{_qt5_libdir} -lQt5WebKit ,g" %{buildroot}%{_libdir}/pkgconfig/Qt5WebKit.pc
sed -i "s,Libs: -L%{_qt5_libdir}/qt5/../ -lQt5WebKitWidgets,Libs: -L%{_qt5_libdir} -lQt5WebKitWidgets ,g" %{buildroot}%{_libdir}/pkgconfig/Qt5WebKitWidgets.pc sed -i "s,Libs: -L%{_qt5_libdir}/qt5/../ -lQt5WebKitWidgets,Libs: -L%{_qt5_libdir} -lQt5WebKitWidgets ,g" %{buildroot}%{_libdir}/pkgconfig/Qt5WebKitWidgets.pc
%add_to_license_files Source/JavaScriptCore/COPYING.LIB
mkdir -p _license_files %add_to_license_files Source/JavaScriptCore/icu/LICENSE
cp -p Source/JavaScriptCore/COPYING.LIB _license_files/Source.JavaScriptCore.COPYING.LIB %add_to_license_files Source/ThirdParty/ANGLE/LICENSE
cp -p Source/JavaScriptCore/icu/LICENSE _license_files/Source.JavaScriptCore.icu.LICENSE %add_to_license_files Source/ThirdParty/ANGLE/src/third_party/compiler/LICENSE
cp -p Source/ThirdParty/ANGLE/LICENSE _license_files/Source.ThirdParty.ANGLE.LICENSE %add_to_license_files Source/ThirdParty/ANGLE/src/third_party/murmurhash/LICENSE
cp -p Source/ThirdParty/ANGLE/src/third_party/compiler/LICENSE _license_files/Source.ThirdParty.ANGLE.src.third_party.compiler.LICENSE %add_to_license_files Source/WebCore/icu/LICENSE
cp -p Source/ThirdParty/ANGLE/src/third_party/murmurhash/LICENSE _license_files/Source.ThirdParty.ANGLE.src.third_party.murmurhash.LICENSE %add_to_license_files Source/WebCore/LICENSE-APPLE
cp -p Source/WebCore/icu/LICENSE _license_files/Source.WebCore.icu.LICENSE %add_to_license_files Source/WebCore/LICENSE-LGPL-2
cp -p Source/WebCore/LICENSE-APPLE _license_files/Source.WebCore.LICENSE-APPLE %add_to_license_files Source/WebCore/LICENSE-LGPL-2.1
cp -p Source/WebCore/LICENSE-LGPL-2 _license_files/Source.WebCore.LICENSE-LGPL-2 %add_to_license_files Source/WebInspectorUI/UserInterface/External/CodeMirror/LICENSE
cp -p Source/WebCore/LICENSE-LGPL-2.1 _license_files/Source.WebCore.LICENSE-LGPL-2.1 %add_to_license_files Source/WebInspectorUI/UserInterface/External/Esprima/LICENSE
cp -p Source/WebInspectorUI/UserInterface/External/CodeMirror/LICENSE _license_files/Source.WebInspectorUI.UserInterface.External.CodeMirror.LICENSE %add_to_license_files Source/WTF/icu/LICENSE
cp -p Source/WebInspectorUI/UserInterface/External/Esprima/LICENSE _license_files/Source.WebInspectorUI.UserInterface.External.Esprima.LICENSE %add_to_license_files Source/WTF/wtf/dtoa/COPYING
cp -p Source/WTF/icu/LICENSE _license_files/Source.WTF.icu.LICENSE %add_to_license_files Source/WTF/wtf/dtoa/LICENSE
cp -p Source/WTF/wtf/dtoa/COPYING _license_files/Source.WTF.wtf.dtoa.COPYING
cp -p Source/WTF/wtf/dtoa/LICENSE _license_files/Source.WTF.wtf.dtoa.LICENSE
%check %check
export PKG_CONFIG_PATH=%{buildroot}%{_libdir}/pkgconfig export PKG_CONFIG_PATH=%{buildroot}%{_libdir}/pkgconfig
test -z "$(pkg-config --cflags Qt5WebKit | grep Qt5WebKit)" test -z "$(pkg-config --cflags Qt5WebKit | grep Qt5WebKit)"
%post %post -p /sbin/ldconfig
/sbin/ldconfig %postun -p /sbin/ldconfig
%postun
/sbin/ldconfig
%files %files
%license LICENSE.LGPLv21 _license_files/* %doc LICENSE.LGPLv21 _license_files/*
%{_qt5_libdir}/*.so.5* %{_qt5_libdir}/{libQt5WebKit.so.5*,libQt5WebKitWidgets.so.5*}
%{_qt5_libexecdir}/* %{_qt5_libexecdir}/{QtWebDatabaseProcess,QtWebNetworkProcess,QtWebPluginProcess,QtWebProcess}
%{_qt5_archdatadir}/qml/QtWebKit/ %{_qt5_archdatadir}/qml/QtWebKit/
%files devel %files devel
@ -124,10 +111,9 @@ test -z "$(pkg-config --cflags Qt5WebKit | grep Qt5WebKit)"
%{_qt5_libdir}/pkgconfig/Qt5*.pc %{_qt5_libdir}/pkgconfig/Qt5*.pc
%{_qt5_archdatadir}/mkspecs/modules/*.pri %{_qt5_archdatadir}/mkspecs/modules/*.pri
%files help
%{_qt5_docdir}/qtwebkit.qch
%{_qt5_docdir}/qtwebkit/
%changelog %changelog
* Tue Mar 17 2020 Ling Yang <lingyang2@huawei.com> - 5.212.0-2
- Fixed building error
* Fri Feb 14 2020 Ling Yang <lingyang2@huawei.com> - 5.212.0-1 * Fri Feb 14 2020 Ling Yang <lingyang2@huawei.com> - 5.212.0-1
- Package init - Package init