From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 93B97138350 for ; Thu, 30 Apr 2020 09:27:02 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id C667FE08AA; Thu, 30 Apr 2020 09:27:01 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 932BCE08AA for ; Thu, 30 Apr 2020 09:27:01 +0000 (UTC) Received: from oystercatcher.gentoo.org (unknown [IPv6:2a01:4f8:202:4333:225:90ff:fed9:fc84]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 202E234EEDA for ; Thu, 30 Apr 2020 09:27:00 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 9A2D41C3 for ; Thu, 30 Apr 2020 09:26:58 +0000 (UTC) From: "Andreas Sturmlechner" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Andreas Sturmlechner" Message-ID: <1588238801.b078110093de1ca03bf41d781d4e720eeaf56fd6.asturm@gentoo> Subject: [gentoo-commits] proj/qt:master commit in: dev-qt/qtwebengine/files/, dev-qt/qtwebengine/ X-VCS-Repository: proj/qt X-VCS-Files: dev-qt/qtwebengine/files/qtwebengine-5.14.2-icu67.patch dev-qt/qtwebengine/qtwebengine-5.15.0_beta4.ebuild dev-qt/qtwebengine/qtwebengine-5.15.9999.ebuild X-VCS-Directories: dev-qt/qtwebengine/ dev-qt/qtwebengine/files/ X-VCS-Committer: asturm X-VCS-Committer-Name: Andreas Sturmlechner X-VCS-Revision: b078110093de1ca03bf41d781d4e720eeaf56fd6 X-VCS-Branch: master Date: Thu, 30 Apr 2020 09:26:58 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: 40454960-5b8e-42b1-861b-e76e8b7dcfea X-Archives-Hash: a4c1da524692fc24b18bdf4c7747f468 commit: b078110093de1ca03bf41d781d4e720eeaf56fd6 Author: Lars Wendler gentoo org> AuthorDate: Wed Apr 29 20:38:38 2020 +0000 Commit: Andreas Sturmlechner gentoo org> CommitDate: Thu Apr 30 09:26:41 2020 +0000 URL: https://gitweb.gentoo.org/proj/qt.git/commit/?id=b0781100 dev-qt/qtwebengine: Fixed build with icu-67 Closes: https://bugs.gentoo.org/720054 Package-Manager: Portage-2.3.99, Repoman-2.3.22 Signed-off-by: Lars Wendler gentoo.org> Signed-off-by: Andreas Sturmlechner gentoo.org> .../files/qtwebengine-5.14.2-icu67.patch | 169 +++++++++++++++++++++ dev-qt/qtwebengine/qtwebengine-5.15.0_beta4.ebuild | 5 +- dev-qt/qtwebengine/qtwebengine-5.15.9999.ebuild | 5 +- 3 files changed, 177 insertions(+), 2 deletions(-) diff --git a/dev-qt/qtwebengine/files/qtwebengine-5.14.2-icu67.patch b/dev-qt/qtwebengine/files/qtwebengine-5.14.2-icu67.patch new file mode 100644 index 00000000..42ee5e87 --- /dev/null +++ b/dev-qt/qtwebengine/files/qtwebengine-5.14.2-icu67.patch @@ -0,0 +1,169 @@ +From 2b107e7670ffb43719a66ee4a55ab408a5dcf2a5 Mon Sep 17 00:00:00 2001 +From: Ujjwal Sharma +Date: Wed, 22 Apr 2020 12:20:17 +0530 +Subject: [PATCH] deps: V8: backport 3f8dc4b2e5ba + +Original commit message: + + [intl] Remove soon-to-be removed getAllFieldPositions + + Needed to land ICU67.1 soon. + + Bug: v8:10393 + Change-Id: I3c7737ca600d6ccfdc46ffaddfb318ce60bc7618 + Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2136489 + Reviewed-by: Jakob Kummerow + Commit-Queue: Frank Tang + Cr-Commit-Position: refs/heads/master@{#67027} + +Refs: https://github.com/v8/v8/commit/3f8dc4b2e5baf77b463334c769af85b79d8c1463 +--- + common.gypi | 2 +- + src/3rdparty/chromium/v8/src/objects/js-number-format.cc | 72 +++++++++++++------------ + 2 files changed, 38 insertions(+), 36 deletions(-) + +diff --git a/deps/v8/src/objects/js-number-format.cc b/deps/v8/src/objects/js-number-format.cc +index 92d3e2fb82e..ced408aa173 100644 +--- a/src/3rdparty/chromium/v8/src/objects/js-number-format.cc ++++ b/src/3rdparty/chromium/v8/src/objects/js-number-format.cc +@@ -1197,42 +1197,31 @@ MaybeHandle JSNumberFormat::New(Isolate* isolate, + } + + namespace { +-Maybe IcuFormatNumber( ++Maybe IcuFormatNumber( + Isolate* isolate, + const icu::number::LocalizedNumberFormatter& number_format, +- Handle numeric_obj, icu::FieldPositionIterator* fp_iter) { ++ Handle numeric_obj, icu::number::FormattedNumber* formatted) { + // If it is BigInt, handle it differently. + UErrorCode status = U_ZERO_ERROR; +- icu::number::FormattedNumber formatted; + if (numeric_obj->IsBigInt()) { + Handle big_int = Handle::cast(numeric_obj); + Handle big_int_string; + ASSIGN_RETURN_ON_EXCEPTION_VALUE(isolate, big_int_string, + BigInt::ToString(isolate, big_int), +- Nothing()); +- formatted = number_format.formatDecimal( ++ Nothing()); ++ *formatted = number_format.formatDecimal( + {big_int_string->ToCString().get(), big_int_string->length()}, status); + } else { + double number = numeric_obj->Number(); +- formatted = number_format.formatDouble(number, status); ++ *formatted = number_format.formatDouble(number, status); + } + if (U_FAILURE(status)) { + // This happen because of icu data trimming trim out "unit". + // See https://bugs.chromium.org/p/v8/issues/detail?id=8641 +- THROW_NEW_ERROR_RETURN_VALUE(isolate, +- NewTypeError(MessageTemplate::kIcuError), +- Nothing()); +- } +- if (fp_iter) { +- formatted.getAllFieldPositions(*fp_iter, status); ++ THROW_NEW_ERROR_RETURN_VALUE( ++ isolate, NewTypeError(MessageTemplate::kIcuError), Nothing()); + } +- icu::UnicodeString result = formatted.toString(status); +- if (U_FAILURE(status)) { +- THROW_NEW_ERROR_RETURN_VALUE(isolate, +- NewTypeError(MessageTemplate::kIcuError), +- Nothing()); +- } +- return Just(result); ++ return Just(true); + } + + } // namespace +@@ -1243,10 +1232,16 @@ MaybeHandle JSNumberFormat::FormatNumeric( + Handle numeric_obj) { + DCHECK(numeric_obj->IsNumeric()); + +- Maybe maybe_format = +- IcuFormatNumber(isolate, number_format, numeric_obj, nullptr); ++ icu::number::FormattedNumber formatted; ++ Maybe maybe_format = ++ IcuFormatNumber(isolate, number_format, numeric_obj, &formatted); + MAYBE_RETURN(maybe_format, Handle()); +- return Intl::ToString(isolate, maybe_format.FromJust()); ++ UErrorCode status = U_ZERO_ERROR; ++ icu::UnicodeString result = formatted.toString(status); ++ if (U_FAILURE(status)) { ++ THROW_NEW_ERROR(isolate, NewTypeError(MessageTemplate::kIcuError), String); ++ } ++ return Intl::ToString(isolate, result); + } + + namespace { +@@ -1359,12 +1354,18 @@ std::vector FlattenRegionsToParts( + } + + namespace { +-Maybe ConstructParts(Isolate* isolate, const icu::UnicodeString& formatted, +- icu::FieldPositionIterator* fp_iter, ++Maybe ConstructParts(Isolate* isolate, ++ icu::number::FormattedNumber* formatted, + Handle result, int start_index, + Handle numeric_obj, bool style_is_unit) { ++ UErrorCode status = U_ZERO_ERROR; ++ icu::UnicodeString formatted_text = formatted->toString(status); ++ if (U_FAILURE(status)) { ++ THROW_NEW_ERROR_RETURN_VALUE( ++ isolate, NewTypeError(MessageTemplate::kIcuError), Nothing()); ++ } + DCHECK(numeric_obj->IsNumeric()); +- int32_t length = formatted.length(); ++ int32_t length = formatted_text.length(); + int index = start_index; + if (length == 0) return Just(index); + +@@ -1373,13 +1374,14 @@ Maybe ConstructParts(Isolate* isolate, const icu::UnicodeString& formatted, + // other region covers some part of the formatted string. It's possible + // there's another field with exactly the same begin and end as this backdrop, + // in which case the backdrop's field_id of -1 will give it lower priority. +- regions.push_back(NumberFormatSpan(-1, 0, formatted.length())); ++ regions.push_back(NumberFormatSpan(-1, 0, formatted_text.length())); + + { +- icu::FieldPosition fp; +- while (fp_iter->next(fp)) { +- regions.push_back(NumberFormatSpan(fp.getField(), fp.getBeginIndex(), +- fp.getEndIndex())); ++ icu::ConstrainedFieldPosition cfp; ++ cfp.constrainCategory(UFIELD_CATEGORY_NUMBER); ++ while (formatted->nextPosition(cfp, status)) { ++ regions.push_back( ++ NumberFormatSpan(cfp.getField(), cfp.getStart(), cfp.getLimit())); + } + } + +@@ -1401,7 +1403,7 @@ Maybe ConstructParts(Isolate* isolate, const icu::UnicodeString& formatted, + Handle substring; + ASSIGN_RETURN_ON_EXCEPTION_VALUE( + isolate, substring, +- Intl::ToString(isolate, formatted, part.begin_pos, part.end_pos), ++ Intl::ToString(isolate, formatted_text, part.begin_pos, part.end_pos), + Nothing()); + Intl::AddElement(isolate, result, index, field_type_string, substring); + ++index; +@@ -1421,14 +1423,14 @@ MaybeHandle JSNumberFormat::FormatToParts( + number_format->icu_number_formatter().raw(); + CHECK_NOT_NULL(fmt); + +- icu::FieldPositionIterator fp_iter; +- Maybe maybe_format = +- IcuFormatNumber(isolate, *fmt, numeric_obj, &fp_iter); ++ icu::number::FormattedNumber formatted; ++ Maybe maybe_format = ++ IcuFormatNumber(isolate, *fmt, numeric_obj, &formatted); + MAYBE_RETURN(maybe_format, Handle()); + + Handle result = factory->NewJSArray(0); + Maybe maybe_format_to_parts = ConstructParts( +- isolate, maybe_format.FromJust(), &fp_iter, result, 0, numeric_obj, ++ isolate, &formatted, result, 0, numeric_obj, + number_format->style() == JSNumberFormat::Style::UNIT); + MAYBE_RETURN(maybe_format_to_parts, Handle()); + diff --git a/dev-qt/qtwebengine/qtwebengine-5.15.0_beta4.ebuild b/dev-qt/qtwebengine/qtwebengine-5.15.0_beta4.ebuild index 84a5805b..d96fd9de 100644 --- a/dev-qt/qtwebengine/qtwebengine-5.15.0_beta4.ebuild +++ b/dev-qt/qtwebengine/qtwebengine-5.15.0_beta4.ebuild @@ -78,7 +78,10 @@ DEPEND="${RDEPEND} sys-devel/bison " -PATCHES=( "${FILESDIR}/${PN}-5.15.0-disable-fatal-warnings.patch" ) # bug 695446 +PATCHES=( + "${FILESDIR}/${PN}-5.15.0-disable-fatal-warnings.patch" # bug 695446 + "${FILESDIR}/${PN}-5.14.2-icu67.patch" # bug 720054 +) src_prepare() { if ! use jumbo-build; then diff --git a/dev-qt/qtwebengine/qtwebengine-5.15.9999.ebuild b/dev-qt/qtwebengine/qtwebengine-5.15.9999.ebuild index 84a5805b..7c6d8e1d 100644 --- a/dev-qt/qtwebengine/qtwebengine-5.15.9999.ebuild +++ b/dev-qt/qtwebengine/qtwebengine-5.15.9999.ebuild @@ -78,7 +78,10 @@ DEPEND="${RDEPEND} sys-devel/bison " -PATCHES=( "${FILESDIR}/${PN}-5.15.0-disable-fatal-warnings.patch" ) # bug 695446 +PATCHES=( + "${FILESDIR}/${PN}-5.15.0-disable-fatal-warnings.patch" # bug 695446 + "${FILESDIR}/${PN}-5.14.2-icu67.patch" # bug 720054 +) src_prepare() { if ! use jumbo-build; then