aboutsummaryrefslogtreecommitdiffhomepage
path: root/bin/sync-and-gyp
diff options
context:
space:
mode:
Diffstat (limited to 'bin/sync-and-gyp')
-rwxr-xr-xbin/sync-and-gyp61
1 files changed, 2 insertions, 59 deletions
diff --git a/bin/sync-and-gyp b/bin/sync-and-gyp
index a62128d3b1..11905ed2ee 100755
--- a/bin/sync-and-gyp
+++ b/bin/sync-and-gyp
@@ -36,8 +36,6 @@ import sys
skia_dir = os.path.join(os.path.dirname(__file__), os.pardir)
-skia_opt_deps = [arg for arg in sys.argv[1:] if arg.startswith('--deps=')]
-
skia_out = os.environ.get("SKIA_OUT")
if skia_out:
skia_out = os.path.abspath(skia_out)
@@ -47,65 +45,10 @@ else:
os.chdir(skia_dir)
-if not os.path.isfile('DEPS'):
- sys.stderr.write('DEPS file missing')
+if 0 != subprocess.call(['python', 'bin/sync'] + sys.argv[1:]):
+ sys.stderr.write('sync failed.')
exit(1)
-deps_hasher = hashlib.sha1()
-with open('DEPS', 'r') as f:
- deps_hasher.update(f.read())
-deps_hasher.update(repr(skia_opt_deps))
-deps_hash = deps_hasher.hexdigest()
-current_deps_hash = None
-if os.path.isfile('.deps_sha1'):
- with open('.deps_sha1', 'r') as f:
- current_deps_hash = f.read().strip()
-
-default_gclient_config = '''
-solutions = [
- { "name" : ".",
- "url" : "https://skia.googlesource.com/skia.git",
- "deps_file" : "DEPS",
- "managed" : False,
- "custom_deps" : {
- },
- "safesync_url": "",
- },
-]
-cache_dir = None
-'''
-
-# Must use gclient.bat rather than gclient on windows (at least on mingw)
-gclient = 'gclient'
-if sys.platform == 'win32' or sys.platform == 'cygwin':
- gclient = 'gclient.bat'
-
-if current_deps_hash != deps_hash:
- # `gclient sync` is very slow, so skip whenever we can.
- try:
- subprocess.call([gclient, '--version'])
- except:
- sys.stdout.write('gclient missing from $PATH, please install ' +
- 'depot_tools\n https://skia.org/user/quick/desktop\n')
- exit(1)
- if not os.path.isfile('.gclient'):
- with open('.gclient', 'w') as o:
- o.write(default_gclient_config)
- gclient_sync_command = [gclient, 'sync'] + skia_opt_deps
- try:
- sys.stdout.write('%r\n' % gclient_sync_command)
- subprocess.check_call(gclient_sync_command)
- except:
- sys.stderr.write('\n`gclient sync` failed.\n')
- try:
- os.remove('.deps_sha1') # Unknown state.
- except:
- pass
- exit(1)
- # Only write hash after a successful sync.
- with open('.deps_sha1', 'w') as o:
- o.write(deps_hash)
-
hasher = hashlib.sha1()
for var in ['AR', 'AR_host', 'AR_target',