| OLD | NEW |
| 1 #!/usr/bin/env python | 1 #!/usr/bin/env python |
| 2 # Copyright 2016 The Dart project authors. All rights reserved. | 2 # Copyright 2016 The Dart project 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 argparse | 6 import argparse |
| 7 import multiprocessing | 7 import multiprocessing |
| 8 import os | 8 import os |
| 9 import subprocess | 9 import subprocess |
| 10 import sys | 10 import sys |
| (...skipping 13 matching lines...) Expand all Loading... |
| 24 def to_command_line(gn_args): | 24 def to_command_line(gn_args): |
| 25 def merge(key, value): | 25 def merge(key, value): |
| 26 if type(value) is bool: | 26 if type(value) is bool: |
| 27 return '%s=%s' % (key, 'true' if value else 'false') | 27 return '%s=%s' % (key, 'true' if value else 'false') |
| 28 return '%s="%s"' % (key, value) | 28 return '%s="%s"' % (key, value) |
| 29 return [merge(x, y) for x, y in gn_args.iteritems()] | 29 return [merge(x, y) for x, y in gn_args.iteritems()] |
| 30 | 30 |
| 31 | 31 |
| 32 def host_cpu_for_arch(arch): | 32 def host_cpu_for_arch(arch): |
| 33 if arch in ['ia32', 'arm', 'armv6', 'armv5te', 'mips', | 33 if arch in ['ia32', 'arm', 'armv6', 'armv5te', 'mips', |
| 34 'simarm', 'simarmv6', 'simarmv5te', 'simmips', 'simdbc']: | 34 'simarm', 'simarmv6', 'simarmv5te', 'simmips', 'simdbc', |
| 35 'armsimdbc']: |
| 35 return 'x86' | 36 return 'x86' |
| 36 if arch in ['x64', 'arm64', 'simarm64', 'simdbc64']: | 37 if arch in ['x64', 'arm64', 'simarm64', 'simdbc64', 'armsimdbc64']: |
| 37 return 'x64' | 38 return 'x64' |
| 38 | 39 |
| 39 | 40 |
| 40 def target_cpu_for_arch(arch, target_os): | 41 def target_cpu_for_arch(arch, target_os): |
| 41 if arch in ['ia32', 'simarm', 'simarmv6', 'simarmv5te', 'simmips']: | 42 if arch in ['ia32', 'simarm', 'simarmv6', 'simarmv5te', 'simmips']: |
| 42 return 'x86' | 43 return 'x86' |
| 43 if arch in ['simarm64']: | 44 if arch in ['simarm64']: |
| 44 return 'x64' | 45 return 'x64' |
| 45 if arch == 'mips': | 46 if arch == 'mips': |
| 46 return 'mipsel' | 47 return 'mipsel' |
| 47 if arch == 'simdbc': | 48 if arch == 'simdbc': |
| 48 return 'arm' if target_os == 'android' else 'x86' | 49 return 'arm' if target_os == 'android' else 'x86' |
| 49 if arch == 'simdbc64': | 50 if arch == 'simdbc64': |
| 50 return 'arm64' if target_os == 'android' else 'x64' | 51 return 'arm64' if target_os == 'android' else 'x64' |
| 52 if arch == 'armsimdbc': |
| 53 return 'arm' |
| 54 if arch == 'armsimdbc64': |
| 55 return 'arm64' |
| 51 return arch | 56 return arch |
| 52 | 57 |
| 53 | 58 |
| 54 def host_os_for_gn(host_os): | 59 def host_os_for_gn(host_os): |
| 55 if host_os.startswith('macos'): | 60 if host_os.startswith('macos'): |
| 56 return 'mac' | 61 return 'mac' |
| 57 if host_os.startswith('win'): | 62 if host_os.startswith('win'): |
| 58 return 'win' | 63 return 'win' |
| 59 return host_os | 64 return host_os |
| 60 | 65 |
| (...skipping 101 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 162 args.mode = args.mode.split(',') | 167 args.mode = args.mode.split(',') |
| 163 args.arch = args.arch.split(',') | 168 args.arch = args.arch.split(',') |
| 164 args.os = args.os.split(',') | 169 args.os = args.os.split(',') |
| 165 for mode in args.mode: | 170 for mode in args.mode: |
| 166 if not mode in ['debug', 'release', 'product']: | 171 if not mode in ['debug', 'release', 'product']: |
| 167 print "Unknown mode %s" % mode | 172 print "Unknown mode %s" % mode |
| 168 return False | 173 return False |
| 169 for arch in args.arch: | 174 for arch in args.arch: |
| 170 archs = ['ia32', 'x64', 'simarm', 'arm', 'simarmv6', 'armv6', | 175 archs = ['ia32', 'x64', 'simarm', 'arm', 'simarmv6', 'armv6', |
| 171 'simarmv5te', 'armv5te', 'simmips', 'mips', 'simarm64', 'arm64', | 176 'simarmv5te', 'armv5te', 'simmips', 'mips', 'simarm64', 'arm64', |
| 172 'simdbc', 'simdbc64', 'armsimdbc'] | 177 'simdbc', 'simdbc64', 'armsimdbc', 'armsimdbc64'] |
| 173 if not arch in archs: | 178 if not arch in archs: |
| 174 print "Unknown arch %s" % arch | 179 print "Unknown arch %s" % arch |
| 175 return False | 180 return False |
| 176 oses = [process_os_option(os_name) for os_name in args.os] | 181 oses = [process_os_option(os_name) for os_name in args.os] |
| 177 for os_name in oses: | 182 for os_name in oses: |
| 178 if not os_name in ['android', 'freebsd', 'linux', 'macos', 'win32']: | 183 if not os_name in ['android', 'freebsd', 'linux', 'macos', 'win32']: |
| 179 print "Unknown os %s" % os_name | 184 print "Unknown os %s" % os_name |
| 180 return False | 185 return False |
| 181 if os_name != HOST_OS: | 186 if os_name != HOST_OS: |
| 182 if os_name != 'android': | 187 if os_name != 'android': |
| (...skipping 165 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 348 return 1 | 353 return 1 |
| 349 | 354 |
| 350 endtime = time.time() | 355 endtime = time.time() |
| 351 if args.verbose: | 356 if args.verbose: |
| 352 print ("GN Time: %.3f seconds" % (endtime - starttime)) | 357 print ("GN Time: %.3f seconds" % (endtime - starttime)) |
| 353 return 0 | 358 return 0 |
| 354 | 359 |
| 355 | 360 |
| 356 if __name__ == '__main__': | 361 if __name__ == '__main__': |
| 357 sys.exit(main(sys.argv)) | 362 sys.exit(main(sys.argv)) |
| OLD | NEW |