| # Copyright 2019 the V8 project authors. All rights reserved. |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| # This file is used by the GN meta build system to find the root of the source |
| # tree and to set startup options. For documentation on the values set in this |
| # file, run "gn help dotfile" at the command line. |
| |
| import("//build/dotfile_settings.gni") |
| |
| # The location of the build configuration file. |
| buildconfig = "//build/config/BUILDCONFIG.gn" |
| |
| # The secondary source root is a parallel directory tree where |
| # GN build files are placed when they can not be placed directly |
| # in the source tree, e.g. for third party source trees. |
| secondary_source = "//gn/" |
| |
| # These are the targets to check headers for by default. The files in targets |
| # matching these patterns (see "gn help label_pattern" for format) will have |
| # their includes checked for proper dependencies when you run either |
| # "gn check" or "gn gen --check". |
| check_targets = ["*"] |
| |
| # These are the list of GN files that run exec_script. This whitelist exists |
| # to force additional review for new uses of exec_script, which is strongly |
| # discouraged except for gypi_to_gn calls. |
| exec_script_allowlist = |
| build_dotfile_settings.exec_script_allowlist + [ |
| "//v8/build_overrides/build.gni", |
| "//node/node_component.gni", |
| "//node/node.gni", |
| "//node/unofficial.gni", |
| "//node/deps/ada/unofficial.gni", |
| "//node/deps/base64/unofficial.gni", |
| "//node/deps/brotli/unofficial.gni", |
| "//node/deps/cares/unofficial.gni", |
| "//node/deps/googletest/unofficial.gni", |
| "//node/deps/histogram/unofficial.gni", |
| "//node/deps/llhttp/unofficial.gni", |
| "//node/deps/nbytes/unofficial.gni", |
| "//node/deps/ncrypto/unofficial.gni", |
| "//node/deps/nghttp2/unofficial.gni", |
| "//node/deps/openssl/unofficial.gni", |
| "//node/deps/simdjson/unofficial.gni", |
| "//node/deps/simdutf/unofficial.gni", |
| "//node/deps/sqlite/unofficial.gni", |
| "//node/deps/uvwasi/unofficial.gni", |
| "//node/deps/uv/unofficial.gni", |
| "//node/deps/v8/build_overrides/build.gni", |
| "//node/deps/zstd/unofficial.gni", |
| "//node/src/inspector/unofficial.gni", |
| "//node_tests/BUILD.gn", |
| ] |
| |
| # The python interpreter to use by default. |
| script_executable = "vpython3" |
| |
| default_args = { |
| ######################################################### |
| # V8 Node-CI options |
| node_v8_path = "//v8" |
| |
| ######################################################### |
| # Changeable defaults |
| # General build options |
| use_sysroot = true |
| is_component_build = false |
| |
| # Node.js defaults. |
| node_report = true |
| is_debug = false |
| node_use_custom_libcxx = false |
| |
| # V8 options. |
| v8_embedder_string = "-node.0" |
| |
| ######################################################### |
| # Alternative configuration not supported. Do not change. |
| # General build options. |
| clang_use_chrome_plugins = false |
| icu_use_data_file = false |
| |
| # Node.js requires macOS 11 and later. |
| mac_deployment_target="11.0" |
| mac_min_system_version="11.0" |
| |
| # V8 options catering towards Node.js use case. |
| v8_expose_symbols = true |
| v8_promise_internal_field_count = 1 |
| v8_use_external_startup_data = false |
| v8_enable_javascript_promise_hooks = true |
| v8_array_buffer_internal_field_count = 2 |
| v8_array_buffer_view_internal_field_count = 2 |
| # The napi_create_external_buffer API of Node-API does not support sandbox and |
| # tests relying on it would fail with sandbox on. |
| v8_enable_sandbox = false |
| # TODO(cbruni, v8:12302): Remove once API is migrated |
| v8_scriptormodule_legacy_lifetime = true |
| |
| ######################################################### |
| # Perfetto options. |
| # Disable js dependencies like the closure compiler. |
| enable_js_protobuf = false |
| enable_perfetto_unittests = false |
| enable_perfetto_integration_tests = false |
| |
| # Use Siso instead of Ninja. |
| use_siso = true |
| } |