# Makefile for Coins C compiler Back-End

all: preprocess classes/BackDriver.class

JAVAC = javac
JAVACFLAGS = -g -encoding SJIS
#JAVAC = jikes
#JAVACFLAGS = +E -g

SRCS = $(wildcard src/coins/backend/*.java) \
	$(wildcard src/coins/backend/*/*.java)

classes/BackDriver.class: src/BackDriver.java $(SRCS)
	rm -rf classes/*
	$(JAVAC) $(JAVACFLAGS) -sourcepath src -d classes src/BackDriver.java

preprocess:
	cd src/coins/backend && $(MAKE) $(MFLAGS)


coinscc:
	cd ../CoinsCC; rm -rf classes/*; $(JAVAC) $(JAVACFLAGS) -sourcepath src -d classes src/Driver2.java

frontpatch: .FRC
	ln -sf ../../BackEnd/src/Driver2.java ../CoinsCC/src
	ln -sf ../../../../BackEnd/src/coins/hir2lir/ConvToNewLIR.java ../CoinsCC/src/coins/hir2lir
	ln -sf ../../../BackEnd/src/coins/backend ../CoinsCC/src/coins


test: BackDriver.class
	java classes/BackDriver ../test/quick.c.lir >../test/quick.out

javadoc: .FRC
	javadoc -d javadoc -sourcepath src -subpackages coins -breakiterator

clean:
	find . \( -name '*.class' -o -name '*~' \) -print | xargs rm -f

.FRC:
