Skip to content

Commit fc0565a

Browse files
abmussealexfernandez
authored andcommitted
deps: V8: cherry-pick 8ec2651fbdd8
Original commit message: fix: EmbeddedTargetOs on IBM i with Python 3.9 For some context, Python 3.9 on IBM i returns "os400" for sys.platform instead of "aix". We used to build with Python 3.6 which returned "aix" as the platform When attempting to build Node.js with python 3.9 on IBM i we run into a build error. Ref: nodejs#48056 Ref: nodejs#48056 (comment) I'm not quite sure where target_os is being passed down to the function ToEmbeddedTargetOs. It seems as though target_os is being generated from sys.platform or similar call from python as we started running into this issue after building with Python 3.9. This PR supersedes initial changes proposed in: https://chromium-review.googlesource.com/c/v8/v8/+/4259330 This PR contains the minimal changes to successfully build Node.js (builds v8 as an internal dep) on IBM i with Python 3.9. Change-Id: I32d43197bce994a72a0d85091e91f80eeea4482d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4846413 Commit-Queue: Jakob Linke <jgruber@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Reviewed-by: Jakob Linke <jgruber@chromium.org> Cr-Commit-Position: refs/heads/main@{#89981} Refs: v8/v8@8ec2651 PR-URL: nodejs#49862 Reviewed-By: Richard Lau <rlau@redhat.com> Reviewed-By: Michael Dawson <midawson@redhat.com>
1 parent 2b6a221 commit fc0565a

File tree

2 files changed

+3
-2
lines changed

2 files changed

+3
-2
lines changed

common.gypi

+1-1
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@
3636

3737
# Reset this number to 0 on major V8 upgrades.
3838
# Increment by one for each non-official patch applied to deps/v8.
39-
'v8_embedder_string': '-node.18',
39+
'v8_embedder_string': '-node.19',
4040

4141
##### V8 defaults for Node.js #####
4242

deps/v8/src/snapshot/embedded/platform-embedded-file-writer-base.cc

+2-1
Original file line numberDiff line numberDiff line change
@@ -130,7 +130,8 @@ EmbeddedTargetOs ToEmbeddedTargetOs(const char* s) {
130130
}
131131

132132
std::string string(s);
133-
if (string == "aix") {
133+
// Python 3.9+ on IBM i returns os400 as sys.platform instead of aix
134+
if (string == "aix" || string == "os400") {
134135
return EmbeddedTargetOs::kAIX;
135136
} else if (string == "chromeos") {
136137
return EmbeddedTargetOs::kChromeOS;

0 commit comments

Comments
 (0)