Skip to content

Commit 59c2d40

Browse files
committed
core: update nodejs-mobile to v18.20.4
1 parent 965afac commit 59c2d40

File tree

165 files changed

+1235
-730
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

165 files changed

+1235
-730
lines changed

android/libnode/include/node/common.gypi

Lines changed: 51 additions & 22 deletions
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.26',
39+
'v8_embedder_string': '-node.37',
4040

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

@@ -398,7 +398,7 @@
398398
'ldflags': [ '-pthread' ],
399399
}],
400400
[ 'OS in "linux freebsd openbsd solaris android aix os400 cloudabi"', {
401-
'cflags': [ '-Wall', '-Wextra', '-Wno-unused-parameter', ],
401+
'cflags': [ '-Wall', '-Wextra', '-Wno-unused-parameter', '-Wno-enum-constexpr-conversion' ],
402402
'cflags_cc': [ '-fno-rtti', '-fno-exceptions', '-std=gnu++17' ],
403403
'defines': [ '__STDC_FORMAT_MACROS' ],
404404
'ldflags': [ '-rdynamic' ],
@@ -411,28 +411,56 @@
411411
'cflags': [ '-I/usr/local/include' ],
412412
'ldflags': [ '-Wl,-z,wxneeded' ],
413413
}],
414-
],
415-
'conditions': [
416-
[ 'target_arch=="ia32"', {
417-
'cflags': [ '-m32' ],
418-
'ldflags': [ '-m32' ],
419-
}],
420-
[ 'target_arch=="x64"', {
421-
'cflags': [ '-m64' ],
422-
'ldflags': [ '-m64' ],
423-
}],
424-
[ 'target_arch=="ppc" and OS not in "aix os400"', {
425-
'cflags': [ '-m32' ],
426-
'ldflags': [ '-m32' ],
427-
}],
428-
[ 'target_arch=="ppc64" and OS not in "aix os400"', {
429-
'cflags': [ '-m64', '-mminimal-toc' ],
430-
'ldflags': [ '-m64' ],
414+
['_toolset=="host"', {
415+
'conditions': [
416+
[ 'host_arch=="ia32"', {
417+
'cflags': [ '-m32' ],
418+
'ldflags': [ '-m32' ],
419+
}],
420+
[ 'host_arch=="x64"', {
421+
'cflags': [ '-m64' ],
422+
'ldflags': [ '-m64' ],
423+
}],
424+
[ 'host_arch=="ppc" and OS not in "aix os400"', {
425+
'cflags': [ '-m32' ],
426+
'ldflags': [ '-m32' ],
427+
}],
428+
[ 'host_arch=="ppc64" and OS not in "aix os400"', {
429+
'cflags': [ '-m64', '-mminimal-toc' ],
430+
'ldflags': [ '-m64' ],
431+
}],
432+
[ 'host_arch=="s390x" and OS=="linux"', {
433+
'cflags': [ '-m64', '-march=z196' ],
434+
'ldflags': [ '-m64', '-march=z196' ],
435+
}],
436+
],
431437
}],
432-
[ 'target_arch=="s390x" and OS=="linux"', {
433-
'cflags': [ '-m64', '-march=z196' ],
434-
'ldflags': [ '-m64', '-march=z196' ],
438+
['_toolset=="target"', {
439+
'conditions': [
440+
[ 'target_arch=="ia32"', {
441+
'cflags': [ '-m32' ],
442+
'ldflags': [ '-m32' ],
443+
}],
444+
[ 'target_arch=="x64"', {
445+
'cflags': [ '-m64' ],
446+
'ldflags': [ '-m64' ],
447+
}],
448+
[ 'target_arch=="ppc" and OS not in "aix os400"', {
449+
'cflags': [ '-m32' ],
450+
'ldflags': [ '-m32' ],
451+
}],
452+
[ 'target_arch=="ppc64" and OS not in "aix os400"', {
453+
'cflags': [ '-m64', '-mminimal-toc' ],
454+
'ldflags': [ '-m64' ],
455+
}],
456+
[ 'target_arch=="s390x" and OS=="linux"', {
457+
'cflags': [ '-m64', '-march=z196' ],
458+
'ldflags': [ '-m64', '-march=z196' ],
459+
}],
460+
],
435461
}],
462+
],
463+
'conditions': [
436464
[ 'OS=="solaris"', {
437465
'cflags': [ '-pthreads' ],
438466
'ldflags': [ '-pthreads' ],
@@ -583,6 +611,7 @@
583611
'-Wendif-labels',
584612
'-W',
585613
'-Wno-unused-parameter',
614+
'-Wno-enum-constexpr-conversion',
586615
],
587616
},
588617
'target_conditions': [

android/libnode/include/node/config.gypi

Lines changed: 24 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
# Do not edit. Generated by the configure script.
22
{ 'target_defaults': {'cflags': [], 'default_configuration': 'Release', 'defines': ['NODE_OPENSSL_CONF_NAME=nodejs_conf', 'NODE_OPENSSL_HAS_QUIC', 'ICU_NO_USER_DATA_OVERRIDE'], 'include_dirs': [], 'libraries': []},
3-
'variables': { 'OS': 'android',
4-
'asan': 0,
3+
'variables': { 'asan': 0,
54
'coverage': 'false',
65
'dcheck_always_on': 0,
76
'debug_nghttp2': 'false',
@@ -10,12 +9,18 @@
109
'enable_pgo_generate': 'false',
1110
'enable_pgo_use': 'false',
1211
'error_on_warn': 'false',
13-
'force_dynamic_crt': 1,
12+
'force_dynamic_crt': 0,
13+
'gas_version': '2.34',
1414
'host_arch': 'x64',
15+
'icu_data_in': '../../deps/icu-tmp/icudt74l.dat',
16+
'icu_endianness': 'l',
17+
'icu_gyp_path': 'tools/icu/icu-generic.gyp',
18+
'icu_path': 'deps/icu-small',
1519
'icu_small': 'false',
20+
'icu_ver_major': '74',
1621
'is_debug': 0,
1722
'libdir': 'lib',
18-
'llvm_version': '14.0',
23+
'llvm_version': '0.0',
1924
'napi_build_version': '9',
2025
'node_builtin_shareable_builtins': ['deps/cjs-module-lexer/lexer.js', 'deps/cjs-module-lexer/dist/lexer.js', 'deps/undici/undici.js'],
2126
'node_byteorder': 'little',
@@ -68,8 +73,8 @@
6873
'lib/internal/blob.js',
6974
'lib/internal/blocklist.js',
7075
'lib/internal/bootstrap/browser.js',
71-
'lib/internal/bootstrap/loaders.js',
7276
'lib/internal/bootstrap/node.js',
77+
'lib/internal/bootstrap/realm.js',
7378
'lib/internal/bootstrap/switches/does_not_own_process_state.js',
7479
'lib/internal/bootstrap/switches/does_own_process_state.js',
7580
'lib/internal/bootstrap/switches/is_main_thread.js',
@@ -161,23 +166,26 @@
161166
'lib/internal/main/watch_mode.js',
162167
'lib/internal/main/worker_thread.js',
163168
'lib/internal/mime.js',
164-
'lib/internal/modules/cjs/helpers.js',
165169
'lib/internal/modules/cjs/loader.js',
166170
'lib/internal/modules/esm/assert.js',
167171
'lib/internal/modules/esm/create_dynamic_module.js',
168172
'lib/internal/modules/esm/fetch_module.js',
169173
'lib/internal/modules/esm/formats.js',
170174
'lib/internal/modules/esm/get_format.js',
171175
'lib/internal/modules/esm/handle_process_exit.js',
176+
'lib/internal/modules/esm/hooks.js',
172177
'lib/internal/modules/esm/initialize_import_meta.js',
173178
'lib/internal/modules/esm/load.js',
174179
'lib/internal/modules/esm/loader.js',
175180
'lib/internal/modules/esm/module_job.js',
176181
'lib/internal/modules/esm/module_map.js',
177182
'lib/internal/modules/esm/package_config.js',
178183
'lib/internal/modules/esm/resolve.js',
184+
'lib/internal/modules/esm/shared_constants.js',
179185
'lib/internal/modules/esm/translators.js',
180186
'lib/internal/modules/esm/utils.js',
187+
'lib/internal/modules/esm/worker.js',
188+
'lib/internal/modules/helpers.js',
181189
'lib/internal/modules/package_json_reader.js',
182190
'lib/internal/modules/run_main.js',
183191
'lib/internal/net.js',
@@ -249,8 +257,10 @@
249257
'lib/internal/test/transfer.js',
250258
'lib/internal/test_runner/coverage.js',
251259
'lib/internal/test_runner/harness.js',
252-
'lib/internal/test_runner/mock.js',
260+
'lib/internal/test_runner/mock/mock.js',
261+
'lib/internal/test_runner/mock/mock_timers.js',
253262
'lib/internal/test_runner/reporter/dot.js',
263+
'lib/internal/test_runner/reporter/junit.js',
254264
'lib/internal/test_runner/reporter/spec.js',
255265
'lib/internal/test_runner/reporter/tap.js',
256266
'lib/internal/test_runner/reporter/v8-serializer.js',
@@ -335,7 +345,7 @@
335345
'node_prefix': '/usr/local',
336346
'node_release_urlbase': '',
337347
'node_section_ordering_info': '',
338-
'node_shared': 'true',
348+
'node_shared': 'false',
339349
'node_shared_brotli': 'false',
340350
'node_shared_cares': 'false',
341351
'node_shared_http_parser': 'false',
@@ -346,27 +356,26 @@
346356
'node_shared_openssl': 'false',
347357
'node_shared_zlib': 'false',
348358
'node_tag': '',
349-
'node_target_type': 'shared_library',
359+
'node_target_type': 'executable',
350360
'node_use_bundled_v8': 'true',
351361
'node_use_dtrace': 'false',
352362
'node_use_etw': 'false',
353-
'node_use_node_code_cache': 'false',
354-
'node_use_node_snapshot': 'false',
363+
'node_use_node_code_cache': 'true',
364+
'node_use_node_snapshot': 'true',
355365
'node_use_openssl': 'true',
356366
'node_use_v8_platform': 'true',
357367
'node_with_ltcg': 'false',
358368
'node_without_node_options': 'false',
359369
'openssl_is_fips': 'false',
360-
'openssl_no_asm': 1,
361370
'openssl_quic': 'true',
362371
'ossfuzz': 'false',
363-
'shlib_suffix': 'so',
372+
'shlib_suffix': 'so.108',
364373
'single_executable_application': 'true',
365374
'target_arch': 'x64',
366375
'v8_enable_31bit_smis_on_64bit_arch': 0,
367376
'v8_enable_gdbjit': 0,
368377
'v8_enable_hugepage': 0,
369-
'v8_enable_i18n_support': 0,
378+
'v8_enable_i18n_support': 1,
370379
'v8_enable_inspector': 1,
371380
'v8_enable_javascript_promise_hooks': 1,
372381
'v8_enable_lite_mode': 0,
@@ -381,4 +390,4 @@
381390
'v8_random_seed': 0,
382391
'v8_trace_maps': 0,
383392
'v8_use_siphash': 1,
384-
'want_separate_host_toolset': 1}}
393+
'want_separate_host_toolset': 0}}

android/libnode/include/node/js_native_api.h

Lines changed: 52 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@
2828
#ifndef NAPI_EXTERN
2929
#ifdef _WIN32
3030
#define NAPI_EXTERN __declspec(dllexport)
31-
#elif defined(__wasm32__)
31+
#elif defined(__wasm__)
3232
#define NAPI_EXTERN \
3333
__attribute__((visibility("default"))) \
3434
__attribute__((__import_module__("napi")))
@@ -49,8 +49,8 @@
4949

5050
EXTERN_C_START
5151

52-
NAPI_EXTERN napi_status NAPI_CDECL
53-
napi_get_last_error_info(napi_env env, const napi_extended_error_info** result);
52+
NAPI_EXTERN napi_status NAPI_CDECL napi_get_last_error_info(
53+
node_api_nogc_env env, const napi_extended_error_info** result);
5454

5555
// Getters for defined singletons
5656
NAPI_EXTERN napi_status NAPI_CDECL napi_get_undefined(napi_env env,
@@ -92,6 +92,25 @@ NAPI_EXTERN napi_status NAPI_CDECL napi_create_string_utf16(napi_env env,
9292
const char16_t* str,
9393
size_t length,
9494
napi_value* result);
95+
#ifdef NAPI_EXPERIMENTAL
96+
#define NODE_API_EXPERIMENTAL_HAS_EXTERNAL_STRINGS
97+
NAPI_EXTERN napi_status NAPI_CDECL
98+
node_api_create_external_string_latin1(napi_env env,
99+
char* str,
100+
size_t length,
101+
node_api_nogc_finalize finalize_callback,
102+
void* finalize_hint,
103+
napi_value* result,
104+
bool* copied);
105+
NAPI_EXTERN napi_status NAPI_CDECL
106+
node_api_create_external_string_utf16(napi_env env,
107+
char16_t* str,
108+
size_t length,
109+
node_api_nogc_finalize finalize_callback,
110+
void* finalize_hint,
111+
napi_value* result,
112+
bool* copied);
113+
#endif // NAPI_EXPERIMENTAL
95114
NAPI_EXTERN napi_status NAPI_CDECL napi_create_symbol(napi_env env,
96115
napi_value description,
97116
napi_value* result);
@@ -271,7 +290,7 @@ NAPI_EXTERN napi_status NAPI_CDECL napi_instanceof(napi_env env,
271290

272291
// Gets all callback info in a single call. (Ugly, but faster.)
273292
NAPI_EXTERN napi_status NAPI_CDECL napi_get_cb_info(
274-
napi_env env, // [in] NAPI environment handle
293+
napi_env env, // [in] Node-API environment handle
275294
napi_callback_info cbinfo, // [in] Opaque callback-info handle
276295
size_t* argc, // [in-out] Specifies the size of the provided argv array
277296
// and receives the actual count of args.
@@ -295,7 +314,7 @@ napi_define_class(napi_env env,
295314
NAPI_EXTERN napi_status NAPI_CDECL napi_wrap(napi_env env,
296315
napi_value js_object,
297316
void* native_object,
298-
napi_finalize finalize_cb,
317+
node_api_nogc_finalize finalize_cb,
299318
void* finalize_hint,
300319
napi_ref* result);
301320
NAPI_EXTERN napi_status NAPI_CDECL napi_unwrap(napi_env env,
@@ -307,7 +326,7 @@ NAPI_EXTERN napi_status NAPI_CDECL napi_remove_wrap(napi_env env,
307326
NAPI_EXTERN napi_status NAPI_CDECL
308327
napi_create_external(napi_env env,
309328
void* data,
310-
napi_finalize finalize_cb,
329+
node_api_nogc_finalize finalize_cb,
311330
void* finalize_hint,
312331
napi_value* result);
313332
NAPI_EXTERN napi_status NAPI_CDECL napi_get_value_external(napi_env env,
@@ -406,7 +425,7 @@ NAPI_EXTERN napi_status NAPI_CDECL
406425
napi_create_external_arraybuffer(napi_env env,
407426
void* external_data,
408427
size_t byte_length,
409-
napi_finalize finalize_cb,
428+
node_api_nogc_finalize finalize_cb,
410429
void* finalize_hint,
411430
napi_value* result);
412431
#endif // NODE_API_NO_EXTERNAL_BUFFERS_ALLOWED
@@ -448,7 +467,7 @@ napi_get_dataview_info(napi_env env,
448467
size_t* byte_offset);
449468

450469
// version management
451-
NAPI_EXTERN napi_status NAPI_CDECL napi_get_version(napi_env env,
470+
NAPI_EXTERN napi_status NAPI_CDECL napi_get_version(node_api_nogc_env env,
452471
uint32_t* result);
453472

454473
// Promises
@@ -472,7 +491,7 @@ NAPI_EXTERN napi_status NAPI_CDECL napi_run_script(napi_env env,
472491

473492
// Memory management
474493
NAPI_EXTERN napi_status NAPI_CDECL napi_adjust_external_memory(
475-
napi_env env, int64_t change_in_bytes, int64_t* adjusted_value);
494+
node_api_nogc_env env, int64_t change_in_bytes, int64_t* adjusted_value);
476495

477496
#if NAPI_VERSION >= 5
478497

@@ -490,15 +509,27 @@ NAPI_EXTERN napi_status NAPI_CDECL napi_get_date_value(napi_env env,
490509
double* result);
491510

492511
// Add finalizer for pointer
493-
NAPI_EXTERN napi_status NAPI_CDECL napi_add_finalizer(napi_env env,
494-
napi_value js_object,
495-
void* finalize_data,
496-
napi_finalize finalize_cb,
497-
void* finalize_hint,
498-
napi_ref* result);
512+
NAPI_EXTERN napi_status NAPI_CDECL
513+
napi_add_finalizer(napi_env env,
514+
napi_value js_object,
515+
void* finalize_data,
516+
node_api_nogc_finalize finalize_cb,
517+
void* finalize_hint,
518+
napi_ref* result);
499519

500520
#endif // NAPI_VERSION >= 5
501521

522+
#ifdef NAPI_EXPERIMENTAL
523+
#define NODE_API_EXPERIMENTAL_HAS_POST_FINALIZER
524+
525+
NAPI_EXTERN napi_status NAPI_CDECL
526+
node_api_post_finalizer(node_api_nogc_env env,
527+
napi_finalize finalize_cb,
528+
void* finalize_data,
529+
void* finalize_hint);
530+
531+
#endif // NAPI_EXPERIMENTAL
532+
502533
#if NAPI_VERSION >= 6
503534

504535
// BigInt
@@ -536,10 +567,13 @@ napi_get_all_property_names(napi_env env,
536567
napi_value* result);
537568

538569
// Instance data
539-
NAPI_EXTERN napi_status NAPI_CDECL napi_set_instance_data(
540-
napi_env env, void* data, napi_finalize finalize_cb, void* finalize_hint);
570+
NAPI_EXTERN napi_status NAPI_CDECL
571+
napi_set_instance_data(node_api_nogc_env env,
572+
void* data,
573+
napi_finalize finalize_cb,
574+
void* finalize_hint);
541575

542-
NAPI_EXTERN napi_status NAPI_CDECL napi_get_instance_data(napi_env env,
576+
NAPI_EXTERN napi_status NAPI_CDECL napi_get_instance_data(node_api_nogc_env env,
543577
void** data);
544578
#endif // NAPI_VERSION >= 6
545579

0 commit comments

Comments
 (0)