INSTALLER_BASE = /usr/local/IzPack
INSTALLER_COMPILE = $(INSTALLER_BASE)/bin/compile
INSTALLER_COMPILE_WIN = python $(INSTALLER_BASE)/utils/wrappers/izpack2exe/izpack2exe.py
INSTALLER_SPEC = aMazeInstall.xml
WIN_INSTALLER = aMazeSetup.exe
JAR_INSTALLER = aMazeInstall.jar
JAR_EXECUTABLE = aMaze.jar
JAR_CONTENTS = $(SOURCE_FILES) $(CLASS_FILES) *.xml images documents license launcher.sh launcher.bat makefile
CLASS_FILES = *.class hulka/graphics/*.class
SOURCE_FILES = *.java hulka/graphics/*.java

#Force compatibility with jre 1.6
SOURCE_VM = 5
TARGET_VM = 6
BOOT_CLASSPATH= "/usr/lib/java/jre/lib/rt.jar"
#BOOT_CLASSPATH= "/usr/lib/java/jdk1.5.0_17/jre/lib/rt.jar"

WEB_BASE = ../virtualtoybox/aMaze
WEB_DOWNLOAD_BASE = ../virtualtoybox/downloads

WEB_APPLET = $(WEB_BASE)/$(JAR_EXECUTABLE)
WEB_STANDALONE = $(WEB_DOWNLOAD_BASE)/$(JAR_EXECUTABLE)
WEB_INSTALLER = $(WEB_DOWNLOAD_BASE)/$(JAR_INSTALLER)
WEB_WIN_INSTALLER = $(WEB_DOWNLOAD_BASE)/$(WIN_INSTALLER)

WEB_FILES = $(WEB_APPLET) $(WEB_STANDALONE) $(WEB_INSTALLER) $(WEB_WIN_INSTALLER)

clean : 
	touch $(SOURCE_FILES)
#compiles the source files
compile : $(CLASS_FILES)
#builds everything needed to run the application as an executable jar
all : $(JAR_EXECUTABLE)
#builds the installers
installer : $(WIN_INSTALLER)
#builds everything and puts installers in the web directories
web : $(WEB_FILES)

$(WEB_FILES) : $(WIN_INSTALLER)
	cp $(JAR_EXECUTABLE) $(WEB_APPLET)
	cp $(JAR_EXECUTABLE) $(WEB_STANDALONE)
	cp $(JAR_INSTALLER) $(WEB_INSTALLER)
	cp $(WIN_INSTALLER) $(WEB_WIN_INSTALLER)
$(WIN_INSTALLER) : $(JAR_INSTALLER)
	$(INSTALLER_COMPILE_WIN) --file=$(JAR_INSTALLER) --output=$(WIN_INSTALLER)
$(JAR_INSTALLER) : $(JAR_EXECUTABLE)
	$(INSTALLER_COMPILE) $(INSTALLER_SPEC)
$(JAR_EXECUTABLE) : $(JAR_CONTENTS)
	jar -cvfe aMaze.jar DesktopUI $(JAR_CONTENTS)
$(CLASS_FILES) : $(SOURCE_FILES)
	javac -source $(SOURCE_VM) -target $(TARGET_VM) -bootclasspath $(BOOT_CLASSPATH) $(SOURCE_FILES)
