Add the build directory to the repository.

git-svn-id: http://src.chromium.org/svn/trunk/src/build@7 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
This commit is contained in:
initial.commit 2008-07-26 20:52:30 +00:00
Коммит a94d40f912
19 изменённых файлов: 881 добавлений и 0 удалений

15
README.google Normal file
Просмотреть файл

@ -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.

100
SConscript.googleurl Normal file
Просмотреть файл

@ -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)

334
SConscript.main Normal file
Просмотреть файл

@ -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)

78
SConscript.v8 Normal file
Просмотреть файл

@ -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)

7
common.vsprops Normal file
Просмотреть файл

@ -0,0 +1,7 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioPropertySheet
ProjectType="Visual C++"
Version="8.00"
Name="common (no-op)"
>
</VisualStudioPropertySheet>

23
debug.vsprops Normal file
Просмотреть файл

@ -0,0 +1,23 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioPropertySheet
ProjectType="Visual C++"
Version="8.00"
Name="debug"
InheritedPropertySheets=".\internal\essential.vsprops"
>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
PreprocessorDefinitions="_DEBUG"
BasicRuntimeChecks="3"
RuntimeLibrary="1"
/>
<Tool
Name="VCLinkerTool"
LinkIncremental="2"
/>
<Tool
Name="VCResourceCompilerTool"
PreprocessorDefinitions="_DEBUG"
/>
</VisualStudioPropertySheet>

14
external_code.vsprops Normal file
Просмотреть файл

@ -0,0 +1,14 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioPropertySheet
ProjectType="Visual C++"
Version="8.00"
Name="external_code"
>
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;_CRT_NONSTDC_NO_DEPRECATE;_SCL_SECURE_NO_DEPRECATE"
WarnAsError="false"
Detect64BitPortabilityProblems="false"
DisableSpecificWarnings="4800"
/>
</VisualStudioPropertySheet>

24
internal/README.google Normal file
Просмотреть файл

@ -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.

Просмотреть файл

@ -0,0 +1,77 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioPropertySheet
ProjectType="Visual C++"
Version="8.00"
Name="essential"
OutputDirectory="$(SolutionDir)$(ConfigurationName)"
IntermediateDirectory="$(SolutionDir)$(ConfigurationName)\obj\$(ProjectName)"
CharacterSet="1"
>
<Tool
Name="VCCLCompilerTool"
AdditionalIncludeDirectories="$(SolutionDir)..;$(SDKIncludes)"
PreprocessorDefinitions="_WIN32_WINNT=0x0600;WINVER=0x0600;WIN32;_WINDOWS;_HAS_EXCEPTIONS=0;NOMINMAX;_CRT_RAND_S;CERT_CHAIN_PARA_HAS_EXTRA_FIELDS;WIN32_LEAN_AND_MEAN"
MinimalRebuild="false"
ExceptionHandling="0"
RuntimeTypeInfo="false"
WarningLevel="3"
WarnAsError="true"
Detect64BitPortabilityProblems="true"
DebugInformationFormat="3"
DisableSpecificWarnings="4503; 4819"
BufferSecurityCheck="true"
EnableFunctionLevelLinking="true"
/>
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\lib\$(ProjectName).lib"
AdditionalLibraryDirectories="$(SDKLibs)"
/>
<Tool
Name="VCLinkerTool"
AdditionalLibraryDirectories="$(SDKLibs)"
GenerateDebugInformation="true"
MapFileName="$(OutDir)\$(TargetName).map"
ImportLibrary="$(OutDir)\lib\$(TargetName).lib"
TargetMachine="1"
FixedBaseAddress="1"
AdditionalOptions="/safeseh /dynamicbase /ignore:4199 /nxcompat"
AdditionalDependencies="wininet.lib version.lib msimg32.lib ws2_32.lib usp10.lib psapi.lib"
DelayLoadDLLs="dwmapi.dll,uxtheme.dll"
/>
<Tool
Name="VCMIDLTool"
GenerateStublessProxies="true"
TypeLibraryName="$(InputName).tlb"
OutputDirectory="$(IntDir)"
HeaderFileName="$(InputName).h"
DLLDataFileName="dlldata.c"
InterfaceIdentifierFileName="$(InputName)_i.c"
ProxyFileName="$(InputName)_p.c"
/>
<Tool
Name="VCResourceCompilerTool"
Culture="1033"
AdditionalIncludeDirectories="$(SolutionDir).."
/>
<UserMacro
Name="SDK"
Value="$(SolutionDir)..\third_party\platformsdk_vista_6_0\files"
/>
<UserMacro
Name="SDKIncludes"
Value="$(SDK)\Include;$(SDK)\VC\INCLUDE;$(VSInstallDir)\VC\atlmfc\include"
/>
<UserMacro
Name="SDKLibs"
Value="$(SDK)\Lib;$(SDK)\VC\LIB"
/>
<UserMacro
Name="DefaultOutputDirectory"
Value="$(SolutionDir)$(ConfigurationName)"
/>
<UserMacro
Name="DefaultIntermediateDirectory"
Value="$(SolutionDir)$(ConfigurationName)\obj\$(ProjectName)"
/>
</VisualStudioPropertySheet>

Просмотреть файл

@ -0,0 +1,24 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioPropertySheet
ProjectType="Visual C++"
Version="8.00"
Name="release"
InheritedPropertySheets=".\essential.vsprops"
>
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="NDEBUG"
StringPooling="true"
/>
<Tool
Name="VCLinkerTool"
LinkIncremental="1"
OptimizeReferences="2"
EnableCOMDATFolding="2"
OptimizeForWindows98="1"
/>
<Tool
Name="VCResourceCompilerTool"
PreprocessorDefinitions="NDEBUG"
/>
</VisualStudioPropertySheet>

Просмотреть файл

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioPropertySheet
ProjectType="Visual C++"
Version="8.00"
Name="release_impl"
InheritedPropertySheets=".\release_defaults.vsprops"
>
</VisualStudioPropertySheet>

Просмотреть файл

@ -0,0 +1,24 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioPropertySheet
ProjectType="Visual C++"
Version="8.00"
Name="release_impl_checksenabled"
InheritedPropertySheets=".\essential.vsprops"
>
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="_DEBUG;_HAS_ITERATOR_DEBUGGING=0;_SECURE_SCL=0"
RuntimeLibrary="1"
/>
<Tool
Name="VCLinkerTool"
LinkIncremental="1"
OptimizeReferences="2"
OptimizeForWindows98="1"
EnableCOMDATFolding="2"
/>
<Tool
Name="VCResourceCompilerTool"
PreprocessorDefinitions="_DEBUG;_HAS_ITERATOR_DEBUGGING=0;_SECURE_SCL=0"
/>
</VisualStudioPropertySheet>

Просмотреть файл

@ -0,0 +1,23 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioPropertySheet
ProjectType="Visual C++"
Version="8.00"
Name="release_impl_dom_stats"
InheritedPropertySheets=".\essential.vsprops"
>
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="NDEBUG;ENABLE_DOM_STATS_COUNTERS"
/>
<Tool
Name="VCLinkerTool"
LinkIncremental="1"
OptimizeReferences="2"
OptimizeForWindows98="1"
EnableCOMDATFolding="2"
/>
<Tool
Name="VCResourceCompilerTool"
PreprocessorDefinitions="NDEBUG;ENABLE_DOM_STATS_COUNTERS"
/>
</VisualStudioPropertySheet>

Просмотреть файл

@ -0,0 +1,26 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioPropertySheet
ProjectType="Visual C++"
Version="8.00"
Name="release_impl_official"
InheritedPropertySheets=".\release_defaults.vsprops"
>
<Tool
Name="VCCLCompilerTool"
Optimization="3"
InlineFunctionExpansion="2"
EnableIntrinsicFunctions="true"
FavorSizeOrSpeed="2"
OmitFramePointers="true"
EnableFiberSafeOptimizations="true"
WholeProgramOptimization="true"
/>
<Tool
Name="VCLibrarianTool"
AdditionalOptions="/ltcg"
/>
<Tool
Name="VCLinkerTool"
LinkTimeCodeGeneration="1"
/>
</VisualStudioPropertySheet>

Просмотреть файл

@ -0,0 +1,32 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioPropertySheet
ProjectType="Visual C++"
Version="8.00"
Name="release_impl_pgo_instrument"
OutputDirectory="$(DefaultOutputDirectory)_pgo"
IntermediateDirectory="$(DefaultOutputDirectory)_pgo\obj\$(ProjectName)"
InheritedPropertySheets=".\release_defaults.vsprops"
>
<Tool
Name="VCCLCompilerTool"
Optimization="3"
InlineFunctionExpansion="2"
EnableIntrinsicFunctions="true"
FavorSizeOrSpeed="2"
OmitFramePointers="true"
EnableFiberSafeOptimizations="true"
WholeProgramOptimization="true"
/>
<Tool
Name="VCLibrarianTool"
AdditionalOptions="/ltcg"
/>
<Tool
Name="VCLinkerTool"
LinkTimeCodeGeneration="2"
/>
<Tool
Name="VCPreBuildEventTool"
CommandLine="xcopy /D /Y &quot;$(DevEnvDir)..\..\VC\bin\pgort80.dll&quot; &quot;$(OutDir)&quot;"
/>
</VisualStudioPropertySheet>

Просмотреть файл

@ -0,0 +1,28 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioPropertySheet
ProjectType="Visual C++"
Version="8.00"
Name="release_impl_pgo_optimize"
OutputDirectory="$(DefaultOutputDirectory)_pgo"
IntermediateDirectory="$(DefaultOutputDirectory)_pgo\obj\$(ProjectName)"
InheritedPropertySheets=".\release_defaults.vsprops"
>
<Tool
Name="VCCLCompilerTool"
Optimization="3"
InlineFunctionExpansion="2"
EnableIntrinsicFunctions="true"
FavorSizeOrSpeed="2"
OmitFramePointers="true"
EnableFiberSafeOptimizations="true"
WholeProgramOptimization="true"
/>
<Tool
Name="VCLibrarianTool"
AdditionalOptions="/ltcg"
/>
<Tool
Name="VCLinkerTool"
LinkTimeCodeGeneration="3"
/>
</VisualStudioPropertySheet>

Просмотреть файл

@ -0,0 +1,19 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioPropertySheet
ProjectType="Visual C++"
Version="8.00"
Name="release_impl_purify"
InheritedPropertySheets=".\release_defaults.vsprops"
>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
PreprocessorDefinitions="PURIFY"
RuntimeLibrary="0"
BufferSecurityCheck="false"
/>
<Tool
Name="VCLinkerTool"
EnableCOMDATFolding="1"
/>
</VisualStudioPropertySheet>

17
output_dll_copy.rules Normal file
Просмотреть файл

@ -0,0 +1,17 @@
<?xml version="1.0" encoding="utf-8"?>
<VisualStudioToolFile
Name="Output DLL copy"
Version="8.00"
>
<Rules>
<CustomBuildRule
Name="Output DLL copy"
CommandLine="xcopy /R /C /Y $(InputPath) $(OutDir)"
Outputs="$(OutDir)\$(InputFileName)"
FileExtensions="*.dll"
>
<Properties>
</Properties>
</CustomBuildRule>
</Rules>
</VisualStudioToolFile>

8
release.vsprops Normal file
Просмотреть файл

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioPropertySheet
ProjectType="Visual C++"
Version="8.00"
Name="release"
InheritedPropertySheets="internal\release_impl$(CHROME_BUILD_TYPE).vsprops"
>
</VisualStudioPropertySheet>