1022 Commits

Author SHA1 Message Date
Richard Lau
61a0d3b4c4
deps: V8: backport c4be0a97f981
Original commit message:

    Fix build with gcc12

    - A number of erroneous flags have been added to BUILD.gn
    - wasm-init-expr.cc is creating an 8 byte buffer witch may be
      much smaller than max size_t output. We also need to make room
      for the `f` character and the terminating null character
    - inspector_protocol currently generates the following error
       ```
       error: loop variable ‘json_in’ of type ‘const std::string&’ {aka
       ‘const std::__cxx11::basic_string<char>&’} binds to a temporary
       constructed from type ‘const char* const’
       ```

    Change-Id: I1139899b2664e47d01ebc44f2e972fc4c0ec212d
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5331756
    Reviewed-by: Matthias Liedtke <mliedtke@chromium.org>
    Commit-Queue: Milad Farazmand <mfarazma@redhat.com>
    Reviewed-by: Toon Verwaest <verwaest@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#92615}

Refs: c4be0a97f9
PR-URL: https://github.com/nodejs/node/pull/52183
Refs: f8d5e576b8
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
PR-URL: https://github.com/nodejs/node/pull/51362
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
2024-03-31 15:37:04 +02:00
Richard Lau
f55380a725
deps: V8: cherry-pick f8d5e576b814
Original commit message:

    Fix build with older versions of GCC.

    This ports the change from bazel on v8:
    https://crrev.com/c/3368869

    Compilation errors started showing after this CL:
    https://crrev.com/c/5199515

    Change-Id: I8c161a0d9ad5c04d452c444ef4feafae2ef4f6db
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5280535
    Reviewed-by: Leszek Swirski <leszeks@chromium.org>
    Commit-Queue: Milad Farazmand <mfarazma@redhat.com>
    Cr-Commit-Position: refs/heads/main@{#92252}

Refs: f8d5e576b8
PR-URL: https://github.com/nodejs/node/pull/52183
Refs: c4be0a97f9
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
PR-URL: https://github.com/nodejs/node/pull/51362
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
2024-03-31 15:37:03 +02:00
StefanStojanovic
b9d806a2dd
deps: patch V8 to support compilation with MSVC
This patches V8 v12.2 for Windows, by fixing multiple compilation
errors caused by V8 being a Clang-oriented project. There are various
types of errors fixed by this going from changing `using` directives
and renaming to overcoming the differences in which Clang and MSVC see
templates and metaprogramming.

The changes introduced here are strictly meant as a patch only, so they
shouldn't be pushed upstream.

Refs: https://github.com/targos/node/pull/13
Refs: https://github.com/targos/node/pull/14
PR-URL: https://github.com/nodejs/node/pull/51362
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
2024-03-31 15:36:55 +02:00
Michaël Zasso
63b58bc17b
deps: patch V8 to avoid duplicated zlib symbol
PR-URL: https://github.com/nodejs/node/pull/49639
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
PR-URL: https://github.com/nodejs/node/pull/51362
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
2024-03-31 15:36:46 +02:00
Michaël Zasso
86056353c4
deps: remove usage of a C++20 feature from V8
We are not ready to compile with C++20 support yet.
This is only a DCHECK that can be removed without affecting the behavior
of release builds.

PR-URL: https://github.com/nodejs/node/pull/49639
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
PR-URL: https://github.com/nodejs/node/pull/51362
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
2024-03-31 15:36:39 +02:00
Michaël Zasso
2e0efc1c8d
deps: avoid compilation error with ASan
Refs: https://bugs.chromium.org/p/v8/issues/detail?id=14221
PR-URL: https://github.com/nodejs/node/pull/49639
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
PR-URL: https://github.com/nodejs/node/pull/51362
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
2024-03-31 15:36:37 +02:00
Michaël Zasso
59e6f62e34
deps: disable V8 concurrent sparkplug compilation
It introduces process hangs on some platforms because Node.js doesn't
tear down V8 correctly.
Disable it while we work on a solution.

Refs: https://github.com/nodejs/node/issues/47297
Refs: https://bugs.chromium.org/p/v8/issues/detail?id=13902
PR-URL: https://github.com/nodejs/node/pull/47450
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Michael Dawson <midawson@redhat.com>
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
PR-URL: https://github.com/nodejs/node/pull/51362
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
2024-03-31 15:36:34 +02:00
Michaël Zasso
0423f7e27e
deps: silence irrelevant V8 warning
PR-URL: https://github.com/nodejs/node/pull/45579
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
PR-URL: https://github.com/nodejs/node/pull/51362
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
2024-03-31 15:36:30 +02:00
Michaël Zasso
f36620806d
deps: always define V8_EXPORT_PRIVATE as no-op
dllexport introduces issues when compiling with MSVC.

PR-URL: https://github.com/nodejs/node/pull/47251
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Richard Lau <rlau@redhat.com>
PR-URL: https://github.com/nodejs/node/pull/51362
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
2024-03-31 15:36:26 +02:00
Michaël Zasso
94f0369d1d
build: reset embedder string to "-node.0"
PR-URL: https://github.com/nodejs/node/pull/51362
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
2024-03-31 15:36:10 +02:00
Richard Lau
f6996ee150 deps: V8: backport c4be0a97f981
Original commit message:

    Fix build with gcc12

    - A number of erroneous flags have been added to BUILD.gn
    - wasm-init-expr.cc is creating an 8 byte buffer witch may be
      much smaller than max size_t output. We also need to make room
      for the `f` character and the terminating null character
    - inspector_protocol currently generates the following error
       ```
       error: loop variable ‘json_in’ of type ‘const std::string&’ {aka
       ‘const std::__cxx11::basic_string<char>&’} binds to a temporary
       constructed from type ‘const char* const’
       ```

    Change-Id: I1139899b2664e47d01ebc44f2e972fc4c0ec212d
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5331756
    Reviewed-by: Matthias Liedtke <mliedtke@chromium.org>
    Commit-Queue: Milad Farazmand <mfarazma@redhat.com>
    Reviewed-by: Toon Verwaest <verwaest@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#92615}

Refs: c4be0a97f9
PR-URL: https://github.com/nodejs/node/pull/52183
Refs: f8d5e576b8
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2024-03-23 19:49:42 +00:00
Richard Lau
0d4bc4c40e deps: V8: cherry-pick f8d5e576b814
Original commit message:

    Fix build with older versions of GCC.

    This ports the change from bazel on v8:
    https://crrev.com/c/3368869

    Compilation errors started showing after this CL:
    https://crrev.com/c/5199515

    Change-Id: I8c161a0d9ad5c04d452c444ef4feafae2ef4f6db
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5280535
    Reviewed-by: Leszek Swirski <leszeks@chromium.org>
    Commit-Queue: Milad Farazmand <mfarazma@redhat.com>
    Cr-Commit-Position: refs/heads/main@{#92252}

Refs: f8d5e576b8
PR-URL: https://github.com/nodejs/node/pull/52183
Refs: c4be0a97f9
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2024-03-23 19:49:41 +00:00
Rafael Gonzaga
ba06c5c509
build,tools: add test-ubsan ci
Signed-off-by: RafaelGSS <rafael.nunu@hotmail.com>
Co-Authored-By: Santiago Gimeno <santiago.gimeno@gmail.com>
PR-URL: https://github.com/nodejs/node/pull/46297
Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com>
Reviewed-By: Jan Krems <jan.krems@gmail.com>
2024-03-15 17:49:51 +00:00
Joyee Cheung
a3e0834ee4
deps: V8: cherry-pick efb1133eb894
Original commit message:

    [api] Add v8::ScriptCompiler::CachedData::CompatibilityCheck()

    This patch adds a new API v8::ScriptCompiler::CachedData::CompatibilityCheck()
    in order to allow embedders to check if the code cache can be used in
    the current isolate without looking up for the source code. It also returns more detailed reasons about why the code cache cannot be used
    when it's bound to be rejected. This makes it possible to enforce
    portability checks in case code code becomes CPU-dependent in the
    future.

    Refs: https://github.com/nodejs/node/issues/42566#issuecomment-1735862123

    Change-Id: Ia1d677b949050add961af6fbf62c44342c061312
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4905290
    Reviewed-by: Marja Hölttä <marja@chromium.org>
    Reviewed-by: Toon Verwaest <verwaest@chromium.org>
    Commit-Queue: Joyee Cheung <joyee@igalia.com>
    Cr-Commit-Position: refs/heads/main@{#90833}

Refs: efb1133eb8
PR-URL: https://github.com/nodejs/node/pull/51551
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2024-02-01 11:53:59 +00:00
Keyhan Vakil
0da3beebfc
deps: V8: cherry-pick de611e69ad51
Original commit message:

    [maglev] fix non-ptr-compr compilation on old compilers

    When pointer compression is disabled, the preprocessor expands some
    static asserts to static_assert(false), which doesn't compile on
    compilers not implementing the C++ defect report CWG2518, notably clang
    before version 17 and gcc before version 13.

    Adding in part of the template parameter to the static assert prevents
    it from being evaluated immediately which fixes the compilation.

    Test: compiled with gcc-11 and clang-14 without pointer compression.
    Change-Id: I95ce29bdb1278e6dad9e592d6f9476395f8aeb59
    Fixed: v8:14355
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5022760
    Reviewed-by: Leszek Swirski <leszeks@chromium.org>
    Commit-Queue: Leszek Swirski <leszeks@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#91553}

Refs: de611e69ad
PR-URL: https://github.com/nodejs/node/pull/51200
Refs: https://github.com/nodejs/node/issues/50690
Reviewed-By: Yagiz Nizipli <yagiz.nizipli@sentry.io>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Richard Lau <rlau@redhat.com>
PR-URL: https://github.com/nodejs/node/pull/50115
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Michael Dawson <midawson@redhat.com>
2024-01-04 09:31:51 +01:00
Joyee Cheung
b982335637
deps: V8: cherry-pick 0fd478bcdabd
Original commit message:

    [heap-profiler]: expose QueryObjects() to v8::HeapProfiler

    This allows embedders to use this API for testing memory leaks more
    reliably. See https://github.com/nodejs/node/pull/50572 for an
    example about how the API can be used.

    Change-Id: Ic3d1268e2b331c37e8ec92997b764b9b5486f8c2
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5006373
    Reviewed-by: Camillo Bruni <cbruni@chromium.org>
    Reviewed-by: Simon Zünd <szuend@chromium.org>
    Commit-Queue: Joyee Cheung <joyee@igalia.com>
    Cr-Commit-Position: refs/heads/main@{#91123}

Refs: 0fd478bcda
PR-URL: https://github.com/nodejs/node/pull/50572
Reviewed-By: Geoffrey Booth <webadmin@geoffreybooth.com>
Reviewed-By: Stephen Belanger <admin@stephenbelanger.com>
PR-URL: https://github.com/nodejs/node/pull/50115
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Michael Dawson <midawson@redhat.com>
2024-01-04 09:31:46 +01:00
Chengzhong Wu
481a90116c
deps: V8: cherry-pick 0f9ebbc672c7
Original commit message:

    [flags] Remove --harmony-string-is-well-formed

    The String.prototype.isWellFormed and toWellFormed have shipped
    since M111.

    Bug: v8:13557
    Change-Id: I27e332d2fde0f9ea8ad649c016a84d2d3e0bf592
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4931269
    Reviewed-by: Shu-yu Guo <syg@chromium.org>
    Commit-Queue: Chengzhong Wu (legendecas) <legendecas@gmail.com>
    Cr-Commit-Position: refs/heads/main@{#90398}

Refs: 0f9ebbc672
PR-URL: https://github.com/nodejs/node/pull/50867
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
PR-URL: https://github.com/nodejs/node/pull/50115
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Michael Dawson <midawson@redhat.com>
2024-01-04 09:31:45 +01:00
Lu Yahan
782addbdc3
deps: V8: cherry-pick 8f0b94671ddb
Original commit message:

    [gcc] Add include for TurboShaft

    Include <limits> for std::numeric_limits.

    Bug: chromium:819294
    Change-Id: I26a71ed4bad1858d2f5ed5d7dcd529e9cae60f37
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4889285
    Commit-Queue: Nico Hartmann <nicohartmann@chromium.org>
    Reviewed-by: Nico Hartmann <nicohartmann@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#90347}

Refs: 8f0b94671d
PR-URL: https://github.com/nodejs/node/pull/50654
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
PR-URL: https://github.com/nodejs/node/pull/50115
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Michael Dawson <midawson@redhat.com>
2024-01-04 09:31:42 +01:00
Luke Albao
b682e7f540
deps: V8: cherry-pick f7d000a7ae7b
Original commit message:

    [logging] Bugfix: LinuxPerfBasicLogger should log JS functions

    This patch fixes a typo that was introduced in commit
    c51041f45400928cd64fbc8f389c0dd0dd15f82f /
    https://chromium-review.googlesource.com/c/v8/v8/+/2336793, which reversed the behavior of the perf_basic_prof_only_functions flag.

    This also refactors the equivalent guard in LinuxPerfJitLogger to use the same inline CodeKind API for identifying JS Functions. This is unrelated to the bug, but it seems a fair rider to add on here.

    Bug: v8:14387
    Change-Id: I25766b0d45f4c65dfec5ae01e094a1ed94111054
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4954225
    Reviewed-by: Camillo Bruni <cbruni@chromium.org>
    Commit-Queue: Camillo Bruni <cbruni@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#90501}

Refs: f7d000a7ae
PR-URL: https://github.com/nodejs/node/pull/50302
Reviewed-By: Vinícius Lourenço Claro Cardoso <contact@viniciusl.com.br>
Reviewed-By: Debadree Chatterjee <debadree333@gmail.com>
PR-URL: https://github.com/nodejs/node/pull/50115
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Michael Dawson <midawson@redhat.com>
2024-01-04 09:31:40 +01:00
Joyee Cheung
a60090c52f
deps: V8: cherry-pick 25902244ad1a
Original commit message:

    [api] add line breaks to the output of Message::PrintCurrentStackTrace

    Previously this prints the stack trace without line breaks and it
    can be difficult to read. This also affects
    --abort-on-uncaught-exception. This patch adds line breaks to the
    output to improve readability.

    Change-Id: I4c44b529f8c829329f784b0859b1d13c9ec56838
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4925009
    Reviewed-by: Leszek Swirski <leszeks@chromium.org>
    Commit-Queue: Joyee Cheung <joyee@igalia.com>
    Cr-Commit-Position: refs/heads/main@{#90360}

Refs: 25902244ad
PR-URL: https://github.com/nodejs/node/pull/50156
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Debadree Chatterjee <debadree333@gmail.com>
PR-URL: https://github.com/nodejs/node/pull/50115
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Michael Dawson <midawson@redhat.com>
2024-01-04 09:31:35 +01:00
Michaël Zasso
8441d1fc18
deps: patch V8 to avoid duplicated zlib symbol
PR-URL: https://github.com/nodejs/node/pull/49639
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
PR-URL: https://github.com/nodejs/node/pull/50115
Reviewed-By: Michael Dawson <midawson@redhat.com>
2024-01-04 09:31:29 +01:00
Michaël Zasso
e8e9bbd7a9
deps: remove usage of a C++20 feature from V8
We are not ready to compile with C++20 support yet.
This is only a DCHECK that can be removed without affecting the behavior
of release builds.

PR-URL: https://github.com/nodejs/node/pull/49639
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
PR-URL: https://github.com/nodejs/node/pull/50115
Reviewed-By: Michael Dawson <midawson@redhat.com>
2024-01-04 09:31:25 +01:00
Michaël Zasso
785d5cd006
deps: avoid compilation error with ASan
Refs: https://bugs.chromium.org/p/v8/issues/detail?id=14221
PR-URL: https://github.com/nodejs/node/pull/49639
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
PR-URL: https://github.com/nodejs/node/pull/50115
Reviewed-By: Michael Dawson <midawson@redhat.com>
2024-01-04 09:31:21 +01:00
Michaël Zasso
7071c1dafd
deps: disable V8 concurrent sparkplug compilation
It introduces process hangs on some platforms because Node.js doesn't
tear down V8 correctly.
Disable it while we work on a solution.

Refs: https://github.com/nodejs/node/issues/47297
Refs: https://bugs.chromium.org/p/v8/issues/detail?id=13902
PR-URL: https://github.com/nodejs/node/pull/47450
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Michael Dawson <midawson@redhat.com>
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
PR-URL: https://github.com/nodejs/node/pull/49639
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
PR-URL: https://github.com/nodejs/node/pull/50115
2024-01-04 09:31:17 +01:00
Michaël Zasso
d1d60b297d
deps: silence irrelevant V8 warning
PR-URL: https://github.com/nodejs/node/pull/45579
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
PR-URL: https://github.com/nodejs/node/pull/47251
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Richard Lau <rlau@redhat.com>
PR-URL: https://github.com/nodejs/node/pull/49639
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
PR-URL: https://github.com/nodejs/node/pull/50115
Reviewed-By: Michael Dawson <midawson@redhat.com>
2024-01-04 09:31:05 +01:00
Michaël Zasso
5b240c62f9
deps: always define V8_EXPORT_PRIVATE as no-op
dllexport introduces issues when compiling with MSVC.

PR-URL: https://github.com/nodejs/node/pull/47251
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Richard Lau <rlau@redhat.com>
PR-URL: https://github.com/nodejs/node/pull/49639
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
PR-URL: https://github.com/nodejs/node/pull/50115
Reviewed-By: Michael Dawson <midawson@redhat.com>
2024-01-04 09:30:58 +01:00
Michaël Zasso
58674cd1d8
build: reset embedder string to "-node.0"
PR-URL: https://github.com/nodejs/node/pull/50115
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Michael Dawson <midawson@redhat.com>
2024-01-04 09:30:16 +01:00
Keyhan Vakil
f5c95991d2
deps: V8: cherry-pick de611e69ad51
Original commit message:

    [maglev] fix non-ptr-compr compilation on old compilers

    When pointer compression is disabled, the preprocessor expands some
    static asserts to static_assert(false), which doesn't compile on
    compilers not implementing the C++ defect report CWG2518, notably clang
    before version 17 and gcc before version 13.

    Adding in part of the template parameter to the static assert prevents
    it from being evaluated immediately which fixes the compilation.

    Test: compiled with gcc-11 and clang-14 without pointer compression.
    Change-Id: I95ce29bdb1278e6dad9e592d6f9476395f8aeb59
    Fixed: v8:14355
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5022760
    Reviewed-by: Leszek Swirski <leszeks@chromium.org>
    Commit-Queue: Leszek Swirski <leszeks@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#91553}

Refs: de611e69ad
PR-URL: https://github.com/nodejs/node/pull/51200
Refs: https://github.com/nodejs/node/issues/50690
Reviewed-By: Yagiz Nizipli <yagiz.nizipli@sentry.io>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Richard Lau <rlau@redhat.com>
2023-12-21 17:44:19 +00:00
Joyee Cheung
bafbb6a6eb
deps: V8: cherry-pick 0fd478bcdabd
Original commit message:

    [heap-profiler]: expose QueryObjects() to v8::HeapProfiler

    This allows embedders to use this API for testing memory leaks more
    reliably. See https://github.com/nodejs/node/pull/50572 for an
    example about how the API can be used.

    Change-Id: Ic3d1268e2b331c37e8ec92997b764b9b5486f8c2
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5006373
    Reviewed-by: Camillo Bruni <cbruni@chromium.org>
    Reviewed-by: Simon Zünd <szuend@chromium.org>
    Commit-Queue: Joyee Cheung <joyee@igalia.com>
    Cr-Commit-Position: refs/heads/main@{#91123}

Refs: 0fd478bcda
PR-URL: https://github.com/nodejs/node/pull/50572
Reviewed-By: Geoffrey Booth <webadmin@geoffreybooth.com>
Reviewed-By: Stephen Belanger <admin@stephenbelanger.com>
2023-12-15 00:35:38 +01:00
Cheng Zhao
0bb5d88871
v8,tools: expose necessary V8 defines
PR-URL: https://github.com/nodejs/node/pull/50820
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2023-11-25 04:30:50 +00:00
Chengzhong Wu
fbfa77b712
deps: V8: cherry-pick 0f9ebbc672c7
Original commit message:

    [flags] Remove --harmony-string-is-well-formed

    The String.prototype.isWellFormed and toWellFormed have shipped
    since M111.

    Bug: v8:13557
    Change-Id: I27e332d2fde0f9ea8ad649c016a84d2d3e0bf592
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4931269
    Reviewed-by: Shu-yu Guo <syg@chromium.org>
    Commit-Queue: Chengzhong Wu (legendecas) <legendecas@gmail.com>
    Cr-Commit-Position: refs/heads/main@{#90398}

Refs: 0f9ebbc672
PR-URL: https://github.com/nodejs/node/pull/50867
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
2023-11-24 03:38:54 +00:00
Lu Yahan
0ee49c8620
deps: V8: cherry-pick 8f0b94671ddb
Original commit message:

    [gcc] Add include for TurboShaft

    Include <limits> for std::numeric_limits.

    Bug: chromium:819294
    Change-Id: I26a71ed4bad1858d2f5ed5d7dcd529e9cae60f37
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4889285
    Commit-Queue: Nico Hartmann <nicohartmann@chromium.org>
    Reviewed-by: Nico Hartmann <nicohartmann@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#90347}

Refs: 8f0b94671d
PR-URL: https://github.com/nodejs/node/pull/50654
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2023-11-12 14:22:15 +00:00
Levi Zim
223853264b
deps: V8: cherry-pick 13192d6e10fa
Original commit message:

    [riscv][tagged-ptr] Convert more Objects to Tagged<>

    Port commit 064b9a7903b793734b6c03a86ee53a2dc85f0f80

    Bug: v8:12710

    Change-Id: If076ca5cd9e9d175c20fc3611e03d39c0260404d
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4837830
    Reviewed-by: Ji Qiu <qiuji@iscas.ac.cn>
    Commit-Queue: Ji Qiu <qiuji@iscas.ac.cn>
    Auto-Submit: Yahan Lu <yahan@iscas.ac.cn>
    Cr-Commit-Position: refs/heads/main@{#89780}

Refs: 13192d6e10
PR-URL: https://github.com/nodejs/node/pull/50552
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Debadree Chatterjee <debadree333@gmail.com>
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
2023-11-06 15:19:55 +00:00
Luke Albao
f6f681b62a
deps: V8: cherry-pick f7d000a7ae7b
Original commit message:

    [logging] Bugfix: LinuxPerfBasicLogger should log JS functions

    This patch fixes a typo that was introduced in commit
    c51041f45400928cd64fbc8f389c0dd0dd15f82f /
    https://chromium-review.googlesource.com/c/v8/v8/+/2336793, which reversed the behavior of the perf_basic_prof_only_functions flag.

    This also refactors the equivalent guard in LinuxPerfJitLogger to use the same inline CodeKind API for identifying JS Functions. This is unrelated to the bug, but it seems a fair rider to add on here.

    Bug: v8:14387
    Change-Id: I25766b0d45f4c65dfec5ae01e094a1ed94111054
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4954225
    Reviewed-by: Camillo Bruni <cbruni@chromium.org>
    Commit-Queue: Camillo Bruni <cbruni@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#90501}

Refs: f7d000a7ae
PR-URL: https://github.com/nodejs/node/pull/50302
Reviewed-By: Vinícius Lourenço Claro Cardoso <contact@viniciusl.com.br>
Reviewed-By: Debadree Chatterjee <debadree333@gmail.com>
2023-10-23 15:27:33 +00:00
Joyee Cheung
00de2faf78
deps: V8: cherry-pick 25902244ad1a
Original commit message:

    [api] add line breaks to the output of Message::PrintCurrentStackTrace

    Previously this prints the stack trace without line breaks and it
    can be difficult to read. This also affects
    --abort-on-uncaught-exception. This patch adds line breaks to the
    output to improve readability.

    Change-Id: I4c44b529f8c829329f784b0859b1d13c9ec56838
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4925009
    Reviewed-by: Leszek Swirski <leszeks@chromium.org>
    Commit-Queue: Joyee Cheung <joyee@igalia.com>
    Cr-Commit-Position: refs/heads/main@{#90360}

Refs: 25902244ad
PR-URL: https://github.com/nodejs/node/pull/50156
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Debadree Chatterjee <debadree333@gmail.com>
2023-10-15 16:30:13 +00:00
Michaël Zasso
4531c154e5
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: https://github.com/nodejs/node/pull/48056
    Ref: https://github.com/nodejs/node/pull/48056#issuecomment-1553719508

    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: 8ec2651fbd
PR-URL: https://github.com/nodejs/node/pull/49639
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
2023-10-10 08:26:39 +02:00
Michaël Zasso
9ad0e2cacc
deps: V8: cherry-pick 89b3702c92b0
Original commit message:

    Reland^2 "[iterator-helpers] Unship due to incompat"

    This is a reland of commit bab67985346dbc0d566391ad561537b4554455b4

    Change since reland: A second breakage reported in chromium:1480783

    Original change's description:
    > Reland "[iterator-helpers] Unship due to incompat"
    >
    > This is a reland of commit 1a22cf9896d682a9dfca589f92ed97c7f875b8a2
    >
    > Change since revert: I mistakenly thought part of the finch
    > kill-switch playbook is to keep it enabled on ToT. It's actually
    > the opposite.
    >
    > Original change's description:
    > > [iterator-helpers] Unship due to incompat
    > >
    > > Bug: chromium:1474613, v8:13558
    > > Change-Id: Iccba26e5cd5dc1787172c78b6e4f6889ef67fcea
    > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4834350
    > > Reviewed-by: Adam Klein <adamk@chromium.org>
    > > Commit-Queue: Shu-yu Guo <syg@chromium.org>
    > > Cr-Commit-Position: refs/heads/main@{#89741}
    >
    > Bug: chromium:1474613, v8:13558
    > Change-Id: Idc421a114303f036622bff681c9fa252c9110b9d
    > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4843761
    > Commit-Queue: Rezvan Mahdavi Hezaveh <rezvan@chromium.org>
    > Auto-Submit: Shu-yu Guo <syg@chromium.org>
    > Commit-Queue: Shu-yu Guo <syg@chromium.org>
    > Reviewed-by: Rezvan Mahdavi Hezaveh <rezvan@chromium.org>
    > Cr-Commit-Position: refs/heads/main@{#89800}

    Bug: chromium:1474613, v8:13558
    Change-Id: Ia933c874508f1ec10ea4718c6378858cd5bec8f9
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4854732
    Reviewed-by: Rezvan Mahdavi Hezaveh <rezvan@chromium.org>
    Auto-Submit: Shu-yu Guo <syg@chromium.org>
    Commit-Queue: Rezvan Mahdavi Hezaveh <rezvan@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#89905}

Refs: 89b3702c92
PR-URL: https://github.com/nodejs/node/pull/49639
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
2023-10-10 08:26:37 +02:00
Michaël Zasso
dfc9c86868
deps: V8: cherry-pick de9a5de2274f
Original commit message:

    Ignore flags implied by --predictable during hash computation

    https://chromium-review.googlesource.com/c/v8/v8/+/4681766 added
    code to ignore --predictable during hash computation of flags
    in order to produce reproducible code cache. This turns out to
    be not enough since the flags implied by --predictable also
    need to be ignored for it to work. This patch makes sure that
    they are ignored.

    Change-Id: Ifa36641efe3ca105706fd293be46fc974055d2d4
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4851287
    Commit-Queue: Joyee Cheung <joyee@igalia.com>
    Reviewed-by: Leszek Swirski <leszeks@chromium.org>
    Reviewed-by: Patrick Thier <pthier@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#90022}

Refs: de9a5de227
PR-URL: https://github.com/nodejs/node/pull/49639
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
2023-10-10 08:26:35 +02:00
Michaël Zasso
186b36efba
deps: V8: cherry-pick b5b5d6c31bb0
Original commit message:

    Fix for no member named 'init_jmpbuf' on AIX

    In AIX, the system header file usr/include/sys/context.h file has jmpbuf redefined as __jmpbuf  which is creating the problem here.

    Change-Id: I4393e260092016315ac7559465684e3fdbba4900
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4868434
    Reviewed-by: Jakob Linke <jgruber@chromium.org>
    Commit-Queue: Milad Farazmand <mfarazma@redhat.com>
    Cr-Commit-Position: refs/heads/main@{#90087}

Refs: b5b5d6c31b
PR-URL: https://github.com/nodejs/node/pull/49639
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
2023-10-10 08:26:33 +02:00
Michaël Zasso
867586ce95
deps: V8: cherry-pick 93b1a74cbc9b
Original commit message:

    Reland "[api] allow v8::Data as internal field"

    This is a reland of commit 0aa622e12893e9921c01a34ce9507b544e599c4a

    The original patch tried to run a test that calls exit() in the
    fatal error handler in parallel, which would not work. This marked
    the test with TEST() to avoid running it in parallel.

    Original change's description:
    > [api] allow v8::Data as internal field
    >
    > Previously only v8::Value can be stored as internal fields.
    > In some cases, however, it's necessary for the embedder to
    > tie the lifetime of a v8::Data with the lifetime of a
    > JS object, and that v8::Data may not be a v8::Value, as
    > it can be something returned from the V8 API. One way to
    > keep the v8::Data alive may be to use a v8::Persistent<v8::Data>
    > but that can easily lead to leaks.
    >
    > This patch changes v8::Object::GetInternalField() and
    > v8::Object::SetInernalField() to accept v8::Data instead of just
    > v8::Value, so that v8::Data can kept alive by a JS object in
    > a way that the GC can be aware of to address this problem.
    > This is a breaking change for embedders
    > using v8::Object::GetInternalField() as it changes the return
    > type. Since most v8::Value subtypes only support direct casts
    > from v8::Value but not v8::Data, calls like
    >
    > object->GetInternalField(index).As<v8::External>()
    >
    > needs to be updated to cast the value to v8::Value first:
    >
    > object->GetInternalField(index).As<v8::Value>().As<v8::External>()
    >
    > Bug: v8:14120
    > Change-Id: I731c958d1756b9d5ee4a3e78813416cd60d1b7ca
    > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4707972
    > Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
    > Commit-Queue: Joyee Cheung <joyee@igalia.com>
    > Cr-Commit-Position: refs/heads/main@{#89718}

    Bug: v8:14120
    Change-Id: I3e45d09b5c300d5eefc73e380ef21ac2bd61760c
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4834471
    Commit-Queue: Joyee Cheung <joyee@igalia.com>
    Reviewed-by: Camillo Bruni <cbruni@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#89824}

Refs: 93b1a74cbc
PR-URL: https://github.com/nodejs/node/pull/49639
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
2023-10-10 08:26:32 +02:00
Michaël Zasso
4ad3479ba7
deps: V8: cherry-pick 1a3ecc2483b2
Original commit message:

    Fix build issue, remove unneeded include uchar.h.

    Follow the conversation on:
    https://groups.google.com/g/v8-dev/c/nsbshwlmP3c.

    The `uchar.h` include is not necessary.
    It was added to get the definition of char16_t but that's an intrinsic
    type in C++.

    Change-Id: I0aaa11dba0be3ccad15b9e421f8bae71450d443b
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4823404
    Reviewed-by: Omer Katz <omerkatz@chromium.org>
    Commit-Queue: Eric Leese <leese@chromium.org>
    Reviewed-by: Eric Leese <leese@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#89787}

Refs: 1a3ecc2483
PR-URL: https://github.com/nodejs/node/pull/49639
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
2023-10-10 08:26:29 +02:00
Michaël Zasso
660f902f16
deps: patch V8 to avoid duplicated zlib symbol
PR-URL: https://github.com/nodejs/node/pull/49639
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
2023-10-10 08:26:26 +02:00
Michaël Zasso
f7c1d410ad
deps: remove usage of a C++20 feature from V8
We are not ready to compile with C++20 support yet.
This is only a DCHECK that can be removed without affecting the behavior
of release builds.

PR-URL: https://github.com/nodejs/node/pull/49639
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
2023-10-10 08:26:23 +02:00
Michaël Zasso
9c4030bfb9
deps: avoid compilation error with ASan
Refs: https://bugs.chromium.org/p/v8/issues/detail?id=14221
PR-URL: https://github.com/nodejs/node/pull/49639
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
2023-10-10 08:26:21 +02:00
Michaël Zasso
5f05cc15e6
deps: disable V8 concurrent sparkplug compilation
It introduces process hangs on some platforms because Node.js doesn't
tear down V8 correctly.
Disable it while we work on a solution.

Refs: https://github.com/nodejs/node/issues/47297
Refs: https://bugs.chromium.org/p/v8/issues/detail?id=13902
PR-URL: https://github.com/nodejs/node/pull/47450
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Michael Dawson <midawson@redhat.com>
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
PR-URL: https://github.com/nodejs/node/pull/49639
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
2023-10-10 08:26:17 +02:00
Michaël Zasso
42cd952dbd
deps: silence irrelevant V8 warning
PR-URL: https://github.com/nodejs/node/pull/45579
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
PR-URL: https://github.com/nodejs/node/pull/47251
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Richard Lau <rlau@redhat.com>
PR-URL: https://github.com/nodejs/node/pull/49639
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
2023-10-10 08:26:03 +02:00
Michaël Zasso
88cf90f9c4
deps: always define V8_EXPORT_PRIVATE as no-op
dllexport introduces issues when compiling with MSVC.

PR-URL: https://github.com/nodejs/node/pull/47251
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Richard Lau <rlau@redhat.com>
PR-URL: https://github.com/nodejs/node/pull/49639
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
2023-10-10 08:25:57 +02:00
Michaël Zasso
17c55d176b
build: reset embedder string to "-node.0"
PR-URL: https://github.com/nodejs/node/pull/49639
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
2023-10-10 08:25:44 +02:00
MatteoBax
16ac5e1ca8
zlib: fix discovery of cpu-features.h for android
Fixed cpu-features.h not found issue.

Co-Authored-By: Luigi Pinca <luigipinca@gmail.com>
Fixes: https://github.com/nodejs/node/issues/49766
PR-URL: https://github.com/nodejs/node/pull/49828
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Richard Lau <rlau@redhat.com>
2023-09-29 11:52:46 -04:00
Abdirahim Musse
3838b579e4
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: https://github.com/nodejs/node/pull/48056
    Ref: https://github.com/nodejs/node/pull/48056#issuecomment-1553719508

    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: 8ec2651fbd
PR-URL: https://github.com/nodejs/node/pull/49862
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Michael Dawson <midawson@redhat.com>
2023-09-27 19:26:01 +00:00