forked from openembedded/meta-openembedded
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
nodejs: backport (partially) python 3.12 support
Signed-off-by: Alexander Kanavin <alex@linutronix.de> Signed-off-by: Khem Raj <raj.khem@gmail.com>
- Loading branch information
Showing
3 changed files
with
121 additions
and
1 deletion.
There are no files selected for viewing
55 changes: 55 additions & 0 deletions
55
meta-oe/recipes-devtools/nodejs/nodejs/0001-build-fix-build-with-Python-3.12.patch
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,55 @@ | ||
From 656f6c91f1da7f1e1ffb01e2de7d9026a84958b5 Mon Sep 17 00:00:00 2001 | ||
From: Luigi Pinca <luigipinca@gmail.com> | ||
Date: Wed, 8 Nov 2023 21:20:53 +0100 | ||
Subject: [PATCH] build: fix build with Python 3.12 | ||
|
||
Replace `distutils.version.StrictVersion` with | ||
`packaging.version.Version`. | ||
|
||
Refs: https://github.com/nodejs/node/pull/50209#issuecomment-1795852539 | ||
PR-URL: https://github.com/nodejs/node/pull/50582 | ||
Reviewed-By: Richard Lau <rlau@redhat.com> | ||
Reviewed-By: Chengzhong Wu <legendecas@gmail.com> | ||
|
||
Upstream-Status: Backport [https://github.com/nodejs/node/commit/95534ad82f4e33f53fd50efe633d43f8da70cba6] | ||
Signed-off-by: Alexander Kanavin <alex@linutronix.de> | ||
--- | ||
configure.py | 11 +++++------ | ||
1 file changed, 5 insertions(+), 6 deletions(-) | ||
|
||
diff --git a/configure.py b/configure.py | ||
index 62f041ce..18fe7c14 100755 | ||
--- a/configure.py | ||
+++ b/configure.py | ||
@@ -14,8 +14,6 @@ import bz2 | ||
import io | ||
from pathlib import Path | ||
|
||
-from distutils.version import StrictVersion | ||
- | ||
# If not run from node/, cd to node/. | ||
os.chdir(Path(__file__).parent) | ||
|
||
@@ -30,6 +28,7 @@ tools_path = Path('tools') | ||
|
||
sys.path.insert(0, str(tools_path / 'gyp' / 'pylib')) | ||
from gyp.common import GetFlavor | ||
+from packaging.version import Version | ||
|
||
# imports in tools/configure.d | ||
sys.path.insert(0, str(tools_path / 'configure.d')) | ||
@@ -1565,10 +1564,10 @@ def configure_openssl(o): | ||
# supported asm compiler for AVX2. See https://github.com/openssl/openssl/ | ||
# blob/OpenSSL_1_1_0-stable/crypto/modes/asm/aesni-gcm-x86_64.pl#L52-L69 | ||
openssl110_asm_supported = \ | ||
- ('gas_version' in variables and StrictVersion(variables['gas_version']) >= StrictVersion('2.23')) or \ | ||
- ('xcode_version' in variables and StrictVersion(variables['xcode_version']) >= StrictVersion('5.0')) or \ | ||
- ('llvm_version' in variables and StrictVersion(variables['llvm_version']) >= StrictVersion('3.3')) or \ | ||
- ('nasm_version' in variables and StrictVersion(variables['nasm_version']) >= StrictVersion('2.10')) | ||
+ ('gas_version' in variables and Version(variables['gas_version']) >= Version('2.23')) or \ | ||
+ ('xcode_version' in variables and Version(variables['xcode_version']) >= Version('5.0')) or \ | ||
+ ('llvm_version' in variables and Version(variables['llvm_version']) >= Version('3.3')) or \ | ||
+ ('nasm_version' in variables and Version(variables['nasm_version']) >= Version('2.10')) | ||
|
||
if is_x86 and not openssl110_asm_supported: | ||
error('''Did not find a new enough assembler, install one or build with |
63 changes: 63 additions & 0 deletions
63
meta-oe/recipes-devtools/nodejs/nodejs/0001-gyp-resolve-python-3.12-issues.patch
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,63 @@ | ||
From bf8c96ba6936050ed4a0de5bc8aeeaf2b3c50dc1 Mon Sep 17 00:00:00 2001 | ||
From: Alexander Kanavin <alex@linutronix.de> | ||
Date: Thu, 7 Dec 2023 12:54:30 +0100 | ||
Subject: [PATCH] gyp: resolve python 3.12 issues | ||
|
||
Upstream has updated gyp wholesale in the main branch, so | ||
this patch can be dropped in due time. | ||
|
||
Upstream-Status: Inappropriate [issue will be fixed upstream with the next nodejs LTS update] | ||
|
||
Signed-off-by: Alexander Kanavin <alex@linutronix.de> | ||
--- | ||
deps/npm/node_modules/node-gyp/gyp/pylib/gyp/input.py | 4 ++-- | ||
tools/gyp/pylib/gyp/input.py | 4 ++-- | ||
2 files changed, 4 insertions(+), 4 deletions(-) | ||
|
||
diff --git a/deps/npm/node_modules/node-gyp/gyp/pylib/gyp/input.py b/deps/npm/node_modules/node-gyp/gyp/pylib/gyp/input.py | ||
index d9699a0a..173e9465 100644 | ||
--- a/deps/npm/node_modules/node-gyp/gyp/pylib/gyp/input.py | ||
+++ b/deps/npm/node_modules/node-gyp/gyp/pylib/gyp/input.py | ||
@@ -16,7 +16,7 @@ import subprocess | ||
import sys | ||
import threading | ||
import traceback | ||
-from distutils.version import StrictVersion | ||
+from packaging.version import Version | ||
from gyp.common import GypError | ||
from gyp.common import OrderedSet | ||
|
||
@@ -1183,7 +1183,7 @@ def EvalSingleCondition(cond_expr, true_dict, false_dict, phase, variables, buil | ||
else: | ||
ast_code = compile(cond_expr_expanded, "<string>", "eval") | ||
cached_conditions_asts[cond_expr_expanded] = ast_code | ||
- env = {"__builtins__": {}, "v": StrictVersion} | ||
+ env = {"__builtins__": {}, "v": Version} | ||
if eval(ast_code, env, variables): | ||
return true_dict | ||
return false_dict | ||
diff --git a/tools/gyp/pylib/gyp/input.py b/tools/gyp/pylib/gyp/input.py | ||
index 354958bf..ab6112e5 100644 | ||
--- a/tools/gyp/pylib/gyp/input.py | ||
+++ b/tools/gyp/pylib/gyp/input.py | ||
@@ -16,7 +16,7 @@ import subprocess | ||
import sys | ||
import threading | ||
import traceback | ||
-from distutils.version import StrictVersion | ||
+from packaging.version import Version | ||
from gyp.common import GypError | ||
from gyp.common import OrderedSet | ||
|
||
@@ -1190,7 +1190,7 @@ def EvalSingleCondition(cond_expr, true_dict, false_dict, phase, variables, buil | ||
else: | ||
ast_code = compile(cond_expr_expanded, "<string>", "eval") | ||
cached_conditions_asts[cond_expr_expanded] = ast_code | ||
- env = {"__builtins__": {}, "v": StrictVersion} | ||
+ env = {"__builtins__": {}, "v": Version} | ||
if eval(ast_code, env, variables): | ||
return true_dict | ||
return false_dict | ||
-- | ||
2.39.2 | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters