all.gn 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. is_electron_build = true
  2. root_extra_deps = [ "//electron" ]
  3. # Registry of NMVs --> https://github.com/nodejs/node/blob/main/doc/abi_version_registry.json
  4. node_module_version = 116
  5. v8_promise_internal_field_count = 1
  6. v8_embedder_string = "-electron.0"
  7. # TODO: this breaks mksnapshot
  8. v8_enable_snapshot_native_code_counters = false
  9. # we use this api
  10. v8_enable_javascript_promise_hooks = true
  11. enable_cdm_host_verification = false
  12. proprietary_codecs = true
  13. ffmpeg_branding = "Chrome"
  14. enable_printing = true
  15. # Removes DLLs from the build, which are only meant to be used for Chromium development.
  16. # See https://github.com/electron/electron/pull/17985
  17. angle_enable_vulkan_validation_layers = false
  18. dawn_enable_vulkan_validation_layers = false
  19. # These are disabled because they cause the zip manifest to differ between
  20. # testing and release builds.
  21. # See https://chromium-review.googlesource.com/c/chromium/src/+/2774898.
  22. enable_pseudolocales = false
  23. # Make application name configurable at runtime for cookie crypto
  24. allow_runtime_configurable_key_storage = true
  25. # CET shadow stack is incompatible with v8, until v8 is CET compliant
  26. # enabling this flag causes main process crashes where CET is enabled
  27. # Ref: https://source.chromium.org/chromium/chromium/src/+/45fba672185aae233e75d6ddc81ea1e0b30db050:v8/BUILD.gn;l=357
  28. enable_cet_shadow_stack = false
  29. # For similar reasons, disable CFI, which is not well supported in V8.
  30. # Chromium doesn't have any problems with this because they do not run
  31. # V8 in the browser process.
  32. # Ref: https://source.chromium.org/chromium/chromium/src/+/45fba672185aae233e75d6ddc81ea1e0b30db050:v8/BUILD.gn;l=281
  33. is_cfi = false
  34. # TODO: fix this once sysroots have been updated.
  35. use_qt = false
  36. # https://chromium-review.googlesource.com/c/chromium/src/+/4365718
  37. # TODO(codebytere): fix perfetto incompatibility with Node.js.
  38. use_perfetto_client_library = false
  39. # Disables the builtins PGO for V8
  40. v8_builtins_profiling_log_file = ""
  41. # Disable threadisolated allocator implementation from gin for partition allocator,
  42. # we are seeing crashes for Linux x64 users when node integration is enabled in the
  43. # renderer process causing SIGSEGV when the periodic memory reclaimer runs,
  44. # Refs https://github.com/electron/electron/issues/39775.
  45. # The current only user of this pool is the v8 CFI which is
  46. # not enabled on this branch, so it is safe to disable the feature.
  47. enable_pkeys = false