diff options
author | sgk@google.com <sgk@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2008-12-02 07:36:03 +0000 |
---|---|---|
committer | sgk@google.com <sgk@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2008-12-02 07:36:03 +0000 |
commit | 527c739c43984bc49da5d0de4989e1d81d4a74d5 (patch) | |
tree | d285aee08646c31b345760eb6e936f11271b8f10 /build/SConscript.main | |
parent | 7ae14832d77548f53270fd8c207811114a78bded (diff) | |
download | chromium_src-527c739c43984bc49da5d0de4989e1d81d4a74d5.zip chromium_src-527c739c43984bc49da5d0de4989e1d81d4a74d5.tar.gz chromium_src-527c739c43984bc49da5d0de4989e1d81d4a74d5.tar.bz2 |
Fixes and enhancements
* Configurable CHROME_BUILD_TYPE command line or external environment
variable for selecting appropriate release_impl*.scons settings
(_checksenabled, _coverage, _dom_stats, _official, _purify).
* Configurable CHROMIUM_BUILD command line or external environment
variable for selecting appropriate chromium_build*.scons settings
(_google_chrome).
* Configurable /INCREMENTAL linking via command line or external
environment variable ($INCREMENTAL), through appropriate setting
of an internal $CHROMIUM_INCREMENTAL_FLAGS construction variable.
* Full link of release builds by default.
* Alphabetize *.scons files in the mac_env.FilterOut() list.
* Explicitly set _checksenabled.scons link flags.
Review URL: http://codereview.chromium.org/13039
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6210 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'build/SConscript.main')
-rw-r--r-- | build/SConscript.main | 56 |
1 files changed, 39 insertions, 17 deletions
diff --git a/build/SConscript.main b/build/SConscript.main index ba0a267..146f897 100644 --- a/build/SConscript.main +++ b/build/SConscript.main @@ -19,19 +19,43 @@ default_warnings = ['no-no-parallel-support'] SetOption('warn', default_warnings + GetOption('warn')) -chrome_build_type = ARGUMENTS.get('CHROME_BUILD_TYPE') -if chrome_build_type is None: - chrome_build_type = os.environ.get('CHROME_BUILD_TYPE', ''), - -chromium_build = ARGUMENTS.get('CHROMIUM_BUILD') -if chromium_build is None: - chromium_build = os.environ.get('CHROMIUM_BUILD', ''), +# Variables for controlling the build. +# +# The following variables can be set either on the command line +# or in the external environment when executing SCons, with the +# command line overriding any environment setting. +# +# CHROME_BUILD_TYPE +# When set, applies settings from the file +# build\internal\release_impl${CHROME_BUILD_TYPE}.scons +# to be applied to the construction environment. +# +# CHROMIUM_BUILD +# When set, applies settings from the file +# build\internal\chromium_build${CHROMIUM_BUILD}.scons +# to be applied to the construction environment. +# +# INCREMENTAL +# Controls whether or not libraries and executable programs are +# linked incrementally. When set to any True value (1, T, y, True), +# uses the /INCREMENTAL flag to the Microsoft linker. An +# explicit False value (0, f, N, false) uses the /INCREMENTAL:NO. +# When not set, the default is to link debug (developer) builds +# incrementally, but release builds use full links. +# +clvars = Variables('scons.opts', ARGUMENTS) +clvars.AddVariables( + ('CHROME_BUILD_TYPE', '', os.environ.get('CHROME_BUILD_TYPE', '')), + ('CHROMIUM_BUILD', '', os.environ.get('CHROMIUM_BUILD', '')), + BoolVariable('INCREMENTAL', '', os.environ.get('INCREMENTAL')), +) root_env = Environment( tools = ['component_setup', 'chromium_builders', 'chromium_load_component'], + variables = clvars, # Requested list of system (shared) libraries, from the comma separated # SYSTEM_LIBS command-line argument @@ -39,9 +63,6 @@ root_env = Environment( # All supported system libraries, for the help message all_system_libs = [], - CHROME_BUILD_TYPE = chrome_build_type, - CHROMIUM_BUILD = chromium_build, - CHROME_SRC_DIR = '$MAIN_DIR/..', DESTINATION_ROOT = '$MAIN_DIR/Hammer', @@ -214,6 +235,7 @@ del windows_env['LINKFLAGS_DEBUG'] del windows_env['CCFLAGS_OPTIMIZED'] windows_env['PDB'] = '${TARGET.base}.pdb' +windows_env['MSVC_BATCH'] = True # TODO(bradnelson): this should not need to be gated on host platform. if root_env['PLATFORM'] in ['win32', 'cygwin']: @@ -504,19 +526,19 @@ mac_env.Replace( mac_env.FilterOut( BUILD_SCONSCRIPTS = [ - '$BSPATCH_DIR/bspatch.scons', - '$BSDIFF_DIR/bsdiff.scons', - '$LIBJPEG_DIR/SConscript', - '$LIBXML_DIR/SConscript', - '$LIBXSLT_DIR/SConscript', '$BREAKPAD_DIR/SConscript', - '$CHROME_DIR/SConscript', + '$BSDIFF_DIR/bsdiff.scons', + '$BSPATCH_DIR/bspatch.scons', + '$CHROME_DIR/chrome.scons', '$GEARS_DIR/SConscript', '$GOOGLE_UPDATE_DIR/SConscript', + '$LIBJPEG_DIR/libjpeg.scons', + '$LIBXML_DIR/libxml.scons', + '$LIBXSLT_DIR/libxslt.scons', '$RLZ_DIR/SConscript', '$SANDBOX_DIR/sandbox.scons', - 'build/SConscript.v8', '$WEBKIT_DIR/SConscript', + 'build/SConscript.v8', ], ) |