mirror of
https://github.com/electron/electron.git
synced 2026-02-07 05:35:02 -05:00
Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com> Co-authored-by: Samuel Attard <samuel.r.attard@gmail.com> Co-authored-by: loc <andy@slack-corp.com> Co-authored-by: Robo <hop2deep@gmail.com> Co-authored-by: Jeremy Apthorp <nornagon@nornagon.net>
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 0000f6eaea5cbfb793750c0592c1bb912cbe0a14..6ed509d81d14211f608495263f11a1d2cbc5013c 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%': '',
|
|
@@ -240,6 +240,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': {
|