<?xml version="1.0"  encoding="UTF-8"?>
<project name="superx" default="compile" basedir=".">
	<dirname file="${ant.file.superx}" property="superxBuildBaseDir" />
	<property name="distDir" location="${superxBuildBaseDir}/../dist" />

	<property environment="env" />
	<!-- set global properties for this build -->
	<property name="BASE_DIR" value="${superxBuildBaseDir}/.." />
	<property name="SUPERX_DIR" value="${BASE_DIR}/superx"/>
	<property name="BUILD_PATH" value="${SUPERX_DIR}/WEB-INF/classes"/>
	<property name="SRC_DIR" value="${BASE_DIR}/src" />
	<property name="SRC_DIR_TEST" value="${BASE_DIR}/test-src"/>
	<property name="LIB_SUPERX_DIR" value="${SUPERX_DIR}/WEB-INF/lib"/>
	<property name="LIB_WEBAPP_DIR" value="${LIB_SUPERX_DIR}"/>
	<property name="LIB_EXT_SUPERX_DIR" value="${SUPERX_DIR}/WEB-INF/lib_ext"/>
	<property name="APPLET_DIR" value="${SUPERX_DIR}/applet"/>


	<property name="superx-classes" value="${SUPERX_DIR}/WEB-INF/classes" />
	<property name="superx-lib" value="${SUPERX_DIR}/WEB-INF/lib" />
	<property name="src-java" value="${SRC_DIR}"/>

	<path id="classpath">
		<fileset dir="${LIB_SUPERX_DIR}">
			<include name="**/*.jar" />
			<exclude name="jarheaven_backup/**/*.jar" />
		</fileset>
		<fileset dir="${LIB_EXT_SUPERX_DIR}">
			<include name="**/*.jar" />
		</fileset>
	</path>
	<taskdef name="groovy"
             classname="org.codehaus.groovy.ant.Groovy"
             classpathref="classpath"/>

	<property name="version" value="5.2" />

	
	<target name="initTimestamp">
		<tstamp>
			<format property="SX_TIMESTAMP" pattern="dd.MM.yyyy HH:mm" />
		</tstamp>
	</target>

	<target name="war">
		<delete file="../superx.war" quiet="true" />
		<jar basedir="../superx" compress="true" destfile="../superx.war">
			<exclude name="**/*.java" />
		</jar>
	</target>

	<!--im Buildpath muessen fuer APPLET images und die entpackten jh.jar Klassen vorliegen-->
	<target name="cleanBuildPath" depends="initTimestamp" description="Löscht alle *.class-Dateien in WEB-INF/classes">
		<delete failonerror="false" includeemptydirs="true">
			<fileset dir="${BUILD_PATH}" includes="**/*.class,**/*.java" excludes="*.properties" />
		</delete>
	</target>
	
	<target name="compileSuperx" depends="cleanBuildPath" description="Compile all classes for superx.">
                <filter token="sxtimestamp" value="${SX_TIMESTAMP}" />
        <filter token="version" value="${version}" />
        <!-- MB 13.8.2009 auch mitkompilieren <echo message="de/memtext/db/Servlet* weggelassen"/>-->
        <copy todir="${BUILD_PATH}" filtering="true">
            <fileset dir="${SRC_DIR}">
                <include name="**/*.java" />
                <include name="**/*.properties" />
                <include name="**/*.gif" />
                <include name="**/*.xml" />
                <include name="edustore/*" />
                <include name="saiku-datasources/*" />
                <include name="saiku-repository/*" />
            </fileset>
        </copy>
        <!--<echo message="cp:${FULL_CLASSPATH}"/>-->
        
        <javac source="1.8" target="1.8"
                srcdir="${BUILD_PATH}" excludes="**/*Test*.java,test/**/*"
                destdir="${BUILD_PATH}"
                listfiles="false" encoding="UTF-8" debug="yes">
            <classpath refid="classpath" />
        </javac>
	</target>


    
	
	<target name="distServer" depends="compileSuperx" description="Erzeugt die superx${VERSION}.jar, d.h. das Servlet. ">
		<delete>
			<fileset dir="${LIB_WEBAPP_DIR}" includes="superx4*.jar" />
		</delete>
		<jar destfile="${LIB_WEBAPP_DIR}/superx${version}.jar" basedir="${BUILD_PATH}" excludes="freemarker/**/* com/**/* javax/**/* **/*.java">
		<manifest>
      <!-- Who is building this jar? -->
      <attribute name="Built-By" value="superx"/>
      <!-- Information about the program itself -->
      <attribute name="Implementation-Date" value="${SX_TIMESTAMP}"/>
      <attribute name="Implementation-Title" value="SuperX"/>
      <attribute name="Implementation-Version" value="${version}"/>
      </manifest>
		</jar>
	</target>

</project>