source: trunk/build.xml@ 1004

Last change on this file since 1004 was 1004, checked in by davidb, 8 years ago

Changed to making the portable jar version of Expeditee target the one that is the default name 'jar', the one that needs to be in the right currrent working directory is now 'jar-cwd'

File size: 6.6 KB
Line 
1<?xml version="1.0" encoding="UTF-8" standalone="no"?>
2<project basedir="." default="build" name="Expeditee">
3
4 <tstamp>
5 <format property="TODAY_EXP" pattern="yy.MM.dd"/>
6 </tstamp>
7
8 <property environment="env"/>
9
10 <property name="dist.dir.exp" location="releases" />
11 <!--
12 <property name="dist.filename.exp" value="Exp.${TODAY_EXP}.jar" />
13 -->
14 <property name="dist.filename.exp" value="Expeditee.jar" />
15 <property name="build.dir.exp" location="bin" />
16 <property name="manifest.path.exp" value="makeFiles/Manifest.txt" />
17 <property name="lib.dir.exp" location="releases/jars" />
18 <property name="inst.dir.exp" location="inst" />
19
20 <!--
21 If changing this value, make sure you run `ant clean`
22 -->
23 <property name="javac.source" value="1.8" />
24 <property name="javac.target" value="${javac.source}" />
25
26 <property name="expeditee.server.port" value="3000"/>
27
28 <union id="portable.includes.exp">
29 <zipfileset excludes="META-INF/*.SF" src="releases/jars/junit.jar"/>
30 <zipfileset excludes="META-INF/*.SF" src="releases/jars/activation.jar"/>
31 <zipfileset excludes="META-INF/*.SF" src="releases/jars/cobra.jar"/>
32 <zipfileset excludes="META-INF/*.SF" src="releases/jars/iText-2.1.3.jar"/>
33 <zipfileset excludes="META-INF/*.SF" src="releases/jars/jcommon-1.0.13.jar"/>
34 <zipfileset excludes="META-INF/*.SF" src="releases/jars/JEP.jar"/>
35 <zipfileset excludes="META-INF/*.SF" src="releases/jars/JFreeCharts.jar"/>
36 <zipfileset excludes="META-INF/*.SF" src="releases/jars/js.jar"/>
37 <zipfileset excludes="META-INF/*.SF" src="releases/jars/lobo.jar"/>
38 <zipfileset excludes="META-INF/*.SF" src="releases/jars/lobo-pub.jar"/>
39 <zipfileset excludes="META-INF/*.SF" src="releases/jars/mail.jar"/>
40 <zipfileset excludes="META-INF/*.SF" src="releases/jars/xercesImpl.jar"/>
41 <zipfileset excludes="META-INF/*.SF" src="releases/jars/jazzy-core.jar"/>
42 <zipfileset excludes="META-INF/*.SF" src="releases/jars/PDFRenderer-0.9.1.jar"/>
43 <zipfileset excludes="META-INF/*.SF" src="releases/jars/json-simple-1.1.1.jar"/>
44 <zipfileset excludes="META-INF/*.SF" src="releases/jars/commons-cli-1.2.jar"/>
45 <zipfileset excludes="META-INF/*.SF" src="releases/jars/jgraphx.jar"/>
46 <zipfileset excludes="META-INF/*.SF" src="releases/jars/svgSalamander.jar"/>
47 </union>
48
49 <path id="classpath.exp">
50 <fileset dir="${lib.dir.exp}">
51 <include name="*.jar" />
52 <include name="ext/*.jar" />
53 </fileset>
54 </path>
55
56 <path id="classpath.jfx">
57 <!-- Check this points to an existing file, if you can't find the jar just compile with build-nojfx -->
58 <pathelement location="${java.home}/lib/jfxrt.jar"/>
59 </path>
60
61 <target name="clean">
62 <!-- delete only the class files built by expeditee -->
63 <delete dir="${build.dir.exp}/org"/>
64 <delete dir="${inst.dir.exp}" />
65 </target>
66 <target depends="clean" name="cleanall"/>
67
68 <target name="init">
69 <echo message="${ant.project.name}: ${ant.file}"/>
70 <mkdir dir="${build.dir.exp}"/>
71 <copy includeemptydirs="false" todir="${build.dir.exp}">
72 <fileset dir="src">
73 <exclude name="**/*.java"/>
74 </fileset>
75 </copy>
76 <copy includeemptydirs="false" todir="${build.dir.exp}">
77 <fileset dir="tests">
78 <exclude name="**/*.java"/>
79 </fileset>
80 </copy>
81 </target>
82
83 <target depends="init" name="build">
84 <javac source="${javac.source}" target="${javac.target}" debug="true"
85 destdir="${build.dir.exp}" includeantruntime="false">
86
87 <src path="src"/>
88 <src path="tests"/>
89
90 <exclude name="org/expeditee/items/widgets/WebBrowser.java"/>
91
92 <classpath>
93 <path refid="classpath.exp"/>
94
95 <!-- jfxrt.jar path -->
96 <path refid="classpath.jfx"/>
97 </classpath>
98 </javac>
99 </target>
100
101 <target depends="init" name="build-nojfx">
102 <javac source="${javac.source}" target="${javac.target}" debug="false"
103 destdir="${build.dir.exp}" includeantruntime="false">
104
105 <src path="tests"/>
106 <src path="src"/>
107 <exclude name="org/expeditee/items/widgets/WebBrowser.java"/>
108
109 <!-- Files that rely on JavaFX. Use build to build with them included -->
110 <exclude name="org/expeditee/items/widgets/JfxBrowser.java"/>
111 <exclude name="org/expeditee/io/WebParser.java"/>
112 <exclude name="org/expeditee/items/widgets/JfxMedia.java"/>
113 <exclude name="org/expeditee/actions/JfxBrowserActions.java"/>
114
115 <classpath refid="classpath.exp"/>
116 </javac>
117 </target>
118
119
120
121 <target depends="build" name="jar-cwd"> <!-- version to run if current working directory (cwd) same as jar -->
122 <jar destfile="${dist.dir.exp}/${dist.filename.exp}" manifest="${manifest.path.exp}">
123 <manifest>
124 <attribute name="Main-Class" value="org.expeditee.gui.Browser"/>
125 <attribute name="Class-Path" value="."/>
126 </manifest>
127 <fileset dir="${build.dir.exp}">
128 <exclude name="src/**"/>
129 </fileset>
130 </jar>
131 </target>
132 <target depends="build" name="jar"> <!-- self-contained, portable jar -->
133 <jar destfile="${dist.dir.exp}/${dist.filename.exp}" filesetmanifest="mergewithoutmain">
134 <manifest>
135 <attribute name="Main-Class" value="org.expeditee.gui.Browser"/>
136 <attribute name="Class-Path" value="."/>
137 </manifest>
138 <fileset dir="${build.dir.exp}">
139 <exclude name="src/**"/>
140 </fileset>
141 <resources refid="portable.includes.exp" />
142 </jar>
143 </target>
144 <target depends="jar" name="inst">
145 <mkdir dir="${inst.dir.exp}" />
146 <mkdir dir="${inst.dir.exp}/jars" />
147 <copy file="${dist.dir.exp}/${dist.filename.exp}" tofile="${inst.dir.exp}/${dist.filename.exp}" />
148 <copy todir="${inst.dir.exp}/jars">
149 <path refid="classpath.exp" />
150 </copy>
151 </target>
152
153 <target name="run">
154 <java classname="org.expeditee.gui.Browser" failonerror="true" fork="yes">
155 <classpath>
156 <path refid="classpath.exp"/>
157
158 <!-- jfxrt.jar path -->
159 <path refid="classpath.jfx"/>
160
161 <pathelement location="${build.dir.exp}"/>
162 </classpath>
163 </java>
164 </target>
165
166 <target name="run-fresh">
167 <java classname="org.expeditee.gui.Browser" failonerror="true" fork="yes">
168 <classpath refid="classpath.exp"/>
169 <classpath>
170 <pathelement location="${build.dir.exp}"/>
171 </classpath>
172 <jvmarg value="-Dexpeditee.home=${user.dir}/expeditee-fresh"/>
173 </java>
174 </target>
175
176
177
178
179 <target name="run-server">
180 <echo>Launching Command-line Expeditee Server on port ${expeditee.server.port}</echo>
181 <java classname="org.expeditee.network.FrameShare" failonerror="true" fork="yes">
182 <classpath refid="classpath.exp"/>
183 <classpath>
184 <pathelement location="${build.dir.exp}"/>
185 </classpath>
186 <jvmarg value="-Dexpeditee.home=${user.dir}/expeditee-home"/>
187 <arg value="${expeditee.server.port}"/>
188 </java>
189 </target>
190</project>
Note: See TracBrowser for help on using the repository browser.