Abort copying MSVC DLLs on error in gyp_chromium script |
|||
Issue descriptionSo I have just been fumbling over a dependency issues for hours only to realize now that there was a clear error diagnosis message hidden in the gyp_chromium spew (see below). Can we exit the script early on error (i.e. have the last message be the error)? Broken run: D:\src\chrome\src>python build\gyp_chromium Enabled Psyco JIT. Updating projects from gyp files... gyp: Dependency 'D:\src\chrome\src\chrome\chrome.gyp:common_constants#target' not found while trying to load target D:\src\chrome\src\chrome\chrome.gyp:chrome_initial#target Copying D:\depot_tools\win_toolchain\vs_files\95ddda401ec5678f15eeed01d2bee08fcbc5ee97\sys32\msvcp140d.dll to D:\src\chrome\src\out\Debug\msvcp140d.dll... Copying D:\depot_tools\win_toolchain\vs_files\95ddda401ec5678f15eeed01d2bee08fcbc5ee97\sys32\vccorlib140d.dll to D:\src\chrome\src\out\Debug\vccorlib140d.dll... Copying D:\depot_tools\win_toolchain\vs_files\95ddda401ec5678f15eeed01d2bee08fcbc5ee97\sys32\vcruntime140d.dll to D:\src\chrome\src\out\Debug\vcruntime140d.dll... Copying D:\depot_tools\win_toolchain\vs_files\95ddda401ec5678f15eeed01d2bee08fcbc5ee97\sys32\api-ms-win-*.dll to D:\src\chrome\src\out\Debug... Copying D:\depot_tools\win_toolchain\vs_files\95ddda401ec5678f15eeed01d2bee08fcbc5ee97\sys32\ucrtbased.dll to D:\src\chrome\src\out\Debug\ucrtbased.dll... Copying D:\depot_tools\win_toolchain\vs_files\95ddda401ec5678f15eeed01d2bee08fcbc5ee97\sys32\msvcp140.dll to D:\src\chrome\src\out\Release\msvcp140.dll... Copying D:\depot_tools\win_toolchain\vs_files\95ddda401ec5678f15eeed01d2bee08fcbc5ee97\sys32\vccorlib140.dll to D:\src\chrome\src\out\Release\vccorlib140.dll... Copying D:\depot_tools\win_toolchain\vs_files\95ddda401ec5678f15eeed01d2bee08fcbc5ee97\sys32\vcruntime140.dll to D:\src\chrome\src\out\Release\vcruntime140.dll... Copying D:\depot_tools\win_toolchain\vs_files\95ddda401ec5678f15eeed01d2bee08fcbc5ee97\sys32\api-ms-win-*.dll to D:\src\chrome\src\out\Release... Copying D:\depot_tools\win_toolchain\vs_files\95ddda401ec5678f15eeed01d2bee08fcbc5ee97\sys32\ucrtbase.dll to D:\src\chrome\src\out\Release\ucrtbase.dll... Copying D:\depot_tools\win_toolchain\vs_files\95ddda401ec5678f15eeed01d2bee08fcbc5ee97\VC\bin\pgort140.dll to D:\src\chrome\src\out\Release\pgort140.dll... Copying D:\depot_tools\win_toolchain\vs_files\95ddda401ec5678f15eeed01d2bee08fcbc5ee97\sys64\msvcp140d.dll to D:\src\chrome\src\out\Debug_x64\msvcp140d.dll... Copying D:\depot_tools\win_toolchain\vs_files\95ddda401ec5678f15eeed01d2bee08fcbc5ee97\sys64\api-ms-win-*.dll to D:\src\chrome\src\out\Debug_x64... Copying D:\depot_tools\win_toolchain\vs_files\95ddda401ec5678f15eeed01d2bee08fcbc5ee97\sys64\ucrtbased.dll to D:\src\chrome\src\out\Debug_x64\ucrtbased.dll... Copying D:\depot_tools\win_toolchain\vs_files\95ddda401ec5678f15eeed01d2bee08fcbc5ee97\sys64\msvcp140.dll to D:\src\chrome\src\out\Release_x64\msvcp140.dll... Copying D:\depot_tools\win_toolchain\vs_files\95ddda401ec5678f15eeed01d2bee08fcbc5ee97\sys64\vcruntime140.dll to D:\src\chrome\src\out\Release_x64\vcruntime140.dll... Copying D:\depot_tools\win_toolchain\vs_files\95ddda401ec5678f15eeed01d2bee08fcbc5ee97\sys64\api-ms-win-*.dll to D:\src\chrome\src\out\Release_x64... Copying D:\depot_tools\win_toolchain\vs_files\95ddda401ec5678f15eeed01d2bee08fcbc5ee97\sys64\ucrtbase.dll to D:\src\chrome\src\out\Release_x64\ucrtbase.dll... Copying D:\depot_tools\win_toolchain\vs_files\95ddda401ec5678f15eeed01d2bee08fcbc5ee97\VC\bin\amd64\pgort140.dll to D:\src\chrome\src\out\Release_x64\pgort140.dll... Copying D:\depot_tools\win_toolchain\vs_files\95ddda401ec5678f15eeed01d2bee08fcbc5ee97\sys64\msvcp140d.dll to D:\src\chrome\src\out\Debug\x64\msvcp140d.dll... Copying D:\depot_tools\win_toolchain\vs_files\95ddda401ec5678f15eeed01d2bee08fcbc5ee97\sys64\api-ms-win-*.dll to D:\src\chrome\src\out\Debug\x64... Copying D:\depot_tools\win_toolchain\vs_files\95ddda401ec5678f15eeed01d2bee08fcbc5ee97\sys64\ucrtbased.dll to D:\src\chrome\src\out\Debug\x64\ucrtbased.dll... Copying D:\depot_tools\win_toolchain\vs_files\95ddda401ec5678f15eeed01d2bee08fcbc5ee97\sys64\msvcp140.dll to D:\src\chrome\src\out\Release\x64\msvcp140.dll... Copying D:\depot_tools\win_toolchain\vs_files\95ddda401ec5678f15eeed01d2bee08fcbc5ee97\sys64\vcruntime140.dll to D:\src\chrome\src\out\Release\x64\vcruntime140.dll... Copying D:\depot_tools\win_toolchain\vs_files\95ddda401ec5678f15eeed01d2bee08fcbc5ee97\sys64\api-ms-win-*.dll to D:\src\chrome\src\out\Release\x64... Copying D:\depot_tools\win_toolchain\vs_files\95ddda401ec5678f15eeed01d2bee08fcbc5ee97\sys64\ucrtbase.dll to D:\src\chrome\src\out\Release\x64\ucrtbase.dll... Copying D:\depot_tools\win_toolchain\vs_files\95ddda401ec5678f15eeed01d2bee08fcbc5ee97\VC\bin\amd64\pgort140.dll to D:\src\chrome\src\out\Release\x64\pgort140.dll... Fixed run: D:\src\chrome\src>python build\gyp_chromium Enabled Psyco JIT. Updating projects from gyp files... Copying D:\depot_tools\win_toolchain\vs_files\95ddda401ec5678f15eeed01d2bee08fcbc5ee97\sys32\msvcp140d.dll to D:\src\chrome\src\out\Debug\msvcp140d.dll... Copying D:\depot_tools\win_toolchain\vs_files\95ddda401ec5678f15eeed01d2bee08fcbc5ee97\sys32\vccorlib140d.dll to D:\src\chrome\src\out\Debug\vccorlib140d.dll... Copying D:\depot_tools\win_toolchain\vs_files\95ddda401ec5678f15eeed01d2bee08fcbc5ee97\sys32\vcruntime140d.dll to D:\src\chrome\src\out\Debug\vcruntime140d.dll... Copying D:\depot_tools\win_toolchain\vs_files\95ddda401ec5678f15eeed01d2bee08fcbc5ee97\sys32\api-ms-win-*.dll to D:\src\chrome\src\out\Debug... Copying D:\depot_tools\win_toolchain\vs_files\95ddda401ec5678f15eeed01d2bee08fcbc5ee97\sys32\ucrtbased.dll to D:\src\chrome\src\out\Debug\ucrtbased.dll... Copying D:\depot_tools\win_toolchain\vs_files\95ddda401ec5678f15eeed01d2bee08fcbc5ee97\sys32\msvcp140.dll to D:\src\chrome\src\out\Release\msvcp140.dll... Copying D:\depot_tools\win_toolchain\vs_files\95ddda401ec5678f15eeed01d2bee08fcbc5ee97\sys32\vccorlib140.dll to D:\src\chrome\src\out\Release\vccorlib140.dll... Copying D:\depot_tools\win_toolchain\vs_files\95ddda401ec5678f15eeed01d2bee08fcbc5ee97\sys32\vcruntime140.dll to D:\src\chrome\src\out\Release\vcruntime140.dll... Copying D:\depot_tools\win_toolchain\vs_files\95ddda401ec5678f15eeed01d2bee08fcbc5ee97\sys32\api-ms-win-*.dll to D:\src\chrome\src\out\Release... Copying D:\depot_tools\win_toolchain\vs_files\95ddda401ec5678f15eeed01d2bee08fcbc5ee97\sys32\ucrtbase.dll to D:\src\chrome\src\out\Release\ucrtbase.dll... Copying D:\depot_tools\win_toolchain\vs_files\95ddda401ec5678f15eeed01d2bee08fcbc5ee97\VC\bin\pgort140.dll to D:\src\chrome\src\out\Release\pgort140.dll... Copying D:\depot_tools\win_toolchain\vs_files\95ddda401ec5678f15eeed01d2bee08fcbc5ee97\sys64\msvcp140d.dll to D:\src\chrome\src\out\Debug_x64\msvcp140d.dll... Copying D:\depot_tools\win_toolchain\vs_files\95ddda401ec5678f15eeed01d2bee08fcbc5ee97\sys64\api-ms-win-*.dll to D:\src\chrome\src\out\Debug_x64... Copying D:\depot_tools\win_toolchain\vs_files\95ddda401ec5678f15eeed01d2bee08fcbc5ee97\sys64\ucrtbased.dll to D:\src\chrome\src\out\Debug_x64\ucrtbased.dll... Copying D:\depot_tools\win_toolchain\vs_files\95ddda401ec5678f15eeed01d2bee08fcbc5ee97\sys64\msvcp140.dll to D:\src\chrome\src\out\Release_x64\msvcp140.dll... Copying D:\depot_tools\win_toolchain\vs_files\95ddda401ec5678f15eeed01d2bee08fcbc5ee97\sys64\vcruntime140.dll to D:\src\chrome\src\out\Release_x64\vcruntime140.dll... Copying D:\depot_tools\win_toolchain\vs_files\95ddda401ec5678f15eeed01d2bee08fcbc5ee97\sys64\api-ms-win-*.dll to D:\src\chrome\src\out\Release_x64... Copying D:\depot_tools\win_toolchain\vs_files\95ddda401ec5678f15eeed01d2bee08fcbc5ee97\sys64\ucrtbase.dll to D:\src\chrome\src\out\Release_x64\ucrtbase.dll... Copying D:\depot_tools\win_toolchain\vs_files\95ddda401ec5678f15eeed01d2bee08fcbc5ee97\VC\bin\amd64\pgort140.dll to D:\src\chrome\src\out\Release_x64\pgort140.dll... Copying D:\depot_tools\win_toolchain\vs_files\95ddda401ec5678f15eeed01d2bee08fcbc5ee97\sys64\msvcp140d.dll to D:\src\chrome\src\out\Debug\x64\msvcp140d.dll... Copying D:\depot_tools\win_toolchain\vs_files\95ddda401ec5678f15eeed01d2bee08fcbc5ee97\sys64\api-ms-win-*.dll to D:\src\chrome\src\out\Debug\x64... Copying D:\depot_tools\win_toolchain\vs_files\95ddda401ec5678f15eeed01d2bee08fcbc5ee97\sys64\ucrtbased.dll to D:\src\chrome\src\out\Debug\x64\ucrtbased.dll... Copying D:\depot_tools\win_toolchain\vs_files\95ddda401ec5678f15eeed01d2bee08fcbc5ee97\sys64\msvcp140.dll to D:\src\chrome\src\out\Release\x64\msvcp140.dll... Copying D:\depot_tools\win_toolchain\vs_files\95ddda401ec5678f15eeed01d2bee08fcbc5ee97\sys64\vcruntime140.dll to D:\src\chrome\src\out\Release\x64\vcruntime140.dll... Copying D:\depot_tools\win_toolchain\vs_files\95ddda401ec5678f15eeed01d2bee08fcbc5ee97\sys64\api-ms-win-*.dll to D:\src\chrome\src\out\Release\x64... Copying D:\depot_tools\win_toolchain\vs_files\95ddda401ec5678f15eeed01d2bee08fcbc5ee97\sys64\ucrtbase.dll to D:\src\chrome\src\out\Release\x64\ucrtbase.dll... Copying D:\depot_tools\win_toolchain\vs_files\95ddda401ec5678f15eeed01d2bee08fcbc5ee97\VC\bin\amd64\pgort140.dll to D:\src\chrome\src\out\Release\x64\pgort140.dll...
,
Apr 14 2016
Making errors obvious is good. There was a long-standing cryptic failure in gclient runhooks that was hidden for years by an uncaught error - this is thematically similar and worth improving.
,
Apr 15 2016
@#1, will do.
,
Apr 18 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/381d9f17b002b97ea4cf38a859d91fafd051c587 commit 381d9f17b002b97ea4cf38a859d91fafd051c587 Author: gab <gab@chromium.org> Date: Mon Apr 18 15:29:14 2016 Stop gyp_chromium prior to mass DLL copies on error Also fix last-modified-time comparison code to handle minor float differences and thus correctly not copy identical files (for some reason there appears to be a ~1e-07 diff between last-modified-time of copied files...?). BUG= 603603 TEST=No more copy output from gyp_chromium when copied DLLs are already there or gyp_rc != 0 :-) Review URL: https://codereview.chromium.org/1890053004 Cr-Commit-Position: refs/heads/master@{#387911} [modify] https://crrev.com/381d9f17b002b97ea4cf38a859d91fafd051c587/build/gyp_chromium.py [modify] https://crrev.com/381d9f17b002b97ea4cf38a859d91fafd051c587/build/vs_toolchain.py
,
Apr 18 2016
Fixed and also got rid of copies when file is the same (turns out comparing exact float equality of last-modified-time wasn't okay...). |
|||
►
Sign in to add a comment |
|||
Comment 1 by scottmg@chromium.org
, Apr 14 2016