| OLD | NEW | 
|---|
|  | (Empty) | 
| 1 # Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. |  | 
| 2 # Use of this source code is governed by a BSD-style license that can be |  | 
| 3 # found in the LICENSE file. |  | 
| 4 |  | 
| 5 import os |  | 
| 6 |  | 
| 7 Import(['env']) |  | 
| 8 |  | 
| 9 env_res = env.Clone() |  | 
| 10 env_test = env.Clone() |  | 
| 11 env = env.Clone() |  | 
| 12 |  | 
| 13 install_targets = [] |  | 
| 14 |  | 
| 15 env.Prepend( |  | 
| 16     CPPPATH = [ |  | 
| 17         'app', |  | 
| 18         '$CHROME_DIR/third_party/wtl/include', |  | 
| 19     ], |  | 
| 20 ) |  | 
| 21 |  | 
| 22 |  | 
| 23 # TODO(port) |  | 
| 24 if env_res.Bit('windows'): |  | 
| 25   env_res.Append( |  | 
| 26       CPPPATH = [ |  | 
| 27           '.', |  | 
| 28           '$CHROME_SRC_DIR', |  | 
| 29           # For app/chrome_dll.res to #include installer_util_strings.rc. |  | 
| 30           '$CHROME_DIR/installer/util', |  | 
| 31       ], |  | 
| 32       RCFLAGS = [ |  | 
| 33           ['/l', '0x409'], |  | 
| 34       ], |  | 
| 35   ) |  | 
| 36 |  | 
| 37   browser_res = env_res.RES( |  | 
| 38       '$TARGET_ROOT/grit_derived_sources/browser_resources.rc') |  | 
| 39   chrome_exe_res = env_res.RES('app/chrome_exe.rc'), |  | 
| 40   chrome_dll_res = env_res.RES('app/chrome_dll.rc') |  | 
| 41   env_res.Depends(chrome_dll_res, 'installer/util/installer_util_strings.rc') |  | 
| 42   common_res = env_res.RES( |  | 
| 43       '$TARGET_ROOT/grit_derived_sources/common_resources.rc') |  | 
| 44   debugger_res = env_res.RES( |  | 
| 45       '$TARGET_ROOT/grit_derived_sources/debugger_resources.rc') |  | 
| 46   renderer_res = env_res.RES( |  | 
| 47       '$TARGET_ROOT/grit_derived_sources/renderer_resources.rc') |  | 
| 48   test_data_res = env_res.RES('test/data/resource.rc') |  | 
| 49 |  | 
| 50   net_res = '$TARGET_ROOT/grit_derived_sources/net_resources.res' |  | 
| 51   webkit_res = '$TARGET_ROOT/grit_derived_sources/webkit_resources.res' |  | 
| 52 |  | 
| 53   dll_resources = [ |  | 
| 54       browser_res, |  | 
| 55       chrome_dll_res, |  | 
| 56       common_res, |  | 
| 57       debugger_res, |  | 
| 58       net_res, |  | 
| 59       renderer_res, |  | 
| 60       webkit_res, |  | 
| 61   ] |  | 
| 62 |  | 
| 63 ############################################################################## |  | 
| 64 # TODO(sgk):  move to separate .scons file for chrome.dll #################### |  | 
| 65 |  | 
| 66 env_dll = env.Clone() |  | 
| 67 |  | 
| 68 env_dll.ApplySConscript([ |  | 
| 69     '$CHROME_SRC_DIR/build/using_v8.scons', |  | 
| 70     '$ICU38_DIR/using_icu38.scons', |  | 
| 71 ]) |  | 
| 72 |  | 
| 73 env_dll.Prepend( |  | 
| 74     CPPPATH = [ |  | 
| 75         "..", |  | 
| 76     ], |  | 
| 77     CPPDEFINES = [ |  | 
| 78         'U_STATIC_IMPLEMENTATION', |  | 
| 79         'PNG_USER_CONFIG', |  | 
| 80         'CHROME_PNG_WRITE_SUPPORT', |  | 
| 81         'LIBXSLT_STATIC', |  | 
| 82         'LIBXML_STATIC', |  | 
| 83     ], |  | 
| 84 ) |  | 
| 85 |  | 
| 86 env_dll.Append( |  | 
| 87     CPPPATH = [ |  | 
| 88         '$CHROME_DIR/app', |  | 
| 89         '$LIBPNG_DIR', |  | 
| 90         '$SKIA_DIR/include', |  | 
| 91         '$SKIA_DIR/include/corecg', |  | 
| 92         '$SKIA_DIR/platform', |  | 
| 93         '$LIBXSL_DIR', |  | 
| 94         '$LIBXML_DIR/DerivedSources/include', |  | 
| 95         '$LIBXML_DIR/include', |  | 
| 96         '$BREAKPAD_DIR/src', |  | 
| 97     ], |  | 
| 98     LIBS = [ |  | 
| 99         'base', |  | 
| 100         'base_gfx', |  | 
| 101         #'breakpad_handler', |  | 
| 102         'googleurl', |  | 
| 103         'media', |  | 
| 104         'printing', |  | 
| 105         'net', |  | 
| 106         'skia', |  | 
| 107         'bzip2', |  | 
| 108         'libjpeg', |  | 
| 109         'libpng', |  | 
| 110         'libxml', |  | 
| 111         'libxslt', |  | 
| 112         'modp_b64', |  | 
| 113         'zlib', |  | 
| 114 |  | 
| 115         'WTF', |  | 
| 116         'V8Bindings', |  | 
| 117         'WebCore', |  | 
| 118         'WebKit', |  | 
| 119         'default_plugin', |  | 
| 120         'glue', |  | 
| 121         'JavaScriptCore_pcre', |  | 
| 122         'port', |  | 
| 123 |  | 
| 124         'browser', |  | 
| 125         'common', |  | 
| 126         'debugger', |  | 
| 127         'util', |  | 
| 128         'renderer', |  | 
| 129         'hunspell', |  | 
| 130         'sdch', |  | 
| 131         'sqlite', |  | 
| 132         'v8_snapshot', |  | 
| 133         'views', |  | 
| 134 |  | 
| 135         'X11', |  | 
| 136         'Xrender', |  | 
| 137         'Xext', |  | 
| 138     ], |  | 
| 139 ) |  | 
| 140 |  | 
| 141 if env.Bit('windows'): |  | 
| 142   # These libraries don't work on non-Windows yet. |  | 
| 143   env_dll.Append( |  | 
| 144       LIBS = [ |  | 
| 145           'plugin', |  | 
| 146           'worker', |  | 
| 147       ] |  | 
| 148   ) |  | 
| 149 |  | 
| 150 if env_dll.Bit('windows'): |  | 
| 151   env_dll.Append( |  | 
| 152       CCFLAGS = [ |  | 
| 153           '/TP', |  | 
| 154           '/Wp64', |  | 
| 155       ], |  | 
| 156       CPPDEFINES = [ |  | 
| 157           '_WINDLL', |  | 
| 158           'CHROME_DLL', |  | 
| 159           'BROWSER_DLL', |  | 
| 160           'RENDERER_DLL', |  | 
| 161           'PLUGIN_DLL', |  | 
| 162       ], |  | 
| 163       LIBS = [ |  | 
| 164           'activex_shim', |  | 
| 165           'browser_views', |  | 
| 166 |  | 
| 167           #'comctl32.lib', |  | 
| 168           #'dwmapi.lib', |  | 
| 169           #'rpcrt4.lib', |  | 
| 170           #'shlwapi.lib', |  | 
| 171           #'winmm.lib', |  | 
| 172           #'wsock32.lib', |  | 
| 173 |  | 
| 174           'Urlmon', |  | 
| 175       ], |  | 
| 176       LINKFLAGS = [ |  | 
| 177           '/INCREMENTAL', |  | 
| 178           '/DEBUG', |  | 
| 179 |  | 
| 180           '/DELAYLOAD:"comdlg32.dll"', |  | 
| 181           '/DELAYLOAD:"crypt32.dll"', |  | 
| 182           '/DELAYLOAD:"cryptui.dll"', |  | 
| 183           '/DELAYLOAD:"dwmapi.dll"', |  | 
| 184           '/DELAYLOAD:"imagehlp.dll"', |  | 
| 185           '/DELAYLOAD:"imm32.dll"', |  | 
| 186           '/DELAYLOAD:"oleacc.dll"', |  | 
| 187           '/DELAYLOAD:"oleaut32.dll"', |  | 
| 188           '/DELAYLOAD:"psapi.dll"', |  | 
| 189           '/DELAYLOAD:"urlmon.dll"', |  | 
| 190           '/DELAYLOAD:"uxtheme.dll"', |  | 
| 191           '/DELAYLOAD:"winhttp.dll"', |  | 
| 192           '/DELAYLOAD:"wininet.dll"', |  | 
| 193           '/DELAYLOAD:"winspool.drv"', |  | 
| 194           '/DELAYLOAD:"ws2_32.dll"', |  | 
| 195           '/DELAYLOAD:"wsock32.dll"', |  | 
| 196 |  | 
| 197           '/SUBSYSTEM:WINDOWS', |  | 
| 198           '/BASE:"0x01000000"', |  | 
| 199           '/MACHINE:X86', |  | 
| 200           '/FIXED:No', |  | 
| 201 |  | 
| 202           '/safeseh', |  | 
| 203           '/dynamicbase', |  | 
| 204           '/ignore:4199', |  | 
| 205           '/ignore:4221', |  | 
| 206           '/nxcompat', |  | 
| 207 |  | 
| 208           '/PDB:${TARGETS[1]}', |  | 
| 209       ], |  | 
| 210   ) |  | 
| 211 |  | 
| 212 input_files = ChromeFileList([ |  | 
| 213   # TODO(sgk):  violate standard indentation so we don't have to |  | 
| 214   # reindent too much when we remove the explicit MSVSFilter() calls |  | 
| 215   # in favor of generating the hierarchy to reflect the file system. |  | 
| 216   MSVSFilter('resources', [ |  | 
| 217     '$WEBKIT_DIR/glue/resources/aliasb.cur', |  | 
| 218     Derived(env_dll.File('$TARGET_ROOT/' |  | 
| 219                          + 'grit_derived_sources/browser_resources.rc')), |  | 
| 220     '$WEBKIT_DIR/glue/resources/cell.cur', |  | 
| 221     'app/check_dependents.bat', |  | 
| 222     'app/chrome.dll.deps', |  | 
| 223     'app/chrome_dll.rc', |  | 
| 224     'app/chrome_dll_resource.h', |  | 
| 225     'app/chrome_dll_version.rc.version', |  | 
| 226     '$WEBKIT_DIR/glue/resources/col_resize.cur', |  | 
| 227     'common/common_resources.rc', |  | 
| 228     '$WEBKIT_DIR/glue/resources/copy.cur', |  | 
| 229     'browser/debugger/resources/debugger_resources.rc', |  | 
| 230     Derived(env_dll.File('$TARGET_ROOT/grit_derived_sources/net_resources.rc')), |  | 
| 231     'renderer/renderer_resources.rc', |  | 
| 232     '$WEBKIT_DIR/glue/resources/row_resize.cur', |  | 
| 233     '$WEBKIT_DIR/glue/resources/vertical_text.cur', |  | 
| 234     Derived(env_dll.File('$TARGET_ROOT/' |  | 
| 235                          + 'grit_derived_sources/webkit_resources.rc')), |  | 
| 236     '$WEBKIT_DIR/glue/resources/zoom_in.cur', |  | 
| 237     '$WEBKIT_DIR/glue/resources/zoom_out.cur', |  | 
| 238   ]), |  | 
| 239     'app/chrome_dll_main.cc', |  | 
| 240 ]) |  | 
| 241 |  | 
| 242 if env_dll.Bit('windows'): |  | 
| 243   additional = [ |  | 
| 244       '$V8_DIR/snapshot-empty$OBJSUFFIX' |  | 
| 245   ] |  | 
| 246   dll_targets = env_dll.ChromeSharedLibrary('app/chrome_dll/chrome', |  | 
| 247                                             #dll_resources + input_files, |  | 
| 248                                             input_files + additional, |  | 
| 249                                             PDB='chrome_dll.pdb') |  | 
| 250   install_targets.extend(dll_targets) |  | 
| 251 |  | 
| 252   chrome_exe_version_rc = env.ChromeVersionRC( |  | 
| 253       'chrome_exe_version.rc', |  | 
| 254       'app/chrome_exe_version.rc.version' |  | 
| 255   ) |  | 
| 256 |  | 
| 257   chrome_dll_version_rc = env.ChromeVersionRC( |  | 
| 258       'chrome_dll_version.rc', |  | 
| 259       'app/chrome_dll_version.rc.version', |  | 
| 260   ) |  | 
| 261 |  | 
| 262   # TODO(sgk):  explicit dependencies => scanned implicit dependencies |  | 
| 263   Depends(chrome_exe_res, chrome_exe_version_rc) |  | 
| 264   Depends(chrome_dll_res, chrome_dll_version_rc) |  | 
| 265 |  | 
| 266   chrome_exe_version_res = env_res.RES(chrome_exe_version_rc) |  | 
| 267   chrome_dll_version_res = env_res.RES(chrome_dll_version_rc) |  | 
| 268 |  | 
| 269   install_targets.extend(chrome_exe_version_rc) |  | 
| 270   install_targets.extend(chrome_exe_version_res) |  | 
| 271 |  | 
| 272   install_targets.extend(chrome_dll_version_rc) |  | 
| 273   install_targets.extend(chrome_dll_version_res) |  | 
| 274 |  | 
| 275 if env_dll.Bit('linux'): |  | 
| 276   input_files = [ |  | 
| 277       'app/chrome_dll_main.cc', |  | 
| 278       'app/chrome_exe_main_gtk.cc', |  | 
| 279   ] |  | 
| 280 |  | 
| 281   env_dll.Append( |  | 
| 282     LIBS = [ |  | 
| 283       'event', |  | 
| 284     ] |  | 
| 285   ) |  | 
| 286   chrome = env_dll.ChromeProgram('app/chrome', input_files) |  | 
| 287 |  | 
| 288 |  | 
| 289 p = env.ChromeMSVSProject('app/chrome_dll.vcproj', |  | 
| 290                           dest='$CHROME_SRC_DIR/chrome/app/chrome_dll.vcproj', |  | 
| 291                           guid='{C0A7EE2C-2A6D-45BE-BA78-6D006FDF52D9}', |  | 
| 292                           keyword='Win32Proj', |  | 
| 293                           dependencies = [ |  | 
| 294                               '$BASE_DIR/build/base.vcproj', |  | 
| 295                               '$WEBKIT_DIR/build/WebCore/WebCore.vcproj', |  | 
| 296                               '$CHROME_DIR/plugin/plugin.vcproj', |  | 
| 297                               '$CHROME_DIR/worker/worker.vcproj', |  | 
| 298                               '$LIBJPEG_DIR/libjpeg.vcproj', |  | 
| 299                               '$BZIP2_DIR/bzip2.vcproj', |  | 
| 300                               '$NET_DIR/build/net.vcproj', |  | 
| 301                               ('$WEBKIT_DIR/build/JavaScriptCore/' + |  | 
| 302                                    'JavaScriptCore_pcre.vcproj'), |  | 
| 303                               '$WEBKIT_DIR/build/port/port.vcproj', |  | 
| 304                               '$CHROME_DIR/browser/debugger/debugger.vcproj', |  | 
| 305                               '$WEBKIT_DIR/default_plugin/default_plugin.vcproj'
     , |  | 
| 306                               '$CHROME_DIR/browser/browser.vcproj', |  | 
| 307                               '$WEBKIT_DIR/build/V8Bindings/V8Bindings.vcproj', |  | 
| 308                               '$SQLITE_DIR/sqlite.vcproj', |  | 
| 309                               '$CHROME_DIR/views/views.vcproj', |  | 
| 310                               '$MODP_B64_DIR/modp_b64.vcproj', |  | 
| 311                               '$ZLIB_DIR/zlib.vcproj', |  | 
| 312                               '$CHROME_DIR/common/common.vcproj', |  | 
| 313                               '$ICU38_DIR/build/icu.vcproj', |  | 
| 314                               '$CHROME_DIR/renderer/renderer.vcproj', |  | 
| 315                               '$BASE_DIR/build/base_gfx.vcproj', |  | 
| 316                               '$WEBKIT_DIR/build/JavaScriptCore/WTF.vcproj', |  | 
| 317                               ('$CHROME_DIR/browser/' |  | 
| 318                                + 'resources/browser_resources.vcproj'), |  | 
| 319                               '$V8_DIR/tools/visual_studio/v8_snapshot.vcproj', |  | 
| 320                               '$LIBPNG_DIR/libpng.vcproj', |  | 
| 321                               '$WEBKIT_DIR/build/glue/glue.vcproj', |  | 
| 322                               '$SKIA_DIR/skia.vcproj', |  | 
| 323                               '$CHROME_DIR/third_party/hunspell/hunspell.vcproj'
     , |  | 
| 324                               '$GEARS_DIR/gears.vcproj', |  | 
| 325                               '$GOOGLEURL_DIR/build/googleurl.vcproj', |  | 
| 326                               '$CHROME_DIR/installer/util/util.vcproj', |  | 
| 327                               '$WEBKIT_DIR/activex_shim/activex_shim.vcproj', |  | 
| 328                               '$SDCH_DIR/sdch.vcproj', |  | 
| 329                               '$CHROME_DIR/browser/views/browser_views.vcproj', |  | 
| 330                               '$LIBXSLT_DIR/build/libxslt.vcproj', |  | 
| 331                           ], |  | 
| 332                           # TODO(sgk):  when we can intuit the hierarchy |  | 
| 333                           # from the built targets. |  | 
| 334                           #buildtargets=TODO, |  | 
| 335                           files=input_files, |  | 
| 336                           local_directory_prefix='./', |  | 
| 337                           relative_path_substitutions = [ |  | 
| 338                               ('../../..', '$(OutDir)'), |  | 
| 339                           ], |  | 
| 340                           ConfigurationType='2') |  | 
| 341 |  | 
| 342 p.AddToolFile('tools/build/win/version.rules') |  | 
| 343 |  | 
| 344 p.AddConfig('Debug|Win32', |  | 
| 345             InheritedPropertySheets=[ |  | 
| 346                 '$(SolutionDir)../build/debug.vsprops', |  | 
| 347                 './chrome_dll.vsprops', |  | 
| 348                 '../installer/util/using_util.vsprops', |  | 
| 349             ], |  | 
| 350             tools=[ |  | 
| 351                 'VCPreBuildEventTool', |  | 
| 352                 'VCCustomBuildTool', |  | 
| 353                 'Version', |  | 
| 354                 'VCXMLDataGeneratorTool', |  | 
| 355                 'VCWebServiceProxyGeneratorTool', |  | 
| 356                 'VCMIDLTool', |  | 
| 357                 'VCCLCompilerTool', |  | 
| 358                 'VCManagedResourceCompilerTool', |  | 
| 359                 'VCResourceCompilerTool', |  | 
| 360                 'VCPreLinkEventTool', |  | 
| 361                 MSVSTool('VCLinkerTool', |  | 
| 362                          OutputFile='$(IntDir)/chrome.dll', |  | 
| 363                          ImportLibrary='$(OutDir)/lib/$(ProjectName).lib'), |  | 
| 364                 'VCALinkTool', |  | 
| 365                 MSVSTool('VCManifestTool', |  | 
| 366                          AdditionalManifestFiles=('$(SolutionDir)/app/' |  | 
| 367                                                   + 'chrome.dll.manifest')), |  | 
| 368                 'VCXDCMakeTool', |  | 
| 369                 'VCBscMakeTool', |  | 
| 370                 'VCFxCopTool', |  | 
| 371                 'VCAppVerifierTool', |  | 
| 372                 'VCWebDeploymentTool', |  | 
| 373                 MSVSTool('VCPostBuildEventTool', |  | 
| 374                          CommandLine=('call ' |  | 
| 375                                       + '$(SolutionDir)/tools/build/' |  | 
| 376                                       + 'win/hardlink_failsafe.bat ' |  | 
| 377                                       + '"$(TargetPath)" ' |  | 
| 378                                       + '"$(OutDir)/$(TargetFileName)"')), |  | 
| 379             ]) |  | 
| 380 |  | 
| 381 p.AddConfig('Release|Win32', |  | 
| 382             InheritedPropertySheets=[ |  | 
| 383                 '$(SolutionDir)../build/release.vsprops', |  | 
| 384                 './chrome_dll.vsprops', |  | 
| 385                 '../installer/util/using_util.vsprops', |  | 
| 386             ], |  | 
| 387             tools=[ |  | 
| 388                 'VCPreBuildEventTool', |  | 
| 389                 'VCCustomBuildTool', |  | 
| 390                 'Version', |  | 
| 391                 'VCXMLDataGeneratorTool', |  | 
| 392                 'VCWebServiceProxyGeneratorTool', |  | 
| 393                 'VCMIDLTool', |  | 
| 394                 'VCCLCompilerTool', |  | 
| 395                 'VCManagedResourceCompilerTool', |  | 
| 396                 'VCResourceCompilerTool', |  | 
| 397                 'VCPreLinkEventTool', |  | 
| 398                 MSVSTool('VCLinkerTool', |  | 
| 399                          OutputFile='$(OutDir)/chrome.dll', |  | 
| 400                          ImportLibrary='$(OutDir)/lib/$(ProjectName).lib'), |  | 
| 401                 'VCALinkTool', |  | 
| 402                 MSVSTool('VCManifestTool', |  | 
| 403                          AdditionalManifestFiles=('$(SolutionDir)/app/' |  | 
| 404                                                   + 'chrome.dll.manifest')), |  | 
| 405                 'VCXDCMakeTool', |  | 
| 406                 'VCBscMakeTool', |  | 
| 407                 'VCFxCopTool', |  | 
| 408                 'VCAppVerifierTool', |  | 
| 409                 'VCWebDeploymentTool', |  | 
| 410                 MSVSTool('VCPostBuildEventTool', |  | 
| 411                          CommandLine=('check_dependents.bat ' |  | 
| 412                                       + '$(TargetPath) chrome.dll.deps')), |  | 
| 413             ]) |  | 
| 414 |  | 
| 415 |  | 
| 416 ############################################################################## |  | 
| 417 # TODO(sgk):  move to separate .scons file for chrome.exe #################### |  | 
| 418 |  | 
| 419 env_exe = env.Clone() |  | 
| 420 |  | 
| 421 env_exe.Prepend( |  | 
| 422     CPPPATH = [ |  | 
| 423         '..', |  | 
| 424         '$BREAKPAD_DIR/src', |  | 
| 425     ], |  | 
| 426     LIBS = [ |  | 
| 427         'base', |  | 
| 428         'breakpad_handler', |  | 
| 429         'chrome', |  | 
| 430         'common', |  | 
| 431         'icu', |  | 
| 432         'sandbox', |  | 
| 433         'util', |  | 
| 434     ], |  | 
| 435 ) |  | 
| 436 |  | 
| 437 env_exe.Append( |  | 
| 438     LINKFLAGS = [ |  | 
| 439         '/INCREMENTAL', |  | 
| 440 |  | 
| 441         '/DELAYLOAD:"dwmapi.dll"', |  | 
| 442         '/DELAYLOAD:"uxtheme.dll"', |  | 
| 443 |  | 
| 444         '/SUBSYSTEM:WINDOWS', |  | 
| 445         '/MACHINE:X86', |  | 
| 446         '/FIXED:No', |  | 
| 447 |  | 
| 448         '/safeseh', |  | 
| 449         '/dynamicbase', |  | 
| 450         '/ignore:4199', |  | 
| 451         '/nxcompat', |  | 
| 452 |  | 
| 453         '/PDB:${TARGETS[1]}', |  | 
| 454         #'/IMPLIB:${TARGETS[2]}', |  | 
| 455     ], |  | 
| 456 ) |  | 
| 457 |  | 
| 458 input_files = ChromeFileList([ |  | 
| 459   # TODO(sgk):  violate standard indentation so we don't have to |  | 
| 460   # reindent too much when we remove the explicit MSVSFilter() calls |  | 
| 461   # in favor of generating the hierarchy to reflect the file system. |  | 
| 462   MSVSFilter('resources', [ |  | 
| 463     'app/check_dependents.bat', |  | 
| 464     'app/chrome.exe.deps', |  | 
| 465     'app/chrome_exe.rc', |  | 
| 466     'app/chrome_exe_resource.h', |  | 
| 467     'app/chrome_exe_version.rc.version', |  | 
| 468   ]), |  | 
| 469     'app/breakpad.cc', |  | 
| 470     'app/breakpad.h', |  | 
| 471     'app/chrome_exe_main.cc', |  | 
| 472     'common/chrome_switches$OBJSUFFIX', |  | 
| 473     'app/client_util.cc', |  | 
| 474     'app/client_util.h', |  | 
| 475     'common/env_vars$OBJSUFFIX', |  | 
| 476     'common/env_vars.h', |  | 
| 477     'app/google_update_client.cc', |  | 
| 478     'app/google_update_client.h', |  | 
| 479     'common/result_codes.h', |  | 
| 480 ]) |  | 
| 481 |  | 
| 482 # We only use a separate exe/dll on Windows. |  | 
| 483 if env.Bit('windows'): |  | 
| 484   chrome_exe = env_exe.ChromeProgram('chrome_exe/chrome', input_files) |  | 
| 485 |  | 
| 486   install_targets.append(chrome_exe[0]) |  | 
| 487 |  | 
| 488   env.Requires('$DESTINATION_ROOT/chrome.exe', |  | 
| 489                ['$DESTINATION_ROOT/chrome.dll', |  | 
| 490                 '$DESTINATION_ROOT/icudt38.dll', |  | 
| 491                 '$DESTINATION_ROOT/rlz.dll', |  | 
| 492                 '$DESTINATION_ROOT/First Run', |  | 
| 493                 '$DESTINATION_ROOT/themes', |  | 
| 494                 Alias('chrome_locales'), |  | 
| 495                ]) |  | 
| 496 |  | 
| 497   env.Install('$DESTINATION_ROOT', '$CHROME_DIR/app/FirstRun') |  | 
| 498 |  | 
| 499   # For release we want to run dependencies.py, may look something like: |  | 
| 500   #env.AddPostAction('$TARGET_ROOT/chrome.exe', |  | 
| 501   #                  ('$PYTHON tools/build/win/dependencies.py ' + |  | 
| 502   #                       '$(TargetPath) chrome.exe.deps')) |  | 
| 503 |  | 
| 504 p = env.ChromeMSVSProject('app/chrome_exe.vcproj', |  | 
| 505                           dest='$CHROME_SRC_DIR/chrome/app/chrome_exe.vcproj', |  | 
| 506                           guid='{7B219FAA-E360-43C8-B341-804A94EEFFAC}', |  | 
| 507                           keyword='Win32Proj', |  | 
| 508                           dependencies = [ |  | 
| 509                               '$BASE_DIR/build/base.vcproj', |  | 
| 510                               '$SANDBOX_DIR/src/sandbox.vcproj', |  | 
| 511                               ('$CHROME_DIR/tools/' |  | 
| 512                                + 'crash_service/crash_service.vcproj'), |  | 
| 513                               '$BREAKPAD_DIR/breakpad_handler.vcproj', |  | 
| 514                               '$CHROME_DIR/app/chrome_dll.vcproj', |  | 
| 515                               '$CHROME_DIR/app/locales/en-US.vcproj', |  | 
| 516                               '$CHROME_DIR/installer/util/util.vcproj', |  | 
| 517                               '$CHROME_DIR/app/theme/theme_dll.vcproj', |  | 
| 518                           ], |  | 
| 519                           # TODO(sgk):  when we can intuit the hierarchy |  | 
| 520                           # from the built targets. |  | 
| 521                           #buildtargets=TODO, |  | 
| 522                           files=input_files, |  | 
| 523                           local_directory_prefix='./', |  | 
| 524                           ConfigurationType='1') |  | 
| 525 |  | 
| 526 p.AddToolFile('tools/build/win/version.rules') |  | 
| 527 |  | 
| 528 p.AddConfig('Debug|Win32', |  | 
| 529             InheritedPropertySheets=[ |  | 
| 530                 './chrome_exe.vsprops', |  | 
| 531                 '$(SolutionDir)../build/debug.vsprops', |  | 
| 532             ], |  | 
| 533             tools=[ |  | 
| 534                 'VCPreBuildEventTool', |  | 
| 535                 'VCCustomBuildTool', |  | 
| 536                 'Version', |  | 
| 537                 'VCXMLDataGeneratorTool', |  | 
| 538                 'VCWebServiceProxyGeneratorTool', |  | 
| 539                 'VCMIDLTool', |  | 
| 540                 MSVSTool('VCCLCompilerTool', |  | 
| 541                          BasicRuntimeChecks='0', |  | 
| 542                          BufferSecurityCheck='false'), |  | 
| 543                 'VCManagedResourceCompilerTool', |  | 
| 544                 'VCResourceCompilerTool', |  | 
| 545                 'VCPreLinkEventTool', |  | 
| 546                 MSVSTool('VCLinkerTool', |  | 
| 547                          ImportLibrary='$(OutDir)/lib/$(ProjectName).lib'), |  | 
| 548                 'VCALinkTool', |  | 
| 549                 MSVSTool('VCManifestTool', |  | 
| 550                          AdditionalManifestFiles=('$(SolutionDir)/app/' |  | 
| 551                                                   + 'chrome.exe.manifest')), |  | 
| 552                 'VCXDCMakeTool', |  | 
| 553                 'VCBscMakeTool', |  | 
| 554                 'VCFxCopTool', |  | 
| 555                 'VCAppVerifierTool', |  | 
| 556                 'VCWebDeploymentTool', |  | 
| 557                 MSVSTool('VCPostBuildEventTool', |  | 
| 558                          CommandLine=('copy ' |  | 
| 559                                       + '$(ProjectDir)/FirstRun ' |  | 
| 560                                       + '$(OutDir)/"First Run"'), |  | 
| 561                          Description='Copy first run complete sentinel file'), |  | 
| 562             ]) |  | 
| 563 |  | 
| 564 p.AddConfig('Release|Win32', |  | 
| 565             InheritedPropertySheets=[ |  | 
| 566                 './chrome_exe.vsprops', |  | 
| 567                 '$(SolutionDir)../build/release.vsprops', |  | 
| 568             ], |  | 
| 569             tools=[ |  | 
| 570                 'VCPreBuildEventTool', |  | 
| 571                 'VCCustomBuildTool', |  | 
| 572                 'Version', |  | 
| 573                 'VCXMLDataGeneratorTool', |  | 
| 574                 'VCWebServiceProxyGeneratorTool', |  | 
| 575                 'VCMIDLTool', |  | 
| 576                 'VCCLCompilerTool', |  | 
| 577                 'VCManagedResourceCompilerTool', |  | 
| 578                 'VCResourceCompilerTool', |  | 
| 579                 'VCPreLinkEventTool', |  | 
| 580                 MSVSTool('VCLinkerTool', |  | 
| 581                          ImportLibrary='$(OutDir)/lib/$(ProjectName).lib'), |  | 
| 582                 'VCALinkTool', |  | 
| 583                 MSVSTool('VCManifestTool', |  | 
| 584                          AdditionalManifestFiles=('$(SolutionDir)/app/' |  | 
| 585                                                   + 'chrome.exe.manifest')), |  | 
| 586                 'VCXDCMakeTool', |  | 
| 587                 'VCBscMakeTool', |  | 
| 588                 'VCFxCopTool', |  | 
| 589                 'VCAppVerifierTool', |  | 
| 590                 'VCWebDeploymentTool', |  | 
| 591                 MSVSTool('VCPostBuildEventTool', |  | 
| 592                          # TODO(sgk): figure out how to get \r\n through |  | 
| 593                          # Python's XML generation? |  | 
| 594                          #CommandLine=('copy ' |  | 
| 595                          #             + '$(ProjectDir)/FirstRun ' |  | 
| 596                          #             + '$(OutDir)/"First Run"\r\n' |  | 
| 597                          #             + 'check_dependents.bat ' |  | 
| 598                          #             + '$(TargetPath) ' |  | 
| 599                          #             + 'chrome.exe.deps\r\n'), |  | 
| 600                          CommandLine=('copy ' |  | 
| 601                                       + '$(ProjectDir)/FirstRun ' |  | 
| 602                                       + '$(OutDir)/"First Run" ' |  | 
| 603                                       + '&& ' |  | 
| 604                                       + 'check_dependents.bat ' |  | 
| 605                                       + '$(TargetPath) ' |  | 
| 606                                       + 'chrome.exe.deps'), |  | 
| 607                          Description='Copy first run complete sentinel file'), |  | 
| 608             ]) |  | 
| 609 |  | 
| 610 |  | 
| 611 ############################################################################## |  | 
| 612 # TODO(sgk): Port these to browser_views.scons and views.scons. |  | 
| 613 |  | 
| 614 sconscript_files = [ |  | 
| 615     'browser/views/SConscript', |  | 
| 616     'views/SConscript', |  | 
| 617 ] |  | 
| 618 |  | 
| 619 if not env.WantSystemLib('hunspell'): |  | 
| 620   sconscript_files.append('third_party/hunspell/SConscript') |  | 
| 621 |  | 
| 622 env.SConscript(sconscript_files, exports=['env', 'env_res', 'env_test']) |  | 
| 623 |  | 
| 624 # TODO(port) |  | 
| 625 if env.Bit('windows'): |  | 
| 626   env.InstallAs('$LIBS_DIR/${LIBPREFIX}jscre${LIBSUFFIX}', |  | 
| 627                 '$WEBKIT_DIR/JavaScriptCore_pcre.lib') |  | 
| 628 |  | 
| 629 |  | 
| 630 env.Install('$DESTINATION_ROOT', install_targets) |  | 
| 631 |  | 
| 632 |  | 
| 633 gears_plugins = [ |  | 
| 634     '$GEARS_DIR/binaries/gears.dll', |  | 
| 635     '$GEARS_DIR/binaries/gears.pdb', |  | 
| 636 ] |  | 
| 637 |  | 
| 638 # TODO(port) |  | 
| 639 if env.Bit('windows'): |  | 
| 640   env.Install('$DESTINATION_ROOT/plugins/gears', gears_plugins) |  | 
| 641 |  | 
| 642 env.Command('$DESTINATION_ROOT/resources/inspector', |  | 
| 643             '$CHROME_SRC_DIR/third_party/WebKit/WebCore/inspector/front-end', |  | 
| 644             Copy('$TARGET', '$SOURCE'), |  | 
| 645             source_scanner=DirScanner) |  | 
| OLD | NEW | 
|---|