<?xml version="1.0" encoding="UTF-8"?>
	<project name="Compendium of Heroes" default="do-deploy" basedir="."  xmlns:fx="javafx:com.sun.javafx.tools.ant">
	<target name="init-fx-tasks">
		<path id="fxant">
			<filelist>
				<file name="${java.home}\..\lib\ant-javafx.jar"/>
				<file name="${java.home}\lib\jfxrt.jar"/>
				<file name="${basedir}"/>
			</filelist>
		</path>
	
		<taskdef resource="com/sun/javafx/tools/ant/antlib.xml"      
			uri="javafx:com.sun.javafx.tools.ant"
			classpathref="fxant"/>
	</target>
	<target name="setup-staging-area">
		<delete dir="externalLibs" />
		<delete dir="project" />
		<delete dir="projectRefs" />
		
		<mkdir dir="externalLibs" />
		
		<copy todir="externalLibs">
			<fileset dir="E:\workspace\JefXif\lib">
				<filename name="controlsfx.jar"/>	
			</fileset>
		</copy>
		
		<mkdir dir="project" />
		<copy todir="project">
			<fileset dir="E:\workspace\RpgApp">
				<include name="src/**" />
			</fileset>
		</copy>
		
		<mkdir dir="projectRefs" />
	</target>
	<target name='do-compile'>
		<delete dir="build" />
		<mkdir dir="build/src" />
		<mkdir dir="build/libs" />
		<mkdir dir="build/classes" />
	
		<!-- Copy project-libs references -->
		<copy todir="build/libs">
			<fileset dir="externalLibs">
				<include name="reflectasm-1.09-shaded.jar"/>
				<include name="controlsfx-8.0.5.jar"/>
				<include name="kryo-2.23.0.jar"/>
				<include name="objenesis-1.2.jar"/>
				<include name="minlog-1.2.jar"/>
			</fileset>
		</copy>
	
		<!-- Copy project references -->
	
		<!-- Copy project sources itself -->
		<copy todir="build/src">
			<fileset dir="project/src">
				<include name="**/*"/>
			</fileset>
		</copy>
	
		<javac includeantruntime="false" source="1.8" target="1.8" srcdir="build/src" destdir="build/classes" encoding="Cp1252">
			<classpath>
				<fileset dir="build/libs">
					<include name="*"/>
				</fileset>
			</classpath>
		</javac>
		
		<!-- Copy over none Java-Files -->
		<copy todir="build/classes">
		<fileset dir="project/src">
			<exclude name="**/*.java"/>
		</fileset>
		</copy>
	
	
	</target>
	<target name="do-deploy" depends="setup-staging-area, do-compile, init-fx-tasks">
		<delete file="dist"/>
		<delete file="deploy" />
		
		<mkdir dir="dist" />
		<mkdir dir="dist/libs" />
		
		<copy todir="dist/libs">
			<fileset dir="externalLibs">
				<include name="*" />
			</fileset>
		</copy>
		
		
		<fx:resources id="appRes">
			<fx:fileset dir="dist" includes="AddressApp.jar"/>
			<fx:fileset dir="dist" includes="libs/*"/>
			<fx:fileset dir="dist" includes="resources/**"/>
		</fx:resources> 
		
		<fx:application id="fxApplication"
			name="Compendium of Heroes"
			mainClass="rpg.application"
		/>
	
		<mkdir dir="build/classes/META-INF" />
		
		
		
		<fx:jar destfile="dist/AddressApp.jar">
			<fx:application refid="fxApplication"/>
			<fileset dir="build/classes">
			</fileset>
			<fx:resources refid="appRes"/>
			
			<manifest>
				<attribute name="Implementation-Vendor" value="Real Standard Studios"/>
				<attribute name="Implementation-Title" value="AddressApp"/>
				<attribute name="Implementation-Version" value="1.0"/>
				<attribute name="JavaFX-Feature-Proxy" value="None"/>
			</manifest>
		</fx:jar>
		
	
		<mkdir dir="deploy" />
		<!-- Need to use ${basedir} because somehow the ant task is calculating the directory differently -->
		<fx:deploy
			embedJNLP="false"
			extension="false"
			includeDT="false"
			offlineAllowed="true"
			outdir="${basedir}/deploy"
			outfile="Compendium of Heroes" nativeBundles="exe"
			updatemode="background" >
	
			<fx:info title="Compendium of Heroes" vendor="Real Standard Studios"/>
			<fx:application refId="fxApplication"/>
			<fx:resources refid="appRes"/>
		</fx:deploy>
		
		
	</target>
</project>