source: tags/before-jfx-rewrite/build.xml@ 1096

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

Refactoring to allow support for additional scriptable languages. In this case, Python being added in through Jythohn Java library

File size: 6.9 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/jython-standalone-2.7.0.jar"/>
38 <zipfileset excludes="META-INF/*.SF" src="releases/jars/lobo.jar"/>
39 <zipfileset excludes="META-INF/*.SF" src="releases/jars/lobo-pub.jar"/>
40 <zipfileset excludes="META-INF/*.SF" src="releases/jars/mail.jar"/>
41 <zipfileset excludes="META-INF/*.SF" src="releases/jars/xercesImpl.jar"/>
42 <zipfileset excludes="META-INF/*.SF" src="releases/jars/jazzy-core.jar"/>
43 <zipfileset excludes="META-INF/*.SF" src="releases/jars/PDFRenderer-0.9.1.jar"/>
44 <zipfileset excludes="META-INF/*.SF" src="releases/jars/json-simple-1.1.1.jar"/>
45 <zipfileset excludes="META-INF/*.SF" src="releases/jars/commons-cli-1.2.jar"/>
46 <zipfileset excludes="META-INF/*.SF" src="releases/jars/jgraphx.jar"/>
47 <zipfileset excludes="META-INF/*.SF" src="releases/jars/svgSalamander.jar"/>
48 <zipfileset excludes="META-INF/*.SF" src="releases/jars/jl1.0.1.jar"/>
49 <zipfileset excludes="META-INF/*.SF" src="releases/jars/tritonus_share.jar"/>
50 <zipfileset excludes="META-INF/*.SF" src="releases/jars/mp3spi1.9.5.jar"/>
51 </union>
52
53 <path id="classpath.exp">
54 <fileset dir="${lib.dir.exp}">
55 <include name="*.jar" />
56 <include name="ext/*.jar" />
57 </fileset>
58 </path>
59
60 <path id="classpath.jfx">
61 <!-- Check this points to an existing file, if you can't find the jar just compile with build-nojfx -->
62 <pathelement location="${java.home}/lib/jfxrt.jar"/>
63 </path>
64
65 <target name="clean">
66 <!-- delete only the class files built by expeditee -->
67 <delete dir="${build.dir.exp}/org"/>
68 <delete dir="${inst.dir.exp}" />
69 </target>
70 <target depends="clean" name="cleanall"/>
71
72 <target name="init">
73 <echo message="${ant.project.name}: ${ant.file}"/>
74 <mkdir dir="${build.dir.exp}"/>
75 <copy includeemptydirs="false" todir="${build.dir.exp}">
76 <fileset dir="src">
77 <exclude name="**/*.java"/>
78 </fileset>
79 </copy>
80 <copy includeemptydirs="false" todir="${build.dir.exp}">
81 <fileset dir="tests">
82 <exclude name="**/*.java"/>
83 </fileset>
84 </copy>
85 </target>
86
87 <target depends="init" name="build">
88 <javac source="${javac.source}" target="${javac.target}" debug="true"
89 destdir="${build.dir.exp}" includeantruntime="false">
90
91 <src path="src"/>
92 <src path="tests"/>
93
94 <exclude name="org/expeditee/items/widgets/WebBrowser.java"/>
95
96 <classpath>
97 <path refid="classpath.exp"/>
98
99 <!-- jfxrt.jar path -->
100 <path refid="classpath.jfx"/>
101 </classpath>
102 </javac>
103 </target>
104
105 <target depends="init" name="build-nojfx">
106 <javac source="${javac.source}" target="${javac.target}" debug="false"
107 destdir="${build.dir.exp}" includeantruntime="false">
108
109 <src path="tests"/>
110 <src path="src"/>
111 <exclude name="org/expeditee/items/widgets/WebBrowser.java"/>
112
113 <!-- Files that rely on JavaFX. Use build to build with them included -->
114 <exclude name="org/expeditee/items/widgets/JfxBrowser.java"/>
115 <exclude name="org/expeditee/io/WebParser.java"/>
116 <exclude name="org/expeditee/items/widgets/JfxMedia.java"/>
117 <exclude name="org/expeditee/actions/JfxBrowserActions.java"/>
118
119 <classpath refid="classpath.exp"/>
120 </javac>
121 </target>
122
123
124
125 <target depends="build" name="jar-cwd"> <!-- version to run if current working directory (cwd) same as jar -->
126 <jar destfile="${dist.dir.exp}/${dist.filename.exp}" manifest="${manifest.path.exp}">
127 <manifest>
128 <attribute name="Main-Class" value="org.apollo.ApolloSystem"/>
129 <attribute name="Class-Path" value="."/>
130 </manifest>
131 <fileset dir="${build.dir.exp}">
132 <exclude name="src/**"/>
133 </fileset>
134 </jar>
135 </target>
136 <target depends="build" name="jar"> <!-- self-contained, portable jar -->
137 <jar destfile="${dist.dir.exp}/${dist.filename.exp}" filesetmanifest="mergewithoutmain">
138 <manifest>
139 <attribute name="Main-Class" value="org.apollo.ApolloSystem"/>
140 <attribute name="Class-Path" value="."/>
141 </manifest>
142 <fileset dir="${build.dir.exp}">
143 <exclude name="src/**"/>
144 </fileset>
145 <resources refid="portable.includes.exp" />
146 </jar>
147 </target>
148 <target depends="jar" name="inst">
149 <mkdir dir="${inst.dir.exp}" />
150 <mkdir dir="${inst.dir.exp}/jars" />
151 <copy file="${dist.dir.exp}/${dist.filename.exp}" tofile="${inst.dir.exp}/${dist.filename.exp}" />
152 <copy todir="${inst.dir.exp}/jars">
153 <path refid="classpath.exp" />
154 </copy>
155 </target>
156
157 <target name="run">
158 <java classname="org.apollo.ApolloSystem" failonerror="true" fork="yes">
159 <classpath>
160 <path refid="classpath.exp"/>
161
162 <!-- jfxrt.jar path -->
163 <path refid="classpath.jfx"/>
164
165 <pathelement location="${build.dir.exp}"/>
166 </classpath>
167 </java>
168 </target>
169
170 <target name="run-fresh">
171 <java classname="org.apollo.ApolloSystem" failonerror="true" fork="yes">
172 <classpath refid="classpath.exp"/>
173 <classpath>
174 <pathelement location="${build.dir.exp}"/>
175 </classpath>
176 <jvmarg value="-Dexpeditee.home=${user.dir}/expeditee-fresh"/>
177 </java>
178 </target>
179
180
181
182
183 <target name="run-server">
184 <echo>Launching Command-line Expeditee Server on port ${expeditee.server.port}</echo>
185 <java classname="org.expeditee.network.FrameShare" failonerror="true" fork="yes">
186 <classpath refid="classpath.exp"/>
187 <classpath>
188 <pathelement location="${build.dir.exp}"/>
189 </classpath>
190 <jvmarg value="-Dexpeditee.home=${user.dir}/expeditee-home"/>
191 <arg value="${expeditee.server.port}"/>
192 </java>
193 </target>
194</project>
Note: See TracBrowser for help on using the repository browser.