diff options
Diffstat (limited to '.gitlab-ci/container/patches/build-skqp_git-sync-deps.patch')
-rw-r--r-- | .gitlab-ci/container/patches/build-skqp_git-sync-deps.patch | 142 |
1 files changed, 0 insertions, 142 deletions
diff --git a/.gitlab-ci/container/patches/build-skqp_git-sync-deps.patch b/.gitlab-ci/container/patches/build-skqp_git-sync-deps.patch deleted file mode 100644 index d088349ad32..00000000000 --- a/.gitlab-ci/container/patches/build-skqp_git-sync-deps.patch +++ /dev/null @@ -1,142 +0,0 @@ -Patch based from diff with skia repository from commit -013397884c73959dc07cb0a26ee742b1cdfbda8a - -Adds support for Python3, but removes the constraint of only SHA based refs in -DEPS -diff --git a/tools/git-sync-deps b/tools/git-sync-deps -index c7379c0b5c..f63d4d9ccf 100755 ---- a/tools/git-sync-deps -+++ b/tools/git-sync-deps -@@ -43,7 +43,7 @@ def git_executable(): - A string suitable for passing to subprocess functions, or None. - """ - envgit = os.environ.get('GIT_EXECUTABLE') -- searchlist = ['git'] -+ searchlist = ['git', 'git.bat'] - if envgit: - searchlist.insert(0, envgit) - with open(os.devnull, 'w') as devnull: -@@ -94,21 +94,25 @@ def is_git_toplevel(git, directory): - try: - toplevel = subprocess.check_output( - [git, 'rev-parse', '--show-toplevel'], cwd=directory).strip() -- return os.path.realpath(directory) == os.path.realpath(toplevel) -+ return os.path.realpath(directory) == os.path.realpath(toplevel.decode()) - except subprocess.CalledProcessError: - return False - - --def status(directory, checkoutable): -- def truncate(s, length): -+def status(directory, commithash, change): -+ def truncate_beginning(s, length): -+ return s if len(s) <= length else '...' + s[-(length-3):] -+ def truncate_end(s, length): - return s if len(s) <= length else s[:(length - 3)] + '...' -+ - dlen = 36 -- directory = truncate(directory, dlen) -- checkoutable = truncate(checkoutable, 40) -- sys.stdout.write('%-*s @ %s\n' % (dlen, directory, checkoutable)) -+ directory = truncate_beginning(directory, dlen) -+ commithash = truncate_end(commithash, 40) -+ symbol = '>' if change else '@' -+ sys.stdout.write('%-*s %s %s\n' % (dlen, directory, symbol, commithash)) - - --def git_checkout_to_directory(git, repo, checkoutable, directory, verbose): -+def git_checkout_to_directory(git, repo, commithash, directory, verbose): - """Checkout (and clone if needed) a Git repository. - - Args: -@@ -117,8 +121,7 @@ def git_checkout_to_directory(git, repo, checkoutable, directory, verbose): - repo (string) the location of the repository, suitable - for passing to `git clone`. - -- checkoutable (string) a tag, branch, or commit, suitable for -- passing to `git checkout` -+ commithash (string) a commit, suitable for passing to `git checkout` - - directory (string) the path into which the repository - should be checked out. -@@ -129,7 +132,12 @@ def git_checkout_to_directory(git, repo, checkoutable, directory, verbose): - """ - if not os.path.isdir(directory): - subprocess.check_call( -- [git, 'clone', '--quiet', repo, directory]) -+ [git, 'clone', '--quiet', '--no-checkout', repo, directory]) -+ subprocess.check_call([git, 'checkout', '--quiet', commithash], -+ cwd=directory) -+ if verbose: -+ status(directory, commithash, True) -+ return - - if not is_git_toplevel(git, directory): - # if the directory exists, but isn't a git repo, you will modify -@@ -145,11 +153,11 @@ def git_checkout_to_directory(git, repo, checkoutable, directory, verbose): - with open(os.devnull, 'w') as devnull: - # If this fails, we will fetch before trying again. Don't spam user - # with error infomation. -- if 0 == subprocess.call([git, 'checkout', '--quiet', checkoutable], -+ if 0 == subprocess.call([git, 'checkout', '--quiet', commithash], - cwd=directory, stderr=devnull): - # if this succeeds, skip slow `git fetch`. - if verbose: -- status(directory, checkoutable) # Success. -+ status(directory, commithash, False) # Success. - return - - # If the repo has changed, always force use of the correct repo. -@@ -159,18 +167,24 @@ def git_checkout_to_directory(git, repo, checkoutable, directory, verbose): - - subprocess.check_call([git, 'fetch', '--quiet'], cwd=directory) - -- subprocess.check_call([git, 'checkout', '--quiet', checkoutable], cwd=directory) -+ subprocess.check_call([git, 'checkout', '--quiet', commithash], cwd=directory) - - if verbose: -- status(directory, checkoutable) # Success. -+ status(directory, commithash, True) # Success. - - - def parse_file_to_dict(path): - dictionary = {} -- execfile(path, dictionary) -+ with open(path) as f: -+ exec('def Var(x): return vars[x]\n' + f.read(), dictionary) - return dictionary - - -+def is_sha1_sum(s): -+ """SHA1 sums are 160 bits, encoded as lowercase hexadecimal.""" -+ return len(s) == 40 and all(c in '0123456789abcdef' for c in s) -+ -+ - def git_sync_deps(deps_file_path, command_line_os_requests, verbose): - """Grab dependencies, with optional platform support. - -@@ -204,19 +218,19 @@ def git_sync_deps(deps_file_path, command_line_os_requests, verbose): - raise Exception('%r is parent of %r' % (other_dir, directory)) - list_of_arg_lists = [] - for directory in sorted(dependencies): -- if not isinstance(dependencies[directory], basestring): -+ if not isinstance(dependencies[directory], str): - if verbose: -- print 'Skipping "%s".' % directory -+ sys.stdout.write( 'Skipping "%s".\n' % directory) - continue - if '@' in dependencies[directory]: -- repo, checkoutable = dependencies[directory].split('@', 1) -+ repo, commithash = dependencies[directory].split('@', 1) - else: -- raise Exception("please specify commit or tag") -+ raise Exception("please specify commit") - - relative_directory = os.path.join(deps_file_directory, directory) - - list_of_arg_lists.append( -- (git, repo, checkoutable, relative_directory, verbose)) -+ (git, repo, commithash, relative_directory, verbose)) - - multithread(git_checkout_to_directory, list_of_arg_lists) - |