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 <mylesbor...@google.com> 77984A986EBC2AA786BC0F66B01FBB92821C587A # Gibson Fahnestock <gibf...@gmail.com> B9AE9905FFD7803F25714661B63B535A4C206CA9 # Evan Lucas <evanlu...@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();