[PATCH core-updates] gnu: node: Fix build.

  • Done
  • quality assurance status badge
Details
2 participants
  • Jonathan Brielmaier
  • Mathieu Othacehe
Owner
unassigned
Submitted by
Jonathan Brielmaier
Severity
normal

Debbugs page

Jonathan Brielmaier wrote 4 years ago
(address . guix-patches@gnu.org)(name . Jonathan Brielmaier)(address . jonathan.brielmaier@web.de)
20210605093829.20999-1-jonathan.brielmaier@web.de
Newer icu versions do not define and export FALSE anymore, thus leading
to a build error.

* gnu/packages/patches/node-10.24-fix-build.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it.
* gnu/packages/node.scm (source): Use patch.
---
gnu/local.mk | 1 +
gnu/packages/node.scm | 1 +
.../patches/node-10.24-fix-build.patch | 86 +++++++++++++++++++
3 files changed, 88 insertions(+)
create mode 100644 gnu/packages/patches/node-10.24-fix-build.patch

Toggle diff (116 lines)
diff --git a/gnu/local.mk b/gnu/local.mk
index 1e8dab8989..b0707dc92c 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1441,6 +1441,7 @@ dist_patch_DATA = \
%D%/packages/patches/ngircd-handle-zombies.patch \
%D%/packages/patches/network-manager-plugin-path.patch \
%D%/packages/patches/nginx-socket-cloexec.patch \
+ %D%/packages/patches/node-10.24-fix-build.patch \
%D%/packages/patches/nsis-env-passthru.patch \
%D%/packages/patches/nss-increase-test-timeout.patch \
%D%/packages/patches/nss-3.56-pkgconfig.patch \
diff --git a/gnu/packages/node.scm b/gnu/packages/node.scm
index 4e80dd4d4e..1d94ec54c5 100644
--- a/gnu/packages/node.scm
+++ b/gnu/packages/node.scm
@@ -61,6 +61,7 @@
(sha256
(base32
"1k1srdis23782hnd1ymgczs78x9gqhv77v0am7yb54gqcspp70hm"))
+ (patches (search-patches "node-10.24-fix-build.patch"))
(modules '((guix build utils)))
(snippet
`(begin
diff --git a/gnu/packages/patches/node-10.24-fix-build.patch b/gnu/packages/patches/node-10.24-fix-build.patch
new file mode 100644
index 0000000000..ef255c1016
--- /dev/null
+++ b/gnu/packages/patches/node-10.24-fix-build.patch
@@ -0,0 +1,86 @@
+Taken from openSUSE:
+https://build.opensuse.org/package/show/devel:languages:nodejs/nodejs10
+
+Author: Callum Farmer <gmbr3@opensuse.org>
+Date: Mon Dec 21 20:10:03 UTC 2020
+Subject: ICU68 no longer defines TRUE and FALSE
+===============================================================
+--- a/deps/v8/src/objects/intl-objects.cc
++++ b/deps/v8/src/objects/intl-objects.cc
+@@ -243,7 +243,7 @@
+ 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 @@
+ 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 @@
+ 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 @@
+ 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),
+--- a/deps/v8/src/runtime/runtime-intl.cc
++++ b/deps/v8/src/runtime/runtime-intl.cc
+@@ -85,7 +85,7 @@
+ 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 @@
+
+ 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 @@
+ 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 @@
+ 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();
--
2.31.1
Mathieu Othacehe wrote 4 years ago
(name . Jonathan Brielmaier)(address . jonathan.brielmaier@web.de)(address . 48845-done@debbugs.gnu.org)
87bl7cvhh5.fsf@gnu.org
Hello Jonathan,

Toggle quote (4 lines)
> * gnu/packages/patches/node-10.24-fix-build.patch: New file.
> * gnu/local.mk (dist_patch_DATA): Register it.
> * gnu/packages/node.scm (source): Use patch.

It appears that Marius fixed it with
0861dbdef68cb979471e8c2ffc5e5afca209632c.

Thanks,

Mathieu
Closed
?
Your comment

This issue is archived.

To comment on this conversation send an email to 48845@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 48845
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch
You may also tag this issue. See list of standard tags. For example, to set the confirmed and easy tags
mumi command -t +confirmed -t +easy
Or, remove the moreinfo tag and set the help tag
mumi command -t -moreinfo -t +help