| OLD | NEW |
| 1 #!/usr/bin/env python | 1 #!/usr/bin/env python |
| 2 # Copyright 2015 The Chromium Authors. All rights reserved. | 2 # Copyright 2015 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 import argparse | 6 import argparse |
| 7 from datetime import datetime | 7 from datetime import datetime |
| 8 import logging | 8 import logging |
| 9 import os | 9 import os |
| 10 import shutil | 10 import shutil |
| (...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 108 else: | 108 else: |
| 109 os.remove(path) | 109 os.remove(path) |
| 110 | 110 |
| 111 | 111 |
| 112 def main(): | 112 def main(): |
| 113 logging.basicConfig(level=logging.WARN) | 113 logging.basicConfig(level=logging.WARN) |
| 114 parser = argparse.ArgumentParser(description='Deploy a new sky_sdk.') | 114 parser = argparse.ArgumentParser(description='Deploy a new sky_sdk.') |
| 115 parser.add_argument('sdk_root', type=str) | 115 parser.add_argument('sdk_root', type=str) |
| 116 parser.add_argument('--build-dir', action='store', type=str, | 116 parser.add_argument('--build-dir', action='store', type=str, |
| 117 default=os.path.join(SRC_ROOT, DEFAULT_REL_BUILD_DIR)) | 117 default=os.path.join(SRC_ROOT, DEFAULT_REL_BUILD_DIR)) |
| 118 parser.add_argument('--extra-mojom-dir', action='append', |
| 119 type=str, |
| 120 dest='extra_mojom_dirs', |
| 121 metavar='EXTRA_MOJOM_DIR', |
| 122 help='Extra root directory for mojom packages. ' |
| 123 'Can be specified multiple times.', |
| 124 default=[]) |
| 118 parser.add_argument('--non-interactive', action='store_true') | 125 parser.add_argument('--non-interactive', action='store_true') |
| 119 parser.add_argument('--dev-environment', action='store_true') | 126 parser.add_argument('--dev-environment', action='store_true') |
| 120 parser.add_argument('--commit', action='store_true') | 127 parser.add_argument('--commit', action='store_true') |
| 121 parser.add_argument('--fake-pub-get-into', action='store', type=str) | 128 parser.add_argument('--fake-pub-get-into', action='store', type=str) |
| 122 args = parser.parse_args() | 129 args = parser.parse_args() |
| 123 | 130 |
| 124 build_dir = os.path.abspath(args.build_dir) | 131 build_dir = os.path.abspath(args.build_dir) |
| 125 sdk_root = os.path.abspath(args.sdk_root) | 132 sdk_root = os.path.abspath(args.sdk_root) |
| 126 | 133 |
| 127 print 'Building SDK from %s into %s' % (build_dir, sdk_root) | 134 print 'Building SDK from %s into %s' % (build_dir, sdk_root) |
| (...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 160 copy_or_link(src_path('sky/engine/bindings/builtin.dart'), | 167 copy_or_link(src_path('sky/engine/bindings/builtin.dart'), |
| 161 sdk_path('packages/sky/sdk_additions/dart_sky_builtins.dart')) | 168 sdk_path('packages/sky/sdk_additions/dart_sky_builtins.dart')) |
| 162 bindings_path = os.path.join(build_dir, 'gen/sky/bindings') | 169 bindings_path = os.path.join(build_dir, 'gen/sky/bindings') |
| 163 # dart_sky.dart has many supporting files: | 170 # dart_sky.dart has many supporting files: |
| 164 copy(bindings_path, sdk_path('packages/sky/sdk_additions'), | 171 copy(bindings_path, sdk_path('packages/sky/sdk_additions'), |
| 165 dart_filter) | 172 dart_filter) |
| 166 | 173 |
| 167 # Mojo package, lots of overlap with gen, must be copied: | 174 # Mojo package, lots of overlap with gen, must be copied: |
| 168 copy(src_path('mojo/public'), sdk_path('packages/mojo/lib/public'), | 175 copy(src_path('mojo/public'), sdk_path('packages/mojo/lib/public'), |
| 169 dart_filter) | 176 dart_filter) |
| 170 copy(os.path.join(build_dir, 'gen/dart-gen/mojom'), | 177 mojom_dirs = [ os.path.join(build_dir, 'gen/dart-gen/mojom') ] |
| 171 sdk_path('packages/mojom/lib/'), gen_filter) | 178 mojom_dirs += args.extra_mojom_dirs |
| 179 for mojom_dir in mojom_dirs: |
| 180 copy(mojom_dir, sdk_path('packages/mojom/lib/'), gen_filter) |
| 172 | 181 |
| 173 # Mojo SDK additions: | 182 # Mojo SDK additions: |
| 174 copy_or_link(src_path('mojo/public/dart/bindings.dart'), | 183 copy_or_link(src_path('mojo/public/dart/bindings.dart'), |
| 175 sdk_path('packages/mojo/sdk_additions/dart_mojo_bindings.dart')) | 184 sdk_path('packages/mojo/sdk_additions/dart_mojo_bindings.dart')) |
| 176 copy_or_link(src_path('mojo/public/dart/core.dart'), | 185 copy_or_link(src_path('mojo/public/dart/core.dart'), |
| 177 sdk_path('packages/mojo/sdk_additions/dart_mojo_core.dart')) | 186 sdk_path('packages/mojo/sdk_additions/dart_mojo_core.dart')) |
| 178 | 187 |
| 179 if not skip_apks: | 188 if not skip_apks: |
| 180 ensure_dir_exists(sdk_path('packages/sky/apks')) | 189 ensure_dir_exists(sdk_path('packages/sky/apks')) |
| 181 shutil.copy(os.path.join(build_dir, 'apks', 'SkyDemo.apk'), | 190 shutil.copy(os.path.join(build_dir, 'apks', 'SkyDemo.apk'), |
| (...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 216 'git', 'commit', | 225 'git', 'commit', |
| 217 '-m', commit_message | 226 '-m', commit_message |
| 218 ], cwd=sdk_root) | 227 ], cwd=sdk_root) |
| 219 | 228 |
| 220 time_delta = datetime.now() - start_time | 229 time_delta = datetime.now() - start_time |
| 221 print 'SDK built at %s in %ss' % (sdk_root, time_delta.total_seconds()) | 230 print 'SDK built at %s in %ss' % (sdk_root, time_delta.total_seconds()) |
| 222 | 231 |
| 223 | 232 |
| 224 if __name__ == '__main__': | 233 if __name__ == '__main__': |
| 225 main() | 234 main() |
| OLD | NEW |