<pre style='margin:0'>
Mohamed Akram (mohd-akram) pushed a commit to branch master
in repository macports-ports.
</pre>
<p><a href="https://github.com/macports/macports-ports/commit/c5441ec9813d0ad423ee3dd5f57461456dab5ece">https://github.com/macports/macports-ports/commit/c5441ec9813d0ad423ee3dd5f57461456dab5ece</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'> new c5441ec9813 nodejs14: fix build with ICU 76
</span>c5441ec9813 is described below
<span style='display:block; white-space:pre;color:#808000;'>commit c5441ec9813d0ad423ee3dd5f57461456dab5ece
</span>Author: Mohamed Akram <makr@macports.org>
AuthorDate: Tue Dec 17 20:27:08 2024 +0400
<span style='display:block; white-space:pre;color:#404040;'> nodejs14: fix build with ICU 76
</span>---
devel/nodejs14/Portfile | 7 +++++--
devel/nodejs14/files/patch-configure.diff | 27 +++++++++++++++++++++++++++
2 files changed, 32 insertions(+), 2 deletions(-)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/nodejs14/Portfile b/devel/nodejs14/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 0978979c626..d66ef43e5fc 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/nodejs14/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/nodejs14/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -15,7 +15,9 @@ openssl.branch 1.1
</span> openssl.configure pkgconfig build_flags
configure.cxx_stdlib libc++
<span style='display:block; white-space:pre;background:#ffe0e0;'>-compiler.cxx_standard 2014
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# C++17 required for ICU
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+compiler.cxx_standard 2017
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.cxxflags-append -std=c++17
</span>
name nodejs14
version 14.21.3
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -64,7 +66,8 @@ proc rec_glob {basedir pattern} {
</span> }
configure.python ${prefix}/bin/python${py_ver}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-patchfiles patch-common.gypi.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles patch-common.gypi.diff \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ patch-configure.diff
</span>
post-patch {
foreach f [concat ${worksrcpath}/configure \
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/nodejs14/files/patch-configure.diff b/devel/nodejs14/files/patch-configure.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..7a3da9d2e8b
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/nodejs14/files/patch-configure.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,27 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 54299ac3a3d4e4520b8604dce43c2584092ccde2 Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From: Michael Cho <michael@michaelcho.dev>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Date: Sun, 27 Oct 2024 10:08:07 -0400
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Subject: [PATCH] build: fix building with system icu 76
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ICU 76 decided to reduce overlinking[^1] thus `icu-i18n` will no longer
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+add `icu-uc` when linking to shared libraries. This results in undefined
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+symbols/references when trying to build with system ICU 76.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+[^1]: unicode-org/icu@199bc82
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+---
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.py | 2 +-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 1 file changed, 1 insertion(+), 1 deletion(-)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/configure.py b/configure.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index a5f47af1748903..a4e210261e2e76 100755
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- configure.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ configure.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1521,7 +1521,7 @@ def icu_download(path):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ elif with_intl == 'system-icu':
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # ICU from pkg-config.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ o['variables']['v8_enable_i18n_support'] = 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- pkgicu = pkg_config('icu-i18n')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ pkgicu = pkg_config(['icu-i18n', 'icu-uc'])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if not pkgicu[0]:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ error('''Could not load pkg-config data for "icu-i18n".
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ See above errors or the README.md.''')
</span></pre><pre style='margin:0'>
</pre>