12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697 |
- From 1f6c55d7318e7075169004b4314708f4766ec193 Mon Sep 17 00:00:00 2001
- From: Adam Duskett <aduskett@gmail.com>
- Date: Mon, 27 Sep 2021 12:55:09 -0700
- Subject: [PATCH] add qemu-wrapper support
- V8's JIT infrastructure requires binaries such as mksnapshot and mkpeephole to
- be run in the host during the build. However, these binaries must have the
- same bit-width as the target (e.g. a x86_64 host targeting ARMv6 needs to
- produce a 32-bit binary). To work around this issue, cross-compile the
- binaries for the target and run them on the host with QEMU, much like
- gobject-introspection.
- However, for the host-variant we do not want to use a
- qemu-wrapper, so add @MAYBE_WRAPPER@ to the needed files and sed the path to
- the qemu-wrapper on target builds, and remove @MAYBE_WRAPPER@ entirely on
- host-builds.
- Signed-off-by: Adam Duskett <aduskett@gmail.com>
- ---
- node.gyp | 4 ++--
- tools/v8_gypfiles/v8.gyp | 10 +++++-----
- 2 files changed, 7 insertions(+), 7 deletions(-)
- diff --git a/node.gyp b/node.gyp
- index 97cdbb531d..db5cf51ce6 100644
- --- a/node.gyp
- +++ b/node.gyp
- @@ -319,7 +319,7 @@
- 'action_name': 'run_mkcodecache',
- 'process_outputs_as_sources': 1,
- 'inputs': [
- - '<(mkcodecache_exec)',
- + @MAYBE_WRAPPER@ '<(mkcodecache_exec)',
- ],
- 'outputs': [
- '<(SHARED_INTERMEDIATE_DIR)/node_code_cache.cc',
- @@ -346,7 +346,7 @@
- 'action_name': 'node_mksnapshot',
- 'process_outputs_as_sources': 1,
- 'inputs': [
- - '<(node_mksnapshot_exec)',
- + @MAYBE_WRAPPER@ '<(node_mksnapshot_exec)',
- '<(node_snapshot_main)',
- ],
- 'outputs': [
- diff --git a/tools/v8_gypfiles/v8.gyp b/tools/v8_gypfiles/v8.gyp
- index 73099a03e4..88ca91efb4 100644
- --- a/tools/v8_gypfiles/v8.gyp
- +++ b/tools/v8_gypfiles/v8.gyp
- @@ -68,7 +68,7 @@
- {
- 'action_name': 'run_torque_action',
- 'inputs': [ # Order matters.
- - '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)torque<(EXECUTABLE_SUFFIX)',
- + @MAYBE_WRAPPER@ '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)torque<(EXECUTABLE_SUFFIX)',
- '<@(torque_files)',
- ],
- 'outputs': [
- @@ -99,7 +99,7 @@
- '<@(torque_outputs_inc)',
- ],
- 'action': [
- - '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)torque<(EXECUTABLE_SUFFIX)',
- + @MAYBE_WRAPPER@ '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)torque<(EXECUTABLE_SUFFIX)',
- '-o', '<(SHARED_INTERMEDIATE_DIR)/torque-generated',
- '-v8-root', '<(V8_ROOT)',
- '<@(torque_files_without_v8_root)',
- @@ -211,7 +211,7 @@
- {
- 'action_name': 'generate_bytecode_builtins_list_action',
- 'inputs': [
- - '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)bytecode_builtins_list_generator<(EXECUTABLE_SUFFIX)',
- + @MAYBE_WRAPPER@ '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)bytecode_builtins_list_generator<(EXECUTABLE_SUFFIX)',
- ],
- 'outputs': [
- '<(generate_bytecode_builtins_list_output)',
- @@ -395,7 +395,7 @@
- ],
- },
- 'inputs': [
- - '<(mksnapshot_exec)',
- + @MAYBE_WRAPPER@ '<(mksnapshot_exec)',
- ],
- 'outputs': [
- '<(INTERMEDIATE_DIR)/snapshot.cc',
- @@ -1505,7 +1505,7 @@
- {
- 'action_name': 'run_gen-regexp-special-case_action',
- 'inputs': [
- - '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)gen-regexp-special-case<(EXECUTABLE_SUFFIX)',
- + @MAYBE_WRAPPER@ '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)gen-regexp-special-case<(EXECUTABLE_SUFFIX)',
- ],
- 'outputs': [
- '<(SHARED_INTERMEDIATE_DIR)/src/regexp/special-case.cc',
- --
- 2.37.3
|