build,test: add proper support for IBM i

Python 3.9 on IBM i now properly returns "os400" for sys.platform
instead of claiming to be AIX as it did previously. While the IBM i PASE
environment is compatible with AIX, it is a subset and has numerous
differences which makes it beneficial to distinguish, however this means
that it now needs explicit support here.

PR-URL: https://github.com/nodejs/node/pull/46739
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Richard Lau <rlau@redhat.com>
This commit is contained in:
Xu Meng 2023-02-22 12:18:56 +08:00 committed by GitHub
parent 655b070d31
commit a3211e18b4
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
17 changed files with 59 additions and 36 deletions

View file

@ -156,7 +156,7 @@
},
},
'conditions': [
['OS!="aix" and OS!="ios" and node_shared=="false"', {
['OS!="aix" and OS!="os400" and OS!="ios" and node_shared=="false"', {
'ldflags': [
'-Wl,--whole-archive',
'<(obj_dir)/deps/zlib/<(STATIC_LIB_PREFIX)zlib<(STATIC_LIB_SUFFIX)',
@ -195,7 +195,7 @@
},
},
'conditions': [
['OS!="aix" and OS!="ios" and node_shared=="false"', {
['OS!="aix" and OS!="os400" and OS!="ios" and node_shared=="false"', {
'ldflags': [
'-Wl,--whole-archive',
'<(obj_dir)/deps/uv/<(STATIC_LIB_PREFIX)uv<(STATIC_LIB_SUFFIX)',
@ -233,7 +233,7 @@
'-lkvm',
],
}],
[ 'OS=="aix"', {
[ 'OS in "aix os400"', {
'defines': [
'_LINUX_SOURCE_COMPAT',
'__STDC_FORMAT_MACROS',