aboutsummaryrefslogtreecommitdiffhomepage
path: root/gn
diff options
context:
space:
mode:
Diffstat (limited to 'gn')
-rw-r--r--gn/run_sksllex.py34
-rw-r--r--gn/sksl.gni9
2 files changed, 39 insertions, 4 deletions
diff --git a/gn/run_sksllex.py b/gn/run_sksllex.py
new file mode 100644
index 0000000000..0377283b5a
--- /dev/null
+++ b/gn/run_sksllex.py
@@ -0,0 +1,34 @@
+#!/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]
+src = sys.argv[3]
+try:
+ subprocess.check_output([sksllex, src + "/sksl/lex/sksl.lex", "Lexer",
+ "Token", src + "/sksl/SkSLLexer.h", src +
+ "/sksl/SkSLLexer.cpp"])
+ subprocess.check_call(clangFormat + " -i \"" + src + "/sksl/SkSLLexer.h\"",
+ shell=True)
+ subprocess.check_call(clangFormat + " -i \"" + src +
+ "/sksl/SkSLLexer.cpp\"", shell=True)
+ subprocess.check_output([sksllex, src + "/sksl/lex/layout.lex",
+ "LayoutLexer", "LayoutToken",
+ src + "/sksl/SkSLLayoutLexer.h",
+ src + "/sksl/SkSLLayoutLexer.cpp"])
+ subprocess.check_call(clangFormat + " -i \"" + src +
+ "/sksl/SkSLLayoutLexer.h\"", shell=True)
+ subprocess.check_call(clangFormat + " -i \"" + src +
+ "/sksl/SkSLLayoutLexer.cpp\"", shell=True)
+except subprocess.CalledProcessError as err:
+ print("### Lexer error:")
+ print(err.output)
+ exit(1)
diff --git a/gn/sksl.gni b/gn/sksl.gni
index c1b6abaf02..65913e3417 100644
--- a/gn/sksl.gni
+++ b/gn/sksl.gni
@@ -9,15 +9,16 @@ _src = get_path_info("../src", "abspath")
skia_sksl_sources = [
"$_src/sksl/SkSLCFGGenerator.cpp",
"$_src/sksl/SkSLCompiler.cpp",
- "$_src/sksl/SkSLIRGenerator.cpp",
- "$_src/sksl/SkSLParser.cpp",
"$_src/sksl/SkSLCPPCodeGenerator.cpp",
- "$_src/sksl/SkSLHCodeGenerator.cpp",
"$_src/sksl/SkSLGLSLCodeGenerator.cpp",
+ "$_src/sksl/SkSLHCodeGenerator.cpp",
+ "$_src/sksl/SkSLIRGenerator.cpp",
+ "$_src/sksl/SkSLLexer.cpp",
+ "$_src/sksl/SkSLLayoutLexer.cpp",
+ "$_src/sksl/SkSLParser.cpp",
"$_src/sksl/SkSLSPIRVCodeGenerator.cpp",
"$_src/sksl/SkSLString.cpp",
"$_src/sksl/SkSLUtil.cpp",
- "$_src/sksl/lex.layout.cpp",
"$_src/sksl/ir/SkSLSymbolTable.cpp",
"$_src/sksl/ir/SkSLSetting.cpp",
"$_src/sksl/ir/SkSLType.cpp",