diff options
author | Yang Guo <yangguo@chromium.org> | 2018-01-11 15:25:09 +0300 |
---|---|---|
committer | Myles Borins <mylesborins@google.com> | 2018-04-11 20:23:22 +0300 |
commit | 5c93b3b561ace4c3dcf6b74111e8d8be4be0baca (patch) | |
tree | 81cbd70ac90bc85a7732129344405068be470c96 /configure | |
parent | dd49677096c76dfc731937d73688c4b10e38ae23 (diff) |
build: add option to build v8 with GN
PR-URL: https://github.com/nodejs/node/pull/19201
Reviewed-By: Ali Ijaz Sheikh <ofrobots@google.com>
Reviewed-By: Myles Borins <myles.borins@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Diffstat (limited to 'configure')
-rwxr-xr-x | configure | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/configure b/configure index e1843240adb..dbf1dfe3214 100755 --- a/configure +++ b/configure @@ -55,6 +55,10 @@ sys.path.insert(0, 'tools') import getmoduleversion from gyp_node import run_gyp +# imports in deps/v8/tools/node +sys.path.insert(0, os.path.join('deps', 'v8', 'tools', 'node')) +from fetch_deps import FetchDeps + # parse our options parser = optparse.OptionParser() @@ -548,6 +552,12 @@ parser.add_option('--without-bundled-v8', help='do not use V8 includes from the bundled deps folder. ' + '(This mode is not officially supported for regular applications)') +parser.add_option('--build-v8-with-gn', + action='store_true', + dest='build_v8_with_gn', + default=False, + help='build V8 using GN instead of gyp') + # Create compile_commands.json in out/Debug and out/Release. parser.add_option('-C', action='store_true', @@ -1060,6 +1070,14 @@ def configure_v8(o): o['variables']['test_isolation_mode'] = 'noop' # Needed by d8.gyp. if options.without_bundled_v8 and options.enable_d8: raise Exception('--enable-d8 is incompatible with --without-bundled-v8.') + if options.without_bundled_v8 and options.build_v8_with_gn: + raise Exception( + '--build-v8-with-gn is incompatible with --without-bundled-v8.') + if options.build_v8_with_gn: + v8_path = os.path.join('deps', 'v8') + print('Fetching dependencies to build V8 with GN') + options.build_v8_with_gn = FetchDeps(v8_path) + o['variables']['build_v8_with_gn'] = b(options.build_v8_with_gn) def configure_openssl(o): |