 # Utilities Makefile
 # Written by: Bryan Horling and Regis Vincent
 #             Department of Computer and Information Science
 #             University of Massachusetts
 #             Amherst, Massachusetts 01003.
 #
 # This code was written at the Multi-Agent Systems Lab.
 # Department of Computer Science, University of Massachusetts,
 # Amherst, MA 01003.
 #
 # Copyright (c) 1997 UMASS CS Dept. All rights are reserved.

MODULE	= utilities
CFGMODULE = cfg

include Makefile.tmpl

$(MODULE)/$(CFGMODULE)/CfgFileParser.java: $(MODULE)/$(CFGMODULE)/CfgFile.jj
	$(JAVACC) -OUTPUT_DIRECTORY=$(MODULE)/$(CFGMODULE) $(MODULE)/$(CFGMODULE)/CfgFile.jj
	$(JAVAC) $(MODULE)/$(CFGMODULE)/*.java

JAVAC	= $(JAVART)javac -g -J-mx30m -d $(CLASSD) -deprecation -classpath $(CLASSPTH)

JAVA	= $(shell find utilities -name "*.java" -print)
JDEPS	= $(patsubst %.java, $(CLASSD)/%.class, $(JAVA))

all: $(MODULE)/$(CFGMODULE)/CfgFileParser.java $(JDEPS) $(CLASSD)/$(MODULE)/$(CFGMODULE)/CfgFileParser.class

zip: all $(LIBS)/utilities.zip

graphtest: all
	$(JAVART)java -classpath $(CLASSPTH) utilities.GraphTest

cfgtest: all
	$(JAVART)java -classpath $(CLASSPTH) utilities.cfg.CfgTest

graphd: all
	$(JAVART)jdb -classpath $(CLASSPTH) utilities.GraphTest

graphprof: all
#	$(JAVART)java -prof -classpath $(CLASSPTH) utilities.GraphTest
	$(JAVART)java -Xrunhprof:cpu=times -classpath $(CLASSPTH) utilities.GraphTest

$(LIBS)/utilities.zip: $(JDEPS) FORCE
	@echo Making utilities.zip file
	cd $(CLASSD); zip -r ../$(LIBS)/utilities $(MODULE) 

clean:
	rm -f $(LIBS)/utilities.zip
	rm -rf $(CLASSD)/$(MODULE)

reallyclean: clean
	grep -l "Generated By:JavaCC" $(MODULE)/$(CFGMODULE)/*.java | xargs rm -f
