OLD | NEW |
---|---|
1 #!/usr/bin/env python | 1 #!/usr/bin/env python |
2 # Copyright (c) 2012 The Chromium Authors. All rights reserved. | 2 # Copyright (c) 2012 The Chromium Authors. All rights reserved. |
3 # Use of this source code is governed by a BSD-style license that can be | 3 # Use of this source code is governed by a BSD-style license that can be |
4 # found in the LICENSE file. | 4 # found in the LICENSE file. |
5 | 5 |
6 """Entry point for both build and try bots. | 6 """Entry point for both build and try bots. |
7 | 7 |
8 This script is invoked from XXX, usually without arguments | 8 This script is invoked from XXX, usually without arguments |
9 to package an SDK. It automatically determines whether | 9 to package an SDK. It automatically determines whether |
10 this SDK is for mac, win, linux. | 10 this SDK is for mac, win, linux. |
(...skipping 391 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
402 'libpthread.a', | 402 'libpthread.a', |
403 ] | 403 ] |
404 } | 404 } |
405 | 405 |
406 | 406 |
407 def GypNinjaInstall(pepperdir, toolchains): | 407 def GypNinjaInstall(pepperdir, toolchains): |
408 build_dir = GYPBUILD_DIR | 408 build_dir = GYPBUILD_DIR |
409 ninja_out_dir = os.path.join(OUT_DIR, build_dir, 'Release') | 409 ninja_out_dir = os.path.join(OUT_DIR, build_dir, 'Release') |
410 tools_files = [ | 410 tools_files = [ |
411 ['sel_ldr', 'sel_ldr_x86_32'], | 411 ['sel_ldr', 'sel_ldr_x86_32'], |
412 ['sel_ldr_x86_64', 'sel_ldr_x86_64'], | |
413 ['sel_ldr_arm', 'sel_ldr_arm'], | |
412 ['ncval_new', 'ncval'], | 414 ['ncval_new', 'ncval'], |
413 ['irt_core_newlib_x32.nexe', 'irt_core_x86_32.nexe'], | 415 ['irt_core_newlib_arm.nexe', 'irt_core_arm.nexe'], |
416 ['irt_core_newlib_x64.nexe', 'irt_core_x86_64.nexe'], | |
noelallen1
2014/03/08 01:02:53
x86_32?
| |
414 ['irt_core_newlib_x64.nexe', 'irt_core_x86_64.nexe'], | 417 ['irt_core_newlib_x64.nexe', 'irt_core_x86_64.nexe'], |
415 ] | 418 ] |
416 | 419 |
417 platform = getos.GetPlatform() | 420 platform = getos.GetPlatform() |
418 | 421 |
419 # TODO(binji): dump_syms doesn't currently build on Windows. See | 422 # TODO(binji): dump_syms doesn't currently build on Windows. See |
420 # http://crbug.com/245456 | 423 # http://crbug.com/245456 |
421 if platform != 'win': | 424 if platform != 'win': |
422 tools_files += [ | 425 tools_files += [ |
423 ['dump_syms', 'dump_syms'], | 426 ['dump_syms', 'dump_syms'], |
424 ['minidump_dump', 'minidump_dump'], | 427 ['minidump_dump', 'minidump_dump'], |
425 ['minidump_stackwalk', 'minidump_stackwalk'] | 428 ['minidump_stackwalk', 'minidump_stackwalk'] |
426 ] | 429 ] |
427 | 430 |
428 tools_files.append(['sel_ldr64', 'sel_ldr_x86_64']) | |
429 | |
430 if platform == 'linux': | 431 if platform == 'linux': |
431 tools_files.append(['nacl_helper_bootstrap', | 432 tools_files.append(['nacl_helper_bootstrap', |
432 'nacl_helper_bootstrap_x86_32']) | 433 'nacl_helper_bootstrap_x86_32']) |
433 tools_files.append(['nacl_helper_bootstrap64', | 434 tools_files.append(['nacl_helper_bootstrap_x86_64', |
434 'nacl_helper_bootstrap_x86_64']) | 435 'nacl_helper_bootstrap_x86_64']) |
436 tools_files.append(['nacl_helper_bootstrap_arm', | |
437 'nacl_helper_bootstrap_arm']) | |
435 | 438 |
436 buildbot_common.MakeDir(os.path.join(pepperdir, 'tools')) | 439 buildbot_common.MakeDir(os.path.join(pepperdir, 'tools')) |
437 | 440 |
438 # Add .exe extensions to all windows tools | 441 # Add .exe extensions to all windows tools |
439 for pair in tools_files: | 442 for pair in tools_files: |
440 if platform == 'win' and not pair[0].endswith('.nexe'): | 443 if platform == 'win' and not pair[0].endswith('.nexe'): |
441 pair[0] += '.exe' | 444 pair[0] += '.exe' |
442 pair[1] += '.exe' | 445 pair[1] += '.exe' |
443 | 446 |
444 InstallFiles(ninja_out_dir, os.path.join(pepperdir, 'tools'), tools_files) | 447 InstallFiles(ninja_out_dir, os.path.join(pepperdir, 'tools'), tools_files) |
(...skipping 28 matching lines...) Expand all Loading... | |
473 GypNinjaBuild('arm', gyp_py, nacl_core_sdk_gyp, 'nacl_core_sdk', out_dir_arm) | 476 GypNinjaBuild('arm', gyp_py, nacl_core_sdk_gyp, 'nacl_core_sdk', out_dir_arm) |
474 GypNinjaBuild('ia32', gyp_py, all_gyp, 'ncval_new', out_dir) | 477 GypNinjaBuild('ia32', gyp_py, all_gyp, 'ncval_new', out_dir) |
475 | 478 |
476 platform = getos.GetPlatform() | 479 platform = getos.GetPlatform() |
477 if platform == 'win': | 480 if platform == 'win': |
478 NinjaBuild('sel_ldr64', out_dir) | 481 NinjaBuild('sel_ldr64', out_dir) |
479 else: | 482 else: |
480 out_dir_64 = MakeNinjaRelPath(rel_out_dir + '-64') | 483 out_dir_64 = MakeNinjaRelPath(rel_out_dir + '-64') |
481 GypNinjaBuild('x64', gyp_py, nacl_core_sdk_gyp, 'sel_ldr', out_dir_64) | 484 GypNinjaBuild('x64', gyp_py, nacl_core_sdk_gyp, 'sel_ldr', out_dir_64) |
482 | 485 |
483 # We only need sel_ldr from the 64-bit out directory. | 486 files_to_copy = ['sel_ldr'] |
484 # sel_ldr needs to be renamed, so we'll call it sel_ldr64. | |
485 files_to_copy = [('sel_ldr', 'sel_ldr64')] | |
486 if platform == 'linux': | 487 if platform == 'linux': |
487 files_to_copy.append(('nacl_helper_bootstrap', 'nacl_helper_bootstrap64')) | 488 files_to_copy.append('nacl_helper_bootstrap') |
488 | 489 |
489 for src, dst in files_to_copy: | 490 out_dir = os.path.join(SRC_DIR, out_dir, 'Release') |
491 out_dir_64 = os.path.join(SRC_DIR, out_dir_64, 'Release') | |
492 out_dir_arm = os.path.join(SRC_DIR, out_dir_arm, 'Release') | |
493 | |
494 for src in files_to_copy: | |
490 buildbot_common.CopyFile( | 495 buildbot_common.CopyFile( |
491 os.path.join(SRC_DIR, out_dir_64, 'Release', src), | 496 os.path.join(out_dir_64, src), os.path.join(out_dir, src + '_x86_64')) |
492 os.path.join(SRC_DIR, out_dir, 'Release', dst)) | 497 buildbot_common.CopyFile( |
498 os.path.join(out_dir_arm, src), os.path.join(out_dir, src + '_arm')) | |
499 | |
500 if platform == 'linux': | |
501 buildbot_common.CopyFile( | |
502 os.path.join(out_dir_arm, 'irt_core_newlib_arm.nexe'), | |
503 os.path.join(out_dir, 'irt_core_newlib_arm.nexe')) | |
493 | 504 |
494 | 505 |
495 def GypNinjaBuild_Breakpad(rel_out_dir): | 506 def GypNinjaBuild_Breakpad(rel_out_dir): |
496 # TODO(binji): dump_syms doesn't currently build on Windows. See | 507 # TODO(binji): dump_syms doesn't currently build on Windows. See |
497 # http://crbug.com/245456 | 508 # http://crbug.com/245456 |
498 if getos.GetPlatform() == 'win': | 509 if getos.GetPlatform() == 'win': |
499 return | 510 return |
500 | 511 |
501 gyp_py = os.path.join(SRC_DIR, 'build', 'gyp_chromium') | 512 gyp_py = os.path.join(SRC_DIR, 'build', 'gyp_chromium') |
502 out_dir = MakeNinjaRelPath(rel_out_dir) | 513 out_dir = MakeNinjaRelPath(rel_out_dir) |
(...skipping 489 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
992 BuildStepArchiveSDKTools() | 1003 BuildStepArchiveSDKTools() |
993 | 1004 |
994 return 0 | 1005 return 0 |
995 | 1006 |
996 | 1007 |
997 if __name__ == '__main__': | 1008 if __name__ == '__main__': |
998 try: | 1009 try: |
999 sys.exit(main(sys.argv)) | 1010 sys.exit(main(sys.argv)) |
1000 except KeyboardInterrupt: | 1011 except KeyboardInterrupt: |
1001 buildbot_common.ErrorExit('build_sdk: interrupted') | 1012 buildbot_common.ErrorExit('build_sdk: interrupted') |
OLD | NEW |