mirror of
https://github.com/electron/electron.git
synced 2026-01-09 15:38:08 -05:00
52 lines
1.9 KiB
Diff
52 lines
1.9 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Deepak Mohan <hop2deep@gmail.com>
|
|
Date: Wed, 16 Oct 2019 13:41:12 -0700
|
|
Subject: build: bring back node_with_ltcg configuration
|
|
|
|
This was moved to code node.gyp as part of https://github.com/nodejs/node/pull/25931
|
|
which caused native modules size increase which were depending on
|
|
this configuration transitively https://github.com/nodejs/node/issues/29501.
|
|
THe fix for this should land in node-gyp as discussed in above issue,
|
|
landing this as temporary patch.
|
|
|
|
diff --git a/common.gypi b/common.gypi
|
|
index 2fda2d685edc6b8f45441cda017f7cabfe60d91f..bd42d6cfa6006630d316faf2cddd93bea57102ba 100644
|
|
--- a/common.gypi
|
|
+++ b/common.gypi
|
|
@@ -19,7 +19,7 @@
|
|
'node_use_v8_platform%': 'true',
|
|
'node_use_bundled_v8%': 'true',
|
|
'node_module_version%': '',
|
|
- 'node_with_ltcg%': '',
|
|
+ 'node_with_ltcg%': 'true',
|
|
'node_shared_openssl%': 'false',
|
|
|
|
'node_tag%': '',
|
|
@@ -215,6 +215,26 @@
|
|
'cflags': [ '-fPIC' ],
|
|
'ldflags': [ '-fPIC' ]
|
|
}],
|
|
+ ['node_with_ltcg=="true"', {
|
|
+ 'msvs_settings': {
|
|
+ 'VCCLCompilerTool': {
|
|
+ 'WholeProgramOptimization': 'true' # /GL, whole program optimization, needed for LTCG
|
|
+ },
|
|
+ 'VCLibrarianTool': {
|
|
+ 'AdditionalOptions': [
|
|
+ '/LTCG:INCREMENTAL', # incremental link-time code generation
|
|
+ ]
|
|
+ },
|
|
+ 'VCLinkerTool': {
|
|
+ 'OptimizeReferences': 2, # /OPT:REF
|
|
+ 'EnableCOMDATFolding': 2, # /OPT:ICF
|
|
+ 'LinkIncremental': 1, # disable incremental linking
|
|
+ 'AdditionalOptions': [
|
|
+ '/LTCG:INCREMENTAL', # incremental link-time code generation
|
|
+ ]
|
|
+ }
|
|
+ }
|
|
+ }]
|
|
],
|
|
'msvs_settings': {
|
|
'VCCLCompilerTool': {
|