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

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

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

all: c++ java install
distclean: clean
clean:
	-rm -R -f -r classes *.jar built
install: $(ShareLibDir)/$(JARS)
java: classes $(JARS) install
c++:

#Regenerate ScanDescriptors helper 
SCAN_HEADERS = $(SCTPIXEL_DAQ_ROOT)/CommonWithDsp/ABCD/ABCDscans.h $(SCTPIXEL_DAQ_ROOT)/CommonWithDsp/primParams.h $(SCT_DAQ_ROOT)/SctApi/extraScans.h 

Sct/ScanDescriptors.java: Sct/_ScanDescriptorsHelper.java

Sct/_ScanDescriptorsHelper.java: $(SCAN_HEADERS) genScanDescriptors.pl
	perl genScanDescriptors.pl $@ $(SCAN_HEADERS)

#Real targets
classes/Sct/version.properties: Sct/version.properties.input
	$(VERSIONCMD)

classes:
	$(MKDIR)

$(JARS): built classes/Sct/version.properties $(JARMANIFEST)
	$(JARCMD) -C classes .

built: $(SRCS) 
	$(JAVACMD) && touch $@
	touch Sct/version.properties.input

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