Repository navigation
Conversation
|
Review requested:
|
|
Shared library build at https://ci.nodejs.org/job/node-test-commit-aix-shared-lib/nodes=aix73-power9/2617 worked with one exception - but that's much better than previously. Noting that the test does have a block for Windows: but in our case it does pass on AIX in the non-shared builds. Incoming force push to update commit message, but no extra code changes. |
|
reason for the failure may be related to the runtimelin linking options (or lack of them!) in the shared library builds. Latest commit will try to resolve that by adding this to the shared library clause: Related: #15286 |
Signed-off-by: Stewart X Addison <sxa@ibm.com> Assisted-by: Cursor
e00951e to
71e6723
Compare
Signed-off-by: Stewart X Addison <sxa@ibm.com>
|
Second commit here updates the pingpong test so that it works as well. This could reasonably be a separate PR so if that is desired I can split it out. The functionality can be reviewed separately, which is why I have not squashed the PRs. This is the first time I've looked at this test but it seems quite unique in some of what it does, and happens to trip up on AIX's shared library scenario. The test does three things: load On AIX, ping.so was built with With the fix:
[*] - Replacing assert with explicit checks that throw into JavaScript makes Release behave like a real test failure instead of a silent native crash. |
|
https://ci.nodejs.org/job/node-test-commit-aix-shared-lib/2623/ passes with this PR :-) |
Signed-off-by: Stewart X Addison <sxa@ibm.com>
|
The linter check is objecting to the single quotes being used for the inlined |
Signed-off-by: Stewart X Addison <sxa@ibm.com>
|
Looks like the github actions runs are all over the place: but they were passing successfully prior to the linter fixes so I am not concerned about them. EDIT: https://status.canonical.com/#/ shows that they are having problems at the moment |
Modifications to make the exports file available so that the addons tests work in the shared library builds:
test/addons/.headersbuildstamphas a dependency on the export filelibnode.exptonode.expnodestub with-Wl,-bE:<PRODUCT_DIR>/node.expto re-export the symbol set from the shared library.gen/node_snapshot.o) could get missed as the expfile action could run before it was in place. Theawkscript increate_expfile.shis abstracted out and used twice - once for the.afiles as before and once for.ofiles. This isSymbols which would have been missing from the previous solution that come from the snapshot object file:
If there was a desire to have a minimal change in this patch we could take this part out which would also remove the need for the extra parameter for the
create_expfile.sh.The script was updated to:
dump -tov(including HIDDEN filtering).obj.target/<target>/*.ofor the current target (e.g.libnode).expfile_extra_inputsso make orders the expfile step after snapshot objects exist.Files touched
Makefilenode.expprereq + build rule for addon/doc headers on AIX/OS400node.gypgenerate_node_exp, thinnodeldflags,expfile_extra_inputsonlibnodenode.gypicreate_expfile.shinvocationtools/create_expfile.sh.ofiles, snapshot ordering,dump -tovpreservednode.gyp-Wl,-brtlon shared AIXnode(often redundant)Changes are also being verified on ibmi to ensure they do not break anything there: https://ci.nodejs.org/job/node-test-commit-ibmi/2534/