electron/patches/node/fix_add_default_values_for_...

37 lines
1.5 KiB
Diff

From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Jeremy Apthorp <nornagon@nornagon.net>
Date: Wed, 19 Sep 2018 12:20:44 -0700
Subject: fix: add default values for variables in common.gypi
common.gypi is a file that's included in the node header bundle, despite
the fact that we do not build node with gyp.
diff --git a/common.gypi b/common.gypi
index efcd8da848150de3201ac5105470e908127015c3..292cd621dd6d2a6bfcbf959c5910563446492fd9 100644
--- a/common.gypi
+++ b/common.gypi
@@ -88,6 +88,23 @@
##### end V8 defaults #####
+ # When building native modules using 'npm install' with the system npm,
+ # node-gyp uses the `process.config` of the system npm to fill config.gypi.
+ # If the system npm is not as recent as Electron's node headers, which is
+ # likely, these variables will be missing from that config.gypi, and as a
+ # result, node-gyp will fail when building the native module with an error
+ # like:
+ #
+ # gyp: name 'enable_lto' is not defined while evaluating condition
+ # 'enable_lto=="true"' in binding.gyp while trying to load binding.gyp
+ #
+ # We set default values here to avoid that error message, even though these
+ # aren't technically accurate, because most native modules don't depend on
+ # these values being accurate.
+ 'build_v8_with_gn': 'false',
+ 'enable_lto%': 'false',
+ 'llvm_version': '0.0',
+
'conditions': [
['OS == "win"', {
'os_posix': 0,