| # Copyright 2019 The Chromium Authors. All rights reserved. | |
| # Use of this source code is governed by a BSD-style license that can be | |
| # found in the LICENSE file. | |
| """ | |
| Update manually maintained dependencies from Chromium. | |
| """ | |
| import argparse | |
| import os | |
| import shutil | |
| import subprocess | |
| import sys | |
| FILES = [ | |
| ['v8', 'include', 'js_protocol.pdl'], | |
| ['third_party', 'blink', 'renderer', 'core', 'css', 'css_properties.json5'], | |
| ['third_party', 'blink', 'renderer', 'core', 'html', 'aria_properties.json5'], | |
| ['third_party', 'blink', 'public', 'devtools_protocol', 'browser_protocol.pdl'], | |
| ['third_party', 'axe-core', 'axe.d.ts'], | |
| ['third_party', 'axe-core', 'axe.js'], | |
| ['third_party', 'axe-core', 'axe.min.js'], | |
| ['third_party', 'axe-core', 'LICENSE'], | |
| ] | |
| def parse_options(cli_args): | |
| parser = argparse.ArgumentParser(description='Roll dependencies from Chromium.') | |
| parser.add_argument('chromium_dir', help='Chromium directory') | |
| parser.add_argument('devtools_dir', help='DevTools directory') | |
| return parser.parse_args(cli_args) | |
| def update(options): | |
| subprocess.check_call(['git', 'fetch', 'origin'], cwd=options.chromium_dir) | |
| subprocess.check_call(['git', 'checkout', 'origin/master'], cwd=options.chromium_dir) | |
| subprocess.check_call(['gclient', 'sync'], cwd=options.chromium_dir) | |
| def copy_files(options): | |
| for file in FILES: | |
| shutil.copy(os.path.join(options.chromium_dir, *file), os.path.join(options.devtools_dir, *file)) | |
| if __name__ == '__main__': | |
| OPTIONS = parse_options(sys.argv[1:]) | |
| update(OPTIONS) | |
| copy_files(OPTIONS) |