Index: chrome/chrome_exe.gypi |
=================================================================== |
--- chrome/chrome_exe.gypi (revision 96354) |
+++ chrome/chrome_exe.gypi (working copy) |
@@ -45,19 +45,6 @@ |
}, |
'conditions': [ |
['OS=="win"', { |
- # TODO(scottbyer): This is a temporary workaround. The right fix |
- # is to change the output file to be in $(IntDir) for this project |
- # and the .dll project and use the hardlink script to link it back |
- # to $(OutDir). |
- 'configurations': { |
- 'Debug_Base': { |
- 'msvs_settings': { |
- 'VCLinkerTool': { |
- 'LinkIncremental': '1', |
- }, |
- }, |
- }, |
- }, |
'msvs_settings': { |
'VCLinkerTool': { |
'DelayLoadDLLs': [ |
@@ -461,8 +448,18 @@ |
'VCLinkerTool': { |
'ImportLibrary': '$(OutDir)\\lib\\chrome_exe.lib', |
'ProgramDatabaseFile': '$(OutDir)\\chrome_exe.pdb', |
+ # In order to support incremental linking for both chrome exe and |
+ # dll we need to build them to different directories (otherwise |
+ # both files are called chrome.ilk and collide in the output |
+ # directory. We build chrome.exe to the intermediate directory |
+ # and add a postbuild step (below) to link the resulting |
+ # executable into the output dir. http://crbug.com/92528 |
+ 'OutputFile': '$(IntDir)\\chrome.exe', |
}, |
}, |
+ 'msvs_postbuild': [ |
+ 'tools\\build\\win\\hardlink_failsafe.bat "$(IntDir)\\chrome.exe" "$(OutDir)\\chrome.exe"', |
+ ], |
}], |
], |
}, |