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 |