1"""BUILD.bazel file for ANTLR 3.""" 2 3load("@rules_java//java:defs.bzl", "java_binary", "java_library", "java_test") 4 5package(default_visibility = ["//visibility:private"]) 6 7java_binary( 8 name = "tool", 9 main_class = "org.antlr.Tool", 10 visibility = ["//:__pkg__"], 11 runtime_deps = [":tool_lib"], 12) 13 14java_library( 15 name = "tool_lib", 16 srcs = glob(["main/java/**/*.java"]) + [ 17 "main/java/org/antlr/grammar/v3/ANTLRLexer.java", 18 "main/java/org/antlr/grammar/v3/ANTLRParser.java", 19 "main/java/org/antlr/grammar/v3/ANTLRTreePrinter.java", 20 "main/java/org/antlr/grammar/v3/ANTLRv3Lexer.java", 21 "main/java/org/antlr/grammar/v3/ANTLRv3Parser.java", 22 "main/java/org/antlr/grammar/v3/ANTLRv3Tree.java", 23 "main/java/org/antlr/grammar/v3/ActionAnalysis.java", 24 "main/java/org/antlr/grammar/v3/ActionTranslator.java", 25 "main/java/org/antlr/grammar/v3/AssignTokenTypesWalker.java", 26 "main/java/org/antlr/grammar/v3/CodeGenTreeWalker.java", 27 "main/java/org/antlr/grammar/v3/DefineGrammarItemsWalker.java", 28 "main/java/org/antlr/grammar/v3/LeftRecursiveRuleWalker.java", 29 "main/java/org/antlr/grammar/v3/TreeToNFAConverter.java", 30 ], 31 javacopts = [ 32 "-Xep:EqualsHashCode:OFF", 33 ], 34 resource_strip_prefix = "tool/src/main/resources", 35 resources = glob(["main/resources/**/*.stg"]), 36 visibility = ["//visibility:public"], 37 deps = [ 38 ":tool_bootstrap", 39 "//:java_runtime", 40 "@stringtemplate4", 41 ], 42) 43 44genrule( 45 name = "tool_bootstrap", 46 srcs = [ 47 "main/antlr3/org/antlr/grammar/v3/ANTLR.g", 48 "main/antlr3/org/antlr/grammar/v3/ANTLRTreePrinter.g", 49 "main/antlr3/org/antlr/grammar/v3/ANTLRv3.g", 50 "main/antlr3/org/antlr/grammar/v3/ANTLRv3Tree.g", 51 "main/antlr3/org/antlr/grammar/v3/ActionAnalysis.g", 52 "main/antlr3/org/antlr/grammar/v3/ActionTranslator.g", 53 "main/antlr3/org/antlr/grammar/v3/AssignTokenTypesWalker.g", 54 "main/antlr3/org/antlr/grammar/v3/CodeGenTreeWalker.g", 55 "main/antlr3/org/antlr/grammar/v3/DefineGrammarItemsWalker.g", 56 "main/antlr3/org/antlr/grammar/v3/LeftRecursiveRuleWalker.g", 57 "main/antlr3/org/antlr/grammar/v3/TreeToNFAConverter.g", 58 ], 59 outs = [ 60 "main/java/org/antlr/grammar/v3/ANTLRLexer.java", 61 "main/java/org/antlr/grammar/v3/ANTLRParser.java", 62 "main/java/org/antlr/grammar/v3/ANTLRTreePrinter.java", 63 "main/java/org/antlr/grammar/v3/ANTLRv3Lexer.java", 64 "main/java/org/antlr/grammar/v3/ANTLRv3Parser.java", 65 "main/java/org/antlr/grammar/v3/ANTLRv3Tree.java", 66 "main/java/org/antlr/grammar/v3/ActionAnalysis.java", 67 "main/java/org/antlr/grammar/v3/ActionTranslator.java", 68 "main/java/org/antlr/grammar/v3/AssignTokenTypesWalker.java", 69 "main/java/org/antlr/grammar/v3/CodeGenTreeWalker.java", 70 "main/java/org/antlr/grammar/v3/DefineGrammarItemsWalker.java", 71 "main/java/org/antlr/grammar/v3/LeftRecursiveRuleWalker.java", 72 "main/java/org/antlr/grammar/v3/TreeToNFAConverter.java", 73 ], 74 cmd = """ 75 $(JAVA) -cp $(location @antlr3_bootstrap//jar) org.antlr.Tool -fo $(RULEDIR)/main/java/org/antlr/grammar/v3 $(location :main/antlr3/org/antlr/grammar/v3/ANTLR.g) 76 $(JAVA) -cp $(location @antlr3_bootstrap//jar) org.antlr.Tool -fo $(RULEDIR)/main/java/org/antlr/grammar/v3 $(location :main/antlr3/org/antlr/grammar/v3/ANTLRTreePrinter.g) 77 $(JAVA) -cp $(location @antlr3_bootstrap//jar) org.antlr.Tool -fo $(RULEDIR)/main/java/org/antlr/grammar/v3 $(location :main/antlr3/org/antlr/grammar/v3/ANTLRv3.g) 78 $(JAVA) -cp $(location @antlr3_bootstrap//jar) org.antlr.Tool -fo $(RULEDIR)/main/java/org/antlr/grammar/v3 $(location :main/antlr3/org/antlr/grammar/v3/ANTLRv3Tree.g) 79 $(JAVA) -cp $(location @antlr3_bootstrap//jar) org.antlr.Tool -fo $(RULEDIR)/main/java/org/antlr/grammar/v3 $(location :main/antlr3/org/antlr/grammar/v3/ActionAnalysis.g) 80 $(JAVA) -cp $(location @antlr3_bootstrap//jar) org.antlr.Tool -fo $(RULEDIR)/main/java/org/antlr/grammar/v3 $(location :main/antlr3/org/antlr/grammar/v3/ActionTranslator.g) 81 $(JAVA) -cp $(location @antlr3_bootstrap//jar) org.antlr.Tool -fo $(RULEDIR)/main/java/org/antlr/grammar/v3 $(location :main/antlr3/org/antlr/grammar/v3/AssignTokenTypesWalker.g) 82 $(JAVA) -cp $(location @antlr3_bootstrap//jar) org.antlr.Tool -fo $(RULEDIR)/main/java/org/antlr/grammar/v3 $(location :main/antlr3/org/antlr/grammar/v3/CodeGenTreeWalker.g) 83 $(JAVA) -cp $(location @antlr3_bootstrap//jar) org.antlr.Tool -fo $(RULEDIR)/main/java/org/antlr/grammar/v3 $(location :main/antlr3/org/antlr/grammar/v3/DefineGrammarItemsWalker.g) 84 $(JAVA) -cp $(location @antlr3_bootstrap//jar) org.antlr.Tool -fo $(RULEDIR)/main/java/org/antlr/grammar/v3 $(location :main/antlr3/org/antlr/grammar/v3/LeftRecursiveRuleWalker.g) 85 $(JAVA) -cp $(location @antlr3_bootstrap//jar) org.antlr.Tool -fo $(RULEDIR)/main/java/org/antlr/grammar/v3 $(location :main/antlr3/org/antlr/grammar/v3/TreeToNFAConverter.g) 86 """, 87 toolchains = ["@bazel_tools//tools/jdk:current_host_java_runtime"], 88 tools = ["@antlr3_bootstrap//jar"], 89) 90 91java_test( 92 name = "tests", 93 srcs = glob(["test/java/**/*.java"]), 94 args = [ 95 "org.antlr.test.TestASTConstruction", 96 "org.antlr.test.TestAttributes", 97 "org.antlr.test.TestAutoAST", 98 "org.antlr.test.TestBufferedTreeNodeStream", 99 "org.antlr.test.TestCharDFAConversion", 100 "org.antlr.test.TestCommonTokenStream", 101 "org.antlr.test.TestCompositeGrammars", 102 "org.antlr.test.TestDFAConversion", 103 "org.antlr.test.TestDFAMatching", 104 "org.antlr.test.TestFastQueue", 105 "org.antlr.test.TestHeteroAST", 106 "org.antlr.test.TestInterpretedLexing", 107 "org.antlr.test.TestInterpretedParsing", 108 "org.antlr.test.TestIntervalSet", 109 "org.antlr.test.TestJavaCodeGeneration", 110 "org.antlr.test.TestLeftRecursion", 111 "org.antlr.test.TestLexer", 112 "org.antlr.test.TestMessages", 113 "org.antlr.test.TestNFAConstruction", 114 "org.antlr.test.TestRewriteAST", 115 "org.antlr.test.TestRewriteTemplates", 116 "org.antlr.test.TestSemanticPredicateEvaluation", 117 "org.antlr.test.TestSemanticPredicates", 118 "org.antlr.test.TestSets", 119 "org.antlr.test.TestSymbolDefinitions", 120 "org.antlr.test.TestSyntacticPredicateEvaluation", 121 "org.antlr.test.TestSyntaxErrors", 122 "org.antlr.test.TestTemplates", 123 "org.antlr.test.TestTokenRewriteStream", 124 "org.antlr.test.TestTopologicalSort", 125 "org.antlr.test.TestTreeGrammarRewriteAST", 126 "org.antlr.test.TestTreeIterator", 127 "org.antlr.test.TestTreeNodeStream", 128 "org.antlr.test.TestTreeParsing", 129 "org.antlr.test.TestTrees", 130 "org.antlr.test.TestTreeWizard", 131 ], 132 javacopts = [ 133 "-Xep:JUnit4RunWithMissing:OFF", 134 ], 135 main_class = "org.junit.runner.JUnitCore", 136 use_testrunner = False, 137 visibility = ["//:__pkg__"], 138 deps = [ 139 ":tool_lib", 140 "//:java_runtime", 141 "@hamcrest_core//jar", 142 "@junit//jar", 143 "@stringtemplate4", 144 ], 145) 146