1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
|
From 4c910c45a73c61f908f85661a1568a614afde081 Mon Sep 17 00:00:00 2001
From: William Hubbs <w.d.hubbs@gmail.com>
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
|