[arch-commits] Commit in nodejs-lts-dubnium/trunk (PKGBUILD icu68.patch)

Evangelos Foutras foutrelis at archlinux.org
Sat Dec 19 06:17:44 UTC 2020


    Date: Saturday, December 19, 2020 @ 06:17:43
  Author: foutrelis
Revision: 779747

Fix build with ICU 68 (patch from FreeBSD)

Added:
  nodejs-lts-dubnium/trunk/icu68.patch
Modified:
  nodejs-lts-dubnium/trunk/PKGBUILD

-------------+
 PKGBUILD    |   12 ++++--
 icu68.patch |  109 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 117 insertions(+), 4 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2020-12-19 06:09:42 UTC (rev 779746)
+++ PKGBUILD	2020-12-19 06:17:43 UTC (rev 779747)
@@ -12,9 +12,11 @@
 optdepends=('npm: nodejs package manager')
 provides=("nodejs=$pkgver")
 conflicts=(nodejs)
-source=("${url}/dist/v${pkgver}/node-v${pkgver}.tar.xz")
+source=("${url}/dist/v${pkgver}/node-v${pkgver}.tar.xz"
+        icu68.patch)
 # https://nodejs.org/download/release/latest-dubnium/SHASUMS256.txt.asc
-sha256sums=(fd356039d5c223f020db514b64e4619b285e669f8f5f0b6232458d4440c6741f)
+sha256sums=('fd356039d5c223f020db514b64e4619b285e669f8f5f0b6232458d4440c6741f'
+            'e953185d2d7de61bf8d4ca168fe034cce7a968264c1e7c24d53421fe7d24aace')
 validpgpkeys=(C4F0DFFF4E8C1A8236409D08E73BC641CC11F4C8  # Myles Borins <mylesborins at google.com>
               77984A986EBC2AA786BC0F66B01FBB92821C587A  # Gibson Fahnestock <gibfahn at gmail.com>
               B9AE9905FFD7803F25714661B63B535A4C206CA9  # Evan Lucas <evanlucas at me.com> 
@@ -26,6 +28,8 @@
 prepare() {
   cd node-v${pkgver}
 
+  patch -Np0 -i ../icu68.patch
+
   echo 'Fixing for python2 name'
   find -type f -exec sed \
     -e 's_^#!/usr/bin/env python$_&2_' \
@@ -33,8 +37,8 @@
     -e 's_^#!/usr/bin/python$_&2_' \
     -e 's_^\( *exec \+\)python\( \+.*\)$_\1python2\2_'\
     -e 's_^\(.*\)python\( \+-c \+.*\)$_\1python2\2_'\
-    -e "s_'python'_'python2'_" -i {} \;
-  find test/ -type f -exec sed 's_python _python2 _' -i {} \;
+    -e "s_'python'_'python2'_" -i {} +
+  find test/ -type f -exec sed 's_python _python2 _' -i {} +
 }
 
 build() {

Added: icu68.patch
===================================================================
--- icu68.patch	                        (rev 0)
+++ icu68.patch	2020-12-19 06:17:43 UTC (rev 779747)
@@ -0,0 +1,109 @@
+Regressed by https://github.com/unicode-org/icu/commit/c3fe7e09d844
+
+../deps/v8/src/objects/intl-objects.cc:246:22: error: use of undeclared identifier 'FALSE'
+                     FALSE, &status);
+                     ^
+../deps/v8/src/objects/intl-objects.cc:425:22: error: use of undeclared identifier 'FALSE'
+                     FALSE, &status);
+                     ^
+../deps/v8/src/objects/intl-objects.cc:660:22: error: use of undeclared identifier 'FALSE'
+                     FALSE, &status);
+                     ^
+../deps/v8/src/objects/intl-objects.cc:799:22: error: use of undeclared identifier 'FALSE'
+                     FALSE, &status);
+                     ^
+../deps/v8/src/runtime/runtime-intl.cc:88:66: error: use of undeclared identifier 'TRUE'
+  uloc_toLanguageTag(icu_result, result, ULOC_FULLNAME_CAPACITY, TRUE, &error);
+                                                                 ^
+../deps/v8/src/runtime/runtime-intl.cc:135:66: error: use of undeclared identifier 'FALSE'
+    uloc_toLanguageTag(icu_name, result, ULOC_FULLNAME_CAPACITY, FALSE, &error);
+                                                                 ^
+../deps/v8/src/runtime/runtime-intl.cc:167:22: error: use of undeclared identifier 'FALSE'
+                     FALSE, &status);
+                     ^
+../deps/v8/src/runtime/runtime-intl.cc:402:9: error: use of undeclared identifier 'FALSE'
+        FALSE, GetUCharBufferFromFlat(flat1, &sap1, length1), length1);
+        ^
+../deps/v8/src/runtime/runtime-intl.cc:404:9: error: use of undeclared identifier 'FALSE'
+        FALSE, GetUCharBufferFromFlat(flat2, &sap2, length2), length2);
+        ^
+
+--- deps/v8/src/objects/intl-objects.cc.orig	2020-09-15 13:25:38 UTC
++++ deps/v8/src/objects/intl-objects.cc
+@@ -243,7 +243,7 @@ void SetResolvedDateSettings(Isolate* isolate, const i
+   char result[ULOC_FULLNAME_CAPACITY];
+   status = U_ZERO_ERROR;
+   uloc_toLanguageTag(icu_locale.getName(), result, ULOC_FULLNAME_CAPACITY,
+-                     FALSE, &status);
++                     false, &status);
+   if (U_SUCCESS(status)) {
+     JSObject::SetProperty(resolved, factory->NewStringFromStaticChars("locale"),
+                           factory->NewStringFromAsciiChecked(result),
+@@ -422,7 +422,7 @@ void SetResolvedNumericSettings(Isolate* isolate, cons
+   char result[ULOC_FULLNAME_CAPACITY];
+   UErrorCode status = U_ZERO_ERROR;
+   uloc_toLanguageTag(icu_locale.getName(), result, ULOC_FULLNAME_CAPACITY,
+-                     FALSE, &status);
++                     false, &status);
+   if (U_SUCCESS(status)) {
+     JSObject::SetProperty(resolved, factory->NewStringFromStaticChars("locale"),
+                           factory->NewStringFromAsciiChecked(result),
+@@ -657,7 +657,7 @@ void SetResolvedCollatorSettings(Isolate* isolate,
+   char result[ULOC_FULLNAME_CAPACITY];
+   status = U_ZERO_ERROR;
+   uloc_toLanguageTag(icu_locale.getName(), result, ULOC_FULLNAME_CAPACITY,
+-                     FALSE, &status);
++                     false, &status);
+   if (U_SUCCESS(status)) {
+     JSObject::SetProperty(resolved, factory->NewStringFromStaticChars("locale"),
+                           factory->NewStringFromAsciiChecked(result),
+@@ -796,7 +796,7 @@ void SetResolvedBreakIteratorSettings(Isolate* isolate
+   char result[ULOC_FULLNAME_CAPACITY];
+   status = U_ZERO_ERROR;
+   uloc_toLanguageTag(icu_locale.getName(), result, ULOC_FULLNAME_CAPACITY,
+-                     FALSE, &status);
++                     false, &status);
+   if (U_SUCCESS(status)) {
+     JSObject::SetProperty(resolved, factory->NewStringFromStaticChars("locale"),
+                           factory->NewStringFromAsciiChecked(result),
+--- deps/v8/src/runtime/runtime-intl.cc.orig	2020-09-15 13:25:38 UTC
++++ deps/v8/src/runtime/runtime-intl.cc
+@@ -85,7 +85,7 @@ RUNTIME_FUNCTION(Runtime_CanonicalizeLanguageTag) {
+   char result[ULOC_FULLNAME_CAPACITY];
+ 
+   // Force strict BCP47 rules.
+-  uloc_toLanguageTag(icu_result, result, ULOC_FULLNAME_CAPACITY, TRUE, &error);
++  uloc_toLanguageTag(icu_result, result, ULOC_FULLNAME_CAPACITY, true, &error);
+ 
+   if (U_FAILURE(error) || error == U_STRING_NOT_TERMINATED_WARNING) {
+     return *factory->NewStringFromAsciiChecked(kInvalidTag);
+@@ -132,7 +132,7 @@ RUNTIME_FUNCTION(Runtime_AvailableLocalesOf) {
+ 
+     error = U_ZERO_ERROR;
+     // No need to force strict BCP47 rules.
+-    uloc_toLanguageTag(icu_name, result, ULOC_FULLNAME_CAPACITY, FALSE, &error);
++    uloc_toLanguageTag(icu_name, result, ULOC_FULLNAME_CAPACITY, false, &error);
+     if (U_FAILURE(error) || error == U_STRING_NOT_TERMINATED_WARNING) {
+       // This shouldn't happen, but lets not break the user.
+       continue;
+@@ -164,7 +164,7 @@ RUNTIME_FUNCTION(Runtime_GetDefaultICULocale) {
+   char result[ULOC_FULLNAME_CAPACITY];
+   UErrorCode status = U_ZERO_ERROR;
+   uloc_toLanguageTag(default_locale.getName(), result, ULOC_FULLNAME_CAPACITY,
+-                     FALSE, &status);
++                     false, &status);
+   if (U_SUCCESS(status)) {
+     return *factory->NewStringFromAsciiChecked(result);
+   }
+@@ -399,9 +399,9 @@ RUNTIME_FUNCTION(Runtime_InternalCompare) {
+     std::unique_ptr<uc16[]> sap1;
+     std::unique_ptr<uc16[]> sap2;
+     icu::UnicodeString string_val1(
+-        FALSE, GetUCharBufferFromFlat(flat1, &sap1, length1), length1);
++        false, GetUCharBufferFromFlat(flat1, &sap1, length1), length1);
+     icu::UnicodeString string_val2(
+-        FALSE, GetUCharBufferFromFlat(flat2, &sap2, length2), length2);
++        false, GetUCharBufferFromFlat(flat2, &sap2, length2), length2);
+     result = collator->compare(string_val1, string_val2, status);
+   }
+   if (U_FAILURE(status)) return isolate->ThrowIllegalOperation();



More information about the arch-commits mailing list