|  | #!/usr/bin/env python | 
|  | # | 
|  | # Copyright 2017 Google Inc. | 
|  | # | 
|  | # Use of this source code is governed by a BSD-style license that can be | 
|  | # found in the LICENSE file. | 
|  |  | 
|  | import os | 
|  | import subprocess | 
|  | import sys | 
|  |  | 
|  | sksllex = sys.argv[1] | 
|  | clangFormat = sys.argv[2] | 
|  | fetchClangFormat = sys.argv[3] | 
|  | src = sys.argv[4] | 
|  |  | 
|  | exeSuffix = '.exe' if sys.platform.startswith('win') else ''; | 
|  |  | 
|  | try: | 
|  | subprocess.check_output([sksllex, src + "/sksl/lex/sksl.lex", "Lexer", | 
|  | "Token", src + "/sksl/SkSLLexer.h", src + | 
|  | "/sksl/SkSLLexer.cpp"]) | 
|  |  | 
|  | if not os.path.isfile(clangFormat + exeSuffix): | 
|  | subprocess.check_call([sys.executable, fetchClangFormat]); | 
|  |  | 
|  | subprocess.check_call(clangFormat + " -i \"" + src + "/sksl/SkSLLexer.h\"", | 
|  | shell=True) | 
|  | subprocess.check_call(clangFormat + " -i \"" + src + | 
|  | "/sksl/SkSLLexer.cpp\"", shell=True) | 
|  | except subprocess.CalledProcessError as err: | 
|  | print("### Lexer error:") | 
|  | print(err.output) | 
|  | exit(1) |