From 4c910c45a73c61f908f85661a1568a614afde081 Mon Sep 17 00:00:00 2001 From: William Hubbs Date: Mon, 17 Apr 2023 11:43:17 -0500 Subject: [PATCH] pax marking --- node.gyp | 17 ++++++++++++++++- tools/v8_gypfiles/v8.gyp | 24 +++++++++++++++++++++++- 2 files changed, 39 insertions(+), 2 deletions(-) diff --git a/node.gyp b/node.gyp index cf52281bb4..80352dfcc5 100644 --- a/node.gyp +++ b/node.gyp @@ -54,6 +54,7 @@ '<@(node_builtin_shareable_builtins)', ], 'node_mksnapshot_exec': '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)node_mksnapshot<(EXECUTABLE_SUFFIX)', + 'node_mksnapshot_u_exec': '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)node_mksnapshot_u<(EXECUTABLE_SUFFIX)', 'conditions': [ ['GENERATOR == "ninja"', { 'node_text_start_object_path': 'src/large_pages/node_text_start.node_text_start.o' @@ -337,11 +338,25 @@ ], }, { 'actions': [ + { + 'action_name': 'run_pax_mksnapshot', + 'inputs': [ + '<(node_mksnapshot_exec)', + ], + 'outputs': [ + '<(node_mksnapshot_u_exec)', + ], + 'action': [ + 'bash', + '-c', + 'mv <(node_mksnapshot_exec) <(node_mksnapshot_u_exec) && paxmark.sh m <(node_mksnapshot_u_exec)', + ], + }, { 'action_name': 'node_mksnapshot', 'process_outputs_as_sources': 1, 'inputs': [ - '<(node_mksnapshot_exec)', + '<(node_mksnapshot_u_exec)', ], 'outputs': [ '<(SHARED_INTERMEDIATE_DIR)/node_snapshot.cc', diff --git a/tools/v8_gypfiles/v8.gyp b/tools/v8_gypfiles/v8.gyp index a721ffb41a..4a52a1f822 100644 --- a/tools/v8_gypfiles/v8.gyp +++ b/tools/v8_gypfiles/v8.gyp @@ -9,6 +9,7 @@ 'v8_vector_stores%': 0, 'v8_embed_script%': "", 'mksnapshot_exec': '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)mksnapshot<(EXECUTABLE_SUFFIX)', + 'mksnapshot_u_exec': '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)mksnapshot_u<(EXECUTABLE_SUFFIX)', 'v8_os_page_size%': 0, 'generate_bytecode_output_root': '<(SHARED_INTERMEDIATE_DIR)/generate-bytecode-output-root', 'generate_bytecode_builtins_list_output': '<(generate_bytecode_output_root)/builtins-generated/bytecodes-builtins-list.h', @@ -1419,7 +1420,7 @@ ], }, # bytecode_builtins_list_generator { - 'target_name': 'mksnapshot', + 'target_name': 'mksnapshot_u', 'type': 'executable', 'dependencies': [ 'v8_base_without_compiler', @@ -1446,6 +1447,27 @@ ], }], ], + }, # mksnapshot_u + { + 'target_name': 'mksnapshot', + 'type': 'none', + 'dependencies': ['mksnapshot_u'], + 'actions': [ + { + 'action_name': 'paxmark_mksnapshot', + 'inputs': [ + '<(mksnapshot_u_exec)', + ], + 'outputs': [ + '<(mksnapshot_exec)', + ], + 'action': [ + 'bash', + '-c', + 'cp <(mksnapshot_u_exec) <(mksnapshot_exec) && paxmark.sh m <(mksnapshot_exec)' + ], + }, + ], }, # mksnapshot { 'target_name': 'torque', -- 2.39.2