aboutsummaryrefslogtreecommitdiffhomepage
path: root/gn/run_sksllex.py
diff options
context:
space:
mode:
authorGravatar Ethan Nicholas <ethannicholas@google.com>2017-09-11 13:50:14 -0700
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2017-09-11 21:45:20 +0000
commit5b5f096a038259b8d9084834f877588a0db80250 (patch)
tree1b78aa591c578a09012b1f8f8533c3fc3d9c1372 /gn/run_sksllex.py
parent9194706e8cf1ed72f07b2ed9207d81120f2135ad (diff)
Revert "Revert "Switch to the new SkSL lexer.""
This reverts commit 358515491a0d6891e6a709688a30ad087df1beb1. Bug: skia: Change-Id: I013fac0ed83774d8ae7c6ee6819045cab37f5e97 Reviewed-on: https://skia-review.googlesource.com/45180 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
Diffstat (limited to 'gn/run_sksllex.py')
-rw-r--r--gn/run_sksllex.py34
1 files changed, 34 insertions, 0 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)