From ee2815e28d408216cf94e874825b6bcf76c69083 Mon Sep 17 00:00:00 2001 From: "initial.commit" Date: Sat, 26 Jul 2008 20:52:30 +0000 Subject: Add the build directory to the repository. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@7 0039d316-1c4b-4281-b951-d872f2087c98 --- build/README.google | 15 + build/SConscript.googleurl | 100 ++++++ build/SConscript.main | 334 +++++++++++++++++++++ build/SConscript.v8 | 78 +++++ build/common.vsprops | 7 + build/debug.vsprops | 23 ++ build/external_code.vsprops | 14 + build/internal/README.google | 24 ++ build/internal/essential.vsprops | 77 +++++ build/internal/release_defaults.vsprops | 24 ++ build/internal/release_impl.vsprops | 8 + build/internal/release_impl_checksenabled.vsprops | 24 ++ build/internal/release_impl_dom_stats.vsprops | 23 ++ build/internal/release_impl_official.vsprops | 26 ++ build/internal/release_impl_pgo_instrument.vsprops | 32 ++ build/internal/release_impl_pgo_optimize.vsprops | 28 ++ build/internal/release_impl_purify.vsprops | 19 ++ build/output_dll_copy.rules | 17 ++ build/release.vsprops | 8 + 19 files changed, 881 insertions(+) create mode 100644 build/README.google create mode 100644 build/SConscript.googleurl create mode 100644 build/SConscript.main create mode 100644 build/SConscript.v8 create mode 100644 build/common.vsprops create mode 100644 build/debug.vsprops create mode 100644 build/external_code.vsprops create mode 100644 build/internal/README.google create mode 100644 build/internal/essential.vsprops create mode 100644 build/internal/release_defaults.vsprops create mode 100644 build/internal/release_impl.vsprops create mode 100644 build/internal/release_impl_checksenabled.vsprops create mode 100644 build/internal/release_impl_dom_stats.vsprops create mode 100644 build/internal/release_impl_official.vsprops create mode 100644 build/internal/release_impl_pgo_instrument.vsprops create mode 100644 build/internal/release_impl_pgo_optimize.vsprops create mode 100644 build/internal/release_impl_purify.vsprops create mode 100644 build/output_dll_copy.rules create mode 100644 build/release.vsprops (limited to 'build') diff --git a/build/README.google b/build/README.google new file mode 100644 index 0000000..012df35 --- /dev/null +++ b/build/README.google @@ -0,0 +1,15 @@ +List of property sheets to be included by projects: + common.vsprops + Not used anymore. No-op. Kept for compatibility with current projects. + + debug.vsprops + Enables debug settings. Must be included directly in Debug configuration. Includes internal\essential.vsprops. + + external_code.vsprops + Contains settings made to simplify usage of external (non-Google) code. It relaxes the warning levels. Should be included after debug.vsprops or release.vsprops to override their settings. + + output_dll_copy.rules + Run to enable automatic copy of DLL when they are as an input file in a vcproj project. + + release.vsprops + Enables release settings. Must be included directly in Release configuration. Includes internal\essential.vsprops. Also includes "internal\release_impl$(CHROME_BUILD_TYPE).vsprops". So the behavior is dependant on the CHROME_BUILD_TYPE environment variable. diff --git a/build/SConscript.googleurl b/build/SConscript.googleurl new file mode 100644 index 0000000..ab9ee4c --- /dev/null +++ b/build/SConscript.googleurl @@ -0,0 +1,100 @@ +# Copyright 2008, Google Inc. +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are +# met: +# +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above +# copyright notice, this list of conditions and the following disclaimer +# in the documentation and/or other materials provided with the +# distribution. +# * Neither the name of Google Inc. nor the names of its +# contributors may be used to endorse or promote products derived from +# this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +Import('env') + +env = env.Clone() + +env.Prepend( + CPPPATH = [ + '$ICU38_DIR/public/common', + '$ICU38_DIR/public/i18n', + '#/..', + ], +) + +env.Append( + CPPDEFINES = [ + 'U_STATIC_IMPLEMENTATION', + 'CERT_CHAIN_PARA_HAS_EXTRA_FIELDS', + 'WIN32_LEAN_AND_MEAN', + ], + + CCFLAGS = [ + '/TP', + + '/Wp64', + + '/wd4503', + '/wd4819', + ], +) + +input_files = [ + 'src/gurl.cc', + 'src/url_canon_etc.cc', + 'src/url_canon_fileurl.cc', + 'src/url_canon_host.cc', + 'src/url_canon_icu.cc', + 'src/url_canon_internal.cc', + 'src/url_canon_ip.cc', + 'src/url_canon_mailtourl.cc', + 'src/url_canon_path.cc', + 'src/url_canon_pathurl.cc', + 'src/url_canon_query.cc', + 'src/url_canon_relative.cc', + 'src/url_canon_stdurl.cc', + 'src/url_parse.cc', + 'src/url_parse_file.cc', + 'src/url_util.cc', +] + +env.StaticLibrary('googleurl', input_files) + + +# Commented out for now because we can't build googleurl unit tests +# with gtest. This will apparently be fixed some day... +# +#env_tests = env.Clone() +# +#env_tests.Append( +# CPPPATH = [ +# '$GTEST_DIR/include', +# ], +#) +# +#test_files = [ +# 'src/gurl_unittest.cc', +# 'src/url_canon_unittest.cc', +# 'src/url_parse_unittest.cc', +# 'src/url_util_unittest.cc', +#] +# +#env_tests.StaticLibrary('googleurl_tests', test_files) + diff --git a/build/SConscript.main b/build/SConscript.main new file mode 100644 index 0000000..3290b12 --- /dev/null +++ b/build/SConscript.main @@ -0,0 +1,334 @@ +# Copyright 2008, Google Inc. +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are +# met: +# +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above +# copyright notice, this list of conditions and the following disclaimer +# in the documentation and/or other materials provided with the +# distribution. +# * Neither the name of Google Inc. nor the names of its +# contributors may be used to endorse or promote products derived from +# this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +import os +import shutil +import sys + +#TODO(rspangler): extra imports for testing +#from SCons.Script.__init__ import * + + +p = ARGUMENTS.get('PROGRESS') +if p == 'spinner': + Progress(['/\r', '|\r', '\\\r', '-\r'], interval=5, file=open('con', 'w')) +elif p == 'name': + Progress('$TARGET\r', overwrite=True, file=open('con', 'w')) + + +SetOption('warn', ['no-missing-sconscript'] + GetOption('warn')) + +processors = int(os.environ.get('NUMBER_OF_PROCESSORS', 1)) +SetOption('num_jobs', processors + 1) + + +msvs_env = Environment(tools=['msvc', 'mslink', 'msvs'])['ENV'] + + +env = Environment( + BUILD_TYPE = ARGUMENTS.get('BUILD_TYPE', 'Hammer'), + TARGET_ROOT = '#/$BUILD_TYPE', + OBJ_ROOT = '$TARGET_ROOT', + + CSCRIPT = 'c:\\Windows\\System32\\cscript', + + PLATFORMSDK_VISTA_REL = '../third_party/platformsdk_vista_6_0', + PLATFORMSDK_VISTA = '#/$PLATFORMSDK_VISTA_REL', + VISUAL_STUDIO = 'C:/Program Files/Microsoft Visual Studio 8', + + BASE_DIR = '#/$BUILD_TYPE/base', + BREAKPAD_DIR = '#/$BUILD_TYPE/breakpad', + CHROME_DIR = '#/$BUILD_TYPE/chrome', + GEARS_DIR = '#/$BUILD_TYPE/gears', + GOOGLE_UPDATE_DIR = '#/$BUILD_TYPE/google_update', + + # Work around a limitation (bug?) in SCons in that, when we build + # from a different directory, it forces the build targets defined + # the SConscript.googleurl file to be relative to that file (i.e., + # here in the build/ directory with us), not relative to the + # the SConstruct directory from which SCons was launched. When + # we roll forward to a version of SCons that fixes this, we'll + # need to revert to the $BUILD_TYPE definition of GOOGLEURL_DIR. + #GOOGLEURL_DIR = '#/$BUILD_TYPE/googleurl', + GOOGLEURL_DIR = '#/../build/googleurl', + + NET_DIR = '#/$BUILD_TYPE/net', + RLZ_DIR = '#/$BUILD_TYPE/rlz', + SANDBOX_DIR = '#/$BUILD_TYPE/sandbox', + SKIA_DIR = '#/$BUILD_TYPE/skia', + TESTING_DIR = '#/$BUILD_TYPE/testing', + THIRD_PARTY_DIR = '#/$BUILD_TYPE/third_party', + V8_DIR = '#/$BUILD_TYPE/v8', + WEBKIT_DIR = '#/$BUILD_TYPE/webkit', + + GTEST_DIR = '$TESTING_DIR/gtest', + + BSDIFF_DIR = '$THIRD_PARTY_DIR/bsdiff', + BSPATCH_DIR = '$THIRD_PARTY_DIR/bspatch', + BZIP2_DIR = '$THIRD_PARTY_DIR/bzip2', + ICU38_DIR = '$THIRD_PARTY_DIR/icu38', + LIBJPEG_DIR = '$THIRD_PARTY_DIR/libjpeg', + LIBPNG_DIR = '$THIRD_PARTY_DIR/libpng', + LIBXML_DIR = '$THIRD_PARTY_DIR/libxml', + LIBXSLT_DIR = '$THIRD_PARTY_DIR/libxslt', + LZMA_SDK_DIR = '$THIRD_PARTY_DIR/lzma_sdk', + MODP_B64_DIR = '$THIRD_PARTY_DIR/modp_b64', + NPAPI_DIR = '$THIRD_PARTY_DIR/npapi', + ZLIB_DIR = '$THIRD_PARTY_DIR/zlib', + + THIRD_PARTY_WEBKIT_DIR = '$THIRD_PARTY_DIR/webkit', + + CYGWIN_DIR = Dir('#../third_party/cygwin'), + CYGWIN_BIN_DIR = '$CYGWIN_DIR/bin', + + PYTHON=sys.executable, + + PERL = '$CYGWIN_BIN_DIR/perl.exe', + PERL_INCLUDE_FLAG = '-I ', + PERL_INCLUDE_SUFFIX = '', + _PERL_INCLUDE_FLAGS = ('${_concat(PERL_INCLUDE_FLAG, ' + 'PERL_INCLUDE_PATH, ' + 'PERL_INCLUDE_SUFFIX,' + '__env__, RDirs, TARGET, SOURCE)}'), + + MSVS_ENV = msvs_env, + + YACC = '$CYGWIN_BIN_DIR/bison.exe', + + ARFLAGS = [ + '/nologo', + ], + + CCFLAGS = [ + '/Od', # no optimization + + '/RTC1', + '/MTd', # static link to crt, and debug version + '/Gy', + '/GR-', + + '/W3', + + '/Z7', + + '/nologo', + '/errorReport:prompt', + ], + + CPPDEFINES = [ + '_CRT_SECURE_NO_DEPRECATE', + '_CRT_NONSTDC_NO_WARNINGS', + '_CRT_NONSTDC_NO_DEPRECATE', + '_SCL_SECURE_NO_DEPRECATE', + + '_DEBUG', + + '_CRT_RAND_S', + ('_WIN32_WINNT', '0x0600'), + ('WINVER', '0x0600'), + 'WIN32', + '_WINDOWS', + ('_HAS_EXCEPTIONS', 0), + 'NOMINMAX', + '_UNICODE', + 'UNICODE', + ], + + CPPPATH = [ + '$PLATFORMSDK_VISTA/files/Include', + '$PLATFORMSDK_VISTA/files/VC/INCLUDE', + '$VISUAL_STUDIO/VC/atlmfc/include', + ], + + LIBPATH = [ + '$PLATFORMSDK_VISTA/files/Lib', + '$PLATFORMSDK_VISTA/files/VC/LIB', + 'c:/Program Files/Microsoft Visual Studio 8/VC/atlmfc/lib', + ], + + LINKFLAGS = [ + '/DEBUG', + ], +) + +if ARGUMENTS.get('VERBOSE') in (None, '0'): + env['CCCOMSTR'] = 'Compiling $TARGET ...' + env['CXXCOMSTR'] = 'Compiling $TARGET ...' + env['ARCOMSTR'] = 'Archiving $TARGET ...' + env['LINKCOMSTR'] = 'Linking $TARGET ...' + + +# Place the .sconsign.dblite in the build directory. +target_dir = env.Dir('$TARGET_ROOT') +if not os.path.exists(target_dir.abspath): + Execute(Mkdir(target_dir)) +SConsignFile(target_dir.File('.sconsign').abspath) + + +# Add --clobber (for the buildbot). +# NOTE: seems to be crucial to do this before any builders are invoked. +AddOption('--clobber', action='store_true', dest='clobber', default=False, + help='Delete build directory before building.') +if GetOption('clobber'): + shutil.rmtree(env.Dir('$TARGET_ROOT').abspath, True) + + +# Force scons to handle long include lines correctly. +pchcom_fixed = env['PCHCOM'] +pchcom_fixed = pchcom_fixed.replace('${TARGETS[0]}', '$TARGET') +pchcom_fixed = pchcom_fixed.replace('${TARGETS[1]}', '$TARGETS1') +env.Replace( + CCCOM = "${TEMPFILE('%s')}" % env['CCCOM'], + CXXCOM = "${TEMPFILE('%s')}" % env['CXXCOM'], + SHCCCOM = "${TEMPFILE('%s')}" % env['SHCCCOM'], + SHCXXCOM = "${TEMPFILE('%s')}" % env['SHCXXCOM'], + PCHCOM = "${TEMPFILE('%s')}" % pchcom_fixed, + TARGETS1 = '${TARGETS[1]}', +) + +env['ENV']['PROGRAMFILES'] = os.environ['PROGRAMFILES'] +env['ENV']['SystemDrive'] = os.environ['SystemDrive'] +env['ENV']['USERPROFILE'] = os.environ['USERPROFILE'] + +# Use timestamps change, followed by MD5 for speed +env.Decider('MD5-timestamp') + +# Overlay things from a layer below. +env.Dir('$TARGET_ROOT').addRepository(Dir('..')) + + +load = ARGUMENTS.get('LOAD') +if load: + load = load.split(',') +else: + load = [] + +included = [c for c in load if not c.startswith('-')] +excluded = [c[1:] for c in load if c.startswith('-')] +if not included: + included = ['all'] + +components = ['all'] + +def LoadComponent(c): + components.append(c) + return (not GetOption('help') and + c in included or + ('all' in included and not c in excluded)) + +sconscripts = [] + +if LoadComponent('base'): + sconscripts.append('$BASE_DIR/SConscript') + +if LoadComponent('breakpad'): + sconscripts.append('$BREAKPAD_DIR/SConscript') + +if LoadComponent('chrome'): + sconscripts.append('$CHROME_DIR/SConscript') + +if LoadComponent('google_update'): + sconscripts.append('$GOOGLE_UPDATE_DIR/SConscript') + +if LoadComponent('googleurl'): + env.SConscript('SConscript.googleurl', + duplicate=0, + variant_dir='$GOOGLEURL_DIR', + src_dir='../googleurl', + exports=['env']) + +if LoadComponent('net'): + sconscripts.append('$NET_DIR/SConscript') + +if LoadComponent('rlz'): + sconscripts.append('$RLZ_DIR/SConscript') + +if LoadComponent('sandbox'): + sconscripts.append('$SANDBOX_DIR/src/SConscript') + +if LoadComponent('skia'): + sconscripts.append('$SKIA_DIR/SConscript') + +if LoadComponent('testing'): + sconscripts.append('$TESTING_DIR/SConscript.gtest') + +if LoadComponent('third_party'): + sconscripts.extend([ + '$BSDIFF_DIR/SConscript', + '$BSPATCH_DIR/SConscript', + '$BZIP2_DIR/SConscript', + '$ICU38_DIR/SConscript', + '$LIBJPEG_DIR/SConscript', + '$LIBPNG_DIR/SConscript', + '$LIBXML_DIR/SConscript', + '$LIBXSLT_DIR/SConscript', + '$LZMA_SDK_DIR/SConscript', + '$MODP_B64_DIR/SConscript', + '$ZLIB_DIR/SConscript', + ]) + +if LoadComponent('v8') and env.Dir('#/../v8').exists(): + env.SConscript('SConscript.v8', + exports=['env']) + +if LoadComponent('webkit'): + sconscripts.append('$WEBKIT_DIR/SConscript') + +env.SConscript(sconscripts, exports=['env']) + + +help_fmt = """ +Usage: hammer [SCONS_OPTIONS] [VARIABLES] [TARGET] ... + +Supported build variables: + + BUILD_TYPE=type Build type. Also used as the subdirectory name + in which the build occurs. + LOAD=[module,...] Comma-separated list of components to load in the + dependency graph ('-' prefix excludes): +%s + PROGRESS=type Display a progress indicator: + name: print each evaluated target name + spinner: print a spinner every 5 targets +""" + +if GetOption('help'): + import textwrap + tw = textwrap.TextWrapper( + width = 78, + initial_indent = ' '*32, + subsequent_indent = ' '*32, + ) + components = tw.fill(', '.join(components)) + + Help(help_fmt % components) + + +Import('build_component') +Default(build_component) diff --git a/build/SConscript.v8 b/build/SConscript.v8 new file mode 100644 index 0000000..372f263 --- /dev/null +++ b/build/SConscript.v8 @@ -0,0 +1,78 @@ +# Copyright 2008, Google Inc. +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are +# met: +# +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above +# copyright notice, this list of conditions and the following disclaimer +# in the documentation and/or other materials provided with the +# distribution. +# * Neither the name of Google Inc. nor the names of its +# contributors may be used to endorse or promote products derived from +# this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +Import('env') + +env = env.Clone() + +# Grungy environment hackery to satisfy the Visual Studio that we're +# going to execute. +import os +env['ENV'] = os.environ.copy() + +env.AppendENVPath('INCLUDE', env['MSVS_ENV']['INCLUDE']) +env.AppendENVPath('LIB', env['MSVS_ENV']['LIB']) +env.AppendENVPath('PATH', env['MSVS_ENV']['PATH']) + + +mksnapshot_exe = File('#/../v8/bin/debug/mksnapshot.exe') +v8_exe = File('#/../v8/Debug/v8_shell.exe') + +v8_scons_targets = [ + mksnapshot_exe, + File('#/../v8/bin/debug/v8.lib'), + File('#/../v8/bin/debug/snapshot-empty.obj'), + File('#/../v8/vc80.pdb') +] + +v8 = env.Command(v8_scons_targets, + [], + 'cd ..\\v8 && $PYTHON $SCONS $SCONSFLAGS ${TARGETS[:-1]}', + SCONS='..\\third_party\\scons-0.98.3\\scons.py', + SCONSFLAGS='-Q --warn=no-deprecated') +env.AlwaysBuild(v8) +env.Install('$V8_DIR', v8) + +i = env.Install('$TARGET_ROOT', mksnapshot_exe) +env.Alias('webkit', i) + + +v8_shell = env.Command(v8_exe, + [], + 'cd ..\\v8 && devenv /nologo v8.sln /build Debug v8_shell') +env.AlwaysBuild(v8_shell) + +i = env.Install('$TARGET_ROOT', v8_exe) +env.Alias('chrome', i) + +# By default, SCons deletes the target before invoking the command. +# Tell SCons to *not* delete v8.lib and the other targets so the +# subsidiary v8 SCons call doesn't always rebuild it (thereby causing +# us to always rebuild things that use it). +env.Precious(v8 + v8_shell) diff --git a/build/common.vsprops b/build/common.vsprops new file mode 100644 index 0000000..8fa2fc6 --- /dev/null +++ b/build/common.vsprops @@ -0,0 +1,7 @@ + + + diff --git a/build/debug.vsprops b/build/debug.vsprops new file mode 100644 index 0000000..d84e13c --- /dev/null +++ b/build/debug.vsprops @@ -0,0 +1,23 @@ + + + + + + diff --git a/build/external_code.vsprops b/build/external_code.vsprops new file mode 100644 index 0000000..e13adde --- /dev/null +++ b/build/external_code.vsprops @@ -0,0 +1,14 @@ + + + + diff --git a/build/internal/README.google b/build/internal/README.google new file mode 100644 index 0000000..4624830 --- /dev/null +++ b/build/internal/README.google @@ -0,0 +1,24 @@ +Internal property sheets: + essential.vsprops + Contains the common settings used throughout the projects. Is included by either ..\debug.vsprops or ..\release.vsprops, so in general, it is not included directly. + + release_defaults.vsprops + Included by ..\release.vsprops. Its settings are overriden by release_impl$(CHROME_BUILD_TYPE).vsprops. Uses the default VS setting which is "Maximize Speed". Results in relatively fast build with reasonable optimization level but without whole program optimization to reduce build time. + + release_impl.vsprops + Included by ..\release.vsprops by default when CHROME_BUILD_TYPE is undefined. Includes release_defaults.vsprops. + + release_impl_checksenabled.vsprops + Included by ..\release.vsprops when CHROME_BUILD_TYPE=_checksenabled. Matches what release_defaults.vsprops does, but doesn't actually inherit from it as we couldn't quite get that working. The only difference is that _DEBUG is set instead of NDEBUG. Used for keeping debug checks enabled with a build that is fast enough to dogfood with. + + release_impl_official.vsprops + Included by ..\release.vsprops when CHROME_BUILD_TYPE=_official. Includes release_defaults.vsprops. Enables Whole Program Optimizations (WPO), which doubles the build time. Results in much more optimized build. Uses "Full Optimization" and "Flavor small code". + + release_impl_pgo_instrument.vsprops + Included by ..\release.vsprops when CHROME_BUILD_TYPE=_pgo_instrument. Includes release_defaults.vsprops. Enables Profile Guided Optimization (PGO) instrumentation (first pass). Uses "Full Optimization" and "Flavor small code". + + release_impl_pgo_optimize.vsprops + Included by ..\release.vsprops when CHROME_BUILD_TYPE=_pgo_optimize. Includes release_defaults.vsprops. Enables Profile Guided Optimization (PGO) optimization (second pass). Uses "Full Optimization" and "Flavor small code". + + release_impl_purify.vsprops + Included by ..\release.vsprops when CHROME_BUILD_TYPE=_purify. Includes release_defaults.vsprops. Disables optimizations. Used with Purify to test without debug tools and without optimization; i.e. NDEBUG is defined but the compiler doesn't optimize the binary. diff --git a/build/internal/essential.vsprops b/build/internal/essential.vsprops new file mode 100644 index 0000000..f64145e --- /dev/null +++ b/build/internal/essential.vsprops @@ -0,0 +1,77 @@ + + + + + + + + + + + + + diff --git a/build/internal/release_defaults.vsprops b/build/internal/release_defaults.vsprops new file mode 100644 index 0000000..3a795b5 --- /dev/null +++ b/build/internal/release_defaults.vsprops @@ -0,0 +1,24 @@ + + + + + + diff --git a/build/internal/release_impl.vsprops b/build/internal/release_impl.vsprops new file mode 100644 index 0000000..04e490d --- /dev/null +++ b/build/internal/release_impl.vsprops @@ -0,0 +1,8 @@ + + + diff --git a/build/internal/release_impl_checksenabled.vsprops b/build/internal/release_impl_checksenabled.vsprops new file mode 100644 index 0000000..cd33e26 --- /dev/null +++ b/build/internal/release_impl_checksenabled.vsprops @@ -0,0 +1,24 @@ + + + + + + diff --git a/build/internal/release_impl_dom_stats.vsprops b/build/internal/release_impl_dom_stats.vsprops new file mode 100644 index 0000000..cd41bff --- /dev/null +++ b/build/internal/release_impl_dom_stats.vsprops @@ -0,0 +1,23 @@ + + + + + + diff --git a/build/internal/release_impl_official.vsprops b/build/internal/release_impl_official.vsprops new file mode 100644 index 0000000..c9a4401 --- /dev/null +++ b/build/internal/release_impl_official.vsprops @@ -0,0 +1,26 @@ + + + + + + diff --git a/build/internal/release_impl_pgo_instrument.vsprops b/build/internal/release_impl_pgo_instrument.vsprops new file mode 100644 index 0000000..613ac2d --- /dev/null +++ b/build/internal/release_impl_pgo_instrument.vsprops @@ -0,0 +1,32 @@ + + + + + + + diff --git a/build/internal/release_impl_pgo_optimize.vsprops b/build/internal/release_impl_pgo_optimize.vsprops new file mode 100644 index 0000000..60233f4 --- /dev/null +++ b/build/internal/release_impl_pgo_optimize.vsprops @@ -0,0 +1,28 @@ + + + + + + diff --git a/build/internal/release_impl_purify.vsprops b/build/internal/release_impl_purify.vsprops new file mode 100644 index 0000000..497251c --- /dev/null +++ b/build/internal/release_impl_purify.vsprops @@ -0,0 +1,19 @@ + + + + + diff --git a/build/output_dll_copy.rules b/build/output_dll_copy.rules new file mode 100644 index 0000000..c6e9051 --- /dev/null +++ b/build/output_dll_copy.rules @@ -0,0 +1,17 @@ + + + + + + + + + diff --git a/build/release.vsprops b/build/release.vsprops new file mode 100644 index 0000000..a36897f --- /dev/null +++ b/build/release.vsprops @@ -0,0 +1,8 @@ + + + -- cgit v1.1