build: add --v8-disable-object-print flag

--v8-enable-object-print flag is set by default true.
so, no way of disable this flag.
add a --v8-disable-object-print flag instead that defaults to false.

Fixes: https://github.com/nodejs/node/issues/45433
PR-URL: https://github.com/nodejs/node/pull/45458
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: Richard Lau <rlau@redhat.com>
This commit is contained in:
MURAKAMI Masahiko 2022-11-17 09:28:48 +09:00 committed by GitHub
parent 6869d98e41
commit 6638f09fe1
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -776,7 +776,13 @@ parser.add_argument('--v8-enable-object-print',
action='store_true', action='store_true',
dest='v8_enable_object_print', dest='v8_enable_object_print',
default=True, default=True,
help='compile V8 with auxiliar functions for native debuggers') help='compile V8 with auxiliary functions for native debuggers')
parser.add_argument('--v8-disable-object-print',
action='store_true',
dest='v8_disable_object_print',
default=False,
help='disable the V8 auxiliary functions for native debuggers')
parser.add_argument('--v8-enable-hugepage', parser.add_argument('--v8-enable-hugepage',
action='store_true', action='store_true',
@ -1437,7 +1443,7 @@ def configure_v8(o):
o['variables']['v8_no_strict_aliasing'] = 1 # Work around compiler bugs. o['variables']['v8_no_strict_aliasing'] = 1 # Work around compiler bugs.
o['variables']['v8_optimized_debug'] = 0 if options.v8_non_optimized_debug else 1 o['variables']['v8_optimized_debug'] = 0 if options.v8_non_optimized_debug else 1
o['variables']['dcheck_always_on'] = 1 if options.v8_with_dchecks else 0 o['variables']['dcheck_always_on'] = 1 if options.v8_with_dchecks else 0
o['variables']['v8_enable_object_print'] = 1 if options.v8_enable_object_print else 0 o['variables']['v8_enable_object_print'] = 0 if options.v8_disable_object_print else 1
o['variables']['v8_random_seed'] = 0 # Use a random seed for hash tables. o['variables']['v8_random_seed'] = 0 # Use a random seed for hash tables.
o['variables']['v8_promise_internal_field_count'] = 1 # Add internal field to promises for async hooks. o['variables']['v8_promise_internal_field_count'] = 1 # Add internal field to promises for async hooks.
o['variables']['v8_use_siphash'] = 0 if options.without_siphash else 1 o['variables']['v8_use_siphash'] = 0 if options.without_siphash else 1
@ -1460,6 +1466,10 @@ def configure_v8(o):
o['variables']['v8_enable_hugepage'] = 1 if options.v8_enable_hugepage else 0 o['variables']['v8_enable_hugepage'] = 1 if options.v8_enable_hugepage else 0
if options.v8_enable_short_builtin_calls or o['variables']['target_arch'] == 'x64': if options.v8_enable_short_builtin_calls or o['variables']['target_arch'] == 'x64':
o['variables']['v8_enable_short_builtin_calls'] = 1 o['variables']['v8_enable_short_builtin_calls'] = 1
if options.v8_enable_object_print and options.v8_disable_object_print:
raise Exception(
'Only one of the --v8-enable-object-print or --v8-disable-object-print options '
'can be specified at a time.')
def configure_openssl(o): def configure_openssl(o):
variables = o['variables'] variables = o['variables']