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

Side by Side Diff: build/gyp_chromium

Issue 183923014: Add free space print to see how near edge bots are (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 #!/usr/bin/env python 1 #!/usr/bin/env python
2 2
3 # Copyright (c) 2012 The Chromium Authors. All rights reserved. 3 # Copyright (c) 2012 The Chromium Authors. All rights reserved.
4 # Use of this source code is governed by a BSD-style license that can be 4 # Use of this source code is governed by a BSD-style license that can be
5 # found in the LICENSE file. 5 # found in the LICENSE file.
6 6
7 # This script is wrapper for Chromium that adds some support for how GYP 7 # This script is wrapper for Chromium that adds some support for how GYP
8 # is invoked by Chromium beyond what can be done in the gclient hooks. 8 # is invoked by Chromium beyond what can be done in the gclient hooks.
9 9
10 import ctypes
10 import glob 11 import glob
11 import gyp_helper 12 import gyp_helper
12 import json 13 import json
13 import os 14 import os
14 import pipes 15 import pipes
15 import shlex 16 import shlex
16 import shutil 17 import shutil
17 import subprocess 18 import subprocess
18 import string 19 import string
19 import sys 20 import sys
(...skipping 366 matching lines...) Expand 10 before | Expand all | Expand 10 after
386 if os.path.exists(out_release) and not os.path.exists(out_release_nacl64): 387 if os.path.exists(out_release) and not os.path.exists(out_release_nacl64):
387 os.makedirs(out_release_nacl64) 388 os.makedirs(out_release_nacl64)
388 copy_runtime(out_debug, x86, 'msvc%s120d.dll') 389 copy_runtime(out_debug, x86, 'msvc%s120d.dll')
389 copy_runtime(out_release, x86, 'msvc%s120.dll') 390 copy_runtime(out_release, x86, 'msvc%s120.dll')
390 copy_runtime(out_debug_x64, x64, 'msvc%s120d.dll') 391 copy_runtime(out_debug_x64, x64, 'msvc%s120d.dll')
391 copy_runtime(out_release_x64, x64, 'msvc%s120.dll') 392 copy_runtime(out_release_x64, x64, 'msvc%s120.dll')
392 copy_runtime(out_debug_nacl64, x64, 'msvc%s120d.dll') 393 copy_runtime(out_debug_nacl64, x64, 'msvc%s120d.dll')
393 copy_runtime(out_release_nacl64, x64, 'msvc%s120.dll') 394 copy_runtime(out_release_nacl64, x64, 'msvc%s120.dll')
394 395
395 396
397 def GetFreeSpaceMBWindows(path):
398 """Returns the number of mebibytes free for a given directory."""
399 free_bytes = ctypes.c_ulonglong(0)
400 ctypes.windll.kernel32.GetDiskFreeSpaceExW(
401 ctypes.c_wchar_p(path), None, None, ctypes.pointer(free_bytes))
402 return free_bytes.value / 1024 / 1024
403
404
396 if __name__ == '__main__': 405 if __name__ == '__main__':
397 args = sys.argv[1:] 406 args = sys.argv[1:]
398 407
399 if int(os.environ.get('GYP_CHROMIUM_NO_ACTION', 0)): 408 if int(os.environ.get('GYP_CHROMIUM_NO_ACTION', 0)):
400 print 'Skipping gyp_chromium due to GYP_CHROMIUM_NO_ACTION env var.' 409 print 'Skipping gyp_chromium due to GYP_CHROMIUM_NO_ACTION env var.'
401 sys.exit(0) 410 sys.exit(0)
402 411
403 # Use the Psyco JIT if available. 412 # Use the Psyco JIT if available.
404 if psyco: 413 if psyco:
405 psyco.profile() 414 psyco.profile()
(...skipping 103 matching lines...) Expand 10 before | Expand all | Expand 10 after
509 # values there. 518 # values there.
510 gyp_defines_dict = gyp.NameValueListToDict(gyp.ShlexEnv('GYP_DEFINES')) 519 gyp_defines_dict = gyp.NameValueListToDict(gyp.ShlexEnv('GYP_DEFINES'))
511 gyp_defines_dict['windows_sdk_path'] = win8sdk 520 gyp_defines_dict['windows_sdk_path'] = win8sdk
512 os.environ['GYP_DEFINES'] = ' '.join('%s=%s' % (k, pipes.quote(str(v))) 521 os.environ['GYP_DEFINES'] = ' '.join('%s=%s' % (k, pipes.quote(str(v)))
513 for k, v in gyp_defines_dict.iteritems()) 522 for k, v in gyp_defines_dict.iteritems())
514 os.environ['WINDOWSSDKDIR'] = win8sdk 523 os.environ['WINDOWSSDKDIR'] = win8sdk
515 os.environ['WDK_DIR'] = wdk 524 os.environ['WDK_DIR'] = wdk
516 # Include the VS runtime in the PATH in case it's not machine-installed. 525 # Include the VS runtime in the PATH in case it's not machine-installed.
517 runtime_path = ';'.join(vs2013_runtime_dll_dirs) 526 runtime_path = ';'.join(vs2013_runtime_dll_dirs)
518 os.environ['PATH'] = runtime_path + ';' + os.environ['PATH'] 527 os.environ['PATH'] = runtime_path + ';' + os.environ['PATH']
519 print('Using automatic toolchain in %s (%s edition).' % ( 528 # TODO(scottmg): Temporarily add free space print to try to see how close
520 toolchain, 'Pro' if version_is_pro else 'Express')) 529 # we're getting to failures on windows bots. http://crbug.com/348350
530 print('Using automatic toolchain in %s (%s edition), free space: %dM.' % (
531 toolchain,
532 'Pro' if version_is_pro else 'Express',
533 GetFreeSpaceMBWindows(GetOutputDirectory())))
521 534
522 # If CHROMIUM_GYP_SYNTAX_CHECK is set to 1, it will invoke gyp with --check 535 # If CHROMIUM_GYP_SYNTAX_CHECK is set to 1, it will invoke gyp with --check
523 # to enfore syntax checking. 536 # to enfore syntax checking.
524 syntax_check = os.environ.get('CHROMIUM_GYP_SYNTAX_CHECK') 537 syntax_check = os.environ.get('CHROMIUM_GYP_SYNTAX_CHECK')
525 if syntax_check and int(syntax_check): 538 if syntax_check and int(syntax_check):
526 args.append('--check') 539 args.append('--check')
527 540
528 supplemental_includes = GetSupplementalFiles() 541 supplemental_includes = GetSupplementalFiles()
529 gn_vars_dict = GetGypVarsForGN(supplemental_includes) 542 gn_vars_dict = GetGypVarsForGN(supplemental_includes)
530 543
(...skipping 24 matching lines...) Expand all
555 print 'Running build/landmines.py...' 568 print 'Running build/landmines.py...'
556 subprocess.check_call( 569 subprocess.check_call(
557 [sys.executable, os.path.join(script_dir, 'landmines.py')]) 570 [sys.executable, os.path.join(script_dir, 'landmines.py')])
558 571
559 if vs2013_runtime_dll_dirs: 572 if vs2013_runtime_dll_dirs:
560 x64_runtime, x86_runtime = vs2013_runtime_dll_dirs 573 x64_runtime, x86_runtime = vs2013_runtime_dll_dirs
561 CopyVsRuntimeDlls(os.path.join(chrome_src, GetOutputDirectory()), 574 CopyVsRuntimeDlls(os.path.join(chrome_src, GetOutputDirectory()),
562 (x86_runtime, x64_runtime)) 575 (x86_runtime, x64_runtime))
563 576
564 sys.exit(gyp_rc) 577 sys.exit(gyp_rc)
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698