OSDN Git Service

Android: Refactor AndroidAudioRenderer into an interface with 2 implementations ...
[mikumikustudio/MikuMikuStudio.git] / engine / build.xml
1 <?xml version="1.0" encoding="UTF-8"?>\r
2 \r
3 <project xmlns:j2seproject1="http://www.netbeans.org/ns/j2se-project/1" xmlns:j2seproject3="http://www.netbeans.org/ns/j2se-project/3" xmlns:jaxrpc="http://www.netbeans.org/ns/j2se-project/jax-rpc" name="jMonkeyEngine3" default="default" basedir=".">\r
4     <description>Builds, tests, and runs the jMonkeyEngine3 core engine.</description>\r
5     <import file="nbproject/build-impl.xml"/>\r
6 \r
7     <target depends="jar,javadoc" description="Build and test whole project." name="default"/>\r
8 \r
9     <target name="build-bullet-natives" description="uses native build tools to build the bulletjme binary (read bullet-native-build.txt for more info)" depends="jar">\r
10         <ant antfile="nbproject/build-bullet-natives.xml" target="build-bullet-natives"/>\r
11     </target>\r
12 \r
13     <target name="run-bullet-native" description="runs the jMonkeyEngine3 demos using native bullet" depends="init">\r
14         <copy file="${dist.dir}/opt/native-bullet/jME3-bullet-natives.jar" todir="${dist.dir}/lib" failonerror="false"/>\r
15         <copy file="${dist.dir}/opt/native-bullet/jME3-bullet.jar" todir="${dist.dir}/lib" failonerror="false"/>\r
16         <delete file="${dist.dir}/lib/jME3-jbullet.jar" failonerror="false"/>\r
17         <exec executable="java" dir="dist">\r
18             <arg line="${run.jvmargs} -jar jMonkeyEngine3.jar"/>\r
19         </exec>\r
20     </target>\r
21 \r
22     <target name="build-openal-soft-natives" description="uses native build tools to build the openalsoftjme shared library for Android" depends="jar">\r
23         <ant antfile="nbproject/build-openal-soft-natives.xml" target="build-openal-soft-natives"/>\r
24     </target>\r
25 \r
26     <target name="-do-compile" description="Overrides default compile target to separate the build into folders" depends="init,deps-jar,-pre-pre-compile,-pre-compile, -copy-persistence-xml,-compile-depend" if="have.sources">\r
27         <mkdir dir="${build.dir}/core"/>\r
28         <mkdir dir="${build.dir}/effects"/>\r
29         <mkdir dir="${build.dir}/networking"/>\r
30         <mkdir dir="${build.dir}/plugins"/>\r
31         <mkdir dir="${build.dir}/jogg"/>\r
32         <mkdir dir="${build.dir}/blender"/>\r
33         <mkdir dir="${build.dir}/desktop"/>\r
34         <mkdir dir="${build.dir}/terrain"/>\r
35         <mkdir dir="${build.dir}/jbullet"/>\r
36         <mkdir dir="${build.dir}/bullet"/>\r
37         <mkdir dir="${build.dir}/niftygui"/>\r
38         <mkdir dir="${build.dir}/jogl"/>\r
39         <mkdir dir="${build.dir}/lwjgl"/>\r
40         <mkdir dir="${build.dir}/android"/>\r
41         <mkdir dir="${build.dir}/ios"/>\r
42 \r
43         <echo>Compile Core</echo>\r
44         <j2seproject3:javac\r
45             destdir="${build.dir}/core"\r
46             srcdir="${src.core.dir}:${src.core-data.dir}:${src.core-plugins.dir}:${src.tools.dir}"\r
47             gensrcdir="${build.generated.sources.dir}"/>\r
48         <copy todir="${build.dir}/core">\r
49             <fileset dir="${src.core.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>\r
50             <fileset dir="${src.core-data.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>\r
51             <fileset dir="${src.core-plugins.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>\r
52             <fileset dir="${src.tools.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>\r
53         </copy>\r
54 \r
55         <echo>Compile Effects</echo>\r
56         <j2seproject3:javac\r
57             destdir="${build.dir}/effects"\r
58             srcdir="${src.core-effects.dir}"\r
59             classpath="${javac.classpath}:${build.dir}/core"\r
60             gensrcdir="${build.generated.sources.dir}"/>\r
61         <copy todir="${build.dir}/effects">\r
62             <fileset dir="${src.core-effects.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>\r
63         </copy>\r
64 \r
65         <echo>Compile Networking</echo>\r
66         <j2seproject3:javac\r
67             destdir="${build.dir}/networking"\r
68             srcdir="${src.networking.dir}"\r
69             classpath="${javac.classpath}:${build.dir}/core"\r
70             gensrcdir="${build.generated.sources.dir}"/>\r
71         <copy todir="${build.dir}/networking">\r
72             <fileset dir="${src.networking.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>\r
73         </copy>\r
74 \r
75         <echo>Compile Plugins</echo>\r
76         <j2seproject3:javac\r
77             destdir="${build.dir}/plugins"\r
78             srcdir="${src.ogre.dir}:${src.xml.dir}"\r
79             classpath="${javac.classpath}:${build.dir}/core"\r
80             gensrcdir="${build.generated.sources.dir}"/>\r
81         <copy todir="${build.dir}/plugins">\r
82             <fileset dir="${src.ogre.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>\r
83             <fileset dir="${src.xml.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>\r
84         </copy>\r
85 \r
86         <echo>Compile Jogg</echo>\r
87         <j2seproject3:javac\r
88             destdir="${build.dir}/jogg"\r
89             srcdir="${src.jogg.dir}"\r
90             classpath="${javac.classpath}:${build.dir}/core"\r
91             gensrcdir="${build.generated.sources.dir}"/>\r
92         <copy todir="${build.dir}/jogg">\r
93             <fileset dir="${src.jogg.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>\r
94         </copy>\r
95 \r
96         <echo>Compile Desktop</echo>\r
97         <j2seproject3:javac\r
98             destdir="${build.dir}/desktop"\r
99             srcdir="${src.desktop.dir}"\r
100             classpath="${javac.classpath}:${build.dir}/core"\r
101             gensrcdir="${build.generated.sources.dir}"/>\r
102         <copy todir="${build.dir}/desktop">\r
103             <fileset dir="${src.desktop.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>\r
104         </copy>\r
105 \r
106         <echo>Compile Blender Loader</echo>\r
107         <j2seproject3:javac\r
108             destdir="${build.dir}/blender"\r
109             srcdir="${src.blender.dir}"\r
110             classpath="${javac.classpath}:${build.dir}/core:${build.dir}/plugins:${build.dir}/desktop"\r
111             gensrcdir="${build.generated.sources.dir}"/>\r
112         <copy todir="${build.dir}/blender">\r
113             <fileset dir="${src.blender.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>\r
114         </copy>\r
115 \r
116         <echo>Compile Terrain</echo>\r
117         <j2seproject3:javac\r
118             destdir="${build.dir}/terrain"\r
119             srcdir="${src.terrain.dir}"\r
120             classpath="${javac.classpath}:${build.dir}/core:${build.dir}/desktop"\r
121             gensrcdir="${build.generated.sources.dir}"/>\r
122         <copy todir="${build.dir}/terrain">\r
123             <fileset dir="${src.terrain.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>\r
124         </copy>\r
125 \r
126         <echo>Compile jBullet</echo>\r
127         <j2seproject3:javac\r
128             destdir="${build.dir}/jbullet"\r
129             srcdir="${src.jbullet.dir}:${src.bullet-common.dir}"\r
130             classpath="${javac.classpath}:${build.dir}/core:${build.dir}/terrain"\r
131             gensrcdir="${build.generated.sources.dir}"/>\r
132         <copy todir="${build.dir}/jbullet">\r
133             <fileset dir="${src.jbullet.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>\r
134             <fileset dir="${src.bullet-common.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>\r
135         </copy>\r
136 \r
137         <echo>Compile Bullet</echo>\r
138         <j2seproject3:javac\r
139             destdir="${build.dir}/bullet"\r
140             srcdir="${src.bullet.dir}:${src.bullet-common.dir}"\r
141             classpath="${javac.classpath}:${build.dir}/core:${build.dir}/terrain"\r
142             gensrcdir="${build.generated.sources.dir}"/>\r
143         <copy todir="${build.dir}/bullet">\r
144             <fileset dir="${src.bullet.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>\r
145             <fileset dir="${src.bullet-common.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>\r
146         </copy>\r
147 \r
148         <echo>Compile Nifty</echo>\r
149         <j2seproject3:javac\r
150             destdir="${build.dir}/niftygui"\r
151             srcdir="${src.niftygui.dir}"\r
152             classpath="${javac.classpath}:${build.dir}/core"\r
153             gensrcdir="${build.generated.sources.dir}"/>\r
154         <copy todir="${build.dir}/niftygui">\r
155             <fileset dir="${src.niftygui.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>\r
156         </copy>\r
157 \r
158         <echo>Compile Lwjgl</echo>\r
159         <j2seproject3:javac\r
160             destdir="${build.dir}/lwjgl"\r
161             srcdir="${src.lwjgl.dir}"\r
162             classpath="${javac.classpath}:${build.dir}/core:${build.dir}/desktop"\r
163             gensrcdir="${build.generated.sources.dir}"/>\r
164         <copy todir="${build.dir}/lwjgl">\r
165             <fileset dir="${src.lwjgl.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>\r
166         </copy>\r
167 \r
168         <echo>Compile JOGL</echo>\r
169         <j2seproject3:javac\r
170             destdir="${build.dir}/jogl"\r
171             srcdir="${src.jogl.dir}"\r
172             classpath="${javac.classpath}:${build.dir}/core:${build.dir}/desktop"\r
173             gensrcdir="${build.generated.sources.dir}"/>\r
174         <copy todir="${build.dir}/jogl">\r
175             <fileset dir="${src.jogl.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>\r
176         </copy>\r
177 \r
178         <echo>Compile Android</echo>\r
179         <j2seproject3:javac\r
180             destdir="${build.dir}/android"\r
181             srcdir="${src.android.dir}"\r
182             classpath="${javac.classpath}:${build.dir}/core:${build.dir}/plugins"\r
183             gensrcdir="${build.generated.sources.dir}"\r
184             excludes="${excludes},**/jme3test/**"\r
185             />\r
186         <copy todir="${build.dir}/android">\r
187             <fileset dir="${src.android.dir}" excludes="${build.classes.excludes},${excludes},**/jme3test/**,**/res/**" includes="${includes}"/>\r
188         </copy>\r
189 \r
190         <echo>Compile iOS</echo>\r
191         <j2seproject3:javac\r
192             destdir="${build.dir}/ios"\r
193             srcdir="${src.ios.dir}"\r
194             classpath="${javac.classpath}:${build.dir}/core:${build.dir}/plugins"\r
195             gensrcdir="${build.generated.sources.dir}"/>\r
196         <copy todir="${build.dir}/ios">\r
197             <fileset dir="${src.ios.dir}" excludes="${build.classes.excludes},${excludes},**/jme3test/**,**/res/**" includes="${includes}"/>\r
198         </copy>\r
199 \r
200         <echo>Compile Tests</echo>\r
201         <j2seproject3:javac\r
202             destdir="${build.classes.dir}"\r
203             srcdir="${src.test.dir}"\r
204             classpath="${javac.classpath}:${build.dir}/core:${build.dir}/effects:${build.dir}/networking:${build.dir}/plugins:${build.dir}/jogg:${build.dir}/desktop:${build.dir}/blender:${build.dir}/terrain:${build.dir}/jbullet:${build.dir}/niftygui"\r
205             gensrcdir="${build.generated.sources.dir}"/>\r
206         <copy todir="${build.classes.dir}">\r
207             <fileset dir="${src.test.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>\r
208         </copy>\r
209     </target>\r
210 \r
211     <target name="-pre-jar" description="Prepares the separate jME3-xxx.jar files and modifies properties for libraries to be used for lib/ folder, Manifest etc.">\r
212         <echo>Building Engine JAR files..</echo>\r
213         <jar jarfile="${build.dir}/jME3-core.jar" basedir="${build.dir}/core" compress="true"/>\r
214         <jar jarfile="${build.dir}/jME3-effects.jar" basedir="${build.dir}/effects" compress="true"/>\r
215         <jar jarfile="${build.dir}/jME3-networking.jar" basedir="${build.dir}/networking" compress="true"/>\r
216         <jar jarfile="${build.dir}/jME3-plugins.jar" basedir="${build.dir}/plugins" compress="true"/>\r
217         <jar jarfile="${build.dir}/jME3-jogg.jar" basedir="${build.dir}/jogg" compress="true"/>\r
218         <jar jarfile="${build.dir}/jME3-desktop.jar" basedir="${build.dir}/desktop" compress="true"/>\r
219         <jar jarfile="${build.dir}/jME3-blender.jar" basedir="${build.dir}/blender" compress="true"/>\r
220         <jar jarfile="${build.dir}/jME3-terrain.jar" basedir="${build.dir}/terrain" compress="true"/>\r
221         <jar jarfile="${build.dir}/jME3-jbullet.jar" basedir="${build.dir}/jbullet" compress="true"/>\r
222         <jar jarfile="${build.dir}/jME3-bullet.jar" basedir="${build.dir}/bullet" compress="true"/>\r
223         <jar jarfile="${build.dir}/jME3-niftygui.jar" basedir="${build.dir}/niftygui" compress="true"/>\r
224         <jar jarfile="${build.dir}/jME3-lwjgl.jar" basedir="${build.dir}/lwjgl" compress="true"/>\r
225         <jar jarfile="${build.dir}/jME3-jogl.jar" basedir="${build.dir}/jogl" compress="true"/>\r
226         <jar jarfile="${build.dir}/jME3-android.jar" basedir="${build.dir}/android" compress="true"/>\r
227         <jar jarfile="${build.dir}/jME3-ios.jar" basedir="${build.dir}/ios" compress="true"/>\r
228 \r
229         <echo>Building TestData JAR file..</echo>\r
230         <jar jarfile="${build.dir}/jME3-testdata.jar" basedir="test-data" compress="true"/>\r
231 \r
232         <property location="${build.classes.dir}" name="build.classes.dir.resolved"/>\r
233         <property location="${build.dir}" name="build.dir.resolved"/>\r
234 \r
235         <property location="test-data" name="testdata.dir.resolved"/>\r
236         <property location="lib/android/android.jar" name="android.jar.resolved"/>\r
237         <property location="lib/openal-soft/jME3-openal-soft-natives-android.jar" name="openal-soft.jar.resolved"/>\r
238 \r
239         <pathconvert property="run.classpath.without.build.classes.dir">\r
240             <path path="${run.classpath}"/>\r
241 \r
242             <map from="${build.classes.dir.resolved}" to=""/>\r
243             <map from="${build.dir.resolved}/core" to="${build.dir}/jME3-core.jar"/>\r
244             <map from="${build.dir.resolved}/effects" to="${build.dir}/jME3-effects.jar"/>\r
245             <map from="${build.dir.resolved}/networking" to="${build.dir}/jME3-networking.jar"/>\r
246             <map from="${build.dir.resolved}/plugins" to="${build.dir}/jME3-plugins.jar"/>\r
247             <map from="${build.dir.resolved}/jogg" to="${build.dir}/jME3-jogg.jar"/>\r
248             <map from="${build.dir.resolved}/desktop" to="${build.dir}/jME3-desktop.jar"/>\r
249             <map from="${build.dir.resolved}/blender" to="${build.dir}/jME3-blender.jar"/>\r
250             <map from="${build.dir.resolved}/terrain" to="${build.dir}/jME3-terrain.jar"/>\r
251             <map from="${build.dir.resolved}/jbullet" to="${build.dir}/jME3-jbullet.jar"/>\r
252             <map from="${build.dir.resolved}/bullet" to="${build.dir}/jME3-bullet.jar"/>\r
253             <map from="${build.dir.resolved}/niftygui" to="${build.dir}/jME3-niftygui.jar"/>\r
254             <map from="${build.dir.resolved}/lwjgl" to="${build.dir}/jME3-lwjgl.jar"/>\r
255             <map from="${build.dir.resolved}/jogl" to="${build.dir}/jME3-jogl.jar"/>\r
256             <map from="${build.dir.resolved}/android" to=""/>\r
257             <map from="${build.dir.resolved}/openal-soft" to=""/>\r
258             <map from="${build.dir.resolved}/ios" to=""/>\r
259             <map from="${testdata.dir.resolved}" to="${build.dir.resolved}/jME3-testdata.jar"/>\r
260             <map from="${android.jar.resolved}" to=""/>\r
261 \r
262         </pathconvert>\r
263     </target>\r
264 \r
265     <target name="-post-jar">\r
266         <echo>Moving optional packages</echo>\r
267         <mkdir dir="${dist.dir}/opt"/>\r
268         <mkdir dir="${dist.dir}/opt/native-bullet"/>\r
269         <mkdir dir="${dist.dir}/opt/jogl"/>\r
270         <!--ant antfile="nbproject/build-bullet-natives.xml" target="bullet-api-diff"/-->\r
271         <!--move file="bullet-api-diff.html" todir="${dist.dir}/opt/native-bullet" overwrite="true"/-->\r
272         <move file="${dist.dir}/lib/jME3-bullet.jar" todir="${dist.dir}/opt/native-bullet" overwrite="true"/>\r
273         <move file="${dist.dir}/lib/jME3-bullet-natives.jar" todir="${dist.dir}/opt/native-bullet" overwrite="true"/>\r
274         <copy file="lib/bullet/jME3-bullet-natives-android.jar" todir="${dist.dir}/opt/native-bullet" overwrite="true"/>\r
275 \r
276         <move file="${dist.dir}/lib/jME3-jogl.jar" todir="${dist.dir}/opt/jogl" overwrite="true"/>\r
277         <copy file="${dist.dir}/../lib/jogl/joal.jar" todir="${dist.dir}/opt/jogl" overwrite="true"/>\r
278         <copy file="${dist.dir}/../lib/jogl/joal-natives-linux-i586.jar" todir="${dist.dir}/opt/jogl" overwrite="true"/>\r
279         <copy file="${dist.dir}/../lib/jogl/joal-natives-linux-amd64.jar" todir="${dist.dir}/opt/jogl" overwrite="true"/>\r
280         <copy file="${dist.dir}/../lib/jogl/joal-natives-linux-armv6.jar" todir="${dist.dir}/opt/jogl" overwrite="true"/>\r
281         <copy file="${dist.dir}/../lib/jogl/joal-natives-linux-armv6hf.jar" todir="${dist.dir}/opt/jogl" overwrite="true"/>\r
282         <copy file="${dist.dir}/../lib/jogl/joal-natives-solaris-i586.jar" todir="${dist.dir}/opt/jogl" overwrite="true"/>\r
283         <copy file="${dist.dir}/../lib/jogl/joal-natives-solaris-amd64.jar" todir="${dist.dir}/opt/jogl" overwrite="true"/>\r
284         <copy file="${dist.dir}/../lib/jogl/joal-natives-macosx-universal.jar" todir="${dist.dir}/opt/jogl" overwrite="true"/>\r
285         <copy file="${dist.dir}/../lib/jogl/joal-natives-windows-i586.jar" todir="${dist.dir}/opt/jogl" overwrite="true"/>\r
286         <copy file="${dist.dir}/../lib/jogl/joal-natives-windows-amd64.jar" todir="${dist.dir}/opt/jogl" overwrite="true"/>\r
287         <copy file="${dist.dir}/../lib/jogl/gluegen-rt.jar" todir="${dist.dir}/opt/jogl" overwrite="true"/>\r
288         <copy file="${dist.dir}/../lib/jogl/gluegen-rt-natives-linux-i586.jar" todir="${dist.dir}/opt/jogl" overwrite="true"/>\r
289         <copy file="${dist.dir}/../lib/jogl/gluegen-rt-natives-linux-amd64.jar" todir="${dist.dir}/opt/jogl" overwrite="true"/>\r
290         <copy file="${dist.dir}/../lib/jogl/gluegen-rt-natives-linux-armv6.jar" todir="${dist.dir}/opt/jogl" overwrite="true"/>\r
291         <copy file="${dist.dir}/../lib/jogl/gluegen-rt-natives-linux-armv6hf.jar" todir="${dist.dir}/opt/jogl" overwrite="true"/>\r
292         <copy file="${dist.dir}/../lib/jogl/gluegen-rt-natives-solaris-i586.jar" todir="${dist.dir}/opt/jogl" overwrite="true"/>\r
293         <copy file="${dist.dir}/../lib/jogl/gluegen-rt-natives-solaris-amd64.jar" todir="${dist.dir}/opt/jogl" overwrite="true"/>\r
294         <copy file="${dist.dir}/../lib/jogl/gluegen-rt-natives-macosx-universal.jar" todir="${dist.dir}/opt/jogl" overwrite="true"/>\r
295         <copy file="${dist.dir}/../lib/jogl/gluegen-rt-natives-windows-i586.jar" todir="${dist.dir}/opt/jogl" overwrite="true"/>\r
296         <copy file="${dist.dir}/../lib/jogl/gluegen-rt-natives-windows-amd64.jar" todir="${dist.dir}/opt/jogl" overwrite="true"/>\r
297         <copy file="${dist.dir}/../lib/jogl/jogl-all.jar" todir="${dist.dir}/opt/jogl" overwrite="true"/>\r
298         <copy file="${dist.dir}/../lib/jogl/jogl-all-natives-linux-i586.jar" todir="${dist.dir}/opt/jogl" overwrite="true"/>\r
299         <copy file="${dist.dir}/../lib/jogl/jogl-all-natives-linux-amd64.jar" todir="${dist.dir}/opt/jogl" overwrite="true"/>\r
300         <copy file="${dist.dir}/../lib/jogl/jogl-all-natives-linux-armv6.jar" todir="${dist.dir}/opt/jogl" overwrite="true"/>\r
301         <copy file="${dist.dir}/../lib/jogl/jogl-all-natives-linux-armv6hf.jar" todir="${dist.dir}/opt/jogl" overwrite="true"/>\r
302         <copy file="${dist.dir}/../lib/jogl/jogl-all-natives-solaris-i586.jar" todir="${dist.dir}/opt/jogl" overwrite="true"/>\r
303         <copy file="${dist.dir}/../lib/jogl/jogl-all-natives-solaris-amd64.jar" todir="${dist.dir}/opt/jogl" overwrite="true"/>\r
304         <copy file="${dist.dir}/../lib/jogl/jogl-all-natives-macosx-universal.jar" todir="${dist.dir}/opt/jogl" overwrite="true"/>\r
305         <copy file="${dist.dir}/../lib/jogl/jogl-all-natives-windows-i586.jar" todir="${dist.dir}/opt/jogl" overwrite="true"/>\r
306         <copy file="${dist.dir}/../lib/jogl/jogl-all-natives-windows-amd64.jar" todir="${dist.dir}/opt/jogl" overwrite="true"/>\r
307 \r
308         <mkdir dir="${dist.dir}/opt/android"/>\r
309         <copy file="${build.dir}/jME3-android.jar" todir="${dist.dir}/opt/android" overwrite="true"/>\r
310         <mkdir dir="${dist.dir}/opt/native-openal-soft"/>\r
311         <copy file="lib/openal-soft/jME3-openal-soft-natives-android.jar" todir="${dist.dir}/opt/native-openal-soft" overwrite="true"/>\r
312         <mkdir dir="${dist.dir}/opt/ios"/>\r
313         <copy file="${build.dir}/jME3-ios.jar" todir="${dist.dir}/opt/ios" overwrite="true"/>\r
314     </target>\r
315 \r
316     <!--\r
317        ****************************************************************\r
318        Only Relevant for building the SDK from here on\r
319        ****************************************************************\r
320       -->\r
321 \r
322     <target name="update-sdk" depends="jar, javadoc" description="convenience target to transfer jme3 libraries to sdk (jMonkeyPlatform)">\r
323         <antcall target="-do-update-sdk" inheritall="true">\r
324             <param name="jmp_dir" value="../sdk/"/>\r
325         </antcall>\r
326     </target>\r
327 \r
328     <target name="-do-update-sdk">\r
329         <fileset id="jme3-jars" dir="build">\r
330             <include name="**/jME3**.jar"/>\r
331             <exclude name="**/jME3-testdata.jar"/>\r
332             <exclude name="**/jME3-bullet-natives.jar"/>\r
333             <exclude name="**/jME3-bullet-natives-android.jar"/>\r
334         </fileset>\r
335         <fileset id="jme3-sdk-jars" dir="build">\r
336             <include name="**/jME3**.jar"/>\r
337             <exclude name="**/jME3-android.jar"/>\r
338             <exclude name="**/jME3-testdata.jar"/>\r
339             <exclude name="**/jME3-bullet.jar"/>\r
340             <exclude name="**/jME3-bullet-natives.jar"/>\r
341             <exclude name="**/jME3-bullet-natives-android.jar"/>\r
342         </fileset>\r
343         <fileset id="jme3-bullet-native-jars" dir="${dist.dir}/opt/native-bullet">\r
344             <include name="**/jME3-bullet-native**.jar"/>\r
345         </fileset>\r
346         <fileset id="jme3-testdata-jars" dir="build">\r
347             <include name="**/jME3-testdata.jar"/>\r
348         </fileset>\r
349         <fileset id="jme3-lwjgl-native-jars" dir="${dist.dir}/lib">\r
350             <include name="**/jME3-lwjgl-natives.jar"/>\r
351         </fileset>\r
352         <fileset id="jme3-external-libraries" dir="${dist.dir}/lib/">\r
353             <exclude name="jME3-**"/>\r
354             <exclude name="**/nifty-examples.jar"/>\r
355         </fileset>\r
356         <echo>Clearing old files</echo>\r
357         <delete dir="${jmp_dir}/JME3TestsTemplate/src/"/>\r
358         <delete dir="${jmp_dir}/jme3-core-baselibs/release/modules/ext/"/>\r
359         <delete dir="${jmp_dir}/jme3-core-libraries/release/modules/ext/"/>\r
360         <delete dir="${jmp_dir}/jme3-project-libraries/release/libs/"/>\r
361         <delete dir="${jmp_dir}/jme3-project-baselibs/release/libs/"/>\r
362         <delete dir="${jmp_dir}/jme3-project-testdata/release/libs/"/>\r
363 \r
364         <echo>Copying jMonkeyPlatform jME3 libs</echo>\r
365         <copy toDir="${jmp_dir}/jme3-core-baselibs/release/modules/ext/" overwrite="true" failonerror="true" verbose="false" flatten="true">\r
366             <fileset refid="jme3-sdk-jars"/>\r
367             <!--natives need to be in jme3 package for jme to work in jMP-->\r
368             <fileset refid="jme3-lwjgl-native-jars"/>\r
369         </copy>\r
370 \r
371         <echo>Copying jMonkeyPlatform external libraries</echo>\r
372         <copy todir="${jmp_dir}/jme3-core-libraries/release/modules/ext/" overwrite="true" failonerror="true" verbose="false" flatten="true">\r
373             <fileset refid="jme3-external-libraries"/>\r
374         </copy>\r
375 \r
376         <echo>Copying Project jME3 libs</echo>\r
377         <copy toDir="${jmp_dir}/jme3-project-baselibs/release/libs/" overwrite="true" failonerror="true" verbose="false" flatten="true">\r
378             <fileset refid="jme3-jars"/>\r
379         </copy>\r
380 \r
381         <echo>Copying Project external libraries</echo>\r
382         <copy todir="${jmp_dir}/jme3-project-libraries/release/libs/" overwrite="true" failonerror="true" verbose="false" flatten="true">\r
383             <fileset refid="jme3-external-libraries"/>\r
384             <fileset refid="jme3-lwjgl-native-jars"/>\r
385             <fileset refid="jme3-bullet-native-jars"/>\r
386         </copy>\r
387 \r
388         <echo>Copying Test Project Data</echo>\r
389         <copy toDir="${jmp_dir}/jme3-project-testdata/release/libs/" overwrite="true" failonerror="true" verbose="false">\r
390             <fileset refid="jme3-testdata-jars"/>\r
391         </copy>\r
392 \r
393         <echo>Copying Javadoc</echo>\r
394         <zip destfile="${dist.dir}/jMonkeyEngine3-javadoc.zip">\r
395             <zipfileset dir="${dist.dir}/javadoc/"/>\r
396         </zip>\r
397         <copy file="${dist.dir}/jMonkeyEngine3-javadoc.zip" toDir="${jmp_dir}/jme3-project-baselibs/release/libs/" overwrite="true" failonerror="true" verbose="false"/>\r
398 \r
399         <zip destfile="${dist.dir}/jMonkeyEngine3-sources.zip">\r
400             <zipfileset dir="${src.core.dir}"/>\r
401             <zipfileset dir="${src.core-data.dir}"/>\r
402             <zipfileset dir="${src.core-effects.dir}"/>\r
403             <zipfileset dir="${src.core-plugins.dir}"/>\r
404             <zipfileset dir="${src.desktop.dir}"/>\r
405             <zipfileset dir="${src.jbullet.dir}"/>\r
406             <zipfileset dir="${src.niftygui.dir}"/>\r
407             <zipfileset dir="${src.jogg.dir}"/>\r
408             <zipfileset dir="${src.lwjgl.dir}"/>\r
409             <zipfileset dir="${src.ogre.dir}"/>\r
410             <zipfileset dir="${src.test.dir}"/>\r
411             <zipfileset dir="${src.tools.dir}"/>\r
412             <zipfileset dir="${src.xml.dir}"/>\r
413             <zipfileset dir="${src.terrain.dir}"/>\r
414             <zipfileset dir="${src.networking.dir}"/>\r
415         </zip>\r
416         <copy file="${dist.dir}/jMonkeyEngine3-sources.zip" toDir="${jmp_dir}/jme3-project-baselibs/release/libs/" overwrite="true" failonerror="true" verbose="false"/>\r
417 \r
418         <copy todir="${jmp_dir}/jme3-project-libraries/release/libs/" overwrite="true" failonerror="true" verbose="false" flatten="true">\r
419             <fileset refid="jme3-external-libraries"/>\r
420             <fileset refid="jme3-lwjgl-native-jars"/>\r
421             <fileset refid="jme3-bullet-native-jars"/>\r
422             <fileset dir="lib/niftygui/">\r
423                 <include name="nifty-javadoc.jar"/>\r
424                 <include name="nifty-default-controls-javadoc.jar"/>\r
425             </fileset>\r
426         </copy>\r
427 \r
428         <echo>Copying Test Examples</echo>\r
429         <copy todir="${jmp_dir}/JME3TestsTemplate/src/" overwrite="true" failonerror="true" verbose="false">\r
430             <fileset dir="src/test/">\r
431                 <exclude name=".svn"/>\r
432             </fileset>\r
433         </copy>\r
434         <copy todir="${jmp_dir}/JME3TestsTemplateAndroid/src/" overwrite="true" failonerror="true" verbose="false">\r
435             <fileset dir="src/test/">\r
436                 <exclude name=".svn"/>\r
437             </fileset>\r
438         </copy>\r
439     </target>\r
440 \r
441     <target name="-javadoc-build" depends="init" if="have.sources" description="Overrides default javadoc target to exclude test javadoc">\r
442         <mkdir dir="${dist.javadoc.dir}"/>\r
443         <javadoc additionalparam="${javadoc.additionalparam}" author="${javadoc.author}" charset="UTF-8" destdir="${dist.javadoc.dir}" docencoding="UTF-8" encoding="${javadoc.encoding.used}" failonerror="true" noindex="${javadoc.noindex}" nonavbar="${javadoc.nonavbar}" notree="${javadoc.notree}" private="${javadoc.private}" source="${javac.source}" splitindex="${javadoc.splitindex}" use="${javadoc.use}" useexternalfile="true" version="${javadoc.version}" windowtitle="${javadoc.windowtitle}">\r
444             <classpath>\r
445                 <path path="${javac.classpath}"/>\r
446             </classpath>\r
447             <fileset dir="${src.core.dir}" excludes="*.java,${excludes}" includes="${includes}">\r
448                 <filename name="**/*.java"/>\r
449             </fileset>\r
450             <fileset dir="${src.core-data.dir}" excludes="*.java,${excludes}" includes="${includes}">\r
451                 <filename name="**/*.java"/>\r
452             </fileset>\r
453             <fileset dir="${src.core-effects.dir}" excludes="*.java,${excludes}" includes="${includes}">\r
454                 <filename name="**/*.java"/>\r
455             </fileset>\r
456             <fileset dir="${src.core-plugins.dir}" excludes="*.java,${excludes}" includes="${includes}">\r
457                 <filename name="**/*.java"/>\r
458             </fileset>\r
459             <fileset dir="${src.desktop.dir}" excludes="*.java,${excludes}" includes="${includes}">\r
460                 <filename name="**/*.java"/>\r
461             </fileset>\r
462             <fileset dir="${src.terrain.dir}" excludes="*.java,${excludes}" includes="${includes}">\r
463                 <filename name="**/*.java"/>\r
464             </fileset>\r
465             <!--fileset dir="${src.jbullet.dir}" excludes="*.java,${excludes}" includes="${includes}">\r
466                 <filename name="**/*.java"/>\r
467             </fileset-->\r
468             <fileset dir="${src.bullet.dir}" excludes="*.java,${excludes}" includes="${includes}">\r
469                 <filename name="**/*.java"/>\r
470             </fileset>\r
471             <fileset dir="${src.bullet-native.dir}" excludes="*.java,${excludes}" includes="${includes}">\r
472                 <filename name="**/*.java"/>\r
473             </fileset>\r
474             <fileset dir="${src.bullet-common.dir}" excludes="*.java,${excludes}" includes="${includes}">\r
475                 <filename name="**/*.java"/>\r
476             </fileset>\r
477             <fileset dir="${src.networking.dir}" excludes="*.java,${excludes}" includes="${includes}">\r
478                 <filename name="**/*.java"/>\r
479             </fileset>\r
480             <fileset dir="${src.niftygui.dir}" excludes="*.java,${excludes}" includes="${includes}">\r
481                 <filename name="**/*.java"/>\r
482             </fileset>\r
483             <fileset dir="${src.jogg.dir}" excludes="*.java,${excludes}" includes="${includes}">\r
484                 <filename name="**/*.java"/>\r
485             </fileset>\r
486             <fileset dir="${src.ogre.dir}" excludes="*.java,${excludes}" includes="${includes}">\r
487                 <filename name="**/*.java"/>\r
488             </fileset>\r
489             <fileset dir="${src.blender.dir}" excludes="*.java,${excludes}" includes="${includes}">\r
490                 <filename name="**/*.java"/>\r
491             </fileset>\r
492             <fileset dir="${src.xml.dir}" excludes="*.java,${excludes}" includes="${includes}">\r
493                 <filename name="**/*.java"/>\r
494             </fileset>\r
495             <fileset dir="${src.tools.dir}" excludes="*.java,${excludes}" includes="${includes}">\r
496                 <filename name="**/*.java"/>\r
497             </fileset>\r
498             <!--fileset dir="${src.test.dir}" excludes="*.java,${excludes}" includes="${includes}">\r
499                 <filename name="**/*.java"/>\r
500             </fileset-->\r
501             <fileset dir="${src.lwjgl.dir}" excludes="*.java,${excludes}" includes="${includes}">\r
502                 <filename name="**/*.java"/>\r
503             </fileset>\r
504             <fileset dir="${src.android.dir}" excludes="*.java,${excludes}" includes="${includes}">\r
505                 <filename name="**/*.java"/>\r
506             </fileset>\r
507             <fileset dir="${build.generated.sources.dir}" erroronmissingdir="false">\r
508                 <include name="**/*.java"/>\r
509                 <exclude name="*.java"/>\r
510             </fileset>\r
511         </javadoc>\r
512         <copy todir="${dist.javadoc.dir}">\r
513             <fileset dir="${src.core.dir}" excludes="${excludes}" includes="${includes}">\r
514                 <filename name="**/doc-files/**"/>\r
515             </fileset>\r
516             <fileset dir="${src.core-data.dir}" excludes="${excludes}" includes="${includes}">\r
517                 <filename name="**/doc-files/**"/>\r
518             </fileset>\r
519             <fileset dir="${src.core-effects.dir}" excludes="${excludes}" includes="${includes}">\r
520                 <filename name="**/doc-files/**"/>\r
521             </fileset>\r
522             <fileset dir="${src.core-plugins.dir}" excludes="${excludes}" includes="${includes}">\r
523                 <filename name="**/doc-files/**"/>\r
524             </fileset>\r
525             <fileset dir="${src.desktop.dir}" excludes="${excludes}" includes="${includes}">\r
526                 <filename name="**/doc-files/**"/>\r
527             </fileset>\r
528             <fileset dir="${src.terrain.dir}" excludes="${excludes}" includes="${includes}">\r
529                 <filename name="**/doc-files/**"/>\r
530             </fileset>\r
531             <fileset dir="${src.jbullet.dir}" excludes="${excludes}" includes="${includes}">\r
532                 <filename name="**/doc-files/**"/>\r
533             </fileset>\r
534             <!--fileset dir="${src.bullet.dir}" excludes="${excludes}" includes="${includes}">\r
535                 <filename name="**/doc-files/**"/>\r
536             </fileset-->\r
537             <fileset dir="${src.bullet-native.dir}" excludes="${excludes}" includes="${includes}">\r
538                 <filename name="**/doc-files/**"/>\r
539             </fileset>\r
540             <fileset dir="${src.bullet-common.dir}" excludes="${excludes}" includes="${includes}">\r
541                 <filename name="**/doc-files/**"/>\r
542             </fileset>\r
543             <fileset dir="${src.networking.dir}" excludes="${excludes}" includes="${includes}">\r
544                 <filename name="**/doc-files/**"/>\r
545             </fileset>\r
546             <fileset dir="${src.niftygui.dir}" excludes="${excludes}" includes="${includes}">\r
547                 <filename name="**/doc-files/**"/>\r
548             </fileset>\r
549             <fileset dir="${src.jogg.dir}" excludes="${excludes}" includes="${includes}">\r
550                 <filename name="**/doc-files/**"/>\r
551             </fileset>\r
552             <fileset dir="${src.ogre.dir}" excludes="${excludes}" includes="${includes}">\r
553                 <filename name="**/doc-files/**"/>\r
554             </fileset>\r
555             <fileset dir="${src.blender.dir}" excludes="${excludes}" includes="${includes}">\r
556                 <filename name="**/doc-files/**"/>\r
557             </fileset>\r
558             <fileset dir="${src.xml.dir}" excludes="${excludes}" includes="${includes}">\r
559                 <filename name="**/doc-files/**"/>\r
560             </fileset>\r
561             <fileset dir="${src.tools.dir}" excludes="${excludes}" includes="${includes}">\r
562                 <filename name="**/doc-files/**"/>\r
563             </fileset>\r
564             <!--fileset dir="${src.test.dir}" excludes="${excludes}" includes="${includes}">\r
565                 <filename name="**/doc-files/**"/>\r
566             </fileset-->\r
567             <fileset dir="${src.lwjgl.dir}" excludes="${excludes}" includes="${includes}">\r
568                 <filename name="**/doc-files/**"/>\r
569             </fileset>\r
570             <fileset dir="${src.android.dir}" excludes="${excludes}" includes="${includes}">\r
571                 <filename name="**/doc-files/**"/>\r
572             </fileset>\r
573             <fileset dir="${build.generated.sources.dir}" erroronmissingdir="false">\r
574                 <include name="**/doc-files/**"/>\r
575             </fileset>\r
576         </copy>\r
577     </target>\r
578 \r
579     <!--\r
580        ****************************************************************\r
581        Only Relevant for building nightly on Hudson server from here on\r
582        ****************************************************************\r
583       -->\r
584 \r
585     <target depends="init" name="create-zip-distribution" description="puts jme3 jars, libs, source and javadoc in a dated zip file">\r
586         <tstamp>\r
587             <format property="date" pattern="yyyy-MM-dd" locale="en,US"/>\r
588         </tstamp>\r
589         <property name="jme3zip" value="jME3_${date}.zip"/>\r
590         <zip destfile="${jme3zip}">\r
591             <fileset dir=".">\r
592                 <include name="TestChooser.exe"/>\r
593                 <include name="README.TXT"/>\r
594             </fileset>\r
595             <fileset dir="${dist.dir}/">\r
596                 <include name="jMonkeyEngine3.jar"/>\r
597             </fileset>\r
598             <zipfileset dir="${dist.dir}/lib" prefix="lib"/>\r
599             <zipfileset dir="${dist.dir}/opt" prefix="opt"/>\r
600             <zipfileset dir="${dist.dir}/javadoc" prefix="javadoc"/>\r
601             <zipfileset dir="${src.core.dir}" prefix="source"/>\r
602             <zipfileset dir="${src.core-data.dir}" prefix="source"/>\r
603             <zipfileset dir="${src.core-effects.dir}" prefix="source"/>\r
604             <zipfileset dir="${src.core-plugins.dir}" prefix="source"/>\r
605             <zipfileset dir="${src.desktop.dir}" prefix="source"/>\r
606             <zipfileset dir="${src.jbullet.dir}" prefix="source"/>\r
607             <zipfileset dir="${src.niftygui.dir}" prefix="source"/>\r
608             <zipfileset dir="${src.jogg.dir}" prefix="source"/>\r
609             <zipfileset dir="${src.lwjgl.dir}" prefix="source"/>\r
610             <zipfileset dir="${src.ogre.dir}" prefix="source"/>\r
611             <zipfileset dir="${src.test.dir}" prefix="source"/>\r
612             <zipfileset dir="${src.tools.dir}" prefix="source"/>\r
613             <zipfileset dir="${src.xml.dir}" prefix="source"/>\r
614             <zipfileset dir="${src.terrain.dir}" prefix="source"/>\r
615             <zipfileset dir="${src.networking.dir}" prefix="source"/>\r
616         </zip>\r
617     </target>\r
618 \r
619     <target depends="init" name="update-sdk-nobuild">\r
620         <antcall target="-do-update-sdk" inheritall="true">\r
621             <param name="jmp_dir" value="../sdk/"/>\r
622         </antcall>\r
623     </target>\r
624 \r
625 </project>\r