build: add configure flag to build V8 with DCHECKs

Add a configure flag that enables building V8 with `-DDEBUG`, in
particular with debug checks enabled and with runtime debugging
features, e.g. inspecting JS objects from debuggers, enabled.

PR-URL: https://github.com/nodejs/node/pull/32787
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Matheus Marchini <mat@mmarchini.me>
Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com>
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
This commit is contained in:
Anna Henningsen 2020-04-11 20:50:59 +02:00
parent 581d7d4a22
commit d1587dcd0a
No known key found for this signature in database
GPG Key ID: A94130F0BFC8EBE9

View File

@ -635,6 +635,12 @@ parser.add_option('--v8-non-optimized-debug',
default=False,
help='compile V8 with minimal optimizations and with runtime checks')
parser.add_option('--v8-with-dchecks',
action='store_true',
dest='v8_with_dchecks',
default=False,
help='compile V8 with debug checks and runtime debugging features enabled')
parser.add_option('--node-builtin-modules-path',
action='store',
dest='node_builtin_modules_path',
@ -1235,6 +1241,7 @@ def configure_v8(o):
o['variables']['v8_enable_gdbjit'] = 1 if options.gdb else 0
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']['dcheck_always_on'] = 1 if options.v8_with_dchecks else 0
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_use_siphash'] = 0 if options.without_siphash else 1