| OLD | NEW |
| 1 #!/usr/bin/python | 1 #!/usr/bin/python |
| 2 # Copyright (c) 2012 The Native Client Authors. All rights reserved. | 2 # Copyright (c) 2012 The Native Client 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 import json | 6 import json |
| 7 import os | 7 import os |
| 8 import subprocess | 8 import subprocess |
| 9 import sys | 9 import sys |
| 10 import tempfile | 10 import tempfile |
| 11 | 11 |
| 12 sys.path.append(os.path.join(os.path.dirname(__file__), '..')) | 12 sys.path.append(os.path.join(os.path.dirname(__file__), '..')) |
| 13 import pynacl.platform | 13 import pynacl.platform |
| 14 | 14 |
| 15 python = sys.executable | 15 python = sys.executable |
| 16 bash = '/bin/bash' | 16 bash = '/bin/bash' |
| 17 echo = 'echo' | 17 echo = 'echo' |
| 18 | 18 |
| 19 | 19 |
| 20 BOT_ASSIGNMENT = { | 20 BOT_ASSIGNMENT = { |
| 21 ###################################################################### | 21 ###################################################################### |
| 22 # Buildbots. | 22 # Buildbots. |
| 23 ###################################################################### | 23 ###################################################################### |
| 24 'xp-newlib-opt': | 24 'xp-newlib-opt': |
| 25 python + ' buildbot\\buildbot_standard.py opt 32 newlib --no-gyp', | 25 python + ' buildbot\\buildbot_standard.py opt 32 newlib', |
| 26 'xp-glibc-opt': | 26 'xp-glibc-opt': |
| 27 python + ' buildbot\\buildbot_standard.py opt 32 glibc --no-gyp', | 27 python + ' buildbot\\buildbot_standard.py opt 32 glibc', |
| 28 | 28 |
| 29 'xp-bare-newlib-opt': | 29 'xp-bare-newlib-opt': |
| 30 python + ' buildbot\\buildbot_standard.py opt 32 newlib --no-gyp', | 30 python + ' buildbot\\buildbot_standard.py opt 32 newlib', |
| 31 'xp-bare-glibc-opt': | 31 'xp-bare-glibc-opt': |
| 32 python + ' buildbot\\buildbot_standard.py opt 32 glibc --no-gyp', | 32 python + ' buildbot\\buildbot_standard.py opt 32 glibc', |
| 33 | 33 |
| 34 'precise-64-validator-opt': | 34 'precise-64-validator-opt': |
| 35 python + ' buildbot/buildbot_standard.py opt 64 glibc --validator', | 35 python + ' buildbot/buildbot_standard.py opt 64 glibc --validator', |
| 36 | 36 |
| 37 # ASan. | 37 # ASan. |
| 38 'precise_64-newlib-dbg-asan': | 38 'precise_64-newlib-dbg-asan': |
| 39 python + ' buildbot/buildbot_standard.py opt 64 newlib --asan', | 39 python + ' buildbot/buildbot_standard.py opt 64 newlib --asan', |
| 40 'mac-newlib-dbg-asan': | 40 'mac-newlib-dbg-asan': |
| 41 python + ' buildbot/buildbot_standard.py opt 32 newlib --asan', | 41 python + ' buildbot/buildbot_standard.py opt 32 newlib --asan', |
| 42 | 42 |
| (...skipping 207 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 250 'vista', 'win7', 'win8', 'win', | 250 'vista', 'win7', 'win8', 'win', |
| 251 'mac', 'lucid', 'precise'] + special_for_arm: | 251 'mac', 'lucid', 'precise'] + special_for_arm: |
| 252 if platform in special_for_arm: | 252 if platform in special_for_arm: |
| 253 arch_variants = ['arm'] | 253 arch_variants = ['arm'] |
| 254 else: | 254 else: |
| 255 arch_variants = ['', '32', '64', 'arm'] | 255 arch_variants = ['', '32', '64', 'arm'] |
| 256 for arch in arch_variants: | 256 for arch in arch_variants: |
| 257 arch_flags = '' | 257 arch_flags = '' |
| 258 real_arch = arch | 258 real_arch = arch |
| 259 arch_part = '-' + arch | 259 arch_part = '-' + arch |
| 260 # Disable GYP build for win32 bots and arm cross-builders. In this case | |
| 261 # "win" means Windows XP, not Vista, Windows 7, etc. | |
| 262 # | |
| 263 # Building via GYP always builds all toolchains by default, but the win32 | |
| 264 # XP pnacl builds are pathologically slow (e.g. ~38 seconds per compile on | |
| 265 # the nacl-win32_glibc_opt trybot). There are other builders that test | |
| 266 # Windows builds via gyp, so the reduced test coverage should be slight. | |
| 267 if arch == 'arm' or (platform == 'win' and arch == '32'): | |
| 268 arch_flags += ' --no-gyp' | |
| 269 if platform == 'win7' and arch == '32': | 260 if platform == 'win7' and arch == '32': |
| 270 arch_flags += ' --no-goma' | 261 arch_flags += ' --no-goma' |
| 271 if arch == '': | 262 if arch == '': |
| 272 arch_part = '' | 263 arch_part = '' |
| 273 real_arch = '32' | 264 real_arch = '32' |
| 274 # Test with Breakpad tools only on basic Linux builds. | 265 # Test with Breakpad tools only on basic Linux builds. |
| 275 if sys.platform.startswith('linux'): | 266 if sys.platform.startswith('linux'): |
| 276 arch_flags += ' --use-breakpad-tools' | 267 arch_flags += ' --use-breakpad-tools' |
| 277 for mode in ['dbg', 'opt']: | 268 for mode in ['dbg', 'opt']: |
| 278 for libc in ['newlib', 'glibc']: | 269 for libc in ['newlib', 'glibc']: |
| (...skipping 150 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 429 ]) | 420 ]) |
| 430 | 421 |
| 431 print "%s runs: %s\n" % (builder, cmd) | 422 print "%s runs: %s\n" % (builder, cmd) |
| 432 sys.stdout.flush() | 423 sys.stdout.flush() |
| 433 retcode = subprocess.call(cmd, env=env, shell=True) | 424 retcode = subprocess.call(cmd, env=env, shell=True) |
| 434 sys.exit(retcode) | 425 sys.exit(retcode) |
| 435 | 426 |
| 436 | 427 |
| 437 if __name__ == '__main__': | 428 if __name__ == '__main__': |
| 438 Main() | 429 Main() |
| OLD | NEW |