# # BNFC stuff # include Makefile BNFC = bnfc CUP = java_cup.Main CUPFLAGS = -nopositions -expect 100 JLEX = JLex.Main .PHONY: gfc gfc-clean cfg cfg-clean mcfg mcfg-clean core core-clean gfcc gfcc-clean bnfc: gfc cfg mcfg core gfcc bnfc-clean: gfc-clean cfg-clean mcfg-clean core-clean gfcc-clean # GFC gfc: se/chalmers/cs/gf/GFC/Yylex.java se/chalmers/cs/gf/GFC/sym.java se/chalmers/cs/gf/GFC/parser.java se/chalmers/cs/gf/GFC/GFC.cup se/chalmers/cs/gf/GFC/Yylex: se/chalmers/cs/gf/GFC/GFC.cf $(BNFC) -java1.5 -p se.chalmers.cs.gf $^ -rm -f GFC.tex -rm -f se/chalmers/cs/gf/GFC/VisitSkel.java -rm -f se/chalmers/cs/gf/GFC/ComposVisitor.java se/chalmers/cs/gf/GFC/Yylex.java: se/chalmers/cs/gf/GFC/Yylex ${JAVA} ${JAVA_FLAGS} ${JLEX} se/chalmers/cs/gf/GFC/Yylex se/chalmers/cs/gf/GFC/sym.java se/chalmers/cs/gf/GFC/parser.java: se/chalmers/cs/gf/GFC/GFC.cup ${JAVA} ${JAVA_FLAGS} ${CUP} ${CUPFLAGS} se/chalmers/cs/gf/GFC/GFC.cup mv sym.java parser.java se/chalmers/cs/gf/GFC/ gfc-clean: -rm -rf se/chalmers/cs/gf/GFC/Absyn -rm -f se/chalmers/cs/gf/GFC/Yylex.java se/chalmers/cs/gf/GFC/sym.java se/chalmers/cs/gf/GFC/parser.java -rm -f se/chalmers/cs/gf/GFC/GFC.cup se/chalmers/cs/gf/GFC/Yylex -rm -f se/chalmers/cs/gf/GFC/ComposVisitor.java -rm -f se/chalmers/cs/gf/GFC/PrettyPrinter.java se/chalmers/cs/gf/GFC/Test.java se/chalmers/cs/gf/GFC/VisitSkel.java # SyntaxTree se/chalmers/cs/gf/SyntaxTree/SyntaxTree.cup se/chalmers/cs/gf/SyntaxTree/Yylex: se/chalmers/cs/gf/SyntaxTree/SyntaxTree.cf $(BNFC) -java1.5 -p se.chalmers.cs.gf $^ -rm -f SyntaxTree.tex -rm -f se/chalmers/cs/gf/SyntaxTree/VisitSkel.java se/chalmers/cs/gf/SyntaxTree/Yylex.java: se/chalmers/cs/gf/SyntaxTree/Yylex ${JAVA} ${JAVA_FLAGS} ${JLEX} se/chalmers/cs/gf/SyntaxTree/Yylex se/chalmers/cs/gf/SyntaxTree/sym.java se/chalmers/cs/gf/SyntaxTree/parser.java: se/chalmers/cs/gf/SyntaxTree/SyntaxTree.cup ${JAVA} ${JAVA_FLAGS} ${CUP} ${CUPFLAGS} se/chalmers/cs/gf/SyntaxTree/SyntaxTree.cup mv sym.java parser.java se/chalmers/cs/gf/SyntaxTree/ # CFG cfg: se/chalmers/cs/gf/CFG/Yylex.java se/chalmers/cs/gf/CFG/sym.java se/chalmers/cs/gf/CFG/parser.java se/chalmers/cs/gf/CFG/CFG.cup se/chalmers/cs/gf/CFG/Yylex: se/chalmers/cs/gf/CFG/CFG.cf $(BNFC) -java1.5 -p se.chalmers.cs.gf $^ -rm -f CFG.tex -rm -f se/chalmers/cs/gf/CFG/VisitSkel.java se/chalmers/cs/gf/CFG/Yylex.java: se/chalmers/cs/gf/CFG/Yylex ${JAVA} ${JAVA_FLAGS} ${JLEX} se/chalmers/cs/gf/CFG/Yylex se/chalmers/cs/gf/CFG/sym.java se/chalmers/cs/gf/CFG/parser.java: se/chalmers/cs/gf/CFG/CFG.cup ${JAVA} ${JAVA_FLAGS} ${CUP} ${CUPFLAGS} se/chalmers/cs/gf/CFG/CFG.cup mv sym.java parser.java se/chalmers/cs/gf/CFG/ cfg-clean: -rm -rf se/chalmers/cs/gf/CFG/Absyn -rm -f se/chalmers/cs/gf/CFG/Yylex.java se/chalmers/cs/gf/CFG/sym.java se/chalmers/cs/gf/CFG/parser.java -rm -f se/chalmers/cs/gf/CFG/CFG.cup se/chalmers/cs/gf/CFG/Yylex -rm -f se/chalmers/cs/gf/CFG/ComposVisitor.java -rm -f se/chalmers/cs/gf/CFG/PrettyPrinter.java se/chalmers/cs/gf/CFG/Test.java se/chalmers/cs/gf/CFG/VisitSkel.java # MCFG mcfg: se/chalmers/cs/gf/MCFG/Yylex.java se/chalmers/cs/gf/MCFG/sym.java se/chalmers/cs/gf/MCFG/parser.java se/chalmers/cs/gf/MCFG/MCFG.cup se/chalmers/cs/gf/MCFG/Yylex: se/chalmers/cs/gf/MCFG/MCFG.cf $(BNFC) -java1.5 -p se.chalmers.cs.gf $^ -rm -f MCFG.tex -rm -f se/chalmers/cs/gf/MCFG/VisitSkel.java se/chalmers/cs/gf/MCFG/Yylex.java: se/chalmers/cs/gf/MCFG/Yylex ${JAVA} ${JAVA_FLAGS} ${JLEX} se/chalmers/cs/gf/MCFG/Yylex se/chalmers/cs/gf/MCFG/sym.java se/chalmers/cs/gf/MCFG/parser.java: se/chalmers/cs/gf/MCFG/MCFG.cup ${JAVA} ${JAVA_FLAGS} ${CUP} ${CUPFLAGS} se/chalmers/cs/gf/MCFG/MCFG.cup mv sym.java parser.java se/chalmers/cs/gf/MCFG/ mcfg-clean: -rm -rf se/chalmers/cs/gf/MCFG/Absyn -rm -f se/chalmers/cs/gf/MCFG/Yylex.java se/chalmers/cs/gf/MCFG/sym.java se/chalmers/cs/gf/MCFG/parser.java -rm -f se/chalmers/cs/gf/MCFG/MCFG.cup se/chalmers/cs/gf/MCFG/Yylex -rm -f se/chalmers/cs/gf/MCFG/ComposVisitor.java -rm -f se/chalmers/cs/gf/MCFG/PrettyPrinter.java se/chalmers/cs/gf/MCFG/Test.java se/chalmers/cs/gf/MCFG/VisitSkel.java # Core core: se/chalmers/cs/gf/Core/Yylex.java se/chalmers/cs/gf/Core/sym.java se/chalmers/cs/gf/Core/parser.java se/chalmers/cs/gf/Core/Core.cup se/chalmers/cs/gf/Core/Yylex: se/chalmers/cs/gf/Core/Core.cf $(BNFC) -java1.5 -p se.chalmers.cs.gf $^ -rm -f Core.tex -rm -f se/chalmers/cs/gf/Core/VisitSkel.java se/chalmers/cs/gf/Core/Yylex.java: se/chalmers/cs/gf/Core/Yylex ${JAVA} ${JAVA_FLAGS} ${JLEX} se/chalmers/cs/gf/Core/Yylex se/chalmers/cs/gf/Core/sym.java se/chalmers/cs/gf/Core/parser.java: se/chalmers/cs/gf/Core/Core.cup ${JAVA} ${JAVA_FLAGS} ${CUP} ${CUPFLAGS} se/chalmers/cs/gf/Core/Core.cup mv sym.java parser.java se/chalmers/cs/gf/Core/ core-clean: -rm -rf se/chalmers/cs/gf/Core/Absyn -rm -f se/chalmers/cs/gf/Core/Yylex.java se/chalmers/cs/gf/Core/sym.java se/chalmers/cs/gf/Core/parser.java -rm -f se/chalmers/cs/gf/Core/Core.cup se/chalmers/cs/gf/Core/Yylex -rm -f se/chalmers/cs/gf/Core/ComposVisitor.java -rm -f se/chalmers/cs/gf/Core/PrettyPrinter.java se/chalmers/cs/gf/Core/Test.java se/chalmers/cs/gf/Core/VisitSkel.java # GFCC gfcc: se/chalmers/cs/gf/GFCC/Yylex.java se/chalmers/cs/gf/GFCC/sym.java se/chalmers/cs/gf/GFCC/parser.java se/chalmers/cs/gf/GFCC/GFCC.cup se/chalmers/cs/gf/GFCC/Yylex: se/chalmers/cs/gf/GFCC/GFCC.cf $(BNFC) -java1.5 -p se.chalmers.cs.gf $^ -rm -f GFCC.tex -rm -f se/chalmers/cs/gf/GFCC/VisitSkel.java se/chalmers/cs/gf/GFCC/Yylex.java: se/chalmers/cs/gf/GFCC/Yylex ${JAVA} ${JAVA_FLAGS} ${JLEX} se/chalmers/cs/gf/GFCC/Yylex se/chalmers/cs/gf/GFCC/sym.java se/chalmers/cs/gf/GFCC/parser.java: se/chalmers/cs/gf/GFCC/GFCC.cup ${JAVA} ${JAVA_FLAGS} ${CUP} ${CUPFLAGS} se/chalmers/cs/gf/GFCC/GFCC.cup mv sym.java parser.java se/chalmers/cs/gf/GFCC/ gfcc-clean: -rm -rf se/chalmers/cs/gf/GFCC/Absyn -rm -f se/chalmers/cs/gf/GFCC/Yylex.java se/chalmers/cs/gf/GFCC/sym.java se/chalmers/cs/gf/GFCC/parser.java -rm -f se/chalmers/cs/gf/GFCC/GFCC.cup se/chalmers/cs/gf/GFCC/Yylex -rm -f se/chalmers/cs/gf/GFCC/AbstractVisitor.java -rm -f se/chalmers/cs/gf/GFCC/FoldVisitor.java -rm -f se/chalmers/cs/gf/GFCC/AllVisitor.java -rm -f se/chalmers/cs/gf/GFCC/ComposVisitor.java -rm -f se/chalmers/cs/gf/GFCC/PrettyPrinter.java se/chalmers/cs/gf/GFCC/Test.java se/chalmers/cs/gf/GFCC/VisitSkel.java