summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorsgk@google.com <sgk@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2009-01-10 22:22:33 +0000
committersgk@google.com <sgk@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2009-01-10 22:22:33 +0000
commita7ad74b14339ca330c491631ba27e0aaffbe6429 (patch)
tree7503f78fedc993bb12cb5ef93c7051485691ebb5
parentc2d469d62ff5a8ee42b5c5212488298a182ee30c (diff)
downloadchromium_src-a7ad74b14339ca330c491631ba27e0aaffbe6429.zip
chromium_src-a7ad74b14339ca330c491631ba27e0aaffbe6429.tar.gz
chromium_src-a7ad74b14339ca330c491631ba27e0aaffbe6429.tar.bz2
Updates to Visual Studio project generation to accomodate
recent changes and get rid of cut-and-paste: * Add generation of the new net_resource.vcproj file. * Accomodate the net\net.vsprops file. * New base.vcproj dependency in activex_shim_dll.vcproj. * New tld_cleanup.vcproj dependency in net.vcproj. * New ondemand_updates.vcproj dependencies in gcapi_{dll,lib}.vcproj. * Re-order dump_cache.vcproj dependencies to match new checked-in solutions. * New input file directory layout in zlib (minizip folder) and testing\gtest (hierarchy). * Use a new dest= argument to ChromeMSVSSolution() and ChromeMSVSProject() to get rid of cut-and-pste installation code, and provide a central point for controlling when/whether we want to generate the files only under the build directory, or drop them in place for checking in. * Comment out an unnecessarily verbose warning if the buildtarget is executed with an action that we don't map to specific Visual Studio settings. Sometimes this is normal and okay, but the warning should get restored at some point when we work out the precise conditions under which it makes sense. Review URL: http://codereview.chromium.org/17602 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@7856 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--base/base_lib.scons9
-rw-r--r--base/base_sln.scons7
-rw-r--r--base/base_unittests.scons7
-rw-r--r--base/debug_message.scons7
-rw-r--r--base/gfx/base_gfx.scons7
-rw-r--r--chrome/browser/browser.scons1
-rw-r--r--chrome/chrome_sln.scons15
-rw-r--r--net/crash_cache.scons7
-rw-r--r--net/dump_cache.scons9
-rw-r--r--net/net_lib.scons22
-rw-r--r--net/net_perftests.scons7
-rw-r--r--net/net_resources.scons22
-rw-r--r--net/net_sln.scons8
-rw-r--r--net/net_unittests.scons7
-rw-r--r--net/stress_cache.scons7
-rw-r--r--net/tools/tld_cleanup/tld_cleanup.scons7
-rw-r--r--sandbox/sandbox_sln.scons7
-rw-r--r--site_scons/site_tools/_Node_MSVS.py10
-rw-r--r--site_scons/site_tools/chromium_builders.py28
-rw-r--r--skia/SConscript9
-rw-r--r--testing/SConscript.gtest51
-rw-r--r--third_party/libpng/libpng.scons7
-rw-r--r--third_party/sqlite/SConscript3
-rw-r--r--third_party/zlib/zlib.scons28
-rw-r--r--webkit/activex_shim_dll/SConscript1
-rw-r--r--webkit/webkit_sln.scons8
26 files changed, 145 insertions, 156 deletions
diff --git a/base/base_lib.scons b/base/base_lib.scons
index 0dd3673..2c0e494 100644
--- a/base/base_lib.scons
+++ b/base/base_lib.scons
@@ -377,9 +377,12 @@ if env.Bit('linux'):
env.ChromeLibrary('base', input_files)
p = env.ChromeMSVSProject('build/base.vcproj',
+ dest='$CHROME_SRC_DIR/base/build/base.vcproj',
guid='{1832A374-8A74-4F9E-B536-69A699B3E165}',
dependencies=[
'build/debug_message.vcproj',
+ # Necessary for chrome.sln.
+ '$ICU38_DIR/build/icu.vcproj',
],
files=input_files,
tools=[
@@ -443,9 +446,3 @@ p.AddFileConfig(
tools=[
MSVSTool('VCCLCompilerTool', DisableSpecificWarnings='4102'),
])
-
-env.AlwaysBuild(p)
-
-i = env.Command('$CHROME_SRC_DIR/base/build/base.vcproj', p,
- Copy('$TARGET', '$SOURCE'))
-Alias('msvs', i)
diff --git a/base/base_sln.scons b/base/base_sln.scons
index f86666c..046945b 100644
--- a/base/base_sln.scons
+++ b/base/base_sln.scons
@@ -26,6 +26,7 @@ env.ChromeMSVSFolder('base dependencies',
solution = env.ChromeMSVSSolution('base.sln',
+ dest='$CHROME_SRC_DIR/base/base.sln',
entries = [
'$BASE_DIR/build/base.vcproj',
'$BASE_DIR/build/base_unittests.vcproj',
@@ -43,9 +44,3 @@ solution = env.ChromeMSVSSolution('base.sln',
'Debug|Win32',
'Release|Win32',
])
-
-env.AlwaysBuild(solution)
-
-i = env.Command('$CHROME_SRC_DIR/base/base.sln', solution,
- Copy('$TARGET', '$SOURCE'))
-Alias('msvs', i)
diff --git a/base/base_unittests.scons b/base/base_unittests.scons
index 4b0c2e8..e76939c 100644
--- a/base/base_unittests.scons
+++ b/base/base_unittests.scons
@@ -168,6 +168,7 @@ if env.Bit('mac'):
env.ChromeTestProgram('base_unittests', input_files)
p = env.ChromeMSVSProject('build/base_unittests.vcproj',
+ dest='$CHROME_SRC_DIR/base/build/base_unittests.vcproj',
guid='{27A30967-4BBA-48D1-8522-CDE95F7B1CEC}',
dependencies=[
'$BASE_DIR/build/base.vcproj',
@@ -217,12 +218,6 @@ p.AddConfig('Release|Win32',
'$(SolutionDir)../testing/using_gtest.vsprops',
])
-env.AlwaysBuild(p)
-
-i = env.Command('$CHROME_SRC_DIR/base/build/base_unittests.vcproj', p,
- Copy('$TARGET', '$SOURCE'))
-Alias('msvs', i)
-
# TODO(sgk) should this be moved into base.lib like everything else? This will
# require updating a bunch of other SConscripts which link directly against
# this generated object file.
diff --git a/base/debug_message.scons b/base/debug_message.scons
index 5ae6f24..55f981f 100644
--- a/base/debug_message.scons
+++ b/base/debug_message.scons
@@ -32,6 +32,7 @@ env.ChromeMSVSProject('$BASE_DIR/build/debug_message.vcproj',
guid='{0E5474AC-5996-4B13-87C0-4AE931EE0815}')
p = env.ChromeMSVSProject('build/debug_message.vcproj',
+ dest='$CHROME_SRC_DIR/base/build/debug_message.vcproj',
guid='{0E5474AC-5996-4B13-87C0-4AE931EE0815}',
files=input_files,
root_namespace='DebugMessage',
@@ -69,9 +70,3 @@ p.AddConfig('Release|Win32',
'$(SolutionDir)../build/common.vsprops',
'$(SolutionDir)../build/release.vsprops',
])
-
-env.AlwaysBuild(p)
-
-i = env.Command('$CHROME_SRC_DIR/base/build/debug_message.vcproj', p,
- Copy('$TARGET', '$SOURCE'))
-Alias('msvs', i)
diff --git a/base/gfx/base_gfx.scons b/base/gfx/base_gfx.scons
index 5eb47db..8b0983d 100644
--- a/base/gfx/base_gfx.scons
+++ b/base/gfx/base_gfx.scons
@@ -59,6 +59,7 @@ elif env.Bit('linux'):
env.ChromeLibrary('base_gfx', input_files)
p = env.ChromeMSVSProject('../build/base_gfx.vcproj',
+ dest='$CHROME_SRC_DIR/base/build/base_gfx.vcproj',
guid='{A508ADD3-CECE-4E0F-8448-2F5E454DF551}',
files=input_files,
tools=[
@@ -94,9 +95,3 @@ p.AddConfig('Release|Win32',
'./base_gfx.vsprops',
'../../skia/using_skia.vsprops',
])
-
-env.AlwaysBuild(p)
-
-i = env.Command('$CHROME_SRC_DIR/base/build/base_gfx.vcproj', p,
- Copy('$TARGET', '$SOURCE'))
-Alias('msvs', i)
diff --git a/chrome/browser/browser.scons b/chrome/browser/browser.scons
index 24e36c9..60b5e3d 100644
--- a/chrome/browser/browser.scons
+++ b/chrome/browser/browser.scons
@@ -327,6 +327,7 @@ env.ChromeMSVSProject('$CHROME_DIR/browser/browser.vcproj',
dependencies = [
'$LIBXML_DIR/build/libxml_config.vcproj',
'$GOOGLE_UPDATE_DIR/ondemand_updates.vcproj',
+ '$NET_DIR/build/net_resources.vcproj',
'$CHROME_DIR/app/generated_resources.vcproj',
],
guid='{5BF908A7-68FB-4A4B-99E3-8C749F1FE4EA}')
diff --git a/chrome/chrome_sln.scons b/chrome/chrome_sln.scons
index 03220ef..b025320 100644
--- a/chrome/chrome_sln.scons
+++ b/chrome/chrome_sln.scons
@@ -38,9 +38,15 @@ env.ChromeMSVSProject('$CHROME_DIR/browser/resources/browser_resources.vcproj',
guid='{B95AB527-F7DB-41E9-AD91-EB51EE0F56BE}')
env.ChromeMSVSProject('$CHROME_DIR/installer/gcapi/gcapi_dll.vcproj',
+ dependencies = [
+ '$GOOGLE_UPDATE_DIR/ondemand_updates.vcproj',
+ ],
guid='{B802A2FE-E4E2-4F5A-905A-D5128875C954}')
env.ChromeMSVSProject('$CHROME_DIR/installer/gcapi/gcapi_lib.vcproj',
+ dependencies = [
+ '$GOOGLE_UPDATE_DIR/ondemand_updates.vcproj',
+ ],
guid='{CD2FD73A-6AAB-4886-B887-760D18E8B635}')
env.ChromeMSVSProject('$CHROME_DIR/installer/gcapi/gcapi_test.vcproj',
@@ -271,6 +277,7 @@ env.ChromeMSVSFolder('Libraries',
'../tools/memory_watcher/memory_watcher.vcproj',
'$MODP_B64_DIR/modp_b64.vcproj',
'$NET_DIR/build/net.vcproj',
+ '$NET_DIR/build/net_resources.vcproj',
'$SANDBOX_DIR/src/sandbox.vcproj',
'$SDCH_DIR/sdch.vcproj',
'$SKIA_DIR/skia.vcproj',
@@ -362,6 +369,7 @@ env.ChromeMSVSFolder('WebKit (ours)',
solution = env.ChromeMSVSSolution('chrome.sln',
+ dest='$CHROME_SRC_DIR/chrome/chrome.sln',
entries = [
env.ChromeMSVSFolder('App'),
env.ChromeMSVSFolder('Browser'),
@@ -531,14 +539,9 @@ solution = env.ChromeMSVSSolution('chrome.sln',
'$CHROME_DIR/installer/gcapi/gcapi_lib.vcproj',
'$CHROME_DIR/installer/gcapi/gcapi_dll.vcproj',
'$CHROME_DIR/installer/gcapi/gcapi_test.vcproj',
+ '$NET_DIR/build/net_resources.vcproj',
],
variants = [
'Debug|Win32',
'Release|Win32',
])
-
-env.AlwaysBuild(solution)
-
-i = env.Command('$CHROME_SRC_DIR/chrome/chrome.sln', solution,
- Copy('$TARGET', '$SOURCE'))
-Alias('msvs', i)
diff --git a/net/crash_cache.scons b/net/crash_cache.scons
index 834cb51..9bb5124 100644
--- a/net/crash_cache.scons
+++ b/net/crash_cache.scons
@@ -36,6 +36,7 @@ if not env.AnyBits('linux', 'mac'):
env.ChromeTestProgram('crash_cache', input_files)
p = env.ChromeMSVSProject('$NET_DIR/build/crash_cache.vcproj',
+ dest='$CHROME_SRC_DIR/net/build/crash_cache.vcproj',
guid='{B0EE0599-2913-46A0-A847-A3EC813658D3}',
dependencies = [
'$BASE_DIR/build/base.vcproj',
@@ -81,9 +82,3 @@ p.AddConfig('Release|Win32',
'$(SolutionDir)../build/common.vsprops',
'$(SolutionDir)../build/release.vsprops',
])
-
-env.AlwaysBuild(p)
-
-i = env.Command('$CHROME_SRC_DIR/net/build/crash_cache.vcproj', p,
- Copy('$TARGET', '$SOURCE'))
-Alias('msvs', i)
diff --git a/net/dump_cache.scons b/net/dump_cache.scons
index 75231bb..57852f7 100644
--- a/net/dump_cache.scons
+++ b/net/dump_cache.scons
@@ -35,11 +35,12 @@ if env.Bit('windows'):
env.ChromeTestProgram('dump_cache', input_files)
p = env.ChromeMSVSProject('$NET_DIR/build/dump_cache.vcproj',
+ dest='$CHROME_SRC_DIR/net/build/dump_cache.vcproj',
guid='{4A14E455-2B7C-4C0F-BCC2-35A9666C186F}',
dependencies = [
'$BASE_DIR/build/base.vcproj',
- '$ICU38_DIR/build/icu.vcproj',
'$NET_DIR/build/net.vcproj',
+ '$ICU38_DIR/build/icu.vcproj',
],
# TODO: restore when we can derive all info,
# on all platforms, from the windows build targets.
@@ -80,9 +81,3 @@ p.AddConfig('Release|Win32',
'$(SolutionDir)../build/common.vsprops',
'$(SolutionDir)../build/release.vsprops',
])
-
-env.AlwaysBuild(p)
-
-i = env.Command('$CHROME_SRC_DIR/net/build/dump_cache.vcproj', p,
- Copy('$TARGET', '$SOURCE'))
-Alias('msvs', i)
diff --git a/net/net_lib.scons b/net/net_lib.scons
index 5f0bf0f..5631198 100644
--- a/net/net_lib.scons
+++ b/net/net_lib.scons
@@ -341,9 +341,11 @@ if env.Bit('windows'):
lib = env.ChromeLibrary('net', input_files)
p = env.ChromeMSVSProject('$NET_DIR/build/net.vcproj',
+ dest='$CHROME_SRC_DIR/net/build/net.vcproj',
guid='{326E9795-E760-410A-B69A-3F79DB3F5243}',
dependencies = [
- '$NET_DIR/build/tld_cleanup.vcproj'
+ '$NET_DIR/build/net_resources.vcproj',
+ '$NET_DIR/build/tld_cleanup.vcproj',
],
# TODO: restore when we can derive all info,
# on all platforms, from the windows build targets.
@@ -355,12 +357,8 @@ p.AddToolFile('build/convert_tld_data.rules')
p.AddConfig('Debug|Win32',
InheritedPropertySheets=[
- '$(SolutionDir)../build/common.vsprops',
'$(SolutionDir)../build/debug.vsprops',
- '$(SolutionDir)../third_party/icu38/build/using_icu.vsprops',
- '$(SolutionDir)../third_party/zlib/using_zlib.vsprops',
- '$(SolutionDir)../sdch/using_sdch.vsprops',
- '$(SolutionDir)../tools/grit/build/using_generated_resources.vsprops',
+ './net.vsprops',
],
tools=[
'VCPreBuildEventTool',
@@ -386,12 +384,8 @@ p.AddConfig('Debug|Win32',
p.AddConfig('Release|Win32',
InheritedPropertySheets=[
- '$(SolutionDir)../build/common.vsprops',
'$(SolutionDir)../build/release.vsprops',
- '$(SolutionDir)../third_party/icu38/build/using_icu.vsprops',
- '$(SolutionDir)../third_party/zlib/using_zlib.vsprops',
- '$(SolutionDir)../sdch/using_sdch.vsprops',
- '$(SolutionDir)../tools/grit/build/using_generated_resources.vsprops',
+ './net.vsprops',
],
tools=[
'VCPreBuildEventTool',
@@ -427,9 +421,3 @@ p.AddFileConfig('build/precompiled_net.cc',
tools=[
'VCCLCompilerTool',
])
-
-env.AlwaysBuild(p)
-
-i = env.Command('$CHROME_SRC_DIR/net/build/net.vcproj', p,
- Copy('$TARGET', '$SOURCE'))
-Alias('msvs', i)
diff --git a/net/net_perftests.scons b/net/net_perftests.scons
index 5f0529a..6cbe6d9 100644
--- a/net/net_perftests.scons
+++ b/net/net_perftests.scons
@@ -61,6 +61,7 @@ env.ChromeMSVSProject('$NET_DIR/build/net_perftests.vcproj',
# TODO########################################################################
p = env.ChromeMSVSProject('$NET_DIR/build/net_perftests.vcproj',
+ dest='$CHROME_SRC_DIR/net/build/net_perftests.vcproj',
guid='{AAC78796-B9A2-4CD9-BF89-09B03E92BF73}',
dependencies = [
'$BASE_DIR/build/base.vcproj',
@@ -113,9 +114,3 @@ p.AddConfig('Release|Win32',
'$(SolutionDir)../build/release.vsprops',
'$(SolutionDir)../testing/using_gtest.vsprops',
])
-
-env.AlwaysBuild(p)
-
-i = env.Command('$CHROME_SRC_DIR/net/build/net_perftests.vcproj', p,
- Copy('$TARGET', '$SOURCE'))
-Alias('msvs', i)
diff --git a/net/net_resources.scons b/net/net_resources.scons
index 6120e0c..a9d8143 100644
--- a/net/net_resources.scons
+++ b/net/net_resources.scons
@@ -37,6 +37,28 @@ if env.Bit('windows'):
],
)
+ net_resources = []
for g in [g for g in generated if str(g).endswith('.rc')]:
net_res = env.RES(g)
+ net_resources.extend(net_res)
env.Depends(net_res, tld_names_clean)
+
+ p = env.ChromeMSVSProject('build/net_resources.vcproj',
+ dest='$CHROME_SRC_DIR/net/build/net_resources.vcproj',
+ guid='{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}',
+ buildtargets=net_resources,
+ ConfigurationType='10')
+
+ p.AddToolFile('../tools/grit/build/grit_resources.rules')
+
+ p.AddConfig('Debug|Win32',
+ InheritedPropertySheets=[
+ '$(SolutionDir)../build/common.vsprops',
+ '$(SolutionDir)../build/debug.vsprops',
+ ])
+
+ p.AddConfig('Release|Win32',
+ InheritedPropertySheets=[
+ '$(SolutionDir)../build/common.vsprops',
+ '$(SolutionDir)../build/release.vsprops',
+ ])
diff --git a/net/net_sln.scons b/net/net_sln.scons
index b262b60..7b7def1 100644
--- a/net/net_sln.scons
+++ b/net/net_sln.scons
@@ -40,6 +40,7 @@ env.ChromeMSVSFolder('net tools',
solution = env.ChromeMSVSSolution('net.sln',
+ dest='$CHROME_SRC_DIR/net/net.sln',
entries = [
'net dependencies',
'$GOOGLEURL_DIR/build/googleurl.vcproj',
@@ -60,15 +61,10 @@ solution = env.ChromeMSVSSolution('net.sln',
'$TESTING_DIR/gtest.vcproj',
'$SDCH_DIR/sdch.vcproj',
'$NET_DIR/build/dump_cache.vcproj',
+ '$NET_DIR/build/net_resources.vcproj',
],
variants = [
'Debug|Win32',
'Release|Win32',
])
-
-env.AlwaysBuild(solution)
-
-i = env.Command('$CHROME_SRC_DIR/net/net.sln', solution,
- Copy('$TARGET', '$SOURCE'))
-Alias('msvs', i)
diff --git a/net/net_unittests.scons b/net/net_unittests.scons
index 2b3911e..17c75ef 100644
--- a/net/net_unittests.scons
+++ b/net/net_unittests.scons
@@ -144,6 +144,7 @@ if env.Bit('mac'):
net_unittests = env.ChromeTestProgram('net_unittests', input_files)
p = env.ChromeMSVSProject('$NET_DIR/build/net_unittests.vcproj',
+ dest='$CHROME_SRC_DIR/net/build/net_unittests.vcproj',
dependencies = [
'$BASE_DIR/build/base.vcproj',
'$BZIP2_DIR/bzip2.vcproj',
@@ -236,9 +237,3 @@ p.AddFileConfig('build/precompiled_net.cc',
tools=[
'VCCLCompilerTool',
])
-
-env.AlwaysBuild(p)
-
-i = env.Command('$CHROME_SRC_DIR/net/build/net_unittests.vcproj', p,
- Copy('$TARGET', '$SOURCE'))
-Alias('msvs', i)
diff --git a/net/stress_cache.scons b/net/stress_cache.scons
index 9f926e4..fba9d09 100644
--- a/net/stress_cache.scons
+++ b/net/stress_cache.scons
@@ -45,6 +45,7 @@ if not env.Bit('mac'):
env.ChromeTestProgram('stress_cache', input_files)
p = env.ChromeMSVSProject('$NET_DIR/build/stress_cache.vcproj',
+ dest='$CHROME_SRC_DIR/net/build/stress_cache.vcproj',
guid='{B491C3A1-DE5F-4843-A1BB-AB8C4337187B}',
dependencies = [
'$BASE_DIR/build/base.vcproj',
@@ -91,9 +92,3 @@ p.AddConfig('Release|Win32',
'$(SolutionDir)../build/common.vsprops',
'$(SolutionDir)../build/release.vsprops',
])
-
-env.AlwaysBuild(p)
-
-i = env.Command('$CHROME_SRC_DIR/net/build/stress_cache.vcproj', p,
- Copy('$TARGET', '$SOURCE'))
-Alias('msvs', i)
diff --git a/net/tools/tld_cleanup/tld_cleanup.scons b/net/tools/tld_cleanup/tld_cleanup.scons
index 5f366c4..4ab9066 100644
--- a/net/tools/tld_cleanup/tld_cleanup.scons
+++ b/net/tools/tld_cleanup/tld_cleanup.scons
@@ -30,6 +30,7 @@ input_files = ChromeFileList([
env.ChromeProgram('tld_cleanup', input_files)
p = env.ChromeMSVSProject('$NET_DIR/build/tld_cleanup.vcproj',
+ dest='$CHROME_SRC_DIR/net/build/tld_cleanup.vcproj',
guid='{E13045CD-7E1F-4A41-9B18-8D288B2E7B41}',
dependencies = [
'$BASE_DIR/build/base.vcproj',
@@ -75,9 +76,3 @@ p.AddConfig('Release|Win32',
'$(SolutionDir)../build/common.vsprops',
'$(SolutionDir)../build/release.vsprops',
])
-
-env.AlwaysBuild(p)
-
-i = env.Command('$CHROME_SRC_DIR/net/build/tld_cleanup.vcproj', p,
- Copy('$TARGET', '$SOURCE'))
-Alias('msvs', i)
diff --git a/sandbox/sandbox_sln.scons b/sandbox/sandbox_sln.scons
index 243a8de..4ee96a0 100644
--- a/sandbox/sandbox_sln.scons
+++ b/sandbox/sandbox_sln.scons
@@ -109,6 +109,7 @@ tools = env.ChromeMSVSFolder('sandbox_tools',
solution = env.ChromeMSVSSolution('$SANDBOX_DIR/sandbox.sln',
+ dest='$CHROME_SRC_DIR/sandbox/sandbox.sln',
entries = [
'$SANDBOX_DIR/src/sandbox.vcproj',
('$SANDBOX_DIR/tests/unit_tests/' +
@@ -134,9 +135,3 @@ solution = env.ChromeMSVSSolution('$SANDBOX_DIR/sandbox.sln',
'Release|Win32',
],
websiteProperties=False)
-
-env.AlwaysBuild(solution)
-
-i = env.Command('$CHROME_SRC_DIR/sandbox/sandbox.sln', solution,
- Copy('$TARGET', '$SOURCE'))
-Alias('msvs', i)
diff --git a/site_scons/site_tools/_Node_MSVS.py b/site_scons/site_tools/_Node_MSVS.py
index b421de2..e0876ba 100644
--- a/site_scons/site_tools/_Node_MSVS.py
+++ b/site_scons/site_tools/_Node_MSVS.py
@@ -963,6 +963,9 @@ class _MSVSProject(SCons.Node.FS.File):
base_tool = self.cl_to_tool(base_cl)
file_tool = self.cl_to_tool(file_cl)
+ if not base_tool or not_file_tool:
+ return
+
file_tool.diff(base_tool)
self.AddFileConfig(source, name, tools=[file_tool])
@@ -985,7 +988,12 @@ class _MSVSProject(SCons.Node.FS.File):
if default_tool:
tool.diff(default_tool)
else:
- print "no tool for %r" % bt_cl[0]
+ # TODO(sgk): print a message unconditionally is too
+ # verbose for things like Python function actions,
+ # but doing nothing runs the risk of burying problems.
+ # Work out a better solution.
+ #print "no tool for %r" % bt_cl[0]
+ pass
for t in bt.sources:
e = t.get_build_env()
additional_files = SCons.Util.UniqueList()
diff --git a/site_scons/site_tools/chromium_builders.py b/site_scons/site_tools/chromium_builders.py
index 7ee8928..ff25bde 100644
--- a/site_scons/site_tools/chromium_builders.py
+++ b/site_scons/site_tools/chromium_builders.py
@@ -8,6 +8,8 @@ wrappers around Hammer builders. This gives us a central place for any
customization we need to make to the different things we build.
"""
+from SCons.Script import *
+
import SCons.Node
import _Node_MSVS as MSVS
@@ -103,12 +105,34 @@ def ChromeMSVSFolder(env, *args, **kw):
def ChromeMSVSProject(env, *args, **kw):
if not env.Bit('msvs'):
return Null()
- return env.MSVSProject(*args, **kw)
+ try:
+ dest = kw['dest']
+ except KeyError:
+ dest = None
+ else:
+ del kw['dest']
+ result = env.MSVSProject(*args, **kw)
+ env.AlwaysBuild(result)
+ if dest:
+ i = env.Command(dest, result, Copy('$TARGET', '$SOURCE'))
+ Alias('msvs', i)
+ return result
def ChromeMSVSSolution(env, *args, **kw):
if not env.Bit('msvs'):
return Null()
- return env.MSVSSolution(*args, **kw)
+ try:
+ dest = kw['dest']
+ except KeyError:
+ dest = None
+ else:
+ del kw['dest']
+ result = env.MSVSSolution(*args, **kw)
+ env.AlwaysBuild(result)
+ if dest:
+ i = env.Command(dest, result, Copy('$TARGET', '$SOURCE'))
+ Alias('msvs', i)
+ return result
def generate(env):
env.AddMethod(ChromeProgram)
diff --git a/skia/SConscript b/skia/SConscript
index 7af9c9f..b855a1a 100644
--- a/skia/SConscript
+++ b/skia/SConscript
@@ -303,7 +303,7 @@ input_files = ChromeFileList([
'sgl/SkTSearch.cpp',
'sgl/SkTSort.h',
'sgl/SkTypeface_fake.cpp',
- 'sgl/SkUnPreMultiply.cpp',
+ #'sgl/SkUnPreMultiply.cpp',
'sgl/SkUtils.cpp',
'sgl/SkWriter32.cpp',
'sgl/SkXfermode.cpp',
@@ -460,6 +460,7 @@ if env.Bit('windows'):
env.ChromeLibrary('skia', input_files)
p = env.ChromeMSVSProject('skia.vcproj',
+ dest='$CHROME_SRC_DIR/skia/skia.vcproj',
guid='{CD9CA56E-4E94-444C-87D4-58CA1E6F300D}',
files=input_files,
relative_path_prefix=r'./',
@@ -510,9 +511,3 @@ p.AddFileConfig(
tools=[
MSVSTool('VCCLCompilerTool'),
])
-
-env.AlwaysBuild(p)
-
-i = env.Command('$CHROME_SRC_DIR/skia/skia.vcproj', p,
- Copy('$TARGET', '$SOURCE'))
-Alias('msvs', i)
diff --git a/testing/SConscript.gtest b/testing/SConscript.gtest
index 96a66e8..ca18f9f7 100644
--- a/testing/SConscript.gtest
+++ b/testing/SConscript.gtest
@@ -24,31 +24,51 @@ if env.Bit('windows'):
)
input_files = ChromeFileList([
- 'gtest/include/gtest/internal/gtest-death-test-internal.h',
+ # TODO(sgk): violate standard indentation so we don't have to
+ # reindent too much when we remove the explicit MSVSFilter() calls
+ # in favor of generating the hierarchy to reflect the file system.
+ MSVSFilter('src', [
'gtest/src/gtest-death-test.cc',
- 'gtest/include/gtest/gtest-death-test.h',
'gtest/src/gtest-filepath.cc',
- 'gtest/include/gtest/internal/gtest-filepath.h',
'gtest/src/gtest-internal-inl.h',
- 'gtest/include/gtest/internal/gtest-internal.h',
- 'gtest/include/gtest/gtest-message.h',
'gtest/src/gtest-port.cc',
- 'gtest/include/gtest/internal/gtest-port.h',
- 'gtest/include/gtest/gtest-spi.h',
- 'gtest/include/gtest/internal/gtest-string.h',
+ 'gtest/src/gtest-test-part.cc',
'gtest/src/gtest.cc',
+ ]),
+ MSVSFilter('include', [
+ 'gtest/include/gtest/gtest-death-test.h',
+ 'gtest/include/gtest/gtest-message.h',
+ 'gtest/include/gtest/gtest-param-test.h',
+ 'gtest/include/gtest/gtest-spi.h',
+ 'gtest/include/gtest/gtest-test-part.h',
+ 'gtest/include/gtest/gtest-typed-test.h',
'gtest/include/gtest/gtest.h',
'gtest/include/gtest/gtest_pred_impl.h',
'gtest/include/gtest/gtest_prod.h',
- 'gtest/src/gtest-test-part.cc',
- 'multiprocess_func_list.cc',
+ MSVSFilter('internal', [
+ 'gtest/include/gtest/internal/gtest-death-test-internal.h',
+ 'gtest/include/gtest/internal/gtest-filepath.h',
+ 'gtest/include/gtest/internal/gtest-internal.h',
+ 'gtest/include/gtest/internal/gtest-linked_ptr.h',
+ 'gtest/include/gtest/internal/gtest-param-util-generated.h',
+ 'gtest/include/gtest/internal/gtest-param-util.h',
+ 'gtest/include/gtest/internal/gtest-port.h',
+ 'gtest/include/gtest/internal/gtest-string.h',
+ 'gtest/include/gtest/internal/gtest-type-util.h',
+ ]),
+ ]),
+ 'multiprocess_func_list.cc',
+ 'multiprocess_func_list.h',
+ 'platform_test.h',
])
env.ChromeLibrary('gtest', input_files)
p = env.ChromeMSVSProject('gtest.vcproj',
+ dest='$CHROME_SRC_DIR/testing/gtest.vcproj',
guid='{BFE8E2A7-3B3B-43B0-A994-3058B852DB8B}',
files=input_files,
+ relative_path_prefix=r'./',
tools = [
'VCPreBuildEventTool',
'VCCustomBuildTool',
@@ -65,24 +85,17 @@ p = env.ChromeMSVSProject('gtest.vcproj',
'VCBscMakeTool',
'VCFxCopTool',
'VCPostBuildEventTool',
- ])
+ ],
+ ConfigurationType = '4')
p.AddConfig('Debug|Win32',
- ConfigurationType = '4',
InheritedPropertySheets = [
'$(SolutionDir)../build/debug.vsprops',
'./using_gtest.vsprops',
])
p.AddConfig('Release|Win32',
- ConfigurationType = '4',
InheritedPropertySheets = [
'$(SolutionDir)../build/release.vsprops',
'./using_gtest.vsprops',
])
-
-env.AlwaysBuild(p)
-
-i = env.Command('$CHROME_SRC_DIR/testing/gtest.vcproj', p,
- Copy('$TARGET', '$SOURCE'))
-Alias('msvs', i)
diff --git a/third_party/libpng/libpng.scons b/third_party/libpng/libpng.scons
index 9c366a9..059a066 100644
--- a/third_party/libpng/libpng.scons
+++ b/third_party/libpng/libpng.scons
@@ -65,6 +65,7 @@ input_files = ChromeFileList([
env.ChromeLibrary('libpng', input_files)
p = env.ChromeMSVSProject('libpng.vcproj',
+ dest='$CHROME_SRC_DIR/third_party/libpng/libpng.vcproj',
guid='{C564F145-9172-42C3-BFCB-6014CA97DBCD}',
files=input_files,
relative_path_prefix='./',
@@ -92,9 +93,3 @@ p.AddConfig('Release|Win32',
'$(SolutionDir)../build/external_code.vsprops',
'$(SolutionDir)../third_party/libpng/using_libpng.vsprops',
])
-
-env.AlwaysBuild(p)
-
-i = env.Command('$CHROME_SRC_DIR/third_party/libpng/libpng.vcproj', p,
- Copy('$TARGET', '$SOURCE'))
-Alias('msvs', i)
diff --git a/third_party/sqlite/SConscript b/third_party/sqlite/SConscript
index b58885f..b6ddffb 100644
--- a/third_party/sqlite/SConscript
+++ b/third_party/sqlite/SConscript
@@ -138,6 +138,9 @@ if env.Bit('windows'):
env.ChromeLibrary('sqlite', input_files)
env.ChromeMSVSProject('$SQLITE_DIR/sqlite.vcproj',
+ dependencies = [
+ '$ICU38_DIR/build/icu.vcproj',
+ ],
guid='{6EAD4A4B-2BBC-4974-8E45-BB5C16CC2AC9}')
# TODO(tc): There should be a target to build the stand alone sqlite shell.
diff --git a/third_party/zlib/zlib.scons b/third_party/zlib/zlib.scons
index c62aeb4..74eed17 100644
--- a/third_party/zlib/zlib.scons
+++ b/third_party/zlib/zlib.scons
@@ -27,7 +27,18 @@ if env.Bit('windows'):
],
)
+minizip_filter = MSVSFilter('minizip', [
+ 'contrib/minizip/ioapi.c',
+ 'contrib/minizip/ioapi.h',
+ 'contrib/minizip/iowin32.c',
+ 'contrib/minizip/iowin32.h',
+ 'contrib/minizip/unzip.c',
+ 'contrib/minizip/unzip.h'
+])
+
input_files = ChromeFileList([
+ minizip_filter,
+
'adler32.c',
'compress.c',
'crc32.c',
@@ -51,17 +62,13 @@ input_files = ChromeFileList([
'zlib.h',
'zutil.c',
'zutil.h',
- 'contrib/minizip/ioapi.c',
- 'contrib/minizip/ioapi.h',
- 'contrib/minizip/unzip.c',
- 'contrib/minizip/unzip.h'
])
-if env.Bit('windows'):
- input_files.extend([
+if not env.Bit('windows'):
+ input_files.Remove(
'contrib/minizip/iowin32.c',
'contrib/minizip/iowin32.h',
- ])
+ )
if env.Bit('posix'):
env.Append(
@@ -74,6 +81,7 @@ if env.Bit('posix'):
env.ChromeLibrary('zlib', input_files)
p = env.ChromeMSVSProject('zlib.vcproj',
+ dest='$CHROME_SRC_DIR/third_party/zlib/zlib.vcproj',
guid='{8423AF0D-4B88-4EBF-94E1-E4D00D00E21C}',
files=input_files,
relative_path_prefix=r'./',
@@ -99,9 +107,3 @@ p.AddConfig('Release|Win32',
'$(SolutionDir)../build/external_code.vsprops',
'./zlib.vsprops'
])
-
-env.AlwaysBuild(p)
-
-i = env.Command('$CHROME_SRC_DIR/third_party/zlib/zlib.vcproj', p,
- Copy('$TARGET', '$SOURCE'))
-Alias('msvs', i)
diff --git a/webkit/activex_shim_dll/SConscript b/webkit/activex_shim_dll/SConscript
index 40b423e..c8bd329 100644
--- a/webkit/activex_shim_dll/SConscript
+++ b/webkit/activex_shim_dll/SConscript
@@ -51,6 +51,7 @@ env.Alias('webkit', i)
env.ChromeMSVSProject('$WEBKIT_DIR/activex_shim_dll/activex_shim_dll.vcproj',
dependencies = [
+ '$BASE_DIR/build/base.vcproj',
'$WEBKIT_DIR/activex_shim/activex_shim.vcproj',
],
guid='{494E414B-1655-48CE-996D-6413ECFB7829}')
diff --git a/webkit/webkit_sln.scons b/webkit/webkit_sln.scons
index c186837..3257d20 100644
--- a/webkit/webkit_sln.scons
+++ b/webkit/webkit_sln.scons
@@ -41,6 +41,7 @@ env.ChromeMSVSFolder('webkit dependencies',
'$V8_DIR/tools/visual_studio/v8_base.vcproj',
'$GOOGLEURL_DIR/build/googleurl.vcproj',
'$SDCH_DIR/sdch.vcproj',
+ '$NET_DIR/build/net_resources.vcproj',
],
guid='{2C5FC2FE-B8B0-44B9-A7C4-E5B5E7292F6B}')
@@ -97,6 +98,7 @@ env.ChromeMSVSFolder('webkit (ours)',
solution = env.ChromeMSVSSolution('webkit.sln',
+ dest='$CHROME_SRC_DIR/webkit/webkit.sln',
entries = [
'webkit dependencies',
'$WEBKIT_DIR/build/glue/glue.vcproj',
@@ -160,9 +162,3 @@ solution = env.ChromeMSVSSolution('webkit.sln',
'Debug|Win32',
'Release|Win32',
])
-
-env.AlwaysBuild(solution)
-
-i = env.Command('$CHROME_SRC_DIR/webkit/webkit.sln', solution,
- Copy('$TARGET', '$SOURCE'))
-Alias('msvs', i)