###########################################################################
#
# FairCom Corporation makefile for c-treeACE JTDB API Tutorials
#
###########################################################################

# c-treeACE base directory
ACEBASEDIR=../../..

# c-treeACE base directory
JARDIR=$(ACEBASEDIR)/java.nav/
ACEJAR=$(ACEBASEDIR)/java.nav/ctreeJTDB.jar

# Directory in which tutorial source code is located
SRCDIR=..

# Directory in which tutorial binaries are created
OUTDIR=..

ALL: \
	$(OUTDIR)/JTDB_Tutorial1.class \
	$(OUTDIR)/JTDB_Tutorial2.class \
	$(OUTDIR)/JTDB_Tutorial3.class \
	$(OUTDIR)/JTDB_Tutorial4.class
	@echo The JTDB tutorials are ready to run.
	@echo Make sure your Java and FairCom runtimes match. Both must be 32-bit or 64-bit\; otherwise, you will get the UnsatisfiedLinkError
	@echo Type \'make run\' to run the tutorials.

$(OUTDIR)/JTDB_Tutorial1.class: $(SRCDIR)/JTDB_Tutorial1.java
	javac -cp $(ACEJAR) $?

$(OUTDIR)/JTDB_Tutorial2.class: $(SRCDIR)/JTDB_Tutorial2.java
	javac -cp $(ACEJAR) $?

$(OUTDIR)/JTDB_Tutorial3.class: $(SRCDIR)/JTDB_Tutorial3.java
	javac -cp $(ACEJAR) $?

$(OUTDIR)/JTDB_Tutorial4.class: $(SRCDIR)/JTDB_Tutorial4.java
	javac -cp $(ACEJAR) $?

run:
	@echo Running JTDB Tutorial 1 ...
	@java -cp $(OUTDIR):$(ACEJAR) -Djava.library.path=$(JARDIR) JTDB_Tutorial1
	@echo ''
	@echo Running JTDB Tutorial 2 ...
	@java -cp $(OUTDIR):$(ACEJAR) -Djava.library.path=$(JARDIR) JTDB_Tutorial2
	@echo ''
	@echo Running JTDB Tutorial 3 ...
	@java -cp $(OUTDIR):$(ACEJAR) -Djava.library.path=$(JARDIR) JTDB_Tutorial3
	@echo ''
	@echo Running JTDB Tutorial 4 ...
	@java -cp $(OUTDIR):$(ACEJAR) -Djava.library.path=$(JARDIR) JTDB_Tutorial4

clean:
	rm -f $(OUTDIR)/JTDB_Tutorial1.class
	rm -f $(OUTDIR)/JTDB_Tutorial2.class
	rm -f $(OUTDIR)/JTDB_Tutorial3.class
	rm -f $(OUTDIR)/JTDB_Tutorial4.class
	rm -f $(OUTDIR)/JTDB_Tutorial1$DATA_RECORD.class
	rm -f $(OUTDIR)/JTDB_Tutorial2$DATA_RECORD.class
	rm -f $(OUTDIR)/JTDB_Tutorial3$DATA_RECORD.class
	rm -f $(OUTDIR)/JTDB_Tutorial4$DATA_RECORD.class
	
