Skip to content

Commit 49f6555

Browse files
committed
gyp: put filenames in variables
nodejs/node#46965
1 parent f7a5d88 commit 49f6555

2 files changed

+98
-31
lines changed

patches/node/build_add_gn_build_files.patch

+97-30
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ This adds GN build files for Node, so we don't have to build with GYP.
77

88
diff --git a/BUILD.gn b/BUILD.gn
99
new file mode 100644
10-
index 0000000000000000000000000000000000000000..cf4f9b577010ee1e3122bdc1097dfecdfc063b43
10+
index 0000000000000000000000000000000000000000..ed74ff4855a4e7869e40eb2e85ba15227abd089c
1111
--- /dev/null
1212
+++ b/BUILD.gn
1313
@@ -0,0 +1,358 @@
@@ -104,7 +104,7 @@ index 0000000000000000000000000000000000000000..cf4f9b577010ee1e3122bdc1097dfecd
104104
+ ]
105105
+
106106
+ cwd = "$target_gen_dir/js2c_inputs"
107-
+ script = "tools/js2c.py"
107+
+ script = "tools/js2c.cc"
108108
+ args = library_files + rebase_path(config_gypi) + ["--target"] + rebase_path(outputs)
109109
+}
110110
+
@@ -1134,10 +1134,10 @@ index 0000000000000000000000000000000000000000..2c9d2826c85bdd033f1df1d6188df636
11341134
+}
11351135
diff --git a/filenames.json b/filenames.json
11361136
new file mode 100644
1137-
index 0000000000000000000000000000000000000000..7d86765bf229275ba55d37a452ef24832a7afadb
1137+
index 0000000000000000000000000000000000000000..3aa6300b09c3cf67cc782f874e3310ed3ee334ba
11381138
--- /dev/null
11391139
+++ b/filenames.json
1140-
@@ -0,0 +1,664 @@
1140+
@@ -0,0 +1,729 @@
11411141
+// This file is automatically generated by generate_gn_filenames_json.py
11421142
+// DO NOT EDIT
11431143
+{
@@ -1170,14 +1170,10 @@ index 0000000000000000000000000000000000000000..7d86765bf229275ba55d37a452ef2483
11701170
+ "//v8/include/v8-exception.h",
11711171
+ "//v8/include/v8-extension.h",
11721172
+ "//v8/include/v8-external.h",
1173-
+ "//v8/include/v8-fast-api-calls.h",
11741173
+ "//v8/include/v8-forward.h",
11751174
+ "//v8/include/v8-function-callback.h",
11761175
+ "//v8/include/v8-function.h",
1177-
+ "//v8/include/v8-handle-base.h",
11781176
+ "//v8/include/v8-initialization.h",
1179-
+ "//v8/include/v8-inspector-protocol.h",
1180-
+ "//v8/include/v8-inspector.h",
11811177
+ "//v8/include/v8-internal.h",
11821178
+ "//v8/include/v8-isolate.h",
11831179
+ "//v8/include/v8-json.h",
@@ -1186,7 +1182,6 @@ index 0000000000000000000000000000000000000000..7d86765bf229275ba55d37a452ef2483
11861182
+ "//v8/include/v8-maybe.h",
11871183
+ "//v8/include/v8-memory-span.h",
11881184
+ "//v8/include/v8-message.h",
1189-
+ "//v8/include/v8-metrics.h",
11901185
+ "//v8/include/v8-microtask-queue.h",
11911186
+ "//v8/include/v8-microtask.h",
11921187
+ "//v8/include/v8-object.h",
@@ -1200,21 +1195,14 @@ index 0000000000000000000000000000000000000000..7d86765bf229275ba55d37a452ef2483
12001195
+ "//v8/include/v8-regexp.h",
12011196
+ "//v8/include/v8-script.h",
12021197
+ "//v8/include/v8-snapshot.h",
1203-
+ "//v8/include/v8-source-location.h",
12041198
+ "//v8/include/v8-statistics.h",
12051199
+ "//v8/include/v8-template.h",
12061200
+ "//v8/include/v8-traced-handle.h",
12071201
+ "//v8/include/v8-typed-array.h",
1208-
+ "//v8/include/v8-unwinder-state.h",
12091202
+ "//v8/include/v8-unwinder.h",
1210-
+ "//v8/include/v8-util.h",
1211-
+ "//v8/include/v8-value-serializer-version.h",
12121203
+ "//v8/include/v8-value-serializer.h",
12131204
+ "//v8/include/v8-value.h",
1214-
+ "//v8/include/v8-version-string.h",
12151205
+ "//v8/include/v8-version.h",
1216-
+ "//v8/include/v8-wasm-trap-handler-posix.h",
1217-
+ "//v8/include/v8-wasm-trap-handler-win.h",
12181206
+ "//v8/include/v8-wasm.h",
12191207
+ "//v8/include/v8-weak-callback-info.h",
12201208
+ "//v8/include/v8.h",
@@ -1232,7 +1220,53 @@ index 0000000000000000000000000000000000000000..7d86765bf229275ba55d37a452ef2483
12321220
+ {
12331221
+ "dest_dir": "include/node//cppgc/",
12341222
+ "files": [
1235-
+ "//v8/include/cppgc/common.h"
1223+
+ "//v8/include/cppgc/allocation.h",
1224+
+ "//v8/include/cppgc/common.h",
1225+
+ "//v8/include/cppgc/cross-thread-persistent.h",
1226+
+ "//v8/include/cppgc/custom-space.h",
1227+
+ "//v8/include/cppgc/default-platform.h",
1228+
+ "//v8/include/cppgc/ephemeron-pair.h",
1229+
+ "//v8/include/cppgc/explicit-management.h",
1230+
+ "//v8/include/cppgc/garbage-collected.h",
1231+
+ "//v8/include/cppgc/heap-consistency.h",
1232+
+ "//v8/include/cppgc/heap-handle.h",
1233+
+ "//v8/include/cppgc/heap-state.h",
1234+
+ "//v8/include/cppgc/heap-statistics.h",
1235+
+ "//v8/include/cppgc/heap.h",
1236+
+ "//v8/include/cppgc/liveness-broker.h",
1237+
+ "//v8/include/cppgc/macros.h",
1238+
+ "//v8/include/cppgc/member.h",
1239+
+ "//v8/include/cppgc/name-provider.h",
1240+
+ "//v8/include/cppgc/object-size-trait.h",
1241+
+ "//v8/include/cppgc/persistent.h",
1242+
+ "//v8/include/cppgc/platform.h",
1243+
+ "//v8/include/cppgc/prefinalizer.h",
1244+
+ "//v8/include/cppgc/process-heap-statistics.h",
1245+
+ "//v8/include/cppgc/sentinel-pointer.h",
1246+
+ "//v8/include/cppgc/source-location.h",
1247+
+ "//v8/include/cppgc/testing.h",
1248+
+ "//v8/include/cppgc/trace-trait.h",
1249+
+ "//v8/include/cppgc/type-traits.h",
1250+
+ "//v8/include/cppgc/visitor.h"
1251+
+ ]
1252+
+ },
1253+
+ {
1254+
+ "dest_dir": "include/node//cppgc/internal/",
1255+
+ "files": [
1256+
+ "//v8/include/cppgc/internal/api-constants.h",
1257+
+ "//v8/include/cppgc/internal/atomic-entry-flag.h",
1258+
+ "//v8/include/cppgc/internal/base-page-handle.h",
1259+
+ "//v8/include/cppgc/internal/caged-heap-local-data.h",
1260+
+ "//v8/include/cppgc/internal/caged-heap.h",
1261+
+ "//v8/include/cppgc/internal/compiler-specific.h",
1262+
+ "//v8/include/cppgc/internal/finalizer-trait.h",
1263+
+ "//v8/include/cppgc/internal/gc-info.h",
1264+
+ "//v8/include/cppgc/internal/logging.h",
1265+
+ "//v8/include/cppgc/internal/member-storage.h",
1266+
+ "//v8/include/cppgc/internal/name-trait.h",
1267+
+ "//v8/include/cppgc/internal/persistent-node.h",
1268+
+ "//v8/include/cppgc/internal/pointer-policies.h",
1269+
+ "//v8/include/cppgc/internal/write-barrier.h"
12361270
+ ]
12371271
+ },
12381272
+ {
@@ -1251,7 +1285,6 @@ index 0000000000000000000000000000000000000000..7d86765bf229275ba55d37a452ef2483
12511285
+ "deps/uv/include/uv/linux.h",
12521286
+ "deps/uv/include/uv/os390.h",
12531287
+ "deps/uv/include/uv/posix.h",
1254-
+ "deps/uv/include/uv/stdint-msvc2008.h",
12551288
+ "deps/uv/include/uv/sunos.h",
12561289
+ "deps/uv/include/uv/threadpool.h",
12571290
+ "deps/uv/include/uv/tree.h",
@@ -1297,20 +1330,22 @@ index 0000000000000000000000000000000000000000..7d86765bf229275ba55d37a452ef2483
12971330
+ "lib/http2.js",
12981331
+ "lib/https.js",
12991332
+ "lib/inspector.js",
1333+
+ "lib/inspector/promises.js",
13001334
+ "lib/internal/abort_controller.js",
13011335
+ "lib/internal/assert.js",
13021336
+ "lib/internal/assert/assertion_error.js",
13031337
+ "lib/internal/assert/calltracker.js",
13041338
+ "lib/internal/async_hooks.js",
13051339
+ "lib/internal/blob.js",
13061340
+ "lib/internal/blocklist.js",
1307-
+ "lib/internal/bootstrap/browser.js",
1308-
+ "lib/internal/bootstrap/loaders.js",
13091341
+ "lib/internal/bootstrap/node.js",
1342+
+ "lib/internal/bootstrap/realm.js",
13101343
+ "lib/internal/bootstrap/switches/does_not_own_process_state.js",
13111344
+ "lib/internal/bootstrap/switches/does_own_process_state.js",
13121345
+ "lib/internal/bootstrap/switches/is_main_thread.js",
13131346
+ "lib/internal/bootstrap/switches/is_not_main_thread.js",
1347+
+ "lib/internal/bootstrap/web/exposed-wildcard.js",
1348+
+ "lib/internal/bootstrap/web/exposed-window-or-worker.js",
13141349
+ "lib/internal/buffer.js",
13151350
+ "lib/internal/child_process.js",
13161351
+ "lib/internal/child_process/serialization.js",
@@ -1352,11 +1387,11 @@ index 0000000000000000000000000000000000000000..7d86765bf229275ba55d37a452ef2483
13521387
+ "lib/internal/dns/callback_resolver.js",
13531388
+ "lib/internal/dns/promises.js",
13541389
+ "lib/internal/dns/utils.js",
1355-
+ "lib/internal/dtrace.js",
13561390
+ "lib/internal/encoding.js",
13571391
+ "lib/internal/error_serdes.js",
13581392
+ "lib/internal/errors.js",
13591393
+ "lib/internal/event_target.js",
1394+
+ "lib/internal/events/symbols.js",
13601395
+ "lib/internal/file.js",
13611396
+ "lib/internal/fixed_queue.js",
13621397
+ "lib/internal/freelist.js",
@@ -1365,10 +1400,11 @@ index 0000000000000000000000000000000000000000..7d86765bf229275ba55d37a452ef2483
13651400
+ "lib/internal/fs/cp/cp.js",
13661401
+ "lib/internal/fs/dir.js",
13671402
+ "lib/internal/fs/promises.js",
1368-
+ "lib/internal/fs/read_file_context.js",
1403+
+ "lib/internal/fs/read/context.js",
13691404
+ "lib/internal/fs/recursive_watch.js",
13701405
+ "lib/internal/fs/rimraf.js",
13711406
+ "lib/internal/fs/streams.js",
1407+
+ "lib/internal/fs/sync.js",
13721408
+ "lib/internal/fs/sync_write_stream.js",
13731409
+ "lib/internal/fs/utils.js",
13741410
+ "lib/internal/fs/watchers.js",
@@ -1384,7 +1420,7 @@ index 0000000000000000000000000000000000000000..7d86765bf229275ba55d37a452ef2483
13841420
+ "lib/internal/legacy/processbinding.js",
13851421
+ "lib/internal/linkedlist.js",
13861422
+ "lib/internal/main/check_syntax.js",
1387-
+ "lib/internal/main/environment.js",
1423+
+ "lib/internal/main/embedding.js",
13881424
+ "lib/internal/main/eval_stdin.js",
13891425
+ "lib/internal/main/eval_string.js",
13901426
+ "lib/internal/main/inspect.js",
@@ -1393,28 +1429,30 @@ index 0000000000000000000000000000000000000000..7d86765bf229275ba55d37a452ef2483
13931429
+ "lib/internal/main/prof_process.js",
13941430
+ "lib/internal/main/repl.js",
13951431
+ "lib/internal/main/run_main_module.js",
1396-
+ "lib/internal/main/single_executable_application.js",
13971432
+ "lib/internal/main/test_runner.js",
13981433
+ "lib/internal/main/watch_mode.js",
13991434
+ "lib/internal/main/worker_thread.js",
14001435
+ "lib/internal/mime.js",
1401-
+ "lib/internal/modules/cjs/helpers.js",
14021436
+ "lib/internal/modules/cjs/loader.js",
14031437
+ "lib/internal/modules/esm/assert.js",
14041438
+ "lib/internal/modules/esm/create_dynamic_module.js",
14051439
+ "lib/internal/modules/esm/fetch_module.js",
14061440
+ "lib/internal/modules/esm/formats.js",
14071441
+ "lib/internal/modules/esm/get_format.js",
14081442
+ "lib/internal/modules/esm/handle_process_exit.js",
1443+
+ "lib/internal/modules/esm/hooks.js",
14091444
+ "lib/internal/modules/esm/initialize_import_meta.js",
14101445
+ "lib/internal/modules/esm/load.js",
14111446
+ "lib/internal/modules/esm/loader.js",
14121447
+ "lib/internal/modules/esm/module_job.js",
14131448
+ "lib/internal/modules/esm/module_map.js",
14141449
+ "lib/internal/modules/esm/package_config.js",
14151450
+ "lib/internal/modules/esm/resolve.js",
1451+
+ "lib/internal/modules/esm/shared_constants.js",
14161452
+ "lib/internal/modules/esm/translators.js",
14171453
+ "lib/internal/modules/esm/utils.js",
1454+
+ "lib/internal/modules/esm/worker.js",
1455+
+ "lib/internal/modules/helpers.js",
14181456
+ "lib/internal/modules/package_json_reader.js",
14191457
+ "lib/internal/modules/run_main.js",
14201458
+ "lib/internal/net.js",
@@ -1438,6 +1476,7 @@ index 0000000000000000000000000000000000000000..7d86765bf229275ba55d37a452ef2483
14381476
+ "lib/internal/process/esm_loader.js",
14391477
+ "lib/internal/process/execution.js",
14401478
+ "lib/internal/process/per_thread.js",
1479+
+ "lib/internal/process/permission.js",
14411480
+ "lib/internal/process/policy.js",
14421481
+ "lib/internal/process/pre_execution.js",
14431482
+ "lib/internal/process/promises.js",
@@ -1486,8 +1525,10 @@ index 0000000000000000000000000000000000000000..7d86765bf229275ba55d37a452ef2483
14861525
+ "lib/internal/test/transfer.js",
14871526
+ "lib/internal/test_runner/coverage.js",
14881527
+ "lib/internal/test_runner/harness.js",
1489-
+ "lib/internal/test_runner/mock.js",
1528+
+ "lib/internal/test_runner/mock/mock.js",
1529+
+ "lib/internal/test_runner/mock/mock_timers.js",
14901530
+ "lib/internal/test_runner/reporter/dot.js",
1531+
+ "lib/internal/test_runner/reporter/junit.js",
14911532
+ "lib/internal/test_runner/reporter/spec.js",
14921533
+ "lib/internal/test_runner/reporter/tap.js",
14931534
+ "lib/internal/test_runner/reporter/v8-serializer.js",
@@ -1505,6 +1546,7 @@ index 0000000000000000000000000000000000000000..7d86765bf229275ba55d37a452ef2483
15051546
+ "lib/internal/util/colors.js",
15061547
+ "lib/internal/util/comparisons.js",
15071548
+ "lib/internal/util/debuglog.js",
1549+
+ "lib/internal/util/embedding.js",
15081550
+ "lib/internal/util/inspect.js",
15091551
+ "lib/internal/util/inspector.js",
15101552
+ "lib/internal/util/iterable_weak_map.js",
@@ -1600,7 +1642,9 @@ index 0000000000000000000000000000000000000000..7d86765bf229275ba55d37a452ef2483
16001642
+ "src/cleanup_queue.cc",
16011643
+ "src/connect_wrap.cc",
16021644
+ "src/connection_wrap.cc",
1645+
+ "src/dataqueue/queue.cc",
16031646
+ "src/debug_utils.cc",
1647+
+ "src/encoding_binding.cc",
16041648
+ "src/env.cc",
16051649
+ "src/fs_event_wrap.cc",
16061650
+ "src/handle_wrap.cc",
@@ -1614,6 +1658,8 @@ index 0000000000000000000000000000000000000000..7d86765bf229275ba55d37a452ef2483
16141658
+ "src/js_stream.cc",
16151659
+ "src/json_utils.cc",
16161660
+ "src/js_udp_wrap.cc",
1661+
+ "src/json_parser.h",
1662+
+ "src/json_parser.cc",
16171663
+ "src/module_wrap.cc",
16181664
+ "src/node.cc",
16191665
+ "src/node_api.cc",
@@ -1626,6 +1672,7 @@ index 0000000000000000000000000000000000000000..7d86765bf229275ba55d37a452ef2483
16261672
+ "src/node_contextify.cc",
16271673
+ "src/node_credentials.cc",
16281674
+ "src/node_dir.cc",
1675+
+ "src/node_dotenv.cc",
16291676
+ "src/node_env_var.cc",
16301677
+ "src/node_errors.cc",
16311678
+ "src/node_external_reference.cc",
@@ -1666,6 +1713,11 @@ index 0000000000000000000000000000000000000000..7d86765bf229275ba55d37a452ef2483
16661713
+ "src/node_watchdog.cc",
16671714
+ "src/node_worker.cc",
16681715
+ "src/node_zlib.cc",
1716+
+ "src/permission/child_process_permission.cc",
1717+
+ "src/permission/fs_permission.cc",
1718+
+ "src/permission/inspector_permission.cc",
1719+
+ "src/permission/permission.cc",
1720+
+ "src/permission/worker_permission.cc",
16691721
+ "src/pipe_wrap.cc",
16701722
+ "src/process_wrap.cc",
16711723
+ "src/signal_wrap.cc",
@@ -1688,22 +1740,28 @@ index 0000000000000000000000000000000000000000..7d86765bf229275ba55d37a452ef2483
16881740
+ "src/util.cc",
16891741
+ "src/uv.cc",
16901742
+ "src/aliased_buffer.h",
1743+
+ "src/aliased_buffer-inl.h",
16911744
+ "src/aliased_struct.h",
16921745
+ "src/aliased_struct-inl.h",
16931746
+ "src/async_wrap.h",
16941747
+ "src/async_wrap-inl.h",
16951748
+ "src/base_object.h",
16961749
+ "src/base_object-inl.h",
1750+
+ "src/base_object_types.h",
16971751
+ "src/base64.h",
16981752
+ "src/base64-inl.h",
1753+
+ "src/blob_serializer_deserializer.h",
1754+
+ "src/blob_serializer_deserializer-inl.h",
16991755
+ "src/callback_queue.h",
17001756
+ "src/callback_queue-inl.h",
17011757
+ "src/cleanup_queue.h",
17021758
+ "src/cleanup_queue-inl.h",
17031759
+ "src/connect_wrap.h",
17041760
+ "src/connection_wrap.h",
1761+
+ "src/dataqueue/queue.h",
17051762
+ "src/debug_utils.h",
17061763
+ "src/debug_utils-inl.h",
1764+
+ "src/encoding_binding.h",
17071765
+ "src/env_properties.h",
17081766
+ "src/env.h",
17091767
+ "src/env-inl.h",
@@ -1728,7 +1786,9 @@ index 0000000000000000000000000000000000000000..7d86765bf229275ba55d37a452ef2483
17281786
+ "src/node_context_data.h",
17291787
+ "src/node_contextify.h",
17301788
+ "src/node_dir.h",
1789+
+ "src/node_dotenv.h",
17311790
+ "src/node_errors.h",
1791+
+ "src/node_exit_code.h",
17321792
+ "src/node_external_reference.h",
17331793
+ "src/node_file.h",
17341794
+ "src/node_file-inl.h",
@@ -1766,13 +1826,17 @@ index 0000000000000000000000000000000000000000..7d86765bf229275ba55d37a452ef2483
17661826
+ "src/node_stat_watcher.h",
17671827
+ "src/node_union_bytes.h",
17681828
+ "src/node_url.h",
1769-
+ "src/node_util.h",
17701829
+ "src/node_version.h",
17711830
+ "src/node_v8.h",
17721831
+ "src/node_v8_platform-inl.h",
17731832
+ "src/node_wasi.h",
17741833
+ "src/node_watchdog.h",
17751834
+ "src/node_worker.h",
1835+
+ "src/permission/child_process_permission.h",
1836+
+ "src/permission/fs_permission.h",
1837+
+ "src/permission/inspector_permission.h",
1838+
+ "src/permission/permission.h",
1839+
+ "src/permission/worker_permission.h",
17761840
+ "src/pipe_wrap.h",
17771841
+ "src/req_wrap.h",
17781842
+ "src/req_wrap-inl.h",
@@ -1786,6 +1850,7 @@ index 0000000000000000000000000000000000000000..7d86765bf229275ba55d37a452ef2483
17861850
+ "src/string_decoder-inl.h",
17871851
+ "src/string_search.h",
17881852
+ "src/tcp_wrap.h",
1853+
+ "src/timers.h",
17891854
+ "src/tracing/agent.h",
17901855
+ "src/tracing/node_trace_buffer.h",
17911856
+ "src/tracing/node_trace_writer.h",
@@ -2050,10 +2115,10 @@ index 0000000000000000000000000000000000000000..4ab828dcbf322a9e28674e48c4a6868b
20502115
+}
20512116
diff --git a/tools/generate_gn_filenames_json.py b/tools/generate_gn_filenames_json.py
20522117
new file mode 100755
2053-
index 0000000000000000000000000000000000000000..616dc0c61ed4ea1bf2fb9e4768ba2ec566a83e42
2118+
index 0000000000000000000000000000000000000000..7ccec2f2475d70751119309d52bfc9b94b6ac656
20542119
--- /dev/null
20552120
+++ b/tools/generate_gn_filenames_json.py
2056-
@@ -0,0 +1,81 @@
2121+
@@ -0,0 +1,83 @@
20572122
+#!/usr/bin/env python3
20582123
+import json
20592124
+import os
@@ -2095,6 +2160,7 @@ index 0000000000000000000000000000000000000000..616dc0c61ed4ea1bf2fb9e4768ba2ec5
20952160
+ node_source_blocklist = {
20962161
+ '<@(library_files)',
20972162
+ '<@(deps_files)',
2163+
+ '<@(node_sources)',
20982164
+ 'common.gypi',
20992165
+ '<(SHARED_INTERMEDIATE_DIR)/node_javascript.cc',
21002166
+ }
@@ -2113,11 +2179,12 @@ index 0000000000000000000000000000000000000000..616dc0c61ed4ea1bf2fb9e4768ba2ec5
21132179
+ lib_files = SearchFiles('lib', 'js')
21142180
+ out['library_files'] = filter_v8_files(lib_files)
21152181
+ out['library_files'] += filter_v8_files(node_gyp['variables']['deps_files'])
2182+
+ out['node_sources'] = node_gyp['variables']['node_sources']
21162183
+
21172184
+ blocklisted_sources = [
21182185
+ f for f in node_lib_target['sources']
21192186
+ if f not in node_source_blocklist]
2120-
+ out['node_sources'] = filter_v8_files(blocklisted_sources)
2187+
+ out['node_sources'] += filter_v8_files(blocklisted_sources)
21212188
+
21222189
+ out['headers'] = []
21232190
+ def add_headers(files, dest_dir):

0 commit comments

Comments
 (0)