#Variables
include $(SCT_DAQ_ROOT)/build/Makefile.include
#Commands
include $(SCT_DAQ_ROOT)/build/Makefile.commands

JARS := DisplayGUI.jar
SRCS := $(shell find -name "*.java")
BINS := rungui
JAVAFLAGS += -d classes
JARMANIFEST := MANIFEST.MF

#Phony Targets
.PHONY: all c++ java install clean distclean compile IS

all: c++ java
distclean: clean
	-rm -r -f classes DisplayGUI/TestSummaryIS.java DisplayGUI/SCTDB_Data.java DisplayGUI/IVScan_ControlData.java

clean:
	-rm -f built -r classes *.jar
install: $(ShareLibDir)/$(JARS) $(ShareBinDir)/$(BINS) $(SCRIPTS)
compile: classes $(JARS) install
java: IS
	$(MAKE) compile
idl: $(IDLFLAGS)
c++:


IS: DisplayGUI/TestSummaryIS.java

DisplayGUI/TestSummaryIS.java: $(IncludeDir)/SummaryWriter/SummaryIS.xml
	is_generator.sh -java -p DisplayGUI -d DisplayGUI $<

IS: DisplayGUI/SCTDB_Data.java

DisplayGUI/SCTDB_Data.java: SCTDB_Data_schema.xml
	is_generator.sh -java -p DisplayGUI -d DisplayGUI $<

IS: DisplayGUI/IVScanControl.java

DisplayGUI/IVScanControl.java: IVSCAN_ControlData_schema.xml
	is_generator.sh -java -p DisplayGUI -d DisplayGUI $<

#Real targets
classes:
	$(MKDIR)

#Need to replace $'s with \$'s to prevent substitution - arrghhh!!!
$(JARS): built $(JARMANIFEST)
	$(JARCMD) -C classes .

built: $(SRCS)
	$(JAVACMD) && touch $@

$(ShareBinDir)/$(BINS): $(BINS)
	$(CPCMD)

$(ShareLibDir)/$(JARS): $(JARS)
	$(CPCMD)

