summaryrefslogtreecommitdiff
path: root/configure
diff options
context:
space:
mode:
authorYang Guo <yangguo@chromium.org>2018-01-11 13:25:09 +0100
committerMyles Borins <mylesborins@google.com>2018-04-11 13:23:22 -0400
commit5c93b3b561ace4c3dcf6b74111e8d8be4be0baca (patch)
tree81cbd70ac90bc85a7732129344405068be470c96 /configure
parentdd49677096c76dfc731937d73688c4b10e38ae23 (diff)
downloadandroid-node-v8-5c93b3b561ace4c3dcf6b74111e8d8be4be0baca.tar.gz
android-node-v8-5c93b3b561ace4c3dcf6b74111e8d8be4be0baca.tar.bz2
android-node-v8-5c93b3b561ace4c3dcf6b74111e8d8be4be0baca.zip
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-xconfigure18
1 files changed, 18 insertions, 0 deletions
diff --git a/configure b/configure
index e1843240ad..dbf1dfe321 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):