Update to 5.10.0

* Mon Dec 25 2017 Kevin Kofler <Kevin@tigcc.ticalc.org> - 5.10.0-1
- Update to 5.10.0
- Update version numbers of bundled stuff
- Drop support for Fedora < 26 (in particular, WEBENGINE_CONFIG F25 workarounds)
- Drop qt57 patch, support for Qt 5.7 was completely dropped upstream
- Update get_free_ffmpeg_source_files.py from Fedora Chromium packaging
- clean_qtwebengine.sh: Update for the changed tarball naming scheme
- Use QMAKE_EXTRA_ARGS instead of the removed WEBENGINE_CONFIG
- Rebase linux-pri, system-nspr-prtime, system-icu-utf, no-sse2, skia-neon and
  gn-bootstrap-verbose patches
- In particular, restore the removed V8 x87 backend in the no-sse2 patch
- Re-backport no-aspirational-scripts from upstream (undo 5.9 backport)
This commit is contained in:
Kevin Kofler 2017-12-25 19:51:57 +01:00
parent 27c3f14daf
commit bd1324398d
17 changed files with 30799 additions and 3544 deletions

1
.gitignore vendored
View File

@ -11,3 +11,4 @@
/qtwebengine-opensource-src-5.9.1-clean.tar.xz
/qtwebengine-opensource-src-5.9.2-clean.tar.xz
/qtwebengine-opensource-src-5.9.3-clean.tar.xz
/qtwebengine-everywhere-src-5.10.0-clean.tar.xz

View File

@ -1,5 +1,5 @@
#!/bin/bash
# Copyright 2015-2016 Kevin Kofler <Kevin@tigcc.ticalc.org>
# Copyright 2015-2017 Kevin Kofler <Kevin@tigcc.ticalc.org>
# Permission is hereby granted, free of charge, to any person obtaining
# a copy of this software and associated documentation files (the
# "Software"), to deal in the Software without restriction, including
@ -21,11 +21,11 @@
if [ -z "$1" ] ; then
echo "usage: ./clean_qtwebengine.sh VERSION"
echo "e.g.: ./clean_qtwebengine.sh 5.7.0"
echo "e.g.: ./clean_qtwebengine.sh 5.10.0"
exit 1
fi
DIRNAME="qtwebengine-opensource-src-$1"
DIRNAME="qtwebengine-everywhere-src-$1"
echo "removing $DIRNAME"
rm -rf "$DIRNAME" || exit $?

View File

@ -60,7 +60,7 @@ def parse_ffmpeg_gyni_file(gyni_path, arch_not_arm):
if inserted:
break
limitations = ['ffmpeg_branding == "Chrome"', 'ffmpeg_branding == "ChromeOS"']
if ('is_linux' in condition) and not any(limitation in condition for limitation in limitations):
if ('use_linux_config' in condition) and not any(limitation in condition for limitation in limitations):
if (arch_not_arm):
if ('x64' in condition) or ('x86' in condition):
parse_sources (block[1], output_sources, arch_not_arm)
@ -69,6 +69,10 @@ def parse_ffmpeg_gyni_file(gyni_path, arch_not_arm):
parse_sources (block[1], output_sources, arch_not_arm)
inserted = True
if len(output_sources) == 0:
sys.stderr.write("Something went wrong, no sources parsed!\n")
sys.exit(1)
print ' '.join(output_sources)

View File

@ -10,14 +10,10 @@
%global docs 1
%endif
%if 0%{?fedora} > 24
# need libvpx >= 1.6.0
%global use_system_libvpx 1
%endif
%if 0%{?fedora} > 23
# need libwebp >= 0.5.1
# need libwebp >= 0.6.0
%global use_system_libwebp 1
%endif
# NEON support on ARM (detected at runtime) - disable this if you are hitting
# FTBFS due to e.g. GCC bug https://bugzilla.redhat.com/show_bug.cgi?id=1282495
@ -55,8 +51,8 @@
Summary: Qt5 - QtWebEngine components
Name: qt5-qtwebengine
Version: 5.9.3
Release: 5%{?dist}
Version: 5.10.0
Release: 1%{?dist}
# See LICENSE.GPL LICENSE.LGPL LGPL_EXCEPTION.txt, for details
# See also http://qt-project.org/doc/qt-5.0/qtdoc/licensing.html
@ -64,9 +60,9 @@ Release: 5%{?dist}
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
# cleaned tarball with patent-encumbered codecs removed from the bundled FFmpeg
# wget http://download.qt.io/official_releases/qt/5.9/5.9.3/submodules/qtwebengine-opensource-src-5.9.3.tar.xz
# ./clean_qtwebengine.sh 5.9.3
Source0: qtwebengine-opensource-src-%{version}-clean.tar.xz
# wget http://download.qt.io/official_releases/qt/5.10/5.10.0/submodules/qtwebengine-everywhere-src-5.10.0.tar.xz
# ./clean_qtwebengine.sh 5.10.0
Source0: qtwebengine-everywhere-src-%{version}-clean.tar.xz
# cleanup scripts used above
Source1: clean_qtwebengine.sh
Source2: clean_ffmpeg.sh
@ -74,7 +70,7 @@ Source3: get_free_ffmpeg_source_files.py
# macros
Source10: macros.qt5-qtwebengine
# some tweaks to linux.pri (system yasm, link libpci, run unbundling script)
Patch0: qtwebengine-opensource-src-5.9.2-linux-pri.patch
Patch0: qtwebengine-everywhere-src-5.10.0-linux-pri.patch
# quick hack to avoid checking for the nonexistent icudtl.dat and silence the
# resulting warnings - not upstreamable as is because it removes the fallback
# mechanism for the ICU data directory (which is not used in our builds because
@ -89,18 +85,18 @@ Patch3: qtwebengine-opensource-src-5.9.0-no-neon.patch
# use the system NSPR prtime (based on Debian patch)
# We already depend on NSPR, so it is useless to copy these functions here.
# Debian uses this just fine, and I don't see relevant modifications either.
Patch4: qtwebengine-opensource-src-5.9.0-system-nspr-prtime.patch
Patch4: qtwebengine-everywhere-src-5.10.0-system-nspr-prtime.patch
# use the system ICU UTF functions
# We already depend on ICU, so it is useless to copy these functions here.
# I checked the history of that directory, and other than the renames I am
# undoing, there were no modifications at all. Must be applied after Patch4.
Patch5: qtwebengine-opensource-src-5.9.0-system-icu-utf.patch
Patch5: qtwebengine-everywhere-src-5.10.0-system-icu-utf.patch
# do not require SSE2 on i686
# cumulative revert of upstream reviews 187423002, 308003004, 511773002 (parts
# relevant to QtWebEngine only), 516543004, 1152053004 and 1161853008, along
# with some custom fixes and improvements
# relevant to QtWebEngine only), 516543004, 1152053004 and 1161853008, and V8
# Gerrit review 575756, along with some custom fixes and improvements
# also build V8 shared and twice on i686 (once for x87, once for SSE2)
Patch6: qtwebengine-opensource-src-5.9.1-no-sse2.patch
Patch6: qtwebengine-everywhere-src-5.10.0-no-sse2.patch
# fix missing ARM -mfpu setting
Patch9: qtwebengine-opensource-src-5.9.2-arm-fpu-fix.patch
# remove Android dependencies from openmax_dl ARM NEON detection (detect.c)
@ -108,24 +104,16 @@ Patch10: qtwebengine-opensource-src-5.9.0-openmax-dl-neon.patch
# restore NEON runtime detection in Skia: revert upstream review 1952953004,
# restore the non-Android Linux NEON runtime detection code lost in upstream
# review 1890483002, also add VFPv4 runtime detection
Patch11: qtwebengine-opensource-src-5.9.0-skia-neon.patch
Patch11: qtwebengine-everywhere-src-5.10.0-skia-neon.patch
# webrtc: enable the CPU feature detection for ARM Linux also for Chromium
Patch12: qtwebengine-opensource-src-5.9.0-webrtc-neon-detect.patch
# Force verbose output from the GN bootstrap process
Patch21: qtwebengine-opensource-src-5.9.0-gn-bootstrap-verbose.patch
# Fix FTBFS with Qt 5.7
Patch22: qtwebengine-opensource-src-5.9.2-qt57.patch
Patch21: qtwebengine-everywhere-src-5.10.0-gn-bootstrap-verbose.patch
# drop support for obsolete Unicode "aspirational scripts" (dropped in UTS 31),
# fixes #error with ICU >= 60 (which was a reminder to double-check the list)
# see: http://www.unicode.org/reports/tr31/#Aspirational_Use_Scripts
# backport of: https://chromium-review.googlesource.com/c/chromium/src/+/731871
# For 5.10, refetch the patch instead of forward-porting the backport.
Patch100: qtwebengine-opensource-src-5.9.3-no-aspirational-scripts.patch
%if 0%{?fedora} && 0%{?fedora} < 25
# work around missing qt5_qtwebengine_arches macro on F24
%{!?qt5_qtwebengine_arches:%global qt5_qtwebengine_arches %{ix86} x86_64 %{arm} aarch64 mips mipsel mips64el}
%endif
Patch100: qtwebengine-everywhere-src-5.10.0-no-aspirational-scripts.patch
# handled by qt5-srpm-macros, which defines %%qt5_qtwebengine_arches
ExclusiveArch: %{qt5_qtwebengine_arches}
@ -212,11 +200,11 @@ BuildRequires: pkgconfig(vpx) >= 1.6.0
# Of course, Chromium itself is bundled. It cannot be unbundled because it is
# not a library, but forked (modified) application code.
# Some security fixes (up to version 62.0.3202.89) are backported, see:
# http://code.qt.io/cgit/qt/qtwebengine-chromium.git/log/?h=56-based
# see dist/changes-5.9.3 for the version numbers (base, security fixes) and for
# Some security fixes (up to version 62.0.3202.94) are backported, see:
# http://code.qt.io/cgit/qt/qtwebengine-chromium.git/log/?h=61-based
# see dist/changes-5.10.0 for the version numbers (base, security fixes) and for
# a list of CVEs fixed by the added security backports
Provides: bundled(chromium) = 56.0.2924.122
Provides: bundled(chromium) = 61.0.3163.140
# Bundled in src/3rdparty/chromium/third_party:
# Check src/3rdparty/chromium/third_party/*/README.chromium for version numbers,
@ -236,32 +224,31 @@ Provides: bundled(brotli)
# out. See clean_qtwebengine.sh, clean_ffmpeg.sh, and
# get_free_ffmpeg_source_files.py.
# see src/3rdparty/chromium/third_party/ffmpeg/Changelog for the version number
Provides: bundled(ffmpeg) = 3.1
Provides: bundled(hunspell) = 1.3.2
Provides: bundled(ffmpeg) = 3.3
Provides: bundled(hunspell) = 1.6.0
Provides: bundled(iccjpeg)
# bundled as "khronos", headers only
Provides: bundled(khronos_headers)
# bundled as "leveldatabase"
Provides: bundled(leveldb)
Provides: bundled(libjingle) = 12750
Provides: bundled(leveldb) = 1.20
# bundled as "libjingle_xmpp"
Provides: bundled(libjingle)
# see src/3rdparty/chromium/third_party/libsrtp/CHANGES for the version number
Provides: bundled(libsrtp) = 1.5.2
Provides: bundled(libsrtp) = 2.1.0
%if !0%{?use_system_libvpx}
Provides: bundled(libvpx) = 1.6.0
%endif
%if !0%{?use_system_libwebp}
Provides: bundled(libwebp) = 0.5.1
Provides: bundled(libwebp) = 0.6.0
%endif
# bundled as "libxml"
# see src/3rdparty/chromium/third_party/libxml/linux/include/libxml/xmlversion.h
Provides: bundled(libxml2) = 2.9.4
# see src/3rdparty/chromium/third_party/libxslt/libxslt/xsltconfig.h for version
# see src/3rdparty/chromium/third_party/libxslt/linux/config.h for version
Provides: bundled(libxslt) = 1.1.29
Provides: bundled(libXNVCtrl) = 302.17
Provides: bundled(libyuv) = 1634
Provides: bundled(libyuv) = 1658
Provides: bundled(modp_b64)
Provides: bundled(mojo)
# headers only
Provides: bundled(npapi)
Provides: bundled(openmax_dl) = 1.0.2
Provides: bundled(ots)
# see src/3rdparty/chromium/third_party/protobuf/CHANGES.txt for the version
@ -271,12 +258,14 @@ Provides: bundled(sfntly)
Provides: bundled(skia)
# bundled as "smhasher"
Provides: bundled(SMHasher) = 0-0.1.svn147
Provides: bundled(sqlite) = 3.10.2
Provides: bundled(sqlite) = 3.20
Provides: bundled(usrsctp)
Provides: bundled(webrtc) = 90
%ifarch %{ix86} x86_64
# bundled by ffmpeg and libvpx:
# header (for assembly) only
Provides: bundled(x86inc) = 0
Provides: bundled(x86inc)
%endif
# Bundled in src/3rdparty/chromium/base/third_party:
@ -305,8 +294,9 @@ Provides: bundled(mozilla_security_manager) = 1.9.2
Provides: bundled(nsURLParsers)
# Bundled outside of third_party, apparently not considered as such by Chromium:
Provides: bundled(mojo)
# see src/3rdparty/chromium/v8/include/v8_version.h for the version number
Provides: bundled(v8) = 5.6.326.55
Provides: bundled(v8) = 6.1.534.44
# bundled by v8 (src/3rdparty/chromium/v8/src/base/ieee754.cc)
# The version number is 5.3, the last version that upstream released, years ago:
# http://www.netlib.org/fdlibm/readme
@ -351,7 +341,7 @@ BuildArch: noarch
%prep
%setup -q -n %{qt_module}-opensource-src-%{version}%{?prerelease:-%{prerelease}}
%setup -q -n %{qt_module}-everywhere-src-%{version}%{?prerelease:-%{prerelease}}
%patch0 -p1 -b .linux-pri
%patch1 -p1 -b .no-icudtl-dat
%patch2 -p1 -b .fix-extractcflag
@ -366,7 +356,6 @@ BuildArch: noarch
%patch11 -p1 -b .skia-neon
%patch12 -p1 -b .webrtc-neon-detect
%patch21 -p1 -b .gn-bootstrap-verbose
%patch22 -p1 -b .qt57
%patch100 -p1 -b .no-aspirational-scripts
# fix // in #include in content/renderer/gpu to avoid debugedit failure
sed -i -e 's!gpu//!gpu/!g' \
@ -417,7 +406,7 @@ mkdir %{_target_platform}
pushd %{_target_platform}
%{qmake_qt5} CONFIG+="%{debug_config}" \
WEBENGINE_CONFIG+="use_system_icu use_system_re2 use_spellchecker" ..
QMAKE_EXTRA_ARGS+="-system-webengine-icu" ..
make %{?_smp_mflags}
@ -573,6 +562,19 @@ done
%changelog
* Mon Dec 25 2017 Kevin Kofler <Kevin@tigcc.ticalc.org> - 5.10.0-1
- Update to 5.10.0
- Update version numbers of bundled stuff
- Drop support for Fedora < 26 (in particular, WEBENGINE_CONFIG F25 workarounds)
- Drop qt57 patch, support for Qt 5.7 was completely dropped upstream
- Update get_free_ffmpeg_source_files.py from Fedora Chromium packaging
- clean_qtwebengine.sh: Update for the changed tarball naming scheme
- Use QMAKE_EXTRA_ARGS instead of the removed WEBENGINE_CONFIG
- Rebase linux-pri, system-nspr-prtime, system-icu-utf, no-sse2, skia-neon and
gn-bootstrap-verbose patches
- In particular, restore the removed V8 x87 backend in the no-sse2 patch
- Re-backport no-aspirational-scripts from upstream (undo 5.9 backport)
* Tue Dec 19 2017 Rex Dieter <rdieter@fedoraproject.org> - 5.9.3-5
- properly escape newline in lesser_version hack

View File

@ -0,0 +1,12 @@
diff -ur qtwebengine-everywhere-src-5.10.0/src/buildtools/gn.pro qtwebengine-everywhere-src-5.10.0-gn-bootstrap-verbose/src/buildtools/gn.pro
--- qtwebengine-everywhere-src-5.10.0/src/buildtools/gn.pro 2017-11-29 09:42:29.000000000 +0100
+++ qtwebengine-everywhere-src-5.10.0-gn-bootstrap-verbose/src/buildtools/gn.pro 2017-12-25 18:51:46.953799125 +0100
@@ -25,7 +25,7 @@
gn_args = $$replace(gn_args, "use_incremental_linking=true ", "")
}
- gn_configure = $$system_quote($$gn_bootstrap) --shadow --gn-gen-args=$$gn_args $$ninja_path
+ gn_configure = $$system_quote($$gn_bootstrap) --verbose --shadow --gn-gen-args=$$gn_args $$ninja_path
!system("cd $$system_quote($$system_path($$dirname(out))) && $$pythonPathForSystem() $$gn_configure") {
error("GN build error!")
}

View File

@ -1,9 +1,9 @@
diff -up qtwebengine-opensource-src-5.9.2/src/core/config/linux.pri.linux-pri qtwebengine-opensource-src-5.9.2/src/core/config/linux.pri
--- qtwebengine-opensource-src-5.9.2/src/core/config/linux.pri.linux-pri 2017-10-09 15:08:43.206663093 -0500
+++ qtwebengine-opensource-src-5.9.2/src/core/config/linux.pri 2017-10-09 15:09:52.248208321 -0500
@@ -153,3 +153,19 @@ host_build {
use?(system_re2): gn_args += use_system_re2=true
#use?(system_protobuf): gn_args += use_system_protobuf=true
diff -ur qtwebengine-everywhere-src-5.10.0/src/core/config/linux.pri qtwebengine-everywhere-src-5.10.0-linux-pri/src/core/config/linux.pri
--- qtwebengine-everywhere-src-5.10.0/src/core/config/linux.pri 2017-11-29 09:42:29.000000000 +0100
+++ qtwebengine-everywhere-src-5.10.0-linux-pri/src/core/config/linux.pri 2017-12-25 12:07:40.262411459 +0100
@@ -157,3 +157,19 @@
#qtConfig(webengine-system-jsoncpp): gn_args += use_system_jsoncpp=true
#qtConfig(webengine-system-libsrtp: gn_args += use_system_libsrtp=true
}
+
+# yasm is only used on x86, and passing use_system_yasm makes the build fail on

View File

@ -0,0 +1,86 @@
diff -ur qtwebengine-everywhere-src-5.10.0/src/3rdparty/chromium/components/url_formatter/idn_spoof_checker.cc qtwebengine-everywhere-src-5.10.0-no-aspirational-scripts/src/3rdparty/chromium/components/url_formatter/idn_spoof_checker.cc
--- qtwebengine-everywhere-src-5.10.0/src/3rdparty/chromium/components/url_formatter/idn_spoof_checker.cc 2017-11-28 14:06:53.000000000 +0100
+++ qtwebengine-everywhere-src-5.10.0-no-aspirational-scripts/src/3rdparty/chromium/components/url_formatter/idn_spoof_checker.cc 2017-12-25 19:38:17.621271052 +0100
@@ -331,39 +331,6 @@
const icu::UnicodeSet* inclusion_set = uspoof_getInclusionUnicodeSet(status);
allowed_set.addAll(*inclusion_set);
-// Five aspirational scripts are taken from UTR 31 Table 6 at
-// http://www.unicode.org/reports/tr31/#Aspirational_Use_Scripts .
-// Not all the characters of aspirational scripts are suitable for
-// identifiers. Therefore, only characters belonging to
-// [:Identifier_Type=Aspirational:] (listed in 'Status/Type=Aspirational'
-// section at
-// http://www.unicode.org/Public/security/latest/xidmodifications.txt) are
-// are added to the allowed set. The list has to be updated when a new
-// version of Unicode is released. The current version is 9.0.0 and ICU 60
-// will have Unicode 10.0 data.
-#if U_ICU_VERSION_MAJOR_NUM < 60
- const icu::UnicodeSet aspirational_scripts(
- icu::UnicodeString(
- // Unified Canadian Syllabics
- "[\\u1401-\\u166C\\u166F-\\u167F"
- // Mongolian
- "\\u1810-\\u1819\\u1820-\\u1877\\u1880-\\u18AA"
- // Unified Canadian Syllabics
- "\\u18B0-\\u18F5"
- // Tifinagh
- "\\u2D30-\\u2D67\\u2D7F"
- // Yi
- "\\uA000-\\uA48C"
- // Miao
- "\\U00016F00-\\U00016F44\\U00016F50-\\U00016F7E"
- "\\U00016F8F-\\U00016F9F]",
- -1, US_INV),
- *status);
- allowed_set.addAll(aspirational_scripts);
-#else
-#error "Update aspirational_scripts per Unicode 10.0"
-#endif
-
// The sections below refer to Mozilla's IDN blacklist:
// http://kb.mozillazine.org/Network.IDN.blacklist_chars
//
diff -ur qtwebengine-everywhere-src-5.10.0/src/3rdparty/chromium/components/url_formatter/url_formatter_unittest.cc qtwebengine-everywhere-src-5.10.0-no-aspirational-scripts/src/3rdparty/chromium/components/url_formatter/url_formatter_unittest.cc
--- qtwebengine-everywhere-src-5.10.0/src/3rdparty/chromium/components/url_formatter/url_formatter_unittest.cc 2017-11-28 14:06:53.000000000 +0100
+++ qtwebengine-everywhere-src-5.10.0-no-aspirational-scripts/src/3rdparty/chromium/components/url_formatter/url_formatter_unittest.cc 2017-12-25 19:38:17.621271052 +0100
@@ -132,22 +132,24 @@
{"xn---123-kbjl2j0bl2k.in", L"\x0939\x093f\x0928\x094d\x0926\x0940-123.in",
true},
- // 5 Aspirational scripts
+ // What used to be 5 Aspirational scripts in the earlier versions of UAX 31.
+ // UAX 31 does not define aspirational scripts any more.
+ // See http://www.unicode.org/reports/tr31/#Aspirational_Use_Scripts .
// Unifieid Canadian Syllabary
- {"xn--dfe0tte.ca", L"\x1456\x14c2\x14ef.ca", true},
+ {"xn--dfe0tte.ca", L"\x1456\x14c2\x14ef.ca", false},
// Tifinagh
{"xn--4ljxa2bb4a6bxb.ma", L"\x2d5c\x2d49\x2d3c\x2d49\x2d4f\x2d30\x2d56.ma",
- true},
+ false},
// Tifinagh with a disallowed character(U+2D6F)
{"xn--hmjzaby5d5f.ma", L"\x2d5c\x2d49\x2d3c\x2d6f\x2d49\x2d4f.ma", false},
// Yi
- {"xn--4o7a6e1x64c.cn", L"\xa188\xa320\xa071\xa0b7.cn", true},
+ {"xn--4o7a6e1x64c.cn", L"\xa188\xa320\xa071\xa0b7.cn", false},
// Mongolian - 'ordu' (place, camp)
- {"xn--56ec8bp.cn", L"\x1823\x1837\x1833\x1824.cn", true},
+ {"xn--56ec8bp.cn", L"\x1823\x1837\x1833\x1824.cn", false},
// Mongolian with a disallowed character
{"xn--95e5de3ds.cn", L"\x1823\x1837\x1804\x1833\x1824.cn", false},
// Miao/Pollad
- {"xn--2u0fpf0a.cn", L"\U00016f04\U00016f62\U00016f59.cn", true},
+ {"xn--2u0fpf0a.cn", L"\U00016f04\U00016f62\U00016f59.cn", false},
// Script mixing tests
// The following script combinations are allowed.
@@ -606,7 +608,7 @@
L"a\x144a"
L"b.com",
false},
- {"xn--xcec9s.com", L"\x1401\x144a\x1402.com", true},
+ {"xn--xcec9s.com", L"\x1401\x144a\x1402.com", false},
// Custom dangerous patterns
// Two Katakana-Hiragana combining mark in a row

File diff suppressed because it is too large Load Diff

View File

@ -1,32 +1,32 @@
diff -Nur qtwebengine-opensource-src-5.9.0/src/3rdparty/chromium/skia/BUILD.gn qtwebengine-opensource-src-5.9.0-skia-neon/src/3rdparty/chromium/skia/BUILD.gn
--- qtwebengine-opensource-src-5.9.0/src/3rdparty/chromium/skia/BUILD.gn 2017-05-18 16:51:44.000000000 +0200
+++ qtwebengine-opensource-src-5.9.0-skia-neon/src/3rdparty/chromium/skia/BUILD.gn 2017-06-12 12:59:26.707922417 +0200
@@ -486,6 +486,24 @@
diff -Nur qtwebengine-everywhere-src-5.10.0/src/3rdparty/chromium/skia/BUILD.gn qtwebengine-everywhere-src-5.10.0-skia-neon/src/3rdparty/chromium/skia/BUILD.gn
--- qtwebengine-everywhere-src-5.10.0/src/3rdparty/chromium/skia/BUILD.gn 2017-11-28 14:06:53.000000000 +0100
+++ qtwebengine-everywhere-src-5.10.0-skia-neon/src/3rdparty/chromium/skia/BUILD.gn 2017-12-25 18:31:12.288797893 +0100
@@ -508,6 +508,24 @@
}
# Separated out so it can be compiled with different flags for SSE.
if (!skia_build_no_opts) {
+ if (current_cpu == "arm" && (arm_use_neon || arm_optionally_use_neon)) {
+ source_set("skia_opts_neon") {
+ sources = skia_opts.neon_sources
+ # Root build config sets -mfpu=$arm_fpu, which we expect to be neon
+ # when running this.
+ if (!arm_use_neon) {
+ configs -= [ "//build/config/compiler:compiler_arm_fpu" ]
+ cflags = [ "-mfpu=neon" ]
+ }
+ visibility = [ ":skia_opts" ]
+ configs -= [ "//build/config/compiler:chromium_code" ]
+ configs += [
+ ":skia_config",
+ ":skia_library_config",
+ "//build/config/compiler:no_chromium_code",
+ ]
+if (current_cpu == "arm" && (arm_use_neon || arm_optionally_use_neon)) {
+ source_set("skia_opts_neon") {
+ sources = skia_opts.neon_sources
+ # Root build config sets -mfpu=$arm_fpu, which we expect to be neon
+ # when running this.
+ if (!arm_use_neon) {
+ configs -= [ "//build/config/compiler:compiler_arm_fpu" ]
+ cflags = [ "-mfpu=neon" ]
+ }
+ visibility = [ ":skia_opts" ]
+ configs -= [ "//build/config/compiler:chromium_code" ]
+ configs += [
+ ":skia_config",
+ ":skia_library_config",
+ "//build/config/compiler:no_chromium_code",
+ ]
+ }
if (current_cpu == "arm64") {
source_set("skia_opts_crc32") {
sources = skia_opts.crc32_sources
@@ -624,14 +642,7 @@
+}
if (current_cpu == "arm64") {
source_set("skia_opts_crc32") {
sources = skia_opts.crc32_sources
@@ -644,14 +662,7 @@
if (arm_version >= 7) {
sources = skia_opts.armv7_sources
if (arm_use_neon || arm_optionally_use_neon) {
@ -42,9 +42,9 @@ diff -Nur qtwebengine-opensource-src-5.9.0/src/3rdparty/chromium/skia/BUILD.gn q
}
} else {
sources = skia_opts.none_sources
diff -Nur qtwebengine-opensource-src-5.9.0/src/3rdparty/chromium/third_party/skia/gn/opts.gni qtwebengine-opensource-src-5.9.0-skia-neon/src/3rdparty/chromium/third_party/skia/gn/opts.gni
--- qtwebengine-opensource-src-5.9.0/src/3rdparty/chromium/third_party/skia/gn/opts.gni 2017-05-18 16:51:44.000000000 +0200
+++ qtwebengine-opensource-src-5.9.0-skia-neon/src/3rdparty/chromium/third_party/skia/gn/opts.gni 2017-06-12 12:20:30.277109309 +0200
diff -Nur qtwebengine-everywhere-src-5.10.0/src/3rdparty/chromium/third_party/skia/gn/opts.gni qtwebengine-everywhere-src-5.10.0-skia-neon/src/3rdparty/chromium/third_party/skia/gn/opts.gni
--- qtwebengine-everywhere-src-5.10.0/src/3rdparty/chromium/third_party/skia/gn/opts.gni 2017-11-28 14:06:53.000000000 +0100
+++ qtwebengine-everywhere-src-5.10.0-skia-neon/src/3rdparty/chromium/third_party/skia/gn/opts.gni 2017-12-25 18:29:15.083480322 +0100
@@ -23,6 +23,7 @@
"$_src/opts/SkBitmapProcState_matrixProcs_neon.cpp",
"$_src/opts/SkBlitMask_opts_arm_neon.cpp",
@ -61,10 +61,10 @@ diff -Nur qtwebengine-opensource-src-5.9.0/src/3rdparty/chromium/third_party/ski
]
crc32 = [ "$_src/opts/SkOpts_crc32.cpp" ]
diff -Nur qtwebengine-opensource-src-5.9.0/src/3rdparty/chromium/third_party/skia/src/core/SkBitmapProcState.cpp qtwebengine-opensource-src-5.9.0-skia-neon/src/3rdparty/chromium/third_party/skia/src/core/SkBitmapProcState.cpp
--- qtwebengine-opensource-src-5.9.0/src/3rdparty/chromium/third_party/skia/src/core/SkBitmapProcState.cpp 2017-05-18 16:51:44.000000000 +0200
+++ qtwebengine-opensource-src-5.9.0-skia-neon/src/3rdparty/chromium/third_party/skia/src/core/SkBitmapProcState.cpp 2017-06-12 12:20:30.382107811 +0200
@@ -19,7 +19,7 @@
diff -Nur qtwebengine-everywhere-src-5.10.0/src/3rdparty/chromium/third_party/skia/src/core/SkBitmapProcState.cpp qtwebengine-everywhere-src-5.10.0-skia-neon/src/3rdparty/chromium/third_party/skia/src/core/SkBitmapProcState.cpp
--- qtwebengine-everywhere-src-5.10.0/src/3rdparty/chromium/third_party/skia/src/core/SkBitmapProcState.cpp 2017-11-28 14:06:53.000000000 +0100
+++ qtwebengine-everywhere-src-5.10.0-skia-neon/src/3rdparty/chromium/third_party/skia/src/core/SkBitmapProcState.cpp 2017-12-25 18:29:22.449374588 +0100
@@ -17,7 +17,7 @@
#include "SkImageEncoder.h"
#include "SkResourceCache.h"
@ -72,9 +72,9 @@ diff -Nur qtwebengine-opensource-src-5.9.0/src/3rdparty/chromium/third_party/ski
+#if !SK_ARM_NEON_IS_NONE
// These are defined in src/opts/SkBitmapProcState_arm_neon.cpp
extern const SkBitmapProcState::SampleProc32 gSkBitmapProcStateSample32_neon[];
extern void S16_D16_filter_DX_neon(const SkBitmapProcState&, const uint32_t*, int, uint16_t*);
@@ -280,7 +280,7 @@
return false;
#endif
@@ -212,7 +212,7 @@
index |= 4;
}
-#if !defined(SK_ARM_HAS_NEON)
@ -82,10 +82,10 @@ diff -Nur qtwebengine-opensource-src-5.9.0/src/3rdparty/chromium/third_party/ski
static const SampleProc32 gSkBitmapProcStateSample32[] = {
S32_opaque_D32_nofilter_DXDY,
S32_alpha_D32_nofilter_DXDY,
diff -Nur qtwebengine-opensource-src-5.9.0/src/3rdparty/chromium/third_party/skia/src/core/SkBitmapProcState_matrixProcs.cpp qtwebengine-opensource-src-5.9.0-skia-neon/src/3rdparty/chromium/third_party/skia/src/core/SkBitmapProcState_matrixProcs.cpp
--- qtwebengine-opensource-src-5.9.0/src/3rdparty/chromium/third_party/skia/src/core/SkBitmapProcState_matrixProcs.cpp 2017-05-18 16:51:44.000000000 +0200
+++ qtwebengine-opensource-src-5.9.0-skia-neon/src/3rdparty/chromium/third_party/skia/src/core/SkBitmapProcState_matrixProcs.cpp 2017-06-12 12:20:30.448106869 +0200
@@ -47,16 +47,16 @@
diff -Nur qtwebengine-everywhere-src-5.10.0/src/3rdparty/chromium/third_party/skia/src/core/SkBitmapProcState_matrixProcs.cpp qtwebengine-everywhere-src-5.10.0-skia-neon/src/3rdparty/chromium/third_party/skia/src/core/SkBitmapProcState_matrixProcs.cpp
--- qtwebengine-everywhere-src-5.10.0/src/3rdparty/chromium/third_party/skia/src/core/SkBitmapProcState_matrixProcs.cpp 2017-11-28 14:06:53.000000000 +0100
+++ qtwebengine-everywhere-src-5.10.0-skia-neon/src/3rdparty/chromium/third_party/skia/src/core/SkBitmapProcState_matrixProcs.cpp 2017-12-25 18:34:09.229257992 +0100
@@ -46,16 +46,16 @@
///////////////////////////////////////////////////////////////////////////////
// Compile neon code paths if needed
@ -102,52 +102,13 @@ diff -Nur qtwebengine-opensource-src-5.9.0/src/3rdparty/chromium/third_party/ski
// Compile non-neon code path if needed
-#if !defined(SK_ARM_HAS_NEON)
+#if !SK_ARM_NEON_IS_ALWAYS
#define MAKENAME(suffix) ClampX_ClampY ## suffix
#define TILEX_PROCF(fx, max) SkClampMax((fx) >> 16, max)
#define TILEY_PROCF(fy, max) SkClampMax((fy) >> 16, max)
diff -Nur qtwebengine-opensource-src-5.9.0/src/3rdparty/chromium/third_party/skia/src/core/SkBlitter_RGB16.cpp qtwebengine-opensource-src-5.9.0-skia-neon/src/3rdparty/chromium/third_party/skia/src/core/SkBlitter_RGB16.cpp
--- qtwebengine-opensource-src-5.9.0/src/3rdparty/chromium/third_party/skia/src/core/SkBlitter_RGB16.cpp 2017-05-18 16:51:44.000000000 +0200
+++ qtwebengine-opensource-src-5.9.0-skia-neon/src/3rdparty/chromium/third_party/skia/src/core/SkBlitter_RGB16.cpp 2017-06-12 12:20:30.449106855 +0200
@@ -20,7 +20,7 @@
uint32_t expanded32, unsigned maskRB);
#endif
-#if defined(SK_ARM_HAS_NEON) && defined(SK_CPU_LENDIAN)
+#if SK_ARM_NEON_IS_ALWAYS && defined(SK_CPU_LENDIAN)
#include <arm_neon.h>
extern void SkRGB16BlitterBlitV_neon(uint16_t* device,
int height,
@@ -381,7 +381,7 @@
unsigned maskRB = mask.fRowBytes - width;
uint32_t expanded32 = fExpandedRaw16;
-#if defined(SK_ARM_HAS_NEON) && defined(SK_CPU_LENDIAN)
+#if SK_ARM_NEON_IS_ALWAYS && defined(SK_CPU_LENDIAN)
#define UNROLL 8
do {
int w = width;
@@ -475,7 +475,7 @@
unsigned scale5 = SkAlpha255To256(alpha) >> 3;
uint32_t src32 = fExpandedRaw16 * scale5;
scale5 = 32 - scale5;
-#if defined(SK_ARM_HAS_NEON) && defined(SK_CPU_LENDIAN)
+#if SK_ARM_NEON_IS_ALWAYS && defined(SK_CPU_LENDIAN)
SkRGB16BlitterBlitV_neon(device, height, deviceRB, scale5, src32);
#else
do {
@@ -654,7 +654,7 @@
unsigned scale5 = SkAlpha255To256(alpha) * fScale >> (8 + 3);
uint32_t src32 = fExpandedRaw16 * scale5;
scale5 = 32 - scale5;
-#if defined(SK_ARM_HAS_NEON) && defined(SK_CPU_LENDIAN)
+#if SK_ARM_NEON_IS_ALWAYS && defined(SK_CPU_LENDIAN)
SkRGB16BlitterBlitV_neon(device, height, deviceRB, scale5, src32);
#else
do {
diff -Nur qtwebengine-opensource-src-5.9.0/src/3rdparty/chromium/third_party/skia/src/core/SkCpu.cpp qtwebengine-opensource-src-5.9.0-skia-neon/src/3rdparty/chromium/third_party/skia/src/core/SkCpu.cpp
--- qtwebengine-opensource-src-5.9.0/src/3rdparty/chromium/third_party/skia/src/core/SkCpu.cpp 2017-05-18 16:51:44.000000000 +0200
+++ qtwebengine-opensource-src-5.9.0-skia-neon/src/3rdparty/chromium/third_party/skia/src/core/SkCpu.cpp 2017-06-12 12:20:30.449106855 +0200
@@ -73,6 +73,124 @@
#define MAKENAME(suffix) ClampX_ClampY ## suffix
#define TILEX_PROCF(fx, max) SkClampMax((fx) >> 16, max)
#define TILEY_PROCF(fy, max) SkClampMax((fy) >> 16, max)
diff -Nur qtwebengine-everywhere-src-5.10.0/src/3rdparty/chromium/third_party/skia/src/core/SkCpu.cpp qtwebengine-everywhere-src-5.10.0-skia-neon/src/3rdparty/chromium/third_party/skia/src/core/SkCpu.cpp
--- qtwebengine-everywhere-src-5.10.0/src/3rdparty/chromium/third_party/skia/src/core/SkCpu.cpp 2017-11-28 14:06:53.000000000 +0100
+++ qtwebengine-everywhere-src-5.10.0-skia-neon/src/3rdparty/chromium/third_party/skia/src/core/SkCpu.cpp 2017-12-25 18:37:45.974144769 +0100
@@ -74,6 +74,124 @@
return features;
}
@ -269,23 +230,23 @@ diff -Nur qtwebengine-opensource-src-5.9.0/src/3rdparty/chromium/third_party/ski
+ return features;
+ }
+
#elif defined(SK_CPU_ARM64) && \
defined(SK_BUILD_FOR_ANDROID) && \
!defined(SK_BUILD_FOR_ANDROID_FRAMEWORK)
diff -Nur qtwebengine-opensource-src-5.9.0/src/3rdparty/chromium/third_party/skia/src/core/SkOpts.cpp qtwebengine-opensource-src-5.9.0-skia-neon/src/3rdparty/chromium/third_party/skia/src/core/SkOpts.cpp
--- qtwebengine-opensource-src-5.9.0/src/3rdparty/chromium/third_party/skia/src/core/SkOpts.cpp 2017-05-18 16:51:44.000000000 +0200
+++ qtwebengine-opensource-src-5.9.0-skia-neon/src/3rdparty/chromium/third_party/skia/src/core/SkOpts.cpp 2017-06-12 12:20:30.449106855 +0200
@@ -99,6 +99,7 @@
#elif defined(SK_CPU_ARM64) && __has_include(<sys/auxv.h>)
#include <sys/auxv.h>
diff -Nur qtwebengine-everywhere-src-5.10.0/src/3rdparty/chromium/third_party/skia/src/core/SkOpts.cpp qtwebengine-everywhere-src-5.10.0-skia-neon/src/3rdparty/chromium/third_party/skia/src/core/SkOpts.cpp
--- qtwebengine-everywhere-src-5.10.0/src/3rdparty/chromium/third_party/skia/src/core/SkOpts.cpp 2017-11-28 14:06:53.000000000 +0100
+++ qtwebengine-everywhere-src-5.10.0-skia-neon/src/3rdparty/chromium/third_party/skia/src/core/SkOpts.cpp 2017-12-25 18:34:52.777632875 +0100
@@ -95,6 +95,7 @@
void Init_sse42();
void Init_avx();
void Init_hsw();
void Init_crc32();
+ void Init_neon();
static void init() {
#if !defined(SK_BUILD_NO_OPTS)
@@ -109,6 +110,9 @@
@@ -104,6 +105,9 @@
if (SkCpu::Supports(SkCpu::SSE42)) { Init_sse42(); }
if (SkCpu::Supports(SkCpu::AVX )) { Init_avx(); }
if (SkCpu::Supports(SkCpu::HSW )) { Init_hsw(); }
+ #elif defined(SK_CPU_ARM32)
+ if (SkCpu::Supports(SkCpu::NEON)) { Init_neon(); }
@ -293,9 +254,9 @@ diff -Nur qtwebengine-opensource-src-5.9.0/src/3rdparty/chromium/third_party/ski
#elif defined(SK_CPU_ARM64)
if (SkCpu::Supports(SkCpu::CRC32)) { Init_crc32(); }
diff -Nur qtwebengine-opensource-src-5.9.0/src/3rdparty/chromium/third_party/skia/src/core/SkUtilsArm.h qtwebengine-opensource-src-5.9.0-skia-neon/src/3rdparty/chromium/third_party/skia/src/core/SkUtilsArm.h
--- qtwebengine-opensource-src-5.9.0/src/3rdparty/chromium/third_party/skia/src/core/SkUtilsArm.h 2017-05-18 16:51:44.000000000 +0200
+++ qtwebengine-opensource-src-5.9.0-skia-neon/src/3rdparty/chromium/third_party/skia/src/core/SkUtilsArm.h 2017-06-12 12:20:30.450106841 +0200
diff -Nur qtwebengine-everywhere-src-5.10.0/src/3rdparty/chromium/third_party/skia/src/core/SkUtilsArm.h qtwebengine-everywhere-src-5.10.0-skia-neon/src/3rdparty/chromium/third_party/skia/src/core/SkUtilsArm.h
--- qtwebengine-everywhere-src-5.10.0/src/3rdparty/chromium/third_party/skia/src/core/SkUtilsArm.h 2017-11-28 14:06:53.000000000 +0100
+++ qtwebengine-everywhere-src-5.10.0-skia-neon/src/3rdparty/chromium/third_party/skia/src/core/SkUtilsArm.h 2017-12-25 18:34:52.777632875 +0100
@@ -8,12 +8,75 @@
#ifndef SkUtilsArm_DEFINED
#define SkUtilsArm_DEFINED
@ -376,9 +337,9 @@ diff -Nur qtwebengine-opensource-src-5.9.0/src/3rdparty/chromium/third_party/ski
#endif
#endif // SkUtilsArm_DEFINED
diff -Nur qtwebengine-opensource-src-5.9.0/src/3rdparty/chromium/third_party/skia/src/opts/SkOpts_neon.cpp qtwebengine-opensource-src-5.9.0-skia-neon/src/3rdparty/chromium/third_party/skia/src/opts/SkOpts_neon.cpp
--- qtwebengine-opensource-src-5.9.0/src/3rdparty/chromium/third_party/skia/src/opts/SkOpts_neon.cpp 1970-01-01 01:00:00.000000000 +0100
+++ qtwebengine-opensource-src-5.9.0-skia-neon/src/3rdparty/chromium/third_party/skia/src/opts/SkOpts_neon.cpp 2017-06-12 12:20:30.450106841 +0200
diff -Nur qtwebengine-everywhere-src-5.10.0/src/3rdparty/chromium/third_party/skia/src/opts/SkOpts_neon.cpp qtwebengine-everywhere-src-5.10.0-skia-neon/src/3rdparty/chromium/third_party/skia/src/opts/SkOpts_neon.cpp
--- qtwebengine-everywhere-src-5.10.0/src/3rdparty/chromium/third_party/skia/src/opts/SkOpts_neon.cpp 1970-01-01 01:00:00.000000000 +0100
+++ qtwebengine-everywhere-src-5.10.0-skia-neon/src/3rdparty/chromium/third_party/skia/src/opts/SkOpts_neon.cpp 2017-12-25 18:34:52.850631826 +0100
@@ -0,0 +1,54 @@
+/*
+ * Copyright 2015 Google Inc.

View File

@ -1,18 +1,18 @@
diff -ur qtwebengine-opensource-src-5.9.0-system-nspr-prtime/src/3rdparty/chromium/base/BUILD.gn qtwebengine-opensource-src-5.9.0-system-icu-utf/src/3rdparty/chromium/base/BUILD.gn
--- qtwebengine-opensource-src-5.9.0-system-nspr-prtime/src/3rdparty/chromium/base/BUILD.gn 2017-06-08 10:52:51.565409865 +0200
+++ qtwebengine-opensource-src-5.9.0-system-icu-utf/src/3rdparty/chromium/base/BUILD.gn 2017-06-08 11:13:47.297983554 +0200
@@ -834,8 +834,6 @@
diff -ur qtwebengine-everywhere-src-5.10.0-system-nspr-prtime/src/3rdparty/chromium/base/BUILD.gn qtwebengine-everywhere-src-5.10.0-system-icu-utf/src/3rdparty/chromium/base/BUILD.gn
--- qtwebengine-everywhere-src-5.10.0-system-nspr-prtime/src/3rdparty/chromium/base/BUILD.gn 2017-12-25 12:16:23.250517752 +0100
+++ qtwebengine-everywhere-src-5.10.0-system-icu-utf/src/3rdparty/chromium/base/BUILD.gn 2017-12-25 12:26:21.502411527 +0100
@@ -859,8 +859,6 @@
"third_party/dmg_fp/dmg_fp.h",
"third_party/dmg_fp/dtoa_wrapper.cc",
"third_party/dmg_fp/g_fmt.cc",
- "third_party/icu/icu_utf.cc",
- "third_party/icu/icu_utf.h",
"third_party/superfasthash/superfasthash.c",
"threading/non_thread_safe.h",
"threading/non_thread_safe_impl.cc",
diff -ur qtwebengine-opensource-src-5.9.0-system-nspr-prtime/src/3rdparty/chromium/base/files/file_path.cc qtwebengine-opensource-src-5.9.0-system-icu-utf/src/3rdparty/chromium/base/files/file_path.cc
--- qtwebengine-opensource-src-5.9.0-system-nspr-prtime/src/3rdparty/chromium/base/files/file_path.cc 2017-05-18 16:51:44.000000000 +0200
+++ qtwebengine-opensource-src-5.9.0-system-icu-utf/src/3rdparty/chromium/base/files/file_path.cc 2017-06-08 11:02:19.933803953 +0200
"third_party/valgrind/memcheck.h",
"threading/platform_thread.h",
diff -ur qtwebengine-everywhere-src-5.10.0-system-nspr-prtime/src/3rdparty/chromium/base/files/file_path.cc qtwebengine-everywhere-src-5.10.0-system-icu-utf/src/3rdparty/chromium/base/files/file_path.cc
--- qtwebengine-everywhere-src-5.10.0-system-nspr-prtime/src/3rdparty/chromium/base/files/file_path.cc 2017-11-28 14:06:53.000000000 +0100
+++ qtwebengine-everywhere-src-5.10.0-system-icu-utf/src/3rdparty/chromium/base/files/file_path.cc 2017-12-25 12:26:21.503411511 +0100
@@ -18,7 +18,7 @@
#if defined(OS_MACOSX)
@ -22,7 +22,7 @@ diff -ur qtwebengine-opensource-src-5.9.0-system-nspr-prtime/src/3rdparty/chromi
#endif
#if defined(OS_WIN)
@@ -1156,9 +1156,9 @@
@@ -1163,9 +1163,9 @@
int* index) {
int codepoint = 0;
while (*index < length && codepoint == 0) {
@ -34,9 +34,9 @@ diff -ur qtwebengine-opensource-src-5.9.0-system-nspr-prtime/src/3rdparty/chromi
DCHECK_GT(codepoint, 0);
if (codepoint > 0) {
// Check if there is a subtable for this upper byte.
diff -ur qtwebengine-opensource-src-5.9.0-system-nspr-prtime/src/3rdparty/chromium/base/json/json_parser.cc qtwebengine-opensource-src-5.9.0-system-icu-utf/src/3rdparty/chromium/base/json/json_parser.cc
--- qtwebengine-opensource-src-5.9.0-system-nspr-prtime/src/3rdparty/chromium/base/json/json_parser.cc 2017-05-18 16:51:44.000000000 +0200
+++ qtwebengine-opensource-src-5.9.0-system-icu-utf/src/3rdparty/chromium/base/json/json_parser.cc 2017-06-08 11:05:52.045814002 +0200
diff -ur qtwebengine-everywhere-src-5.10.0-system-nspr-prtime/src/3rdparty/chromium/base/json/json_parser.cc qtwebengine-everywhere-src-5.10.0-system-icu-utf/src/3rdparty/chromium/base/json/json_parser.cc
--- qtwebengine-everywhere-src-5.10.0-system-nspr-prtime/src/3rdparty/chromium/base/json/json_parser.cc 2017-11-28 14:06:53.000000000 +0100
+++ qtwebengine-everywhere-src-5.10.0-system-icu-utf/src/3rdparty/chromium/base/json/json_parser.cc 2017-12-25 12:29:56.210138445 +0100
@@ -16,7 +16,7 @@
#include "base/strings/stringprintf.h"
#include "base/strings/utf_string_conversion_utils.h"
@ -46,9 +46,9 @@ diff -ur qtwebengine-opensource-src-5.9.0-system-nspr-prtime/src/3rdparty/chromi
#include "base/values.h"
namespace base {
@@ -630,21 +630,21 @@
while (CanConsume(1)) {
@@ -482,14 +482,14 @@
// string character and the terminating closing quote.
while (CanConsume(2)) {
int start_index = index_;
- pos_ = start_pos_ + index_; // CBU8_NEXT is postcrement.
- CBU8_NEXT(start_pos_, index_, length, next_char);
@ -62,17 +62,18 @@ diff -ur qtwebengine-opensource-src-5.9.0-system-nspr-prtime/src/3rdparty/chromi
- CBU8_NEXT(start_pos_, start_index, length, next_char);
+ U8_NEXT(start_pos_, start_index, length, next_char);
string.Convert();
string.AppendString(kUnicodeReplacementString);
continue;
string.AppendString(kUnicodeReplacementString,
arraysize(kUnicodeReplacementString) - 1);
@@ -497,7 +497,7 @@
}
if (next_char == '"') {
- --index_; // Rewind by one because of CBU8_NEXT.
+ --index_; // Rewind by one because of U8_NEXT.
out->Swap(&string);
*out = std::move(string);
return true;
}
@@ -774,10 +774,10 @@
@@ -633,10 +633,10 @@
// If this is a high surrogate, consume the next code unit to get the
// low surrogate.
@ -85,7 +86,7 @@ diff -ur qtwebengine-opensource-src-5.9.0-system-nspr-prtime/src/3rdparty/chromi
return false;
// Make sure that the token has more characters to consume the
@@ -794,24 +794,24 @@
@@ -653,20 +653,20 @@
NextNChars(3);
@ -107,15 +108,19 @@ diff -ur qtwebengine-opensource-src-5.9.0-system-nspr-prtime/src/3rdparty/chromi
// Not a surrogate.
- DCHECK(CBU16_IS_SINGLE(code_unit16_high));
+ DCHECK(U16_IS_SINGLE(code_unit16_high));
if (!IsValidCharacter(code_unit16_high))
return false;
if (!IsValidCharacter(code_unit16_high)) {
if ((options_ & JSON_REPLACE_INVALID_CHARACTERS) == 0) {
return false;
@@ -675,7 +675,7 @@
return true;
}
- CBU8_APPEND_UNSAFE(code_unit8, offset, code_unit16_high);
+ U8_APPEND_UNSAFE(code_unit8, offset, code_unit16_high);
}
dest_string->append(code_unit8);
@@ -828,9 +828,9 @@
dest_string->append(code_unit8, offset);
@@ -692,9 +692,9 @@
} else {
char utf8_units[4] = { 0 };
int offset = 0;
@ -125,11 +130,11 @@ diff -ur qtwebengine-opensource-src-5.9.0-system-nspr-prtime/src/3rdparty/chromi
- // CBU8_APPEND_UNSAFE can overwrite up to 4 bytes, so utf8_units may not be
+ // U8_APPEND_UNSAFE can overwrite up to 4 bytes, so utf8_units may not be
// zero terminated at this point. |offset| contains the correct length.
dest->AppendString(std::string(utf8_units, offset));
dest->AppendString(utf8_units, offset);
}
diff -ur qtwebengine-opensource-src-5.9.0-system-nspr-prtime/src/3rdparty/chromium/base/json/string_escape.cc qtwebengine-opensource-src-5.9.0-system-icu-utf/src/3rdparty/chromium/base/json/string_escape.cc
--- qtwebengine-opensource-src-5.9.0-system-nspr-prtime/src/3rdparty/chromium/base/json/string_escape.cc 2017-05-18 16:51:44.000000000 +0200
+++ qtwebengine-opensource-src-5.9.0-system-icu-utf/src/3rdparty/chromium/base/json/string_escape.cc 2017-06-08 11:02:19.934803939 +0200
diff -ur qtwebengine-everywhere-src-5.10.0-system-nspr-prtime/src/3rdparty/chromium/base/json/string_escape.cc qtwebengine-everywhere-src-5.10.0-system-icu-utf/src/3rdparty/chromium/base/json/string_escape.cc
--- qtwebengine-everywhere-src-5.10.0-system-nspr-prtime/src/3rdparty/chromium/base/json/string_escape.cc 2017-11-28 14:06:53.000000000 +0100
+++ qtwebengine-everywhere-src-5.10.0-system-icu-utf/src/3rdparty/chromium/base/json/string_escape.cc 2017-12-25 12:36:34.186118210 +0100
@@ -14,7 +14,7 @@
#include "base/strings/stringprintf.h"
#include "base/strings/utf_string_conversion_utils.h"
@ -139,9 +144,18 @@ diff -ur qtwebengine-opensource-src-5.9.0-system-nspr-prtime/src/3rdparty/chromi
namespace base {
diff -ur qtwebengine-opensource-src-5.9.0-system-nspr-prtime/src/3rdparty/chromium/base/strings/pattern.cc qtwebengine-opensource-src-5.9.0-system-icu-utf/src/3rdparty/chromium/base/strings/pattern.cc
--- qtwebengine-opensource-src-5.9.0-system-nspr-prtime/src/3rdparty/chromium/base/strings/pattern.cc 2017-05-18 16:51:44.000000000 +0200
+++ qtwebengine-opensource-src-5.9.0-system-icu-utf/src/3rdparty/chromium/base/strings/pattern.cc 2017-06-08 11:02:21.774778002 +0200
@@ -92,7 +92,7 @@
for (int32_t i = 0; i < length; ++i) {
uint32_t code_point;
if (!ReadUnicodeCharacter(str.data(), length, &i, &code_point) ||
- code_point == static_cast<decltype(code_point)>(CBU_SENTINEL) ||
+ code_point == static_cast<decltype(code_point)>(U_SENTINEL) ||
!IsValidCharacter(code_point)) {
code_point = kReplacementCodePoint;
did_replacement = true;
diff -ur qtwebengine-everywhere-src-5.10.0-system-nspr-prtime/src/3rdparty/chromium/base/strings/pattern.cc qtwebengine-everywhere-src-5.10.0-system-icu-utf/src/3rdparty/chromium/base/strings/pattern.cc
--- qtwebengine-everywhere-src-5.10.0-system-nspr-prtime/src/3rdparty/chromium/base/strings/pattern.cc 2017-11-28 14:06:53.000000000 +0100
+++ qtwebengine-everywhere-src-5.10.0-system-icu-utf/src/3rdparty/chromium/base/strings/pattern.cc 2017-12-25 12:26:21.545410871 +0100
@@ -4,13 +4,13 @@
#include "base/strings/pattern.h"
@ -197,9 +211,9 @@ diff -ur qtwebengine-opensource-src-5.9.0-system-nspr-prtime/src/3rdparty/chromi
*p += offset;
return c;
}
diff -ur qtwebengine-opensource-src-5.9.0-system-nspr-prtime/src/3rdparty/chromium/base/strings/string_split.cc qtwebengine-opensource-src-5.9.0-system-icu-utf/src/3rdparty/chromium/base/strings/string_split.cc
--- qtwebengine-opensource-src-5.9.0-system-nspr-prtime/src/3rdparty/chromium/base/strings/string_split.cc 2017-05-18 16:51:44.000000000 +0200
+++ qtwebengine-opensource-src-5.9.0-system-icu-utf/src/3rdparty/chromium/base/strings/string_split.cc 2017-06-08 11:02:21.774778002 +0200
diff -ur qtwebengine-everywhere-src-5.10.0-system-nspr-prtime/src/3rdparty/chromium/base/strings/string_split.cc qtwebengine-everywhere-src-5.10.0-system-icu-utf/src/3rdparty/chromium/base/strings/string_split.cc
--- qtwebengine-everywhere-src-5.10.0-system-nspr-prtime/src/3rdparty/chromium/base/strings/string_split.cc 2017-11-28 14:06:53.000000000 +0100
+++ qtwebengine-everywhere-src-5.10.0-system-icu-utf/src/3rdparty/chromium/base/strings/string_split.cc 2017-12-25 12:26:21.545410871 +0100
@@ -8,7 +8,7 @@
#include "base/logging.h"
@ -209,9 +223,9 @@ diff -ur qtwebengine-opensource-src-5.9.0-system-nspr-prtime/src/3rdparty/chromi
namespace base {
diff -ur qtwebengine-opensource-src-5.9.0-system-nspr-prtime/src/3rdparty/chromium/base/strings/string_util.cc qtwebengine-opensource-src-5.9.0-system-icu-utf/src/3rdparty/chromium/base/strings/string_util.cc
--- qtwebengine-opensource-src-5.9.0-system-nspr-prtime/src/3rdparty/chromium/base/strings/string_util.cc 2017-05-18 16:51:44.000000000 +0200
+++ qtwebengine-opensource-src-5.9.0-system-icu-utf/src/3rdparty/chromium/base/strings/string_util.cc 2017-06-08 11:02:21.775777988 +0200
diff -ur qtwebengine-everywhere-src-5.10.0-system-nspr-prtime/src/3rdparty/chromium/base/strings/string_util.cc qtwebengine-everywhere-src-5.10.0-system-icu-utf/src/3rdparty/chromium/base/strings/string_util.cc
--- qtwebengine-everywhere-src-5.10.0-system-nspr-prtime/src/3rdparty/chromium/base/strings/string_util.cc 2017-11-28 14:06:53.000000000 +0100
+++ qtwebengine-everywhere-src-5.10.0-system-icu-utf/src/3rdparty/chromium/base/strings/string_util.cc 2017-12-25 12:26:21.546410856 +0100
@@ -25,7 +25,7 @@
#include "base/memory/singleton.h"
#include "base/strings/utf_string_conversion_utils.h"
@ -221,7 +235,7 @@ diff -ur qtwebengine-opensource-src-5.9.0-system-nspr-prtime/src/3rdparty/chromi
#include "build/build_config.h"
namespace base {
@@ -357,19 +357,19 @@
@@ -372,19 +372,19 @@
}
DCHECK_LE(byte_size,
static_cast<uint32_t>(std::numeric_limits<int32_t>::max()));
@ -245,7 +259,7 @@ diff -ur qtwebengine-opensource-src-5.9.0-system-nspr-prtime/src/3rdparty/chromi
if (!IsValidCharacter(code_point) ||
!IsValidCodepoint(code_point)) {
char_index = prev - 1;
@@ -522,7 +522,7 @@
@@ -537,7 +537,7 @@
while (char_index < src_len) {
int32_t code_point;
@ -254,9 +268,9 @@ diff -ur qtwebengine-opensource-src-5.9.0-system-nspr-prtime/src/3rdparty/chromi
if (!IsValidCharacter(code_point))
return false;
}
diff -ur qtwebengine-opensource-src-5.9.0-system-nspr-prtime/src/3rdparty/chromium/base/strings/utf_string_conversion_utils.cc qtwebengine-opensource-src-5.9.0-system-icu-utf/src/3rdparty/chromium/base/strings/utf_string_conversion_utils.cc
--- qtwebengine-opensource-src-5.9.0-system-nspr-prtime/src/3rdparty/chromium/base/strings/utf_string_conversion_utils.cc 2017-05-18 16:51:44.000000000 +0200
+++ qtwebengine-opensource-src-5.9.0-system-icu-utf/src/3rdparty/chromium/base/strings/utf_string_conversion_utils.cc 2017-06-08 11:02:21.775777988 +0200
diff -ur qtwebengine-everywhere-src-5.10.0-system-nspr-prtime/src/3rdparty/chromium/base/strings/utf_string_conversion_utils.cc qtwebengine-everywhere-src-5.10.0-system-icu-utf/src/3rdparty/chromium/base/strings/utf_string_conversion_utils.cc
--- qtwebengine-everywhere-src-5.10.0-system-nspr-prtime/src/3rdparty/chromium/base/strings/utf_string_conversion_utils.cc 2017-11-28 14:06:53.000000000 +0100
+++ qtwebengine-everywhere-src-5.10.0-system-icu-utf/src/3rdparty/chromium/base/strings/utf_string_conversion_utils.cc 2017-12-25 12:26:21.546410856 +0100
@@ -4,7 +4,7 @@
#include "base/strings/utf_string_conversion_utils.h"
@ -335,30 +349,81 @@ diff -ur qtwebengine-opensource-src-5.9.0-system-nspr-prtime/src/3rdparty/chromi
}
// Generalized Unicode converter -----------------------------------------------
diff -ur qtwebengine-opensource-src-5.9.0-system-nspr-prtime/src/3rdparty/chromium/tools/gn/bootstrap/bootstrap.py qtwebengine-opensource-src-5.9.0-system-icu-utf/src/3rdparty/chromium/tools/gn/bootstrap/bootstrap.py
--- qtwebengine-opensource-src-5.9.0-system-nspr-prtime/src/3rdparty/chromium/tools/gn/bootstrap/bootstrap.py 2017-06-08 10:55:05.945934291 +0200
+++ qtwebengine-opensource-src-5.9.0-system-icu-utf/src/3rdparty/chromium/tools/gn/bootstrap/bootstrap.py 2017-06-08 11:14:16.956570568 +0200
@@ -472,7 +472,6 @@
diff -ur qtwebengine-everywhere-src-5.10.0-system-nspr-prtime/src/3rdparty/chromium/content/browser/devtools/devtools_io_context.cc qtwebengine-everywhere-src-5.10.0-system-icu-utf/src/3rdparty/chromium/content/browser/devtools/devtools_io_context.cc
--- qtwebengine-everywhere-src-5.10.0-system-nspr-prtime/src/3rdparty/chromium/content/browser/devtools/devtools_io_context.cc 2017-11-28 14:06:53.000000000 +0100
+++ qtwebengine-everywhere-src-5.10.0-system-icu-utf/src/3rdparty/chromium/content/browser/devtools/devtools_io_context.cc 2017-12-25 12:37:08.791629561 +0100
@@ -10,7 +10,7 @@
#include "base/strings/string_number_conversions.h"
#include "base/strings/string_util.h"
#include "base/task_scheduler/post_task.h"
-#include "base/third_party/icu/icu_utf.h"
+#include <unicode/utf.h>
#include "base/threading/thread_restrictions.h"
#include "content/public/browser/browser_thread.h"
@@ -92,7 +92,7 @@
} else {
// Provided client has requested sufficient large block, make their
// life easier by not truncating in the middle of a UTF-8 character.
- if (size_got > 6 && !CBU8_IS_SINGLE(buffer[size_got - 1])) {
+ if (size_got > 6 && !U8_IS_SINGLE(buffer[size_got - 1])) {
base::TruncateUTF8ToByteSize(buffer, size_got, &buffer);
size_got = buffer.size();
} else {
diff -ur qtwebengine-everywhere-src-5.10.0-system-nspr-prtime/src/3rdparty/chromium/net/cert/internal/parse_name.cc qtwebengine-everywhere-src-5.10.0-system-icu-utf/src/3rdparty/chromium/net/cert/internal/parse_name.cc
--- qtwebengine-everywhere-src-5.10.0-system-nspr-prtime/src/3rdparty/chromium/net/cert/internal/parse_name.cc 2017-11-28 14:06:53.000000000 +0100
+++ qtwebengine-everywhere-src-5.10.0-system-icu-utf/src/3rdparty/chromium/net/cert/internal/parse_name.cc 2017-12-25 12:34:58.610528544 +0100
@@ -9,7 +9,7 @@
#include "base/strings/utf_string_conversion_utils.h"
#include "base/strings/utf_string_conversions.h"
#include "base/sys_byteorder.h"
-#include "base/third_party/icu/icu_utf.h"
+#include <unicode/utf.h>
#if !defined(OS_NACL)
#include "net/base/net_string_util.h"
@@ -38,7 +38,7 @@
// BMPString only supports codepoints in the Basic Multilingual Plane;
// surrogates are not allowed.
- if (CBU_IS_SURROGATE(c))
+ if (U_IS_SURROGATE(c))
return false;
}
return base::UTF16ToUTF8(in_16bit.data(), in_16bit.size(), out);
@@ -58,7 +58,7 @@
for (const uint32_t c : in_32bit) {
// UniversalString is UCS-4 in big-endian order.
uint32_t codepoint = base::NetToHost32(c);
- if (!CBU_IS_UNICODE_CHAR(codepoint))
+ if (!U_IS_UNICODE_CHAR(codepoint))
return false;
base::WriteUnicodeCharacter(codepoint, out);
diff -ur qtwebengine-everywhere-src-5.10.0-system-nspr-prtime/src/3rdparty/chromium/tools/gn/bootstrap/bootstrap.py qtwebengine-everywhere-src-5.10.0-system-icu-utf/src/3rdparty/chromium/tools/gn/bootstrap/bootstrap.py
--- qtwebengine-everywhere-src-5.10.0-system-nspr-prtime/src/3rdparty/chromium/tools/gn/bootstrap/bootstrap.py 2017-12-25 12:20:43.585562853 +0100
+++ qtwebengine-everywhere-src-5.10.0-system-icu-utf/src/3rdparty/chromium/tools/gn/bootstrap/bootstrap.py 2017-12-25 12:41:57.071558915 +0100
@@ -526,7 +526,6 @@
'base/task_scheduler/task_traits.cc',
'base/third_party/dmg_fp/dtoa_wrapper.cc',
'base/third_party/dmg_fp/g_fmt.cc',
- 'base/third_party/icu/icu_utf.cc',
'base/threading/non_thread_safe_impl.cc',
'base/threading/post_task_and_reply_impl.cc',
'base/threading/sequence_local_storage_map.cc',
'base/threading/sequenced_task_runner_handle.cc',
@@ -574,7 +573,7 @@
}
if is_linux:
- libs.extend(['-lrt', '-lnspr4'])
+ libs.extend(['-lrt', '-lnspr4', '-licuuc'])
ldflags.extend(['-pthread'])
static_libraries['xdg_user_dirs'] = {
diff -ur qtwebengine-opensource-src-5.9.0-system-nspr-prtime/src/3rdparty/chromium/tools/gn/BUILD.gn qtwebengine-opensource-src-5.9.0-system-icu-utf/src/3rdparty/chromium/tools/gn/BUILD.gn
--- qtwebengine-opensource-src-5.9.0-system-nspr-prtime/src/3rdparty/chromium/tools/gn/BUILD.gn 2017-06-10 22:18:26.863178931 +0200
+++ qtwebengine-opensource-src-5.9.0-system-icu-utf/src/3rdparty/chromium/tools/gn/BUILD.gn 2017-06-10 22:18:30.168114045 +0200
@@ -277,6 +277,7 @@
@@ -679,7 +678,7 @@
'base/allocator/allocator_shim.cc',
'base/allocator/allocator_shim_default_dispatch_to_glibc.cc',
])
- libs.extend(['-lrt', '-lnspr4'])
+ libs.extend(['-lrt', '-lnspr4', '-licuuc'])
static_libraries['libevent']['include_dirs'].extend([
os.path.join(SRC_ROOT, 'base', 'third_party', 'libevent', 'linux')
])
diff -ur qtwebengine-everywhere-src-5.10.0-system-nspr-prtime/src/3rdparty/chromium/tools/gn/BUILD.gn qtwebengine-everywhere-src-5.10.0-system-icu-utf/src/3rdparty/chromium/tools/gn/BUILD.gn
--- qtwebengine-everywhere-src-5.10.0-system-nspr-prtime/src/3rdparty/chromium/tools/gn/BUILD.gn 2017-12-25 12:16:48.744131902 +0100
+++ qtwebengine-everywhere-src-5.10.0-system-icu-utf/src/3rdparty/chromium/tools/gn/BUILD.gn 2017-12-25 12:26:21.547410841 +0100
@@ -278,6 +278,7 @@
libs = [
"nspr4",
@ -366,9 +431,20 @@ diff -ur qtwebengine-opensource-src-5.9.0-system-nspr-prtime/src/3rdparty/chromi
]
}
diff -ur qtwebengine-opensource-src-5.9.0-system-nspr-prtime/src/3rdparty/chromium/ui/gfx/utf16_indexing.cc qtwebengine-opensource-src-5.9.0-system-icu-utf/src/3rdparty/chromium/ui/gfx/utf16_indexing.cc
--- qtwebengine-opensource-src-5.9.0-system-nspr-prtime/src/3rdparty/chromium/ui/gfx/utf16_indexing.cc 2017-05-18 16:51:44.000000000 +0200
+++ qtwebengine-opensource-src-5.9.0-system-icu-utf/src/3rdparty/chromium/ui/gfx/utf16_indexing.cc 2017-06-08 11:02:21.776777974 +0200
diff -ur qtwebengine-everywhere-src-5.10.0-system-nspr-prtime/src/3rdparty/chromium/ui/base/ime/input_method_chromeos.cc qtwebengine-everywhere-src-5.10.0-system-icu-utf/src/3rdparty/chromium/ui/base/ime/input_method_chromeos.cc
--- qtwebengine-everywhere-src-5.10.0-system-nspr-prtime/src/3rdparty/chromium/ui/base/ime/input_method_chromeos.cc 2017-11-28 14:06:53.000000000 +0100
+++ qtwebengine-everywhere-src-5.10.0-system-icu-utf/src/3rdparty/chromium/ui/base/ime/input_method_chromeos.cc 2017-12-25 12:40:50.356500963 +0100
@@ -17,7 +17,6 @@
#include "base/logging.h"
#include "base/strings/string_util.h"
#include "base/strings/utf_string_conversions.h"
-#include "base/third_party/icu/icu_utf.h"
#include "chromeos/system/devicemode.h"
#include "ui/base/ime/chromeos/ime_keyboard.h"
#include "ui/base/ime/chromeos/input_method_manager.h"
diff -ur qtwebengine-everywhere-src-5.10.0-system-nspr-prtime/src/3rdparty/chromium/ui/gfx/utf16_indexing.cc qtwebengine-everywhere-src-5.10.0-system-icu-utf/src/3rdparty/chromium/ui/gfx/utf16_indexing.cc
--- qtwebengine-everywhere-src-5.10.0-system-nspr-prtime/src/3rdparty/chromium/ui/gfx/utf16_indexing.cc 2017-11-28 14:06:53.000000000 +0100
+++ qtwebengine-everywhere-src-5.10.0-system-icu-utf/src/3rdparty/chromium/ui/gfx/utf16_indexing.cc 2017-12-25 12:26:21.547410841 +0100
@@ -5,13 +5,13 @@
#include "ui/gfx/utf16_indexing.h"

View File

@ -0,0 +1,80 @@
diff -ur qtwebengine-everywhere-src-5.10.0/src/3rdparty/chromium/base/BUILD.gn qtwebengine-everywhere-src-5.10.0-system-nspr-prtime/src/3rdparty/chromium/base/BUILD.gn
--- qtwebengine-everywhere-src-5.10.0/src/3rdparty/chromium/base/BUILD.gn 2017-11-28 14:06:53.000000000 +0100
+++ qtwebengine-everywhere-src-5.10.0-system-nspr-prtime/src/3rdparty/chromium/base/BUILD.gn 2017-12-25 12:16:23.250517752 +0100
@@ -53,6 +53,9 @@
"-Wno-char-subscripts",
]
}
+ ldflags = [
+ "-lnspr4",
+ ]
}
config("base_implementation") {
@@ -858,8 +861,6 @@
"third_party/dmg_fp/g_fmt.cc",
"third_party/icu/icu_utf.cc",
"third_party/icu/icu_utf.h",
- "third_party/nspr/prtime.cc",
- "third_party/nspr/prtime.h",
"third_party/superfasthash/superfasthash.c",
"third_party/valgrind/memcheck.h",
"threading/platform_thread.h",
diff -ur qtwebengine-everywhere-src-5.10.0/src/3rdparty/chromium/base/time/pr_time_unittest.cc qtwebengine-everywhere-src-5.10.0-system-nspr-prtime/src/3rdparty/chromium/base/time/pr_time_unittest.cc
--- qtwebengine-everywhere-src-5.10.0/src/3rdparty/chromium/base/time/pr_time_unittest.cc 2017-11-28 14:06:53.000000000 +0100
+++ qtwebengine-everywhere-src-5.10.0-system-nspr-prtime/src/3rdparty/chromium/base/time/pr_time_unittest.cc 2017-12-25 12:16:23.250517752 +0100
@@ -7,7 +7,7 @@
#include "base/compiler_specific.h"
#include "base/macros.h"
-#include "base/third_party/nspr/prtime.h"
+#include <nspr4/prtime.h>
#include "base/time/time.h"
#include "build/build_config.h"
#include "testing/gtest/include/gtest/gtest.h"
diff -ur qtwebengine-everywhere-src-5.10.0/src/3rdparty/chromium/base/time/time.cc qtwebengine-everywhere-src-5.10.0-system-nspr-prtime/src/3rdparty/chromium/base/time/time.cc
--- qtwebengine-everywhere-src-5.10.0/src/3rdparty/chromium/base/time/time.cc 2017-11-28 14:06:53.000000000 +0100
+++ qtwebengine-everywhere-src-5.10.0-system-nspr-prtime/src/3rdparty/chromium/base/time/time.cc 2017-12-25 12:16:48.710132416 +0100
@@ -14,7 +14,7 @@
#include "base/logging.h"
#include "base/macros.h"
#include "base/strings/stringprintf.h"
-#include "base/third_party/nspr/prtime.h"
+#include <nspr4/prtime.h>
#include "build/build_config.h"
namespace base {
diff -ur qtwebengine-everywhere-src-5.10.0/src/3rdparty/chromium/tools/gn/bootstrap/bootstrap.py qtwebengine-everywhere-src-5.10.0-system-nspr-prtime/src/3rdparty/chromium/tools/gn/bootstrap/bootstrap.py
--- qtwebengine-everywhere-src-5.10.0/src/3rdparty/chromium/tools/gn/bootstrap/bootstrap.py 2017-11-28 14:06:53.000000000 +0100
+++ qtwebengine-everywhere-src-5.10.0-system-nspr-prtime/src/3rdparty/chromium/tools/gn/bootstrap/bootstrap.py 2017-12-25 12:20:43.585562853 +0100
@@ -527,7 +527,6 @@
'base/third_party/dmg_fp/dtoa_wrapper.cc',
'base/third_party/dmg_fp/g_fmt.cc',
'base/third_party/icu/icu_utf.cc',
- 'base/third_party/nspr/prtime.cc',
'base/threading/post_task_and_reply_impl.cc',
'base/threading/sequence_local_storage_map.cc',
'base/threading/sequenced_task_runner_handle.cc',
@@ -680,7 +679,7 @@
'base/allocator/allocator_shim.cc',
'base/allocator/allocator_shim_default_dispatch_to_glibc.cc',
])
- libs.extend(['-lrt'])
+ libs.extend(['-lrt', '-lnspr4'])
static_libraries['libevent']['include_dirs'].extend([
os.path.join(SRC_ROOT, 'base', 'third_party', 'libevent', 'linux')
])
diff -ur qtwebengine-everywhere-src-5.10.0/src/3rdparty/chromium/tools/gn/BUILD.gn qtwebengine-everywhere-src-5.10.0-system-nspr-prtime/src/3rdparty/chromium/tools/gn/BUILD.gn
--- qtwebengine-everywhere-src-5.10.0/src/3rdparty/chromium/tools/gn/BUILD.gn 2017-11-28 14:06:53.000000000 +0100
+++ qtwebengine-everywhere-src-5.10.0-system-nspr-prtime/src/3rdparty/chromium/tools/gn/BUILD.gn 2017-12-25 12:16:48.744131902 +0100
@@ -275,6 +275,10 @@
"//build/config:exe_and_shlib_deps",
"//build/win:default_exe_manifest",
]
+
+ libs = [
+ "nspr4",
+ ]
}
test("gn_unittests") {

View File

@ -1,12 +0,0 @@
diff -ur qtwebengine-opensource-src-5.9.0/src/buildtools/gn.pro qtwebengine-opensource-src-5.9.0-gn-bootstrap-verbose/src/buildtools/gn.pro
--- qtwebengine-opensource-src-5.9.0/src/buildtools/gn.pro 2017-05-19 06:22:04.000000000 +0200
+++ qtwebengine-opensource-src-5.9.0-gn-bootstrap-verbose/src/buildtools/gn.pro 2017-06-10 15:24:55.426814326 +0200
@@ -20,7 +20,7 @@
src_3rd_party_dir = $$absolute_path("$${getChromiumSrcDir()}/../", "$$QTWEBENGINE_ROOT")
gn_bootstrap = $$system_path($$absolute_path(chromium/tools/gn/bootstrap/bootstrap.py, $$src_3rd_party_dir))
gn_args = $$system_quote($$gn_args)
- gn_configure = $$system_quote($$gn_bootstrap) --shadow --gn-gen-args=$$gn_args $$ninja_path
+ gn_configure = $$system_quote($$gn_bootstrap) --verbose --shadow --gn-gen-args=$$gn_args $$ninja_path
!system("cd $$system_quote($$system_path($$dirname(out))) && $$pythonPathForSystem() $$gn_configure") {
error("GN build error!")
}

View File

@ -1,80 +0,0 @@
diff -ur qtwebengine-opensource-src-5.9.0/src/3rdparty/chromium/base/BUILD.gn qtwebengine-opensource-src-5.9.0-system-nspr-prtime/src/3rdparty/chromium/base/BUILD.gn
--- qtwebengine-opensource-src-5.9.0/src/3rdparty/chromium/base/BUILD.gn 2017-05-18 16:51:44.000000000 +0200
+++ qtwebengine-opensource-src-5.9.0-system-nspr-prtime/src/3rdparty/chromium/base/BUILD.gn 2017-06-08 10:52:51.565409865 +0200
@@ -49,6 +49,9 @@
"-Wno-char-subscripts",
]
}
+ ldflags = [
+ "-lnspr4",
+ ]
}
config("base_implementation") {
@@ -833,8 +836,6 @@
"third_party/dmg_fp/g_fmt.cc",
"third_party/icu/icu_utf.cc",
"third_party/icu/icu_utf.h",
- "third_party/nspr/prtime.cc",
- "third_party/nspr/prtime.h",
"third_party/superfasthash/superfasthash.c",
"threading/non_thread_safe.h",
"threading/non_thread_safe_impl.cc",
diff -ur qtwebengine-opensource-src-5.9.0/src/3rdparty/chromium/base/time/pr_time_unittest.cc qtwebengine-opensource-src-5.9.0-system-nspr-prtime/src/3rdparty/chromium/base/time/pr_time_unittest.cc
--- qtwebengine-opensource-src-5.9.0/src/3rdparty/chromium/base/time/pr_time_unittest.cc 2017-05-18 16:51:44.000000000 +0200
+++ qtwebengine-opensource-src-5.9.0-system-nspr-prtime/src/3rdparty/chromium/base/time/pr_time_unittest.cc 2017-06-08 10:58:06.743413247 +0200
@@ -7,7 +7,7 @@
#include "base/compiler_specific.h"
#include "base/macros.h"
-#include "base/third_party/nspr/prtime.h"
+#include <nspr4/prtime.h>
#include "base/time/time.h"
#include "build/build_config.h"
#include "testing/gtest/include/gtest/gtest.h"
diff -ur qtwebengine-opensource-src-5.9.0/src/3rdparty/chromium/base/time/time.cc qtwebengine-opensource-src-5.9.0-system-nspr-prtime/src/3rdparty/chromium/base/time/time.cc
--- qtwebengine-opensource-src-5.9.0/src/3rdparty/chromium/base/time/time.cc 2017-05-18 16:51:44.000000000 +0200
+++ qtwebengine-opensource-src-5.9.0-system-nspr-prtime/src/3rdparty/chromium/base/time/time.cc 2017-06-08 10:58:09.557373071 +0200
@@ -14,7 +14,7 @@
#include "base/logging.h"
#include "base/macros.h"
#include "base/strings/stringprintf.h"
-#include "base/third_party/nspr/prtime.h"
+#include <nspr4/prtime.h>
#include "build/build_config.h"
namespace base {
diff -ur qtwebengine-opensource-src-5.9.0/src/3rdparty/chromium/tools/gn/bootstrap/bootstrap.py qtwebengine-opensource-src-5.9.0-system-nspr-prtime/src/3rdparty/chromium/tools/gn/bootstrap/bootstrap.py
--- qtwebengine-opensource-src-5.9.0/src/3rdparty/chromium/tools/gn/bootstrap/bootstrap.py 2017-05-18 16:51:44.000000000 +0200
+++ qtwebengine-opensource-src-5.9.0-system-nspr-prtime/src/3rdparty/chromium/tools/gn/bootstrap/bootstrap.py 2017-06-08 10:55:05.945934291 +0200
@@ -473,7 +473,6 @@
'base/third_party/dmg_fp/dtoa_wrapper.cc',
'base/third_party/dmg_fp/g_fmt.cc',
'base/third_party/icu/icu_utf.cc',
- 'base/third_party/nspr/prtime.cc',
'base/threading/non_thread_safe_impl.cc',
'base/threading/post_task_and_reply_impl.cc',
'base/threading/sequenced_task_runner_handle.cc',
@@ -575,7 +574,7 @@
}
if is_linux:
- libs.extend(['-lrt'])
+ libs.extend(['-lrt', '-lnspr4'])
ldflags.extend(['-pthread'])
static_libraries['xdg_user_dirs'] = {
diff -ur qtwebengine-opensource-src-5.9.0/src/3rdparty/chromium/tools/gn/BUILD.gn qtwebengine-opensource-src-5.9.0-system-nspr-prtime/src/3rdparty/chromium/tools/gn/BUILD.gn
--- qtwebengine-opensource-src-5.9.0/src/3rdparty/chromium/tools/gn/BUILD.gn 2017-05-18 16:51:44.000000000 +0200
+++ qtwebengine-opensource-src-5.9.0-system-nspr-prtime/src/3rdparty/chromium/tools/gn/BUILD.gn 2017-06-10 22:18:26.863178931 +0200
@@ -274,6 +274,10 @@
"//build/config/sanitizers:deps",
"//build/win:default_exe_manifest",
]
+
+ libs = [
+ "nspr4",
+ ]
}
test("gn_unittests") {

File diff suppressed because it is too large Load Diff

View File

@ -1,19 +0,0 @@
diff -ur qtwebengine-opensource-src-5.9.2/src/core/web_contents_adapter.cpp qtwebengine-opensource-src-5.9.2-qt57/src/core/web_contents_adapter.cpp
--- qtwebengine-opensource-src-5.9.2/src/core/web_contents_adapter.cpp 2017-10-03 11:06:38.000000000 +0200
+++ qtwebengine-opensource-src-5.9.2-qt57/src/core/web_contents_adapter.cpp 2017-11-16 17:17:51.072511997 +0100
@@ -1265,7 +1265,15 @@
}
const QString &fileName = toQt(dropData.file_description_filename);
+#if (QT_VERSION >= QT_VERSION_CHECK(5, 9, 0))
const QString &filePath = d->dndTmpDir->filePath(fileName);
+#else
+ QString filePath = d->dndTmpDir->path();
+ if (!filePath.isEmpty()) {
+ filePath += QLatin1Char('/');
+ filePath += fileName;
+ }
+#endif
QFile file(filePath);
if (!file.open(QIODevice::WriteOnly)) {
qWarning("Cannot write temporary file %s.", qUtf8Printable(filePath));

View File

@ -1,77 +0,0 @@
diff -ur qtwebengine-opensource-src-5.9.3/src/3rdparty/chromium/components/url_formatter/url_formatter.cc qtwebengine-opensource-src-5.9.3-no-aspirational-scripts/src/3rdparty/chromium/components/url_formatter/url_formatter.cc
--- qtwebengine-opensource-src-5.9.3/src/3rdparty/chromium/components/url_formatter/url_formatter.cc 2017-11-08 20:13:31.000000000 +0100
+++ qtwebengine-opensource-src-5.9.3-no-aspirational-scripts/src/3rdparty/chromium/components/url_formatter/url_formatter.cc 2017-12-02 03:07:07.447476275 +0100
@@ -478,39 +478,6 @@
const icu::UnicodeSet* inclusion_set = uspoof_getInclusionUnicodeSet(status);
allowed_set.addAll(*inclusion_set);
- // Five aspirational scripts are taken from UTR 31 Table 6 at
- // http://www.unicode.org/reports/tr31/#Aspirational_Use_Scripts .
- // Not all the characters of aspirational scripts are suitable for
- // identifiers. Therefore, only characters belonging to
- // [:Identifier_Type=Aspirational:] (listed in 'Status/Type=Aspirational'
- // section at
- // http://www.unicode.org/Public/security/latest/xidmodifications.txt) are
- // are added to the allowed set. The list has to be updated when a new
- // version of Unicode is released. The current version is 9.0.0 and ICU 60
- // will have Unicode 10.0 data.
-#if U_ICU_VERSION_MAJOR_NUM < 60
- const icu::UnicodeSet aspirational_scripts(
- icu::UnicodeString(
- // Unified Canadian Syllabics
- "[\\u1401-\\u166C\\u166F-\\u167F"
- // Mongolian
- "\\u1810-\\u1819\\u1820-\\u1877\\u1880-\\u18AA"
- // Unified Canadian Syllabics
- "\\u18B0-\\u18F5"
- // Tifinagh
- "\\u2D30-\\u2D67\\u2D7F"
- // Yi
- "\\uA000-\\uA48C"
- // Miao
- "\\U00016F00-\\U00016F44\\U00016F50-\\U00016F7E"
- "\\U00016F8F-\\U00016F9F]",
- -1, US_INV),
- *status);
- allowed_set.addAll(aspirational_scripts);
-#else
-#error "Update aspirational_scripts per Unicode 10.0"
-#endif
-
// U+0338 is included in the recommended set, while U+05F4 and U+2027 are in
// the inclusion set. However, they are blacklisted as a part of Mozilla's
// IDN blacklist (http://kb.mozillazine.org/Network.IDN.blacklist_chars).
diff -ur qtwebengine-opensource-src-5.9.3/src/3rdparty/chromium/components/url_formatter/url_formatter_unittest.cc qtwebengine-opensource-src-5.9.3-no-aspirational-scripts/src/3rdparty/chromium/components/url_formatter/url_formatter_unittest.cc
--- qtwebengine-opensource-src-5.9.3/src/3rdparty/chromium/components/url_formatter/url_formatter_unittest.cc 2017-11-08 20:13:31.000000000 +0100
+++ qtwebengine-opensource-src-5.9.3-no-aspirational-scripts/src/3rdparty/chromium/components/url_formatter/url_formatter_unittest.cc 2017-12-02 03:08:51.073912562 +0100
@@ -102,22 +102,24 @@
{"xn---123-kbjl2j0bl2k.in",
L"\x0939\x093f\x0928\x094d\x0926\x0940-123.in", true},
- // 5 Aspirational scripts
+ // What used to be 5 Aspirational scripts in the earlier versions of UAX 31.
+ // UAX 31 does not define aspirational scripts any more.
+ // See http://www.unicode.org/reports/tr31/#Aspirational_Use_Scripts .
// Unifieid Canadian Syllabary
- {"xn--dfe0tte.ca", L"\x1456\x14c2\x14ef.ca", true},
+ {"xn--dfe0tte.ca", L"\x1456\x14c2\x14ef.ca", false},
// Tifinagh
{"xn--4ljxa2bb4a6bxb.ma",
- L"\x2d5c\x2d49\x2d3c\x2d49\x2d4f\x2d30\x2d56.ma", true},
+ L"\x2d5c\x2d49\x2d3c\x2d49\x2d4f\x2d30\x2d56.ma", false},
// Tifinagh with a disallowed character(U+2D6F)
{"xn--hmjzaby5d5f.ma", L"\x2d5c\x2d49\x2d3c\x2d6f\x2d49\x2d4f.ma", false},
// Yi
- {"xn--4o7a6e1x64c.cn", L"\xa188\xa320\xa071\xa0b7.cn", true},
+ {"xn--4o7a6e1x64c.cn", L"\xa188\xa320\xa071\xa0b7.cn", false},
// Mongolian - 'ordu' (place, camp)
- {"xn--56ec8bp.cn", L"\x1823\x1837\x1833\x1824.cn", true},
+ {"xn--56ec8bp.cn", L"\x1823\x1837\x1833\x1824.cn", false},
// Mongolian with a disallowed character
{"xn--95e5de3ds.cn", L"\x1823\x1837\x1804\x1833\x1824.cn", false},
// Miao/Pollad
- {"xn--2u0fpf0a.cn", L"\U00016f04\U00016f62\U00016f59.cn", true},
+ {"xn--2u0fpf0a.cn", L"\U00016f04\U00016f62\U00016f59.cn", false},
// Script mixing tests
// The following script combinations are allowed.

View File

@ -1 +1 @@
SHA512 (qtwebengine-opensource-src-5.9.3-clean.tar.xz) = fb1c6af02d7cbeef41da5cbe7e56861de3342a538940a997753fae204bdd5386d66b1385fc8450b6a4989e6e2b67e8c4f063e8192181cdc02ff64e0d48dde97e
SHA512 (qtwebengine-everywhere-src-5.10.0-clean.tar.xz) = 0c89061507a7f1541eb9433545f3610f96ac6b6b29dc2527a9bc15c945a0ce33d0d2bd693c9d865639b10a97077192fc387b0a5920e64b7860c576b987899fb2