20 Star 0 Fork 21

openEuler-RISC-V / qt5-qtwebengine

forked from src-openEuler / qt5-qtwebengine 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
qt5-qtwebengine.spec 13.01 KB
一键复制 编辑 原始数据 按行查看 历史
Jingwiw 提交于 2022-05-28 09:00 . update to 5.15.9 and add riscv support
%define _binaries_in_noarch_packages_terminate_build 0
%global _hardened_build 1
%global __provides_exclude ^lib.*plugin\\.so.*|libv8\\.so$
%global __requires_exclude ^libv8\\.so$
%global __provides_exclude_from ^%{_qt5_plugindir}/.*\\.so$
%global clang 1
Name: qt5-qtwebengine
Version: 5.15.9
Release: 1
Summary: Qt5 - QtWebEngine components
License: (LGPLv2 with exceptions or GPLv3 with exceptions) and BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2)
URL: http://www.qt.io
Source0: qtwebengine-everywhere-src-%{version}.tar.xz
Patch0: armv6-ffmpeg-no-thumb.patch
Patch1: disable-gpu-when-using-nouveau-boo-1005323.patch
Patch2: sandbox-statx-futex_time64.patch
Patch3: rtc-dont-use-h264.patch
Patch4: 0001-skia-Some-includes-to-fix-build-with-GCC-12.patch
Patch5: python3.patch
Patch6: riscv64-support.patch
BuildRequires: qt5-qtbase-devel qt5-qtbase-private-devel qt5-qtdeclarative-devel qt5-qtxmlpatterns-devel
BuildRequires: qt5-qtlocation-devel qt5-qtsensors-devel qt5-qtwebchannel-devel qt5-qttools-static qt5-qtsvg-devel
BuildRequires: qt5-qtquickcontrols2-devel ninja-build cmake bison flex git-core gperf libicu-devel
BuildRequires: libjpeg-devel re2-devel snappy-devel pkgconfig(expat) pkgconfig(gobject-2.0)
BuildRequires: pkgconfig(fontconfig) pkgconfig(freetype2) pkgconfig(gl) pkgconfig(egl) pkgconfig(libpng)
BuildRequires: pkgconfig(libudev) pkgconfig(libwebp) >= 0.6.0 pkgconfig(harfbuzz) pkgconfig(libdrm)
BuildRequires: pkgconfig(opus) pkgconfig(libevent) pkgconfig(zlib) pkgconfig(minizip) pkgconfig(x11)
BuildRequires: pkgconfig(xi) pkgconfig(xcursor) pkgconfig(xext) pkgconfig(xfixes) pkgconfig(xrender) pkgconfig(xkbcommon) >= 1.0.0 pkgconfig(xkbfile)
BuildRequires: pkgconfig(xdamage) pkgconfig(xcomposite) pkgconfig(xtst) pkgconfig(xrandr) pkgconfig(xscrnsaver)
BuildRequires: pkgconfig(libcap) pkgconfig(libpulse) pkgconfig(alsa) pkgconfig(libpci) pkgconfig(dbus-1)
BuildRequires: pkgconfig(nss) pkgconfig(lcms2) perl-interpreter pkgconfig(glib-2.0) pkgconfig(gio-2.0)
BuildRequires: nodejs-devel pam-devel pciutils-devel libstdc++-static re2c usbutils protobuf2-devel
BuildRequires: pkgconfig(libavcodec) pkgconfig(libavformat) pkgconfig(libavutil) pkgconfig(gthread-2.0) pkgconfig(gmodule-2.0) pkgconfig(libsrtp2) pkgconfig(libxml-2.0) pkgconfig(libxslt) pkgconfig(poppler-cpp) pkgconfig(icu-uc) pkgconfig(icu-i18n)
BuildRequires: python3 python3-devel python3-flask python3-soupsieve gcc gcc-g++ yasm
BuildRequires: pkgconfig(cairo) pkgconfig(libcrypto) pkgconfig(pangocairo) pkgconfig(libexif) pkgconfig(libmtp) pkgconfig(pangoft2) pkgconfig(speex) pkgconfig(re2) pkgconfig(glproto) pkgconfig(jsoncpp)
Provides: bundled(chromium) = 83.0.4103.122 bundled(boringssl) bundled(brotli)
Provides: bundled(hunspell) = 1.6.0 bundled(iccjpeg) bundled(khronos_headers)
Provides: bundled(leveldb) = 1.22.0 bundled(libjingle) bundled(libsrtp) = 2.2.0
Provides: bundled(libXNVCtrl) = 302.17
Provides: bundled(libyuv) = 1768 bundled(modp_b64) bundled(ots)
Provides: bundled(protobuf) = 3.9.0 bundled(qcms) = 4 bundled(sfntly) bundled(skia)
Provides: bundled(SMHasher) = 0-0.1.svn147 bundled(sqlite) = 3.35.5 bundled(usrsctp) bundled(webrtc) = 90
Provides: bundled(dmg_fp) bundled(dynamic_annotations) = 4384 bundled(superfasthash) = 0 bundled(symbolize)
Provides: bundled(valgrind.h) bundled(xdg-mime) bundled(xdg-user-dirs) = 0.10 bundled(nsURLParsers)
Provides: bundled(mozilla_security_manager) = 1.9.2 bundled(mojo) bundled(v8) = 8.3.110.13 bundled(fdlibm) = 5.3
%ifarch x86_64
Provides: bundled(angle)
Provides: bundled(libvpx) = 1.6.0
Provides: bundled(openmax_dl)
Provides: bundled(x86inc)
%endif
%{?_qt5:Requires: %{_qt5} = %{_qt5_version}}
%{?_qt5_version:Requires: qt5-qtbase = %{_qt5_version}}
%description
Qt5 - QtWebEngine components.
%package devel
Summary: Development files for qt5-qtwebengine
Requires: qt5-qtwebengine = %{version}-%{release} qt5-qtbase-devel qt5-qtdeclarative-devel
%description devel
Qt5 - QtWebEngine components.
%package examples
Summary: Example files for qt5-qtwebengine
%description examples
Example files for qt5-qtwebengine.
%package libQt5Pdf5
Summary: Qt5 PDF library
%description libQt5Pdf5
Main library of the Qt PDF module.
%global debug_package %{nil}
%prep
%autosetup -n qtwebengine-everywhere-src-%{version}%{?prerelease:-%{prerelease}} -p1
sed -i 's|$(STRIP)|strip|g' src/core/core_module.pro
mkdir .git
sed -i -e '/toolprefix = /d' -e 's/\${toolprefix}//g' src/3rdparty/chromium/build/toolchain/linux/BUILD.gn
cp -bv /usr/include/re2/*.h src/3rdparty/chromium/third_party/re2/src/re2/
cd src/3rdparty
python3 chromium/tools/licenses.py --file-template ../../tools/about_credits.tmpl \
--entry-template ../../tools/about_credits_entry.tmpl credits >../webengine/doc/src/qtwebengine-3rdparty.qdoc
cd -
cp -p src/3rdparty/chromium/LICENSE LICENSE.Chromium
%build
# TODO: Get the manual unbundling from chromium.spec working here as well
rm -r src/3rdparty/chromium/third_party/openh264/src
# python3
mkdir $HOME/bin
export PYTHON=python3
ln -sfn %{_bindir}/$PYTHON $HOME/bin/python
export PATH="$HOME/bin/:$PATH"
# Fix the path to nodejs binary
mkdir -p third_party/node/linux/node-linux-x64/bin
ln -s %{_bindir}/node third_party/node/linux/node-linux-x64/bin/node
export STRIP=strip
export NINJAFLAGS="-j8"
export NINJA_PATH=%{__ninja}
# %endif
export LDFLAGS=" -Wl,--no-keep-memory -Wl,--hash-size=31 -Wl,--reduce-memory-overheads -Wl,--no-as-needed -Wl,--no-undefined"
export RPM_OPT_FLAGS="${RPM_OPT_FLAGS} -Wno-return-type"
MAKEOPTS="-j8"
%{qmake_qt5} \
gn_args+="link_pulseaudio=true" \
gn_args+="media_use_openh264=false" \
gn_args+="use_system_libxml=true use_system_libxslt=true" \
QMAKE_CFLAGS="$CFLAGS $RPM_OPT_FLAGS -DOPENSSL_LOAD_CONF" \
QMAKE_CXXFLAGS="$CXXFLAGS $RPM_OPT_FLAGS -DOPENSSL_LOAD_CONF" \
QMAKE_LFLAGS+="$LDFLAGS" \
QMAKE_EXTRA_ARGS+="\
-webengine-alsa \
-no-webengine-embedded-build \
-system-webengine-ffmpeg \
-system-webengine-icu \
-system-webengine-opus \
-system-webengine-webp \
-webengine-kerberos \
-webengine-pepper-plugins \
-webengine-printing-and-pdf \
-webengine-proprietary-codecs" .
make %{_smp_mflags}
%install
make install INSTALL_ROOT=%{buildroot}
echo -e "%_qt5_qtwebengine @@NAME@@\n%_qt5_qtwebengine_epoch @@EPOCH@@\n%_qt5_qtwebengine_version @@VERSION@@\n%_qt5_qtwebengine_evr @@EVR@@" > macros.qt5-qtwebengine
install -p -m644 -D macros.qt5-qtwebengine %{buildroot}%(d=%{_rpmconfigdir}/macros.d; [ -d $d ] || d=%{_sysconfdir}/rpm; echo $d)/macros.qt5-qtwebengine
rm -f macros.qt5-qtwebengine
sed -i -e "s|@@NAME@@|qt5-qtwebengine|g" -e "s|@@EPOCH@@|%{?epoch}%{!?epoch:0}|g" -e "s|@@VERSION@@|%{version}|g" \
-e "s|@@EVR@@|%{?epoch:%{epoch:}}%{version}-%{release}|g" %{buildroot}%(d=%{_rpmconfigdir}/macros.d; [ -d $d ] || \
d=%{_sysconfdir}/rpm; echo $d)/macros.qt5-qtwebengine
install -d %{buildroot}%{_bindir}
cd %{buildroot}%{_qt5_bindir}
for i in * ; do ln -v ${i} %{buildroot}%{_bindir}/${i}; done
cd -
cd %{buildroot}%{_qt5_libdir}
for prl_file in libQt5*.prl ; do
sed -i -e "/^QMAKE_PRL_BUILD_DIR/d" ${prl_file}
if [ -f "$(basename ${prl_file} .prl).so" ]; then
rm -fv "$(basename ${prl_file} .prl).la"; sed -i -e "/^QMAKE_PRL_LIBS/d" ${prl_file}
fi
done
cd -
install -d %{buildroot}%{_qt5_datadir}/qtwebengine_dictionaries
%global lesser_version $(echo -e "%{version}\\n%{_qt5_version}" | sort -V | head -1)
sed -i -e "s|%{version} \${_Qt5WebEngine|%{lesser_version} \${_Qt5WebEngine|" %{buildroot}%{_qt5_libdir}/cmake/Qt5WebEngine*/Qt5WebEngine*Config.cmake
rm -r %{buildroot}%{_libdir}/cmake/Qt5Gui
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
%post libQt5Pdf5 -p /sbin/ldconfig
%postun libQt5Pdf5 -p /sbin/ldconfig
%filetriggerin -- %{_datadir}/myspell
while read filename ; do
case "$filename" in
*.dic)
bdicname=%{_qt5_datadir}/qtwebengine_dictionaries/`basename -s .dic "$filename"`.bdic
%{_qt5_bindir}/qwebengine_convert_dict "$filename" "$bdicname" &> /dev/null || :
;;
esac
done
%files
%doc LICENSE.* src/webengine/doc/src/qtwebengine-3rdparty.qdoc
%{_bindir}/qwebengine_convert_dict
%{_qt5_bindir}/qwebengine_convert_dict
%{_qt5_libdir}/{libQt5*.so.*,qt5/qml/*,qt5/libexec/QtWebEngineProcess}
%{_qt5_plugindir}/designer/libqwebengineview.so
%{_qt5_datadir}/resources/
%{_qt5_datadir}/resources/qtwebengine_*
%dir %{_qt5_datadir}/qtwebengine_dictionaries
%dir %{_qt5_translationdir}/qtwebengine_locales
%{_libdir}/qt5/qml/QtWebEngine/
%{_libdir}/libQt5WebEngine.so.*
%{_libdir}/libQt5WebEngineCore.so.*
%{_libdir}/libQt5WebEngineWidgets.so.*
%{_libdir}/Qt5WebEngineCore.la
%lang(am) %{_qt5_translationdir}/qtwebengine_locales/am.pak
%lang(ar) %{_qt5_translationdir}/qtwebengine_locales/ar.pak
%lang(bg) %{_qt5_translationdir}/qtwebengine_locales/bg.pak
%lang(bn) %{_qt5_translationdir}/qtwebengine_locales/bn.pak
%lang(ca) %{_qt5_translationdir}/qtwebengine_locales/ca.pak
%lang(cs) %{_qt5_translationdir}/qtwebengine_locales/cs.pak
%lang(da) %{_qt5_translationdir}/qtwebengine_locales/da.pak
%lang(de) %{_qt5_translationdir}/qtwebengine_locales/de.pak
%lang(el) %{_qt5_translationdir}/qtwebengine_locales/el.pak
%lang(en) %{_qt5_translationdir}/qtwebengine_locales/en-GB.pak
%lang(en) %{_qt5_translationdir}/qtwebengine_locales/en-US.pak
%lang(es) %{_qt5_translationdir}/qtwebengine_locales/es-419.pak
%lang(es) %{_qt5_translationdir}/qtwebengine_locales/es.pak
%lang(et) %{_qt5_translationdir}/qtwebengine_locales/et.pak
%lang(fa) %{_qt5_translationdir}/qtwebengine_locales/fa.pak
%lang(fi) %{_qt5_translationdir}/qtwebengine_locales/fi.pak
%lang(fil) %{_qt5_translationdir}/qtwebengine_locales/fil.pak
%lang(fr) %{_qt5_translationdir}/qtwebengine_locales/fr.pak
%lang(gu) %{_qt5_translationdir}/qtwebengine_locales/gu.pak
%lang(he) %{_qt5_translationdir}/qtwebengine_locales/he.pak
%lang(hi) %{_qt5_translationdir}/qtwebengine_locales/hi.pak
%lang(hr) %{_qt5_translationdir}/qtwebengine_locales/hr.pak
%lang(hu) %{_qt5_translationdir}/qtwebengine_locales/hu.pak
%lang(id) %{_qt5_translationdir}/qtwebengine_locales/id.pak
%lang(it) %{_qt5_translationdir}/qtwebengine_locales/it.pak
%lang(ja) %{_qt5_translationdir}/qtwebengine_locales/ja.pak
%lang(kn) %{_qt5_translationdir}/qtwebengine_locales/kn.pak
%lang(ko) %{_qt5_translationdir}/qtwebengine_locales/ko.pak
%lang(lt) %{_qt5_translationdir}/qtwebengine_locales/lt.pak
%lang(lv) %{_qt5_translationdir}/qtwebengine_locales/lv.pak
%lang(ml) %{_qt5_translationdir}/qtwebengine_locales/ml.pak
%lang(mr) %{_qt5_translationdir}/qtwebengine_locales/mr.pak
%lang(ms) %{_qt5_translationdir}/qtwebengine_locales/ms.pak
%lang(nb) %{_qt5_translationdir}/qtwebengine_locales/nb.pak
%lang(nl) %{_qt5_translationdir}/qtwebengine_locales/nl.pak
%lang(pl) %{_qt5_translationdir}/qtwebengine_locales/pl.pak
%lang(pt_BR) %{_qt5_translationdir}/qtwebengine_locales/pt-BR.pak
%lang(pt_PT) %{_qt5_translationdir}/qtwebengine_locales/pt-PT.pak
%lang(ro) %{_qt5_translationdir}/qtwebengine_locales/ro.pak
%lang(ru) %{_qt5_translationdir}/qtwebengine_locales/ru.pak
%lang(sk) %{_qt5_translationdir}/qtwebengine_locales/sk.pak
%lang(sl) %{_qt5_translationdir}/qtwebengine_locales/sl.pak
%lang(sr) %{_qt5_translationdir}/qtwebengine_locales/sr.pak
%lang(sv) %{_qt5_translationdir}/qtwebengine_locales/sv.pak
%lang(sw) %{_qt5_translationdir}/qtwebengine_locales/sw.pak
%lang(ta) %{_qt5_translationdir}/qtwebengine_locales/ta.pak
%lang(te) %{_qt5_translationdir}/qtwebengine_locales/te.pak
%lang(th) %{_qt5_translationdir}/qtwebengine_locales/th.pak
%lang(tr) %{_qt5_translationdir}/qtwebengine_locales/tr.pak
%lang(uk) %{_qt5_translationdir}/qtwebengine_locales/uk.pak
%lang(vi) %{_qt5_translationdir}/qtwebengine_locales/vi.pak
%lang(zh_CN) %{_qt5_translationdir}/qtwebengine_locales/zh-CN.pak
%lang(zh_TW) %{_qt5_translationdir}/qtwebengine_locales/zh-TW.pak
%files devel
%(d=%{_rpmconfigdir}/macros.d; [ -d $d ] || d=%{_sysconfdir}/rpm; echo $d)/macros.qt5-qtwebengine
%{_qt5_headerdir}/Qt*/
%{_qt5_libdir}/{libQt5*.so,libQt5*.prl,cmake/Qt5*/,pkgconfig/Qt5*.pc}
%{_qt5_archdatadir}/mkspecs/modules/*.pri
%files examples
%{_qt5_examplesdir}/
%files libQt5Pdf5
%{_libdir}/qt5/plugins/imageformats/libqpdf.so
%{_libdir}/libQt5Pdf.so.*
%changelog
* Fri Jun 17 2022 Jingwiw <wangjingwei@iscas.ac.cn> - 5.15.9-1
- Update to 5.15
- add riscv64 support
- build by python3
* Fri Jul 24 2020 maminjie <maminjie1@huawei.com> -5.11.1-10
- Fix the build error for U16_NEXT calls
* Sun Jun 28 2020 huanghaitao <huanghaitao8@huawei.com> -5.11.1-9
- Fix the build errors with conflicting declaration of C
* Sat Jun 20 2020 huanghaitao <huanghaitao8@huawei.com> -5.11.1-8
- Solved the unresolved problem
* Wed Mar 18 2020 gulining <gulining1@huawei.com> - 5.11.1-7
- Fix build error
* Wed Mar 18 2020 yanglijin <yanglijin@huawei.com> - 5.11.1-6
- Remove help package
* Fri Mar 6 2020 Ling Yang <lingyang2@huawei.com> - 5.11.1-5
- Package Init
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/openeuler-risc-v/qt5-qtwebengine.git
git@gitee.com:openeuler-risc-v/qt5-qtwebengine.git
openeuler-risc-v
qt5-qtwebengine
qt5-qtwebengine
master

搜索帮助

344bd9b3 5694891 D2dac590 5694891