68 lines
1.7 KiB
Diff
68 lines
1.7 KiB
Diff
--- ./third_party/electron_node/BUILD.gn.orig
|
|
+++ ./third_party/electron_node/BUILD.gn
|
|
@@ -40,6 +40,8 @@
|
|
node_release_urlbase = ""
|
|
|
|
# Allows downstream packagers (eg. Linux distributions) to build Electron against system shared libraries.
|
|
+ use_system_ada = false
|
|
+ use_system_base64 = false
|
|
use_system_cares = false
|
|
use_system_nghttp2 = false
|
|
use_system_llhttp = false
|
|
@@ -48,6 +50,16 @@
|
|
|
|
if (is_linux) {
|
|
import("//build/config/linux/pkg_config.gni")
|
|
+ if (use_system_ada) {
|
|
+ config("ada") {
|
|
+ libs = [ "ada" ]
|
|
+ }
|
|
+ }
|
|
+ if (use_system_base64) {
|
|
+ pkg_config("base64") {
|
|
+ packages = [ "base64" ]
|
|
+ }
|
|
+ }
|
|
if (use_system_cares) {
|
|
pkg_config("cares") {
|
|
packages = [ "libcares" ]
|
|
@@ -258,8 +270,6 @@
|
|
deps = [
|
|
":node_js2c_exec",
|
|
"deps/googletest:gtest",
|
|
- "deps/ada",
|
|
- "deps/base64",
|
|
"deps/simdutf",
|
|
"deps/uvwasi",
|
|
"//third_party/zlib",
|
|
@@ -267,6 +277,16 @@
|
|
"//third_party/brotli:enc",
|
|
"//v8:v8_libplatform",
|
|
]
|
|
+ if (use_system_ada) {
|
|
+ configs += [ ":ada" ]
|
|
+ } else {
|
|
+ deps += [ "deps/ada" ]
|
|
+ }
|
|
+ if (use_system_base64) {
|
|
+ configs += [ ":base64" ]
|
|
+ } else {
|
|
+ deps += [ "deps/base64" ]
|
|
+ }
|
|
if (use_system_cares) {
|
|
configs += [ ":cares" ]
|
|
} else {
|
|
--- ./electron/script/generate-config-gypi.py.orig
|
|
+++ ./electron/script/generate-config-gypi.py
|
|
@@ -62,6 +62,11 @@
|
|
# Used by certain versions of node-gyp.
|
|
v['build_v8_with_gn'] = 'false'
|
|
|
|
+ with open(os.path.join(NODE_DIR, 'use_system.txt')) as f:
|
|
+ for dep in f.read().strip().split(' '):
|
|
+ if v.get(f'node_shared_{dep}') is not None:
|
|
+ v[f'node_shared_{dep}'] = 'true'
|
|
+
|
|
with open(target_file, 'w+') as f:
|
|
f.write(pprint.pformat(config, indent=2))
|
|
|