Skip to content

Commit

Permalink
gyp: put filenames in variables
Browse files Browse the repository at this point in the history
  • Loading branch information
codebytere committed Nov 29, 2023
1 parent b8986d8 commit 3847e64
Show file tree
Hide file tree
Showing 2 changed files with 98 additions and 31 deletions.
127 changes: 97 additions & 30 deletions patches/node/build_add_gn_build_files.patch
Expand Up @@ -7,7 +7,7 @@ This adds GN build files for Node, so we don't have to build with GYP.

diff --git a/BUILD.gn b/BUILD.gn
new file mode 100644
index 0000000000000000000000000000000000000000..cf4f9b577010ee1e3122bdc1097dfecdfc063b43
index 0000000000000000000000000000000000000000..ed74ff4855a4e7869e40eb2e85ba15227abd089c
--- /dev/null
+++ b/BUILD.gn
@@ -0,0 +1,358 @@
Expand Down Expand Up @@ -104,7 +104,7 @@ index 0000000000000000000000000000000000000000..cf4f9b577010ee1e3122bdc1097dfecd
+ ]
+
+ cwd = "$target_gen_dir/js2c_inputs"
+ script = "tools/js2c.py"
+ script = "tools/js2c.cc"
+ args = library_files + rebase_path(config_gypi) + ["--target"] + rebase_path(outputs)
+}
+
Expand Down Expand Up @@ -1134,10 +1134,10 @@ index 0000000000000000000000000000000000000000..2c9d2826c85bdd033f1df1d6188df636
+}
diff --git a/filenames.json b/filenames.json
new file mode 100644
index 0000000000000000000000000000000000000000..7d86765bf229275ba55d37a452ef24832a7afadb
index 0000000000000000000000000000000000000000..3aa6300b09c3cf67cc782f874e3310ed3ee334ba
--- /dev/null
+++ b/filenames.json
@@ -0,0 +1,664 @@
@@ -0,0 +1,729 @@
+// This file is automatically generated by generate_gn_filenames_json.py
+// DO NOT EDIT
+{
Expand Down Expand Up @@ -1170,14 +1170,10 @@ index 0000000000000000000000000000000000000000..7d86765bf229275ba55d37a452ef2483
+ "//v8/include/v8-exception.h",
+ "//v8/include/v8-extension.h",
+ "//v8/include/v8-external.h",
+ "//v8/include/v8-fast-api-calls.h",
+ "//v8/include/v8-forward.h",
+ "//v8/include/v8-function-callback.h",
+ "//v8/include/v8-function.h",
+ "//v8/include/v8-handle-base.h",
+ "//v8/include/v8-initialization.h",
+ "//v8/include/v8-inspector-protocol.h",
+ "//v8/include/v8-inspector.h",
+ "//v8/include/v8-internal.h",
+ "//v8/include/v8-isolate.h",
+ "//v8/include/v8-json.h",
Expand All @@ -1186,7 +1182,6 @@ index 0000000000000000000000000000000000000000..7d86765bf229275ba55d37a452ef2483
+ "//v8/include/v8-maybe.h",
+ "//v8/include/v8-memory-span.h",
+ "//v8/include/v8-message.h",
+ "//v8/include/v8-metrics.h",
+ "//v8/include/v8-microtask-queue.h",
+ "//v8/include/v8-microtask.h",
+ "//v8/include/v8-object.h",
Expand All @@ -1200,21 +1195,14 @@ index 0000000000000000000000000000000000000000..7d86765bf229275ba55d37a452ef2483
+ "//v8/include/v8-regexp.h",
+ "//v8/include/v8-script.h",
+ "//v8/include/v8-snapshot.h",
+ "//v8/include/v8-source-location.h",
+ "//v8/include/v8-statistics.h",
+ "//v8/include/v8-template.h",
+ "//v8/include/v8-traced-handle.h",
+ "//v8/include/v8-typed-array.h",
+ "//v8/include/v8-unwinder-state.h",
+ "//v8/include/v8-unwinder.h",
+ "//v8/include/v8-util.h",
+ "//v8/include/v8-value-serializer-version.h",
+ "//v8/include/v8-value-serializer.h",
+ "//v8/include/v8-value.h",
+ "//v8/include/v8-version-string.h",
+ "//v8/include/v8-version.h",
+ "//v8/include/v8-wasm-trap-handler-posix.h",
+ "//v8/include/v8-wasm-trap-handler-win.h",
+ "//v8/include/v8-wasm.h",
+ "//v8/include/v8-weak-callback-info.h",
+ "//v8/include/v8.h",
Expand All @@ -1232,7 +1220,53 @@ index 0000000000000000000000000000000000000000..7d86765bf229275ba55d37a452ef2483
+ {
+ "dest_dir": "include/node//cppgc/",
+ "files": [
+ "//v8/include/cppgc/common.h"
+ "//v8/include/cppgc/allocation.h",
+ "//v8/include/cppgc/common.h",
+ "//v8/include/cppgc/cross-thread-persistent.h",
+ "//v8/include/cppgc/custom-space.h",
+ "//v8/include/cppgc/default-platform.h",
+ "//v8/include/cppgc/ephemeron-pair.h",
+ "//v8/include/cppgc/explicit-management.h",
+ "//v8/include/cppgc/garbage-collected.h",
+ "//v8/include/cppgc/heap-consistency.h",
+ "//v8/include/cppgc/heap-handle.h",
+ "//v8/include/cppgc/heap-state.h",
+ "//v8/include/cppgc/heap-statistics.h",
+ "//v8/include/cppgc/heap.h",
+ "//v8/include/cppgc/liveness-broker.h",
+ "//v8/include/cppgc/macros.h",
+ "//v8/include/cppgc/member.h",
+ "//v8/include/cppgc/name-provider.h",
+ "//v8/include/cppgc/object-size-trait.h",
+ "//v8/include/cppgc/persistent.h",
+ "//v8/include/cppgc/platform.h",
+ "//v8/include/cppgc/prefinalizer.h",
+ "//v8/include/cppgc/process-heap-statistics.h",
+ "//v8/include/cppgc/sentinel-pointer.h",
+ "//v8/include/cppgc/source-location.h",
+ "//v8/include/cppgc/testing.h",
+ "//v8/include/cppgc/trace-trait.h",
+ "//v8/include/cppgc/type-traits.h",
+ "//v8/include/cppgc/visitor.h"
+ ]
+ },
+ {
+ "dest_dir": "include/node//cppgc/internal/",
+ "files": [
+ "//v8/include/cppgc/internal/api-constants.h",
+ "//v8/include/cppgc/internal/atomic-entry-flag.h",
+ "//v8/include/cppgc/internal/base-page-handle.h",
+ "//v8/include/cppgc/internal/caged-heap-local-data.h",
+ "//v8/include/cppgc/internal/caged-heap.h",
+ "//v8/include/cppgc/internal/compiler-specific.h",
+ "//v8/include/cppgc/internal/finalizer-trait.h",
+ "//v8/include/cppgc/internal/gc-info.h",
+ "//v8/include/cppgc/internal/logging.h",
+ "//v8/include/cppgc/internal/member-storage.h",
+ "//v8/include/cppgc/internal/name-trait.h",
+ "//v8/include/cppgc/internal/persistent-node.h",
+ "//v8/include/cppgc/internal/pointer-policies.h",
+ "//v8/include/cppgc/internal/write-barrier.h"
+ ]
+ },
+ {
Expand All @@ -1251,7 +1285,6 @@ index 0000000000000000000000000000000000000000..7d86765bf229275ba55d37a452ef2483
+ "deps/uv/include/uv/linux.h",
+ "deps/uv/include/uv/os390.h",
+ "deps/uv/include/uv/posix.h",
+ "deps/uv/include/uv/stdint-msvc2008.h",
+ "deps/uv/include/uv/sunos.h",
+ "deps/uv/include/uv/threadpool.h",
+ "deps/uv/include/uv/tree.h",
Expand Down Expand Up @@ -1297,20 +1330,22 @@ index 0000000000000000000000000000000000000000..7d86765bf229275ba55d37a452ef2483
+ "lib/http2.js",
+ "lib/https.js",
+ "lib/inspector.js",
+ "lib/inspector/promises.js",
+ "lib/internal/abort_controller.js",
+ "lib/internal/assert.js",
+ "lib/internal/assert/assertion_error.js",
+ "lib/internal/assert/calltracker.js",
+ "lib/internal/async_hooks.js",
+ "lib/internal/blob.js",
+ "lib/internal/blocklist.js",
+ "lib/internal/bootstrap/browser.js",
+ "lib/internal/bootstrap/loaders.js",
+ "lib/internal/bootstrap/node.js",
+ "lib/internal/bootstrap/realm.js",
+ "lib/internal/bootstrap/switches/does_not_own_process_state.js",
+ "lib/internal/bootstrap/switches/does_own_process_state.js",
+ "lib/internal/bootstrap/switches/is_main_thread.js",
+ "lib/internal/bootstrap/switches/is_not_main_thread.js",
+ "lib/internal/bootstrap/web/exposed-wildcard.js",
+ "lib/internal/bootstrap/web/exposed-window-or-worker.js",
+ "lib/internal/buffer.js",
+ "lib/internal/child_process.js",
+ "lib/internal/child_process/serialization.js",
Expand Down Expand Up @@ -1352,11 +1387,11 @@ index 0000000000000000000000000000000000000000..7d86765bf229275ba55d37a452ef2483
+ "lib/internal/dns/callback_resolver.js",
+ "lib/internal/dns/promises.js",
+ "lib/internal/dns/utils.js",
+ "lib/internal/dtrace.js",
+ "lib/internal/encoding.js",
+ "lib/internal/error_serdes.js",
+ "lib/internal/errors.js",
+ "lib/internal/event_target.js",
+ "lib/internal/events/symbols.js",
+ "lib/internal/file.js",
+ "lib/internal/fixed_queue.js",
+ "lib/internal/freelist.js",
Expand All @@ -1365,10 +1400,11 @@ index 0000000000000000000000000000000000000000..7d86765bf229275ba55d37a452ef2483
+ "lib/internal/fs/cp/cp.js",
+ "lib/internal/fs/dir.js",
+ "lib/internal/fs/promises.js",
+ "lib/internal/fs/read_file_context.js",
+ "lib/internal/fs/read/context.js",
+ "lib/internal/fs/recursive_watch.js",
+ "lib/internal/fs/rimraf.js",
+ "lib/internal/fs/streams.js",
+ "lib/internal/fs/sync.js",
+ "lib/internal/fs/sync_write_stream.js",
+ "lib/internal/fs/utils.js",
+ "lib/internal/fs/watchers.js",
Expand All @@ -1384,7 +1420,7 @@ index 0000000000000000000000000000000000000000..7d86765bf229275ba55d37a452ef2483
+ "lib/internal/legacy/processbinding.js",
+ "lib/internal/linkedlist.js",
+ "lib/internal/main/check_syntax.js",
+ "lib/internal/main/environment.js",
+ "lib/internal/main/embedding.js",
+ "lib/internal/main/eval_stdin.js",
+ "lib/internal/main/eval_string.js",
+ "lib/internal/main/inspect.js",
Expand All @@ -1393,28 +1429,30 @@ index 0000000000000000000000000000000000000000..7d86765bf229275ba55d37a452ef2483
+ "lib/internal/main/prof_process.js",
+ "lib/internal/main/repl.js",
+ "lib/internal/main/run_main_module.js",
+ "lib/internal/main/single_executable_application.js",
+ "lib/internal/main/test_runner.js",
+ "lib/internal/main/watch_mode.js",
+ "lib/internal/main/worker_thread.js",
+ "lib/internal/mime.js",
+ "lib/internal/modules/cjs/helpers.js",
+ "lib/internal/modules/cjs/loader.js",
+ "lib/internal/modules/esm/assert.js",
+ "lib/internal/modules/esm/create_dynamic_module.js",
+ "lib/internal/modules/esm/fetch_module.js",
+ "lib/internal/modules/esm/formats.js",
+ "lib/internal/modules/esm/get_format.js",
+ "lib/internal/modules/esm/handle_process_exit.js",
+ "lib/internal/modules/esm/hooks.js",
+ "lib/internal/modules/esm/initialize_import_meta.js",
+ "lib/internal/modules/esm/load.js",
+ "lib/internal/modules/esm/loader.js",
+ "lib/internal/modules/esm/module_job.js",
+ "lib/internal/modules/esm/module_map.js",
+ "lib/internal/modules/esm/package_config.js",
+ "lib/internal/modules/esm/resolve.js",
+ "lib/internal/modules/esm/shared_constants.js",
+ "lib/internal/modules/esm/translators.js",
+ "lib/internal/modules/esm/utils.js",
+ "lib/internal/modules/esm/worker.js",
+ "lib/internal/modules/helpers.js",
+ "lib/internal/modules/package_json_reader.js",
+ "lib/internal/modules/run_main.js",
+ "lib/internal/net.js",
Expand All @@ -1438,6 +1476,7 @@ index 0000000000000000000000000000000000000000..7d86765bf229275ba55d37a452ef2483
+ "lib/internal/process/esm_loader.js",
+ "lib/internal/process/execution.js",
+ "lib/internal/process/per_thread.js",
+ "lib/internal/process/permission.js",
+ "lib/internal/process/policy.js",
+ "lib/internal/process/pre_execution.js",
+ "lib/internal/process/promises.js",
Expand Down Expand Up @@ -1486,8 +1525,10 @@ index 0000000000000000000000000000000000000000..7d86765bf229275ba55d37a452ef2483
+ "lib/internal/test/transfer.js",
+ "lib/internal/test_runner/coverage.js",
+ "lib/internal/test_runner/harness.js",
+ "lib/internal/test_runner/mock.js",
+ "lib/internal/test_runner/mock/mock.js",
+ "lib/internal/test_runner/mock/mock_timers.js",
+ "lib/internal/test_runner/reporter/dot.js",
+ "lib/internal/test_runner/reporter/junit.js",
+ "lib/internal/test_runner/reporter/spec.js",
+ "lib/internal/test_runner/reporter/tap.js",
+ "lib/internal/test_runner/reporter/v8-serializer.js",
Expand All @@ -1505,6 +1546,7 @@ index 0000000000000000000000000000000000000000..7d86765bf229275ba55d37a452ef2483
+ "lib/internal/util/colors.js",
+ "lib/internal/util/comparisons.js",
+ "lib/internal/util/debuglog.js",
+ "lib/internal/util/embedding.js",
+ "lib/internal/util/inspect.js",
+ "lib/internal/util/inspector.js",
+ "lib/internal/util/iterable_weak_map.js",
Expand Down Expand Up @@ -1600,7 +1642,9 @@ index 0000000000000000000000000000000000000000..7d86765bf229275ba55d37a452ef2483
+ "src/cleanup_queue.cc",
+ "src/connect_wrap.cc",
+ "src/connection_wrap.cc",
+ "src/dataqueue/queue.cc",
+ "src/debug_utils.cc",
+ "src/encoding_binding.cc",
+ "src/env.cc",
+ "src/fs_event_wrap.cc",
+ "src/handle_wrap.cc",
Expand All @@ -1614,6 +1658,8 @@ index 0000000000000000000000000000000000000000..7d86765bf229275ba55d37a452ef2483
+ "src/js_stream.cc",
+ "src/json_utils.cc",
+ "src/js_udp_wrap.cc",
+ "src/json_parser.h",
+ "src/json_parser.cc",
+ "src/module_wrap.cc",
+ "src/node.cc",
+ "src/node_api.cc",
Expand All @@ -1626,6 +1672,7 @@ index 0000000000000000000000000000000000000000..7d86765bf229275ba55d37a452ef2483
+ "src/node_contextify.cc",
+ "src/node_credentials.cc",
+ "src/node_dir.cc",
+ "src/node_dotenv.cc",
+ "src/node_env_var.cc",
+ "src/node_errors.cc",
+ "src/node_external_reference.cc",
Expand Down Expand Up @@ -1666,6 +1713,11 @@ index 0000000000000000000000000000000000000000..7d86765bf229275ba55d37a452ef2483
+ "src/node_watchdog.cc",
+ "src/node_worker.cc",
+ "src/node_zlib.cc",
+ "src/permission/child_process_permission.cc",
+ "src/permission/fs_permission.cc",
+ "src/permission/inspector_permission.cc",
+ "src/permission/permission.cc",
+ "src/permission/worker_permission.cc",
+ "src/pipe_wrap.cc",
+ "src/process_wrap.cc",
+ "src/signal_wrap.cc",
Expand All @@ -1688,22 +1740,28 @@ index 0000000000000000000000000000000000000000..7d86765bf229275ba55d37a452ef2483
+ "src/util.cc",
+ "src/uv.cc",
+ "src/aliased_buffer.h",
+ "src/aliased_buffer-inl.h",
+ "src/aliased_struct.h",
+ "src/aliased_struct-inl.h",
+ "src/async_wrap.h",
+ "src/async_wrap-inl.h",
+ "src/base_object.h",
+ "src/base_object-inl.h",
+ "src/base_object_types.h",
+ "src/base64.h",
+ "src/base64-inl.h",
+ "src/blob_serializer_deserializer.h",
+ "src/blob_serializer_deserializer-inl.h",
+ "src/callback_queue.h",
+ "src/callback_queue-inl.h",
+ "src/cleanup_queue.h",
+ "src/cleanup_queue-inl.h",
+ "src/connect_wrap.h",
+ "src/connection_wrap.h",
+ "src/dataqueue/queue.h",
+ "src/debug_utils.h",
+ "src/debug_utils-inl.h",
+ "src/encoding_binding.h",
+ "src/env_properties.h",
+ "src/env.h",
+ "src/env-inl.h",
Expand All @@ -1728,7 +1786,9 @@ index 0000000000000000000000000000000000000000..7d86765bf229275ba55d37a452ef2483
+ "src/node_context_data.h",
+ "src/node_contextify.h",
+ "src/node_dir.h",
+ "src/node_dotenv.h",
+ "src/node_errors.h",
+ "src/node_exit_code.h",
+ "src/node_external_reference.h",
+ "src/node_file.h",
+ "src/node_file-inl.h",
Expand Down Expand Up @@ -1766,13 +1826,17 @@ index 0000000000000000000000000000000000000000..7d86765bf229275ba55d37a452ef2483
+ "src/node_stat_watcher.h",
+ "src/node_union_bytes.h",
+ "src/node_url.h",
+ "src/node_util.h",
+ "src/node_version.h",
+ "src/node_v8.h",
+ "src/node_v8_platform-inl.h",
+ "src/node_wasi.h",
+ "src/node_watchdog.h",
+ "src/node_worker.h",
+ "src/permission/child_process_permission.h",
+ "src/permission/fs_permission.h",
+ "src/permission/inspector_permission.h",
+ "src/permission/permission.h",
+ "src/permission/worker_permission.h",
+ "src/pipe_wrap.h",
+ "src/req_wrap.h",
+ "src/req_wrap-inl.h",
Expand All @@ -1786,6 +1850,7 @@ index 0000000000000000000000000000000000000000..7d86765bf229275ba55d37a452ef2483
+ "src/string_decoder-inl.h",
+ "src/string_search.h",
+ "src/tcp_wrap.h",
+ "src/timers.h",
+ "src/tracing/agent.h",
+ "src/tracing/node_trace_buffer.h",
+ "src/tracing/node_trace_writer.h",
Expand Down Expand Up @@ -2050,10 +2115,10 @@ index 0000000000000000000000000000000000000000..4ab828dcbf322a9e28674e48c4a6868b
+}
diff --git a/tools/generate_gn_filenames_json.py b/tools/generate_gn_filenames_json.py
new file mode 100755
index 0000000000000000000000000000000000000000..616dc0c61ed4ea1bf2fb9e4768ba2ec566a83e42
index 0000000000000000000000000000000000000000..7ccec2f2475d70751119309d52bfc9b94b6ac656
--- /dev/null
+++ b/tools/generate_gn_filenames_json.py
@@ -0,0 +1,81 @@
@@ -0,0 +1,83 @@
+#!/usr/bin/env python3
+import json
+import os
Expand Down Expand Up @@ -2095,6 +2160,7 @@ index 0000000000000000000000000000000000000000..616dc0c61ed4ea1bf2fb9e4768ba2ec5
+ node_source_blocklist = {
+ '<@(library_files)',
+ '<@(deps_files)',
+ '<@(node_sources)',
+ 'common.gypi',
+ '<(SHARED_INTERMEDIATE_DIR)/node_javascript.cc',
+ }
Expand All @@ -2113,11 +2179,12 @@ index 0000000000000000000000000000000000000000..616dc0c61ed4ea1bf2fb9e4768ba2ec5
+ lib_files = SearchFiles('lib', 'js')
+ out['library_files'] = filter_v8_files(lib_files)
+ out['library_files'] += filter_v8_files(node_gyp['variables']['deps_files'])
+ out['node_sources'] = node_gyp['variables']['node_sources']
+
+ blocklisted_sources = [
+ f for f in node_lib_target['sources']
+ if f not in node_source_blocklist]
+ out['node_sources'] = filter_v8_files(blocklisted_sources)
+ out['node_sources'] += filter_v8_files(blocklisted_sources)
+
+ out['headers'] = []
+ def add_headers(files, dest_dir):
Expand Down

0 comments on commit 3847e64

Please sign in to comment.