<project name="argo" default="build" basedir=".">

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

	<target name="build" depends="preCompile, compile,postCompile" 
		description="Complete build, including compile.  Used from outside eclipse.">

</target>

	<target name="init" depends="createDirs" description="Create directories and sets classpath" >
		<xmlproperty file="build/classpath-${os.name}.xml" semanticAttributes="true"/>
	</target>
	<target name="createDirs">
		<mkdir dir="build/classes"/>
		<mkdir dir="build/test"/>
		<mkdir dir="build/testoutput"/>
		<mkdir dir="build/report"/>
		<mkdir dir="build/xdoclet"/>
		<mkdir dir="build/javacc"/>
		<mkdir dir="../dist"/>
		<mkdir dir="../doc"/>
		<mkdir dir="../dist/argo"/>
	</target>

	<target name="preCompile" />

	<target name="postCompile" depends="jar" description="All build steps after compile" />
	
	<target name="compile" depends="init" >
		<javac srcdir="." debug="true" source="1.5" deprecation="off" target="1.5" destdir="build/classes" >
			<include name="java/**"/>
				<classpath>
<pathelement location="../external/xerces/2.9.1/xercesImpl.jar" />
<pathelement location="../external/browserlauncher2/1.3/BrowserLauncher2-1_3.jar" />
<pathelement location="../external/mit/alignment.jar" />
<pathelement location="../external/junit/3.8.1/junit.jar" />
<pathelement location="../external/apachecommons/codec/1.2/commons-codec-1.2.jar" />
<pathelement location="../external/apachecommons/lang/2.1/commons-lang-2.1.jar" />
<pathelement location="../external/apachecommons/logging/1.0.3/commons-logging.jar" />
<pathelement location="../external/dom4j/1.4/dom4j.jar" />
<pathelement location="../external/jakartaRegexp/1.3/jakarta-regexp-1.3.jar" />
<pathelement location="../external/castor/0.9.5.2/castor-0.9.5.2-modified-xml.jar" />
<pathelement location="../external/apachecommons/beanutils/1.6.1/commons-beanutils.jar" />
<pathelement location="../external/hibernate/3.0.5/antlr-2.7.5H3.jar" />
<pathelement location="../external/hibernate/3.0.5/cglib-2.1.jar" />
<pathelement location="../external/hibernate/3.0.5/ehcache-1.1.jar" />
<pathelement location="../external/hibernate/3.0.5/hibernate3.jar" />
<pathelement location="../external/hibernate/3.0.5/jta.jar" />
<pathelement location="../external/hibernate/3.0.5/asm.jar" />
<pathelement location="../external/netscape/netscape.jar" />
<pathelement location="../external/proguard/3.5/proguard.jar" />
<pathelement location="../external/apachecommons/collections/3.1/commons-collections.jar" />
<pathelement location="../external/jalview/1.8/jalview.jar" />
<pathelement location="../external/stax/jsr173/wls_stax.jar" />
<pathelement location="../external/stax/jsr173/jsr173_1.0_ri.jar" />
<pathelement location="../external/jython/2.1/jythonLib.jar" />
<pathelement location="../external/jython/2.1/jython.jar" />
<pathelement location="../dist/common/calhounCommon.jar" />
<pathelement location="../external/retroweaver/1.1/retroweaver-rt.jar" />
<pathelement location="../external/retroweaver/1.1/retroweaver.jar" />
<pathelement location="../external/retroweaver/1.1/Regex.jar" />
<pathelement location="../external/retroweaver/1.1/jace.jar" />
<pathelement location="../external/retroweaver/1.1/bcel-5.1.jar" />
<pathelement location="../external/retroweaver/1.1/asm-1.5.1.jar" />
<pathelement location="../external/p6spy/20060520/p6spy.jar" />

        <pathelement location="../external/jaligner/1.0-2006.06.12-PatchedNWG/jalign.jar"/>
	<pathelement location="../external/jnlp/1.5/jnlp.jar"/>
	<pathelement location="../external/freehep/2.0/openide-lookup-1.9-patched-1.0.jar"/>
	<pathelement location="../external/freehep/2.0/jdom-1.0.jar"/>
	<pathelement location="../external/freehep/2.0/jas-plotter-2.0.jar"/>
	<pathelement location="../external/freehep/2.0/freehep-xml-2.0.1.jar"/>
	<pathelement location="../external/freehep/2.0/freehep-util-2.0.1.jar"/>
	<pathelement location="../external/freehep/2.0/freehep-swing-2.0.2.jar"/>
	<pathelement location="../external/freehep/2.0/freehep-io-2.0.1.jar"/>
	<pathelement location="../external/freehep/2.0/freehep-graphicsio-tests-2.0.jar"/>
	<pathelement location="../external/freehep/2.0/freehep-graphicsio-swf-2.0.jar"/>
	<pathelement location="../external/freehep/2.0/freehep-graphicsio-svg-2.0.jar"/>
	<pathelement location="../external/freehep/2.0/freehep-graphicsio-ps-2.0.jar"/>
	<pathelement location="../external/freehep/2.0/freehep-graphicsio-pdf-2.0.jar"/>
	<pathelement location="../external/freehep/2.0/freehep-graphicsio-emf-2.0.jar"/>
	<pathelement location="../external/freehep/2.0/freehep-graphicsio-2.0.jar"/>
	<pathelement location="../external/freehep/2.0/freehep-graphics2d-2.0.jar"/>
	<pathelement location="../external/freehep/2.0/freehep-export-2.0.3.jar"/>
	<pathelement location="../external/freehep/2.0/aida-3.3.jar"/>


				</classpath>
		</javac>
 	</target>
	
	<target name="jar_external" depends="pre_jar">
		<!-- create the external jar without oracle,  netscape -->
		<jar jarfile="../dist/argo/argo.jar" duplicate="preserve">
			<manifest>
				<attribute name="Main-Class" value="Argo"/>
				<attribute name="Implementation-Version" value="${version}"/>
			</manifest>
		    <fileset dir="build/classes" excludes="**/test/ calhoun/html" />
		    <fileset dir="build/libclasses" excludes = "oracle/ netscape/ calhoun/html" />
   		    <fileset dir="resources" />
		</jar>
	</target>
	
	<target name="jar_applet" depends="pre_jar">
		<!-- create the applet jar without unnecessary libs -->
		<jar jarfile="../dist/argo/argo-applet-unproguarded.jar">
			<manifest>
				<attribute name="Implementation-Version" value="${version}"/>
			</manifest>
		    <fileset dir="build/classes" excludes="**/test/ " />
			<fileset dir="build/libclasses" includes = "calhoun/gebo/" />						
   		    <fileset dir="resources" />
		</jar>
	</target>
	
	<target name="jar" depends=" pre_jar, jar_external, jar_applet ">
	</target>
	
	<target name="pre_jar" depends="init">
		<!-- First extract each jar to libclasses -->
		<mkdir dir="build/libclasses" />
<unzip src="../external/mit/alignment.jar" dest="build/libclasses" overwrite="false"/>
<unzip src="../external/junit/3.8.1/junit.jar" dest="build/libclasses" overwrite="false"/>

<unzip src="../external/xerces/2.9.1/xercesImpl.jar" dest="build/classes" overwrite="false" />
<unzip src="../external/browserlauncher2/1.3/BrowserLauncher2-1_3.jar" dest="build/classes" overwrite="false" />
<unzip src="../external/apachecommons/codec/1.2/commons-codec-1.2.jar" dest="build/libclasses" overwrite="false"/>
<unzip src="../external/apachecommons/lang/2.1/commons-lang-2.1.jar" dest="build/libclasses" overwrite="false"/>
<unzip src="../external/apachecommons/logging/1.0.3/commons-logging.jar" dest="build/libclasses" overwrite="false"/>
<unzip src="../external/dom4j/1.4/dom4j.jar" dest="build/libclasses" overwrite="false"/>
<unzip src="../external/jakartaRegexp/1.3/jakarta-regexp-1.3.jar" dest="build/libclasses" overwrite="false"/>
<unzip src="../external/castor/0.9.5.2/castor-0.9.5.2-modified-xml.jar" dest="build/libclasses" overwrite="false"/>
<unzip src="../external/apachecommons/beanutils/1.6.1/commons-beanutils.jar" dest="build/libclasses" overwrite="false"/>
<unzip src="../external/hibernate/3.0.5/antlr-2.7.5H3.jar" dest="build/libclasses" overwrite="false"/>
<unzip src="../external/hibernate/3.0.5/cglib-2.1.jar" dest="build/libclasses" overwrite="false"/>
<unzip src="../external/hibernate/3.0.5/ehcache-1.1.jar" dest="build/libclasses" overwrite="false"/>
<unzip src="../external/hibernate/3.0.5/hibernate3.jar" dest="build/libclasses" overwrite="false"/>
<unzip src="../external/hibernate/3.0.5/jta.jar" dest="build/libclasses" overwrite="false"/>
<unzip src="../external/hibernate/3.0.5/asm.jar" dest="build/libclasses" overwrite="false"/>
<unzip src="../external/netscape/netscape.jar" dest="build/libclasses" overwrite="false"/>
<unzip src="../external/oracle/10.2.0.1/ojdbc14.jar" dest="build/libclasses" overwrite="false"/>
<unzip src="../external/proguard/3.5/proguard.jar" dest="build/libclasses" overwrite="false"/>
<unzip src="../external/apachecommons/collections/3.1/commons-collections.jar" dest="build/libclasses" overwrite="false"/>
<unzip src="../external/jalview/1.8/jalview.jar" dest="build/libclasses" overwrite="false"/>
<unzip src="../external/stax/jsr173/wls_stax.jar" dest="build/libclasses" overwrite="false"/>
<unzip src="../external/stax/jsr173/jsr173_1.0_ri.jar" dest="build/libclasses" overwrite="false"/>
<unzip src="../external/jython/2.1/jythonLib.jar" dest="build/libclasses" overwrite="false"/>
<unzip src="../external/jython/2.1/jython.jar" dest="build/libclasses" overwrite="false"/>
<unzip src="../dist/common/calhounCommon.jar" dest="build/libclasses" overwrite="false"/>
<unzip src="../external/retroweaver/1.1/retroweaver-rt.jar" dest="build/libclasses" overwrite="false"/>
<unzip src="../external/retroweaver/1.1/retroweaver.jar" dest="build/libclasses" overwrite="false"/>
<unzip src="../external/retroweaver/1.1/Regex.jar" dest="build/libclasses" overwrite="false"/>
<unzip src="../external/retroweaver/1.1/jace.jar" dest="build/libclasses" overwrite="false"/>
<unzip src="../external/retroweaver/1.1/bcel-5.1.jar" dest="build/libclasses" overwrite="false"/>
<unzip src="../external/retroweaver/1.1/asm-1.5.1.jar" dest="build/libclasses" overwrite="false"/>
<unzip src="../external/p6spy/20060520/p6spy.jar" dest="build/libclasses" overwrite="false"/>


        <unzip src="../external/jaligner/1.0-2006.06.12-PatchedNWG/jalign.jar" dest="build/libclasses" overwrite="false"/>
	<unzip src="../external/jnlp/1.5/jnlp.jar" dest="build/libclasses" overwrite="false"/>
	<unzip src="../external/freehep/2.0/openide-lookup-1.9-patched-1.0.jar" dest="build/libclasses" overwrite="false"/>
	<unzip src="../external/freehep/2.0/jdom-1.0.jar" dest="build/libclasses" overwrite="false"/>
	<unzip src="../external/freehep/2.0/jas-plotter-2.0.jar" dest="build/libclasses" overwrite="false"/>
	<unzip src="../external/freehep/2.0/freehep-xml-2.0.1.jar" dest="build/libclasses" overwrite="false"/>
	<unzip src="../external/freehep/2.0/freehep-util-2.0.1.jar" dest="build/libclasses" overwrite="false"/>
	<unzip src="../external/freehep/2.0/freehep-swing-2.0.2.jar" dest="build/libclasses" overwrite="false"/>
	<unzip src="../external/freehep/2.0/freehep-io-2.0.1.jar" dest="build/libclasses" overwrite="false"/>
	<unzip src="../external/freehep/2.0/freehep-graphicsio-tests-2.0.jar" dest="build/libclasses" overwrite="false"/>
	<unzip src="../external/freehep/2.0/freehep-graphicsio-swf-2.0.jar" dest="build/libclasses" overwrite="false"/>
	<unzip src="../external/freehep/2.0/freehep-graphicsio-svg-2.0.jar" dest="build/libclasses" overwrite="false"/>
	<unzip src="../external/freehep/2.0/freehep-graphicsio-ps-2.0.jar" dest="build/libclasses" overwrite="false"/>
	<unzip src="../external/freehep/2.0/freehep-graphicsio-pdf-2.0.jar" dest="build/libclasses" overwrite="false"/>
	<unzip src="../external/freehep/2.0/freehep-graphicsio-emf-2.0.jar" dest="build/libclasses" overwrite="false"/>
	<unzip src="../external/freehep/2.0/freehep-graphicsio-2.0.jar" dest="build/libclasses" overwrite="false"/>
	<unzip src="../external/freehep/2.0/freehep-graphics2d-2.0.jar" dest="build/libclasses" overwrite="false"/>
	<unzip src="../external/freehep/2.0/freehep-export-2.0.3.jar" dest="build/libclasses" overwrite="false"/>
	<unzip src="../external/freehep/2.0/aida-3.3.jar" dest="build/libclasses" overwrite="false"/>

	</target>
		
</project>
