AppleCommander/build/build.xml

179 lines
6.6 KiB
XML
Raw Normal View History

2004-06-18 05:13:45 +00:00
<project name="AppleCommander" default="all" basedir="..">
2003-03-16 05:27:04 +00:00
<description>
This script builds the distribution components.
2003-03-16 05:27:04 +00:00
</description>
<property name="work" value="work"/>
<property name="classes" value="${work}/classes"/>
2004-06-18 05:13:45 +00:00
<property name="dist" value="${work}/dist"/>
2003-03-16 05:27:04 +00:00
<property name="source" value="src"/>
2004-06-18 05:13:45 +00:00
<property name="testsrc" value="test"/>
2003-03-16 05:27:04 +00:00
<property name="build" value="build"/>
<property name="doc" value="documentation"/>
<property name="web" value="web"/>
2004-06-18 05:13:45 +00:00
<property name="javadoc" value="${work}/javadoc"/>
<condition property="swtjar"
value="C:\Program Files\Eclipse 2.1.x\plugins\org.eclipse.swt.win32_2.1.3\ws\win32\swt.jar"
else="/Users/Shared/eclipse/plugins/org.eclipse.swt.carbon.macosx_3.2.2.v3236.jar">
<os family="windows"/>
</condition>
<condition property="junitjar"
value="C:\Java\lib\junit3.8.1\junit.jar"
else="/Users/Shared/junit/junit.jar">
<os family="windows"/>
</condition>
<target name="version" description="Get version from source.">
<property name="main.path" value="src/com/webcodepro/applecommander/ui"/>
<loadfile srcfile="${main.path}/AppleCommander.java" property="acVersion">
<filterchain>
<linecontainsregexp>
<regexp pattern='^.*String VERSION = ".*";.*$'/>
</linecontainsregexp>
<tokenfilter>
<replaceregex pattern='^.*String VERSION = "(.*)";.*$' replace='\1'/>
</tokenfilter>
<striplinebreaks/>
</filterchain>
</loadfile>
<echo>Building version ${acVersion}...</echo>
</target>
<target name="init" depends="version" description="Ensure work directory is present">
2003-03-16 05:27:04 +00:00
<mkdir dir="${work}"/>
<mkdir dir="${classes}"/>
2004-06-18 05:13:45 +00:00
<mkdir dir="${dist}"/>
<mkdir dir="${javadoc}"/>
<property name="guijar" value="${dist}/AppleCommander-${acVersion}.jar"/>
<property name="cmdjar" value="${dist}/AppleCommander-${acVersion}-ac.jar"/>
<property name="maczip" value="${dist}/AppleCommander-${acVersion}-mac.zip"/>
<property name="srczip" value="${dist}/AppleCommander-${acVersion}-src.zip"/>
<property name="webzip" value="${dist}/AppleCommander-${acVersion}-web.zip"/>
2003-03-16 05:27:04 +00:00
</target>
<target name="clean" depends="init" description="Wipes out work contents">
<delete dir="${classes}"/>
2004-06-18 05:13:45 +00:00
<delete dir="${dist}"/>
<delete dir="${javadoc}"/>
2003-03-16 05:27:04 +00:00
</target>
<target name="all" depends="init,jars,macBundle,sourceZip,javadoc,websiteZip" description="Everything">
<!-- Nothing else to do - depends handles it all. -->
</target>
<target name="jars" depends="init,executableGuiJar,executableCmdJar" description="Build executable jars">
2004-06-18 05:13:45 +00:00
<!-- Nothing else to do - depends handles it all. -->
</target>
<target name="executableGuiJar" depends="init" description="Build GUI executable JAR">
<javac srcdir="${source}" destdir="${classes}" target="1.3" source="1.3" classpath="${swtjar}">
2003-03-16 05:27:04 +00:00
<include name="**/*.java"/>
<exclude name="**/*Test.java"/>
</javac>
2004-06-18 05:13:45 +00:00
<jar jarfile="${guijar}" manifest="build/manifest.mf">
2003-03-16 05:27:04 +00:00
<fileset dir="${classes}"/>
<fileset dir="${source}">
<include name="**/*.dump"/>
<include name="**/*.properties"/>
<include name="**/*.gif"/>
</fileset>
<fileset dir=".">
<include name="LICENSE"/>
<include name="TODO"/>
<include name="VERSIONS"/>
</fileset>
</jar>
</target>
2004-06-18 05:13:45 +00:00
<target name="executableCmdJar" depends="init" description="Build command-line only executable JAR">
<javac srcdir="${source}" destdir="${classes}" target="1.3" source="1.3">
2004-06-18 05:13:45 +00:00
<include name="**/*.java"/>
<exclude name="**/*Test.java"/>
</javac>
2008-05-29 12:45:41 +00:00
<jar jarfile="${cmdjar}" manifest="build/ac.mf">
2004-06-18 05:13:45 +00:00
<fileset dir="${classes}">
<exclude name="com/webcodepro/applecommander/ui/swt/**"/>
<exclude name="com/webcodepro/applecommander/ui/images/**"/>
</fileset>
<fileset dir="${source}">
<include name="**/*.dump"/>
<include name="**/*.properties"/>
</fileset>
<fileset dir=".">
<include name="LICENSE"/>
<include name="TODO"/>
<include name="VERSIONS"/>
</fileset>
</jar>
</target>
<target name="macBundle" depends="init,jars" description="Build Mac application bundle.">
<property name="mac.dir" value="mac"/>
<property name="mac.app" value="${mac.dir}/AppleCommander.app"/>
<property name="mac.Contents" value="${mac.app}/Contents"/>
<property name="mac.Java" value="${mac.Contents}/Resources/Java"/>
<touch file="${mac.dir}/Info.plist"/>
<filter token="version" value="${acVersion}"/>
<copy file="${mac.dir}/Info.plist" todir="${mac.Contents}" filtering="true"/>
<copy file="${guijar}" tofile="${mac.Java}/AppleCommander.jar"/>
<copy file="${cmdjar}" tofile="${user.home}/bin/ac.jar"/>
<zip destfile="${maczip}">
<zipfileset dir="${mac.app}" prefix="AppleCommander.app"/>
<zipfileset dir="${mac.app}" prefix="AppleCommander.app"
includes="Contents/MacOS/JavaApplicationStub" filemode="755"/>
</zip>
</target>
2003-03-16 05:27:04 +00:00
<target name="sourceZip" depends="init" description="Build source ZIP archive">
2004-06-18 05:13:45 +00:00
<zip zipfile="${srczip}">
2003-03-16 05:27:04 +00:00
<zipfileset dir=".">
<include name="ECLIPSE-CONFIG"/>
<include name="HEADER"/>
<include name="LICENSE"/>
<include name="NATIVE-COMPILE"/>
<include name="TODO"/>
<include name="VERSIONS"/>
</zipfileset>
<zipfileset dir="${source}" prefix="${source}">
<include name="**/*.java"/>
<include name="**/*.dump"/>
<include name="**/*.properties"/>
<include name="**/*.gif"/>
</zipfileset>
2004-06-18 05:13:45 +00:00
<zipfileset dir="${testsrc}" prefix="${testsrc}">
<include name="**/*.java"/>
<include name="**/*.dump"/>
<include name="**/*.properties"/>
<include name="**/*.gif"/>
</zipfileset>
2003-03-16 05:27:04 +00:00
<zipfileset dir="${build}" prefix="${build}"/>
<zipfileset dir="${doc}" prefix="${doc}">
<include name="**/*.txt"/>
</zipfileset>
<zipfileset dir="${web}" prefix="${web}">
<include name="**/*.html"/>
<include name="**/*.gif"/>
<include name="**/*.png"/>
</zipfileset>
</zip>
</target>
2004-06-18 05:13:45 +00:00
<target name="javadoc" depends="init" description="Build javadoc">
<javadoc destdir="${javadoc}" author="true" windowtitle="AppleCommander ${acVersion} JavaDoc"
2004-06-18 05:13:45 +00:00
classpath="${swtjar};${junitjar}">
<fileset dir="${source}"/>
<fileset dir="${testsrc}"/>
</javadoc>
</target>
<target name="websiteZip" depends="javadoc" description="Build website ZIP archive">
<zip zipfile="${webzip}">
<zipfileset dir="${web}">
2004-06-18 05:13:45 +00:00
<include name="**/*.html"/>
<include name="**/*.gif"/>
<include name="**/*.png"/>
</zipfileset>
<zipfileset dir="${javadoc}" prefix="javadoc"/>
2004-06-18 05:13:45 +00:00
</zip>
</target>
2003-03-16 05:27:04 +00:00
</project>