Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(235)

Issue 7634025: Build chrome.exe into intermediate dir then copy it to output dir. (Closed)

Created:
9 years, 4 months ago by Roger McFarlane (Google)
Modified:
9 years, 4 months ago
CC:
chromium-reviews, Scott Byer
Visibility:
Public.

Description

BUG=92528 Build chrome.exe into intermediate dir then hard-link it into the output dir. This allows for incremental linking of both chrome.exe and chrome.dll; otherwise, their incremental link files collide as $(OutDir)/chrome.ilk There are some drawback/caveats to this approach. 1. Post-build steps are not always run. For example, if you do a project-only, relink on the project it seems to relink, but not run the post-build step. 2. On filesystems that don't support linking, it falls back to a copy which is a bit wasteful, but it's only applied to the chrome.exe target, not the dll target, so it's only 4 MB (as opposed to ~165MB) in Debug mode. Another approach to doing this in the gyp files would be to introduce an intermediate step for chrome.exe and turn the current chrome target into a copy step (which should get rid of any flakiness in post-build approach).

Patch Set 1 #

Patch Set 2 : add an explanatory comment #

Patch Set 3 : respect 80-column limit #

Patch Set 4 : The /j param isn't supported on XP #

Total comments: 2

Patch Set 5 : switch to hardlink_failsafe.bat #

Unified diffs Side-by-side diffs Delta from patch set Stats (+10 lines, -13 lines) Patch
M chrome/chrome_exe.gypi View 1 2 3 4 2 chunks +10 lines, -13 lines 0 comments Download

Messages

Total messages: 10 (0 generated)
Roger McFarlane (Google)
PTAL http://codereview.chromium.org/7634025/diff/6001/chrome/chrome_exe.gypi File chrome/chrome_exe.gypi (right): http://codereview.chromium.org/7634025/diff/6001/chrome/chrome_exe.gypi#newcode461 chrome/chrome_exe.gypi:461: 'XCOPY /Y /F /R /K /I "$(IntDir)\\chrome.exe" "$(OutDir)"', ...
9 years, 4 months ago (2011-08-12 18:40:27 UTC) #1
Roger McFarlane (Google)
PTA(nother)L http://codereview.chromium.org/7634025/diff/6001/chrome/chrome_exe.gypi File chrome/chrome_exe.gypi (right): http://codereview.chromium.org/7634025/diff/6001/chrome/chrome_exe.gypi#newcode461 chrome/chrome_exe.gypi:461: 'XCOPY /Y /F /R /K /I "$(IntDir)\\chrome.exe" "$(OutDir)"', ...
9 years, 4 months ago (2011-08-12 20:35:02 UTC) #2
scottmg
On 2011/08/12 20:35:02, Roger McFarlane (Google) wrote: > Muahahaha ... tools\build\win\hardlink_failsafe.bat Excellent, confirmed that it ...
9 years, 4 months ago (2011-08-12 23:06:42 UTC) #3
Roger McFarlane (Google)
Need an L.G.T.M. from an owner, plz.
9 years, 4 months ago (2011-08-13 01:28:37 UTC) #4
M-A Ruel
I wouldn't be surprised if it breaks VS2010. I'm sorry I don't have a vs2010 ...
9 years, 4 months ago (2011-08-13 01:31:02 UTC) #5
Roger McFarlane (Google)
On 2011/08/13 01:31:02, Marc-Antoine Ruel wrote: > I wouldn't be surprised if it breaks VS2010. ...
9 years, 4 months ago (2011-08-13 02:57:24 UTC) #6
scottmg
On 2011/08/13 02:57:24, Roger McFarlane (Google) wrote: > Hey Scott! Are you using vs 2008 ...
9 years, 4 months ago (2011-08-13 03:24:35 UTC) #7
scottmg
Oh, it does appear that Custom Build Steps ("actions" maybe?) are working on both 2008/2010. ...
9 years, 4 months ago (2011-08-13 05:47:10 UTC) #8
scottmg
Some more info on that idea... I briefly tried getting an 'actions' block working. i.e. ...
9 years, 4 months ago (2011-08-14 05:46:25 UTC) #9
Roger McFarlane (Chromium)
9 years, 4 months ago (2011-08-17 13:42:21 UTC) #10

Powered by Google App Engine
This is Rietveld 408576698