build.xml 4.74 KB
<?xml version="1.0" encoding="UTF-8" ?>
<project name="masteragent" default="dist" basedir=".">

	<property file="build.properties" />

	<path id="classpath">
		<fileset dir="${lib.dir}">
			<include name="**/*.jar" />
			<include name="**/*.zip" />
		</fileset>
	</path>

	<target name="clean" description="clean the build dir">
		<delete dir="${build.dir}" />
	</target>

	<target name="init" description="create the working directory">
		<mkdir dir="${agent.dir}" />
		<mkdir dir="${agent.dir}/classes" />
		<mkdir dir="${agent.dir}/config" />
        <mkdir dir="${agent.dir}/bin" />
        <mkdir dir="${agent.dir}/app_bin" />
		<mkdir dir="${agent.dir}/data" />
		<mkdir dir="${agent.dir}/db" />
		<mkdir dir="${agent.dir}/libs" />
		<mkdir dir="${agent.dir}/logs" />
		<mkdir dir="${agent.dir}/dq" />
		<mkdir dir="${agent.dir}/notice" />
		<mkdir dir="${agent.dir}/notice/busi" />
        <mkdir dir="${agent.dir}/notice/ibm" />
        <mkdir dir="${agent.dir}/notice/cron" />
		<mkdir dir="${agent.dir}/shell" />
		<mkdir dir="${agent.dir}/swap" />
		<mkdir dir="${agent.dir}/swap_temp" />
		<mkdir dir="${agent.dir}/script" />
		<mkdir dir="${agent.dir}/script/busi" />
        <mkdir dir="${agent.dir}/script/ibm" />
        <mkdir dir="${agent.dir}/script/cron" />
        <mkdir dir="${agent.dir}/script/cron/cron_tmp" />
        <mkdir dir="${agent.dir}/result" />
        <mkdir dir="${agent.dir}/result_temp" />
        <mkdir dir="${agent.dir}/cronlogs" />
        <mkdir dir="${agent.dir}/cron_temp" />
	</target>

	<target name="compile" depends="clean,init" description="compile the java code and copy the config files">
        <javac srcdir="${src.dir}" destdir="${agent.dir}/classes" debug="true" debuglevel="lines,source">
            <compilerarg line="-encoding UTF-8 -source 1.6 -target 1.6" />
            <compilerarg value="-Xlint:unchecked" />
            <compilerarg value="-Xlint:deprecation" />
            <classpath refid="classpath" />
        </javac>
        <copy todir="${agent.dir}/classes">
            <fileset dir="${src.dir}">
                <exclude name="**/*.java" />
            </fileset>
            <fileset dir="${config.dir}">
                <include name="**/sqlmap.xml" />
            </fileset>
        </copy>
        <copy todir="${agent.dir}/config">
			<fileset dir="${config.dir}">
				<exclude name="**/sqlmap.xml" />
			</fileset>
		</copy>
		<copy todir="${agent.dir}/db">
			<fileset dir="${db.dir}">
				<include name="**/*.*" />
			</fileset>
		</copy>
        <copy todir="${agent.dir}/bin">
            <fileset dir="${bin.dir}">
                <include name="**/*" />
            </fileset>
        </copy>
        <copy todir="${agent.dir}/app_bin">
            <fileset dir="app_bin">
                <include name="**/*" />
            </fileset>
        </copy>
		<copy todir="${agent.dir}/script/ibm">
			<fileset dir="${script.dir}/ibm">
				<include name="**/*" />
			</fileset>
		</copy>
	</target>


	<target name="create-manifest" description="create the MANIFEST.MF file">
		<tstamp />
		<manifest file="${build.dir}/MANIFEST.MF">
			<attribute name="Build-By" value="${user.name}" />
			<attribute name="Build-On" value="${DSTAMP}${TSTAMP}" />
			<attribute name="Create-By" value="${ant.version}" />
			<attribute name="Specification-Title" value="${groupware-name}" />
			<attribute name="Specification-Version" value="${version}" />
			<attribute name="Specification-Vendor" value="${vendor-name}" />
			<attribute name="Implementation-Title" value="${groupware-name}" />
			<attribute name="Implementation-Version" value="${sub.version}" />
			<attribute name="Implementation-Vendor" value="${vendor-name}" />
		</manifest>
	</target>

	<target name="create-jarfile" depends="compile,create-manifest" description="create agent.jar file">
		<jar destfile="${agent.dir}/libs/${jar.filename}" index="true" manifest="${build.dir}/MANIFEST.MF">
			<fileset dir="${agent.dir}/classes" />
		</jar>

		<delete file="${build.dir}/MANIFEST.MF" />
		<delete dir="${agent.dir}/classes" />

		<copy todir="${agent.dir}/libs">
			<fileset dir="${lib.dir}">
				<include name="**/*.jar" />
				<include name="**/*.zip" />
                <exclude name="weblogic9.jar" />
                <exclude name="twns.jar" />
			</fileset>
		</copy>
	</target>

	<target name="create-tarfile" depends="create-jarfile" description="create masteragent.tar file">
		<mkdir dir="${build.dir}/agent/masteragent" />
		<move todir="${build.dir}/agent/masteragent">
			<fileset dir="${agent.dir}" />
		</move>
		<move file="${build.dir}/agent" tofile="${agent.dir}" />

		<tar destfile="${build.dir}/${tar.filename}" basedir="${agent.dir}" />
		<delete dir="${agent.dir}" />
	</target>


	<target name="dist" depends="create-tarfile" description="clean the temporary files">
	</target>

</project>