blob: dca1088e70f1799caac77593788604f0fb70ee03 [file] [log] [blame]
# Copyright (c) 2017, the Dart project authors. Please see the AUTHORS file
# for details. All rights reserved. Use of this source code is governed by a
# BSD-style license that can be found in the LICENSE file.
GRAMMAR=../../docs/language/Dart.g
JAVA_PATH=/usr/lib/jvm/java-7-openjdk-amd64/bin
JAVA=$(JAVA_PATH)/java
JAVAC=javac
ANTLR_JAR=/usr/share/java/antlr4-runtime.jar
ANTLR_FILES=DartLexer.java DartParser.java Dart.tokens
ANTLR_CMD=PATH=$(JAVA_PATH):$(PATH) antlr4 $<
JAVA_FILES=DartLexer.java DartParser.java
CLASS_FILES=SpecParser.class SpecParserRunner.class DartLexer.class DartParser.class
.PHONY: default parser clean touch parse_hello
default: $(JAVA_FILES)
parser: SpecParser.class
SpecParser.class: $(ANTLR_FILES) SpecParser.java
$(JAVAC) -cp .:$(ANTLR_JAR) SpecParser.java
%Lexer.java: %.g Makefile ; $(ANTLR_CMD)
%Parser.java: %.g Makefile ; $(ANTLR_CMD)
%.tokens: %.g Makefile ; $(ANTLR_CMD)
clean:
rm -f $(CLASS_FILES) $(ANTLR_FILES)
touch:
touch $(GRAMMAR)