From 97b2372c3990d2540d65ac70b27d9f87da571adb Mon Sep 17 00:00:00 2001 From: "sgjesse@chromium.org" Date: Sat, 18 Apr 2009 00:03:15 +0000 Subject: [PATCH] Add an option to the SCons build to control Microsoft Visual C++ link-time code generation. Turning off Microsoft Visual C++ link-time code generation makes linking on Windows significantly which is convenient during development. There has also been a request from embedders for a way to control this for embedding application which does not use link-time code generation. The name of the option is msvcltcg and the default value is 'on' to keep the same behaviour as before. Review URL: http://codereview.chromium.org/69026 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1742 ce2b1a6d-e550-0410-aec6-3dcde31c8c00 --- SConstruct | 23 ++++++++++++++++++----- 1 file changed, 18 insertions(+), 5 deletions(-) diff --git a/SConstruct b/SConstruct index 1024a5b647..0b2e39f5d3 100644 --- a/SConstruct +++ b/SConstruct @@ -160,14 +160,18 @@ LIBRARY_FLAGS = { } }, 'mode:release': { - 'CCFLAGS': ['/O2', '/GL'], - 'LINKFLAGS': ['/OPT:REF', '/OPT:ICF', '/LTCG'], - 'ARFLAGS': ['/LTCG'], + 'CCFLAGS': ['/O2'], + 'LINKFLAGS': ['/OPT:REF', '/OPT:ICF'], 'msvcrt:static': { 'CCFLAGS': ['/MT'] }, 'msvcrt:shared': { 'CCFLAGS': ['/MD'] + }, + 'msvcltcg:on': { + 'CCFLAGS': ['/GL'], + 'LINKFLAGS': ['/LTCG'], + 'ARFLAGS': ['/LTCG'], } }, } @@ -360,12 +364,16 @@ SAMPLE_FLAGS = { }, 'mode:release': { 'CCFLAGS': ['/O2'], - 'LINKFLAGS': ['/OPT:REF', '/OPT:ICF', '/LTCG'], + 'LINKFLAGS': ['/OPT:REF', '/OPT:ICF'], 'msvcrt:static': { 'CCFLAGS': ['/MT'] }, 'msvcrt:shared': { 'CCFLAGS': ['/MD'] + }, + 'msvcltcg:on': { + 'CCFLAGS': ['/GL'], + 'LINKFLAGS': ['/LTCG'], } }, 'mode:debug': { @@ -474,7 +482,12 @@ SIMPLE_OPTIONS = { 'msvcrt': { 'values': ['static', 'shared'], 'default': 'static', - 'help': 'the type of MSVCRT library to use' + 'help': 'the type of Microsoft Visual C++ runtime library to use' + }, + 'msvcltcg': { + 'values': ['on', 'off'], + 'default': 'on', + 'help': 'use Microsoft Visual C++ link-time code generation' }, 'wordsize': { 'values': ['64', '32'],