pkgsrc-WIP-changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

qt5-qtwebengine: fix build with icu 69



Module Name:	pkgsrc-wip
Committed By:	Mark Davies <mark%ecs.vuw.ac.nz@localhost>
Pushed By:	markd
Date:		Sun May 2 22:27:41 2021 +1200
Changeset:	f3e87b6071b5c635c0a0928056052b4c72bd10ff

Modified Files:
	qt5-qtwebengine/distinfo
Added Files:
	qt5-qtwebengine/patches/patch-src_3rdparty_chromium_v8_src_objects_js-list-format.cc

Log Message:
qt5-qtwebengine: fix build with icu 69

To see a diff of this commit:
https://wip.pkgsrc.org/cgi-bin/gitweb.cgi?p=pkgsrc-wip.git;a=commitdiff;h=f3e87b6071b5c635c0a0928056052b4c72bd10ff

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

diffstat:
 qt5-qtwebengine/distinfo                           |  1 +
 ...party_chromium_v8_src_objects_js-list-format.cc | 97 ++++++++++++++++++++++
 2 files changed, 98 insertions(+)

diffs:
diff --git a/qt5-qtwebengine/distinfo b/qt5-qtwebengine/distinfo
index bf30549a97..d0ec0b2810 100644
--- a/qt5-qtwebengine/distinfo
+++ b/qt5-qtwebengine/distinfo
@@ -814,6 +814,7 @@ SHA1 (patch-src_3rdparty_chromium_v8_gni_v8.gni) = 944c7c8e2363b07aa0242a2e748cc
 SHA1 (patch-src_3rdparty_chromium_v8_src_api_api.cc) = d563a6b50e5dff265d5a4b1b516de02e7149cab6
 SHA1 (patch-src_3rdparty_chromium_v8_src_base_cpu.cc) = f6ec99bba983bb93e8515478f64681440ffbda1e
 SHA1 (patch-src_3rdparty_chromium_v8_src_base_platform_platform-posix.cc) = 7e587fac8a26a975b33a93aa09ccf9af82afabb7
+SHA1 (patch-src_3rdparty_chromium_v8_src_objects_js-list-format.cc) = 077357c9113ff9267ecc96ec5b65b66b4b5b6083
 SHA1 (patch-src_3rdparty_chromium_v8_src_trap-handler_handler-inside-posix.cc) = 568877d1ebcaaee5782527f232a6fcc7f096066a
 SHA1 (patch-src_3rdparty_chromium_v8_src_trap-handler_handler-inside-posix.h) = a64ca7574cca4cb804e0ca24dd3454507d3d556d
 SHA1 (patch-src_3rdparty_chromium_v8_src_trap-handler_trap-handler.h) = d0b72fff980d5072d2221dd31b2e95526cd33875
diff --git a/qt5-qtwebengine/patches/patch-src_3rdparty_chromium_v8_src_objects_js-list-format.cc b/qt5-qtwebengine/patches/patch-src_3rdparty_chromium_v8_src_objects_js-list-format.cc
new file mode 100644
index 0000000000..82b331fbde
--- /dev/null
+++ b/qt5-qtwebengine/patches/patch-src_3rdparty_chromium_v8_src_objects_js-list-format.cc
@@ -0,0 +1,97 @@
+$NetBSD$
+
+From 035c305ce7761f51328b45f1bd83e26aef267c9d Mon Sep 17 00:00:00 2001
+From: Frank Tang <ftang%chromium.org@localhost>
+Date: Thu, 15 Oct 2020 22:44:27 -0700
+Subject: [PATCH] [Intl] call new ListFormatter::createInstance
+
+The one we currently using is now marked as internal and to be removed
+for 68. Migrating to the style which already avaiable in ICU 67-1.
+
+Bug: v8:11031
+Change-Id: I668382a2e1b8602ddca02bf231c5008a6c92bf2d
+Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2477751
+Reviewed-by: Jakob Kummerow <jkummerow%chromium.org@localhost>
+Commit-Queue: Frank Tang <ftang%chromium.org@localhost>
+Cr-Commit-Position: refs/heads/master@{#70638}
+---
+ src/objects/js-list-format.cc | 55 ++++++++++++-----------------------
+ 1 file changed, 18 insertions(+), 37 deletions(-)
+
+diff --git a/src/objects/js-list-format.cc b/src/objects/js-list-format.cc
+index b17d38c43ff5..e48a387be50f 100644
+--- src/3rdparty/chromium/v8/src/objects/js-list-format.cc.orig
++++ src/3rdparty/chromium/v8/src/objects/js-list-format.cc
+@@ -29,46 +29,27 @@ namespace v8 {
+ namespace internal {
+ 
+ namespace {
+-const char* kStandard = "standard";
+-const char* kOr = "or";
+-const char* kUnit = "unit";
+-const char* kStandardShort = "standard-short";
+-const char* kOrShort = "or-short";
+-const char* kUnitShort = "unit-short";
+-const char* kStandardNarrow = "standard-narrow";
+-const char* kOrNarrow = "or-narrow";
+-const char* kUnitNarrow = "unit-narrow";
+-
+-const char* GetIcuStyleString(JSListFormat::Style style,
+-                              JSListFormat::Type type) {
++
++UListFormatterWidth GetIcuWidth(JSListFormat::Style style) {
++  switch (style) {
++    case JSListFormat::Style::LONG:
++      return ULISTFMT_WIDTH_WIDE;
++    case JSListFormat::Style::SHORT:
++      return ULISTFMT_WIDTH_SHORT;
++    case JSListFormat::Style::NARROW:
++      return ULISTFMT_WIDTH_NARROW;
++  }
++  UNREACHABLE();
++}
++
++UListFormatterType GetIcuType(JSListFormat::Type type) {
+   switch (type) {
+     case JSListFormat::Type::CONJUNCTION:
+-      switch (style) {
+-        case JSListFormat::Style::LONG:
+-          return kStandard;
+-        case JSListFormat::Style::SHORT:
+-          return kStandardShort;
+-        case JSListFormat::Style::NARROW:
+-          return kStandardNarrow;
+-      }
++      return ULISTFMT_TYPE_AND;
+     case JSListFormat::Type::DISJUNCTION:
+-      switch (style) {
+-        case JSListFormat::Style::LONG:
+-          return kOr;
+-        case JSListFormat::Style::SHORT:
+-          return kOrShort;
+-        case JSListFormat::Style::NARROW:
+-          return kOrNarrow;
+-      }
++      return ULISTFMT_TYPE_OR;
+     case JSListFormat::Type::UNIT:
+-      switch (style) {
+-        case JSListFormat::Style::LONG:
+-          return kUnit;
+-        case JSListFormat::Style::SHORT:
+-          return kUnitShort;
+-        case JSListFormat::Style::NARROW:
+-          return kUnitNarrow;
+-      }
++      return ULISTFMT_TYPE_UNITS;
+   }
+   UNREACHABLE();
+ }
+@@ -143,7 +124,7 @@ MaybeHandle<JSListFormat> JSListFormat::New(Isolate* isolate, Handle<Map> map,
+   icu::Locale icu_locale = r.icu_locale;
+   UErrorCode status = U_ZERO_ERROR;
+   icu::ListFormatter* formatter = icu::ListFormatter::createInstance(
+-      icu_locale, GetIcuStyleString(style_enum, type_enum), status);
++      icu_locale, GetIcuType(type_enum), GetIcuWidth(style_enum), status);
+   if (U_FAILURE(status) || formatter == nullptr) {
+     delete formatter;
+     THROW_NEW_ERROR(isolate, NewRangeError(MessageTemplate::kIcuError),


Home | Main Index | Thread Index | Old Index