1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146
|
<?xml version="1.0" ?>
<project name="SPREAD" default="dist" basedir=".">
<description>
Build file for packaging SPREAD
$Id:$
</description>
<property environment="env"/>
<property name="version" value="1.0" />
<property name="release_dir" value="." />
<property name="name" value="SPREAD" />
<property name="dist" value="../dist" />
<property name="tools_dir" value="${release_dir}/tools" />
<property name="common_dir" value="${release_dir}/common" />
<property name="Mac_dir" value="${release_dir}/Mac" />
<property name="Linux_dir" value="${release_dir}/Linux" />
<property name="Windows_dir" value="${release_dir}/Windows" />
<property name="Mac_package_dir" value="${Mac_dir}/${name} v${version}" />
<property name="Linux_package_dir" value="${Linux_dir}/${name}_v${version}" />
<property name="Windows_package_dir" value="${Windows_dir}/${name} v${version}" />
<!-- Need to either install Launch4j under {BEAST workspace}/${release}
or install it in the default directory and change the location of launch4j.dir -->
<target name="windows" description="release Windows version">
<delete dir="${Windows_package_dir}" />
<!-- Create the release directory -->
<mkdir dir="${Windows_package_dir}" />
<property name="launch4j.dir" location="${tools_dir}/launch4j" />
<taskdef name="launch4j" classname="net.sf.launch4j.ant.Launch4jTask"
classpath="${launch4j.dir}/launch4j.jar :${launch4j.dir}/lib/xstream.jar" />
<copy file="${dist}/spread.jar" todir="${Windows_package_dir}/lib"/>
<copy todir="${Windows_package_dir}/lib">
<fileset dir="${Windows_dir}/lib"/>
</copy>
<copy todir="${Windows_package_dir}">
<fileset dir="${common_dir}/"/>
</copy>
<launch4j configFile="${Windows_dir}/SPREAD_launch4j.xml"
jar="${dist}/spread.jar"
outfile="${Windows_package_dir}/${name} v${version}.exe"
fileVersion="${version}.0.0"
txtFileVersion="${version}"
productVersion="${version}.0.0"
txtProductVersion="${version}"/>
<zip destfile="${release_dir}/${name} v${version}.zip">
<zipfileset dir="${Windows_package_dir}" prefix="${name} v${version}"/>
</zip>
<echo message="Windows version release is finished." />
</target>
<target name="linux" description="release Linux/Unix version">
<delete dir="${Linux_package_dir}" />
<!-- Create the release directory -->
<mkdir dir="${Linux_package_dir}" />
<copy todir="${Linux_package_dir}/bin">
<fileset dir="${Linux_dir}/scripts"/>
</copy>
<copy file="${Linux_dir}/icons/spread.png" todir="${Linux_package_dir}/images"/>
<copy file="${dist}/spread.jar" todir="${Linux_package_dir}/lib"/>
<copy todir="${Linux_package_dir}/lib">
<fileset dir="${Linux_dir}/lib"/>
</copy>
<copy todir="${Linux_package_dir}">
<fileset dir="${common_dir}/"/>
</copy>
<tar destfile="${release_dir}/${name}_v${version}.tgz" compression="gzip">
<tarfileset dir="${Linux_package_dir}" prefix="${name}_v${version}"/>
</tar>
<echo message="Linux/Unix version release is finished." />
</target>
<target name="mac" description="release Mac version">
<delete dir="${Mac_package_dir}" />
<!-- Create the release directory -->
<mkdir dir="${Mac_package_dir}" />
<copy todir="${Mac_package_dir}">
<fileset dir="${common_dir}/"/>
</copy>
<taskdef name="jarbundler" classname="net.sourceforge.jarbundler.JarBundler" classpath="${tools_dir}/jarbundler-2.1.0.jar"/>
<!-- create a jar bundle for the mac -->
<jarbundler dir="${Mac_package_dir}"
name="${name} v${version}"
mainclass="gui.SpreadApp"
icon="${Mac_dir}/icons/SPREAD.icns"
jvmversion="1.5+"
vmoptions="-Xmx512M"
arguments=""
version="${version}"
infostring="${name} v${version}, Copyright 2011, Filip Bielejec, Andrew Rambaut, Marc A. Suchard & Philippe Lemey"
bundleid="spread" >
<javaproperty name="apple.laf.useScreenMenuBar" value="true"/>
<jarfileset dir="${dist}">
<include name="**/spread.jar"/>
</jarfileset>
<jarfileset dir="${Mac_dir}/lib">
<include name="**/quaqua.jar"/>
</jarfileset>
<jarfileset dir="${Mac_dir}/lib">
<include name="libquaqua*.jnilib"/>
</jarfileset>
<!--
<documenttype name="SPREAD file"
extensions="spread"
iconFile="${Mac_dir}/icons/SPREADDocIcon.icns"
role="Editor"/>
-->
</jarbundler>
<echo message="Building disk image." />
<!-- create disk image -->
<exec executable="/usr/bin/hdiutil">
<arg value="create"/>
<arg value="-ov"/>
<arg value="-srcfolder"/>
<arg value="${Mac_package_dir}"/>
<arg value="-volname"/>
<arg value="${name} v${version}"/>
<arg value="-imagekey"/>
<arg value="zlib-level=6"/>
<arg value="${release_dir}/${name} v${version}.dmg"/>
</exec>
<echo message="Mac version release is finished." />
</target>
</project>
|