mirror of
https://github.com/flutter/flutter.git
synced 2025-06-03 00:51:18 +00:00
57 lines
1.5 KiB
Python
57 lines
1.5 KiB
Python
#!/usr/bin/python
|
|
# Copyright 2017 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.
|
|
|
|
"""Pulls down tools required to build flutter."""
|
|
|
|
import os
|
|
import subprocess
|
|
import sys
|
|
|
|
SRC_ROOT = (os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))))
|
|
BUILDTOOLS = os.path.join(SRC_ROOT, 'buildtools')
|
|
TOOLS_BUILDTOOLS = os.path.join(SRC_ROOT, 'tools', 'buildtools')
|
|
|
|
sys.path.insert(0, os.path.join(SRC_ROOT, 'tools'))
|
|
import find_depot_tools
|
|
|
|
DEPOT_PATH = find_depot_tools.add_depot_tools_to_path()
|
|
|
|
|
|
def Update():
|
|
path = os.path.join(BUILDTOOLS, 'update.sh')
|
|
return subprocess.call([
|
|
'/bin/bash', path, '--ninja', '--gn', '--clang'], cwd=SRC_ROOT)
|
|
|
|
|
|
def UpdateOnWindows():
|
|
sha1_file = os.path.join(TOOLS_BUILDTOOLS, 'win', 'gn.exe.sha1')
|
|
output_dir = os.path.join(BUILDTOOLS, 'win', 'gn.exe')
|
|
downloader_script = os.path.join(DEPOT_PATH, 'download_from_google_storage.py')
|
|
download_cmd = [
|
|
'python',
|
|
downloader_script,
|
|
'--no_auth',
|
|
'--no_resume',
|
|
'--quiet',
|
|
'--platform=win*',
|
|
'--bucket',
|
|
'chromium-gn',
|
|
'-s',
|
|
sha1_file,
|
|
'-o',
|
|
output_dir
|
|
]
|
|
return subprocess.call(download_cmd)
|
|
|
|
|
|
def main(argv):
|
|
if sys.platform.startswith('win'):
|
|
return UpdateOnWindows()
|
|
return Update()
|
|
|
|
|
|
if __name__ == '__main__':
|
|
sys.exit(main(sys.argv))
|