OSDN Git Service

Merge branch 'master' of https://github.com/libgdx/libgdx
[mikumikustudio/libgdx-mikumikustudio.git] / build.xml
1 <project name="gdx" default="all" basedir=".">\r
2         <description>libgdx distribution build file</description>\r
3         <property environment="env" />\r
4 \r
5         <!-- library version -->\r
6         <property name="version" value="0.9.9-SNAPSHOT"/>\r
7 \r
8         <!-- define distribution/output directory -->\r
9         <property name="distDir" value="${basedir}/dist"/>\r
10 \r
11         <!-- should we build natives? -->\r
12         <property name="build-natives" value="false"/>\r
13 \r
14         <!-- clean distribution/output directory -->\r
15         <target name="clean">\r
16                 <delete dir="${distDir}"/>\r
17         </target>\r
18 \r
19         <!-- build the core of the library plus all backends -->\r
20         <!-- gdx jnigen -->\r
21         <target name="gdx-jnigen">\r
22                 <ant antfile="../../build-template.xml" dir="extensions/gdx-jnigen">\r
23                         <property name="distDir" value="${distDir}/extensions/gdx-jnigen"/>\r
24                         <property name="jar" value="gdx-jnigen"/>\r
25                         <!-- we shouldn't build any natives -->\r
26                         <property name="build-natives" value="false"/>\r
27                 </ant>\r
28         </target>\r
29 \r
30         <!-- gdx setup ui, custom target -->\r
31         <target name="gdx-setup-ui">\r
32                 <ant antfile="build.xml" dir="extensions/gdx-setup-ui/"/>\r
33                 <copy tofile="${distDir}/gdx-setup-ui.jar" file="extensions/gdx-setup-ui/gdx-setup-ui.jar"/>\r
34         </target>\r
35 \r
36         <!-- gdx core -->\r
37         <target name="gdx-core" depends="gdx-jnigen">\r
38                 <path id="classpath">\r
39                         <pathelement location="${distDir}/extensions/gdx-jnigen/gdx-jnigen.jar"/>\r
40                 </path>\r
41                 <fileset id="resourcefiles" dir="gdx/src">\r
42                         <include name="com/badlogic/gdx/graphics/g3d/shaders/default.fragment.glsl"/>\r
43                         <include name="com/badlogic/gdx/graphics/g3d/shaders/default.vertex.glsl"/>\r
44                         <include name="com/badlogic/gdx/utils/arial-15.png"/>\r
45                         <include name="com/badlogic/gdx/utils/arial-15.fnt"/>\r
46                 </fileset>\r
47                 <ant antfile="../build-template.xml" dir="gdx">\r
48                         <property name="jar" value="gdx"/>\r
49                         <reference refid="classpath"/>\r
50                         <reference refid="resourcefiles"/>\r
51                 </ant>\r
52         </target>\r
53 \r
54         <!-- gdx openal, for all desktop backends -->\r
55         <target name="gdx-openal" depends="gdx-core">\r
56                 <path id="classpath">\r
57                         <pathelement location="${distDir}/gdx.jar"/>\r
58                 </path>\r
59                 <ant antfile="../../build-template.xml" dir="backends/gdx-openal">\r
60                         <property name="jar" value="gdx-openal"/>\r
61                         <reference refid="classpath"/>\r
62                 </ant>\r
63         </target>\r
64 \r
65         <!-- gdx lwjgl backend -->\r
66         <target name="gdx-backend-lwjgl" depends="gdx-core,gdx-openal">\r
67                 <path id="classpath">\r
68                         <pathelement location="${distDir}/gdx.jar"/>\r
69                         <pathelement location="${distDir}/gdx-openal.jar"/>\r
70                 </path>\r
71                 <zipfileset id="jarfiles" src="${distDir}/gdx-openal.jar"/>\r
72                 <ant antfile="../../build-template.xml" dir="backends/gdx-backend-lwjgl">\r
73                         <property name="jar" value="gdx-backend-lwjgl"/>\r
74                         <reference refid="classpath"/>\r
75                         <reference refid="jarfiles"/>\r
76                 </ant>\r
77         </target>\r
78 \r
79         <!-- gdx jglfw backend -->\r
80         <target name="gdx-backend-jglfw" depends="gdx-core">\r
81                 <mkdir dir="backends/gdx-backend-jglfw/libs"/>\r
82                 <get src="http://libgdx.badlogicgames.com/jglfw/nightlies/dist/jglfw.jar" dest="backends/gdx-backend-jglfw/libs/jglfw.jar"/>\r
83                 <get src="http://libgdx.badlogicgames.com/jglfw/nightlies/dist/jglfw-natives.jar" dest="backends/gdx-backend-jglfw/libs/gdx-backend-jglfw-natives.jar"/>\r
84                 <path id="classpath">\r
85                         <pathelement location="${distDir}/gdx.jar"/>\r
86                 </path>\r
87                 <ant antfile="../../build-template.xml" dir="backends/gdx-backend-jglfw">\r
88                         <property name="jar" value="gdx-backend-jglfw"/>\r
89                         <reference refid="classpath"/>\r
90                 </ant>\r
91         </target>\r
92 \r
93         <!-- gdx android backend -->\r
94         <target name="gdx-backend-android" depends="gdx-core">\r
95                 <path id="classpath">\r
96                         <pathelement location="${distDir}/gdx.jar"/>\r
97                 </path>\r
98                 <ant antfile="../../build-template.xml" dir="backends/gdx-backend-android">\r
99                         <property name="jar" value="gdx-backend-android"/>\r
100                         <reference refid="classpath"/>\r
101                 </ant>\r
102         </target>\r
103 \r
104         <!-- gdx gwt backend -->\r
105         <target name="gdx-backend-gwt" depends="gdx-core">\r
106                 <path id="classpath">\r
107                         <pathelement location="${distDir}/gdx.jar"/>\r
108                 </path>\r
109                 <ant antfile="../../build-template.xml" dir="backends/gdx-backends-gwt">\r
110                         <property name="jar" value="gdx-backend-gwt"/>\r
111                         <reference refid="classpath"/>\r
112                 </ant>\r
113         </target>\r
114     \r
115     <!-- gdx robovm backend -->\r
116     <target name="gdx-backend-robovm" depends="gdx-core">\r
117                 <path id="classpath">\r
118                         <pathelement location="${distDir}/gdx.jar"/>\r
119                 </path>\r
120         <ant antfile="fetch.xml">\r
121             <target name="fetch-robovm"/>\r
122         </ant>\r
123                 <ant antfile="../../build-template.xml" dir="backends/gdx-backend-robovm">\r
124                         <property name="jar" value="gdx-backend-robovm"/>\r
125                         <reference refid="classpath"/>\r
126                 </ant>\r
127         </target>\r
128 \r
129         <!-- build the extensions -->\r
130         <!-- gdx tools -->\r
131         <target name="gdx-tools" depends="gdx-core,gdx-backend-lwjgl,gdx-backend-lwjgl">\r
132                 <path id="classpath">\r
133                         <pathelement location="${distDir}/gdx.jar"/>\r
134                         <pathelement location="${distDir}/gdx-backend-lwjgl.jar"/>\r
135                 </path>\r
136                 <fileset id="resourcefiles" dir="extensions/gdx-tools/assets"/>\r
137                 <ant antfile="../../build-template.xml" dir="extensions/gdx-tools">\r
138                         <property name="distDir" value="${distDir}/extensions/gdx-tools"/>\r
139                         <property name="jar" value="gdx-tools"/>\r
140                         <reference refid="classpath"/>\r
141                         <reference refid="resourcefiles"/>\r
142                 </ant>\r
143         </target>\r
144 \r
145         <!-- gdx tiled preprocessor -->\r
146         <target name="gdx-tiled-preprocessor" depends="gdx-core,gdx-backend-lwjgl,gdx-tools">\r
147                 <path id="classpath">\r
148                         <pathelement location="${distDir}/gdx.jar"/>\r
149                         <pathelement location="${distDir}/gdx-backend-lwjgl.jar"/>\r
150                         <pathelement location="${distDir}/extensions/gdx-tools/gdx-tools.jar"/>\r
151                 </path>\r
152                 <ant antfile="../../build-template.xml" dir="extensions/gdx-tiled-preprocessor">\r
153                         <property name="distDir" value="${distDir}/extensions/gdx-tiled-preprocessor"/>\r
154                         <property name="jar" value="gdx-tiled-preprocessor"/>\r
155                         <reference refid="classpath"/>\r
156                 </ant>\r
157         </target>\r
158 \r
159         <!-- gdx controllers -->\r
160         <target name="gdx-controllers" depends="gdx-core">\r
161                 <path id="classpath">\r
162                         <pathelement location="${distDir}/gdx.jar"/>\r
163                 </path>\r
164                 <ant antfile="../../../build-template.xml" dir="extensions/gdx-controllers/gdx-controllers">\r
165                         <property name="distDir" value="${distDir}/extensions/gdx-controllers"/>\r
166                         <property name="jar" value="gdx-controllers"/>\r
167                         <reference refid="classpath"/>\r
168                 </ant>\r
169         </target>\r
170 \r
171         <target name="gdx-controllers-desktop" depends="gdx-core,gdx-jnigen,gdx-controllers">\r
172                 <path id="classpath">\r
173                         <pathelement location="${distDir}/gdx.jar"/>\r
174                         <pathelement location="${distDir}/extensions/gdx-jnigen/gdx-jnigen.jar"/>\r
175                         <pathelement location="${distDir}/extensions/gdx-controllers/gdx-controllers.jar"/>\r
176                 </path>\r
177                 <ant antfile="../../../build-template.xml" dir="extensions/gdx-controllers/gdx-controllers-desktop">\r
178                         <property name="distDir" value="${distDir}/extensions/gdx-controllers/"/>\r
179                         <property name="jar" value="gdx-controllers-desktop"/>\r
180                         <reference refid="classpath"/>\r
181                 </ant>\r
182         </target>\r
183 \r
184         <target name="gdx-controllers-android" depends="gdx-core,gdx-backend-android,gdx-controllers">\r
185                 <path id="classpath">\r
186                         <pathelement location="${distDir}/gdx.jar"/>\r
187                         <pathelement location="${distDir}/gdx-backend-android.jar"/>\r
188                         <pathelement location="${distDir}/extensions/gdx-controllers/gdx-controllers.jar"/>\r
189                         <pathelement location="${basedir}/backends/gdx-backend-android/libs/android-4.2.jar"/>\r
190                 </path>\r
191                 <ant antfile="../../../build-template.xml" dir="extensions/gdx-controllers/gdx-controllers-android">\r
192                         <property name="distDir" value="${distDir}/extensions/gdx-controllers"/>\r
193                         <property name="jar" value="gdx-controllers-android"/>\r
194                         <reference refid="classpath"/>\r
195                 </ant>\r
196         </target>\r
197 \r
198         <target name="gdx-controllers-gwt" depends="gdx-core,gdx-backend-gwt,gdx-controllers">\r
199                 <path id="classpath">\r
200                         <pathelement location="${distDir}/gdx.jar"/>\r
201                         <pathelement location="${distDir}/gdx-backend-gwt.jar"/>\r
202                         <pathelement location="${distDir}/extensions/gdx-controllers/gdx-controllers.jar"/>\r
203                         <pathelement location="${basedir}/backends/gdx-backends-gwt/libs/gwt-dev.jar"/>\r
204                         <pathelement location="${basedir}/backends/gdx-backends-gwt/libs/gwt-user.jar"/>\r
205                 </path>\r
206                 <ant antfile="../../../build-template.xml" dir="extensions/gdx-controllers/gdx-controllers-gwt">\r
207                         <property name="distDir" value="${distDir}/extensions/gdx-controllers"/>\r
208                         <property name="jar" value="gdx-controllers-gwt"/>\r
209                         <reference refid="classpath"/>\r
210                 </ant>\r
211         </target>\r
212 \r
213         <!-- gdx image -->\r
214         <target name="gdx-image" depends="gdx-core">\r
215                 <path id="classpath">\r
216                         <pathelement location="${distDir}/gdx.jar"/>\r
217                         <pathelement location="${distDir}/extensions/gdx-jnigen/gdx-jnigen.jar"/>\r
218                 </path>\r
219                 <ant antfile="../../build-template.xml" dir="extensions/gdx-image">\r
220                         <property name="distDir" value="${distDir}/extensions/gdx-image"/>\r
221                         <property name="jar" value="gdx-image"/>\r
222                         <reference refid="classpath"/>\r
223                 </ant>\r
224         </target>\r
225 \r
226         <!-- gdx audio -->\r
227         <target name="gdx-audio" depends="gdx-core">\r
228                 <path id="classpath">\r
229                         <pathelement location="${distDir}/gdx.jar"/>\r
230                         <pathelement location="${distDir}/extensions/gdx-jnigen/gdx-jnigen.jar"/>\r
231                 </path>\r
232                 <ant antfile="../../build-template.xml" dir="extensions/gdx-audio">\r
233                         <property name="distDir" value="${distDir}/extensions/gdx-audio"/>\r
234                         <property name="jar" value="gdx-audio"/>\r
235                         <reference refid="classpath"/>\r
236                 </ant>\r
237         </target>\r
238 \r
239         <!-- gdx freetype -->\r
240         <target name="gdx-freetype" depends="gdx-core">\r
241                 <path id="classpath">\r
242                         <pathelement location="${distDir}/gdx.jar"/>\r
243                         <pathelement location="${distDir}/extensions/gdx-jnigen/gdx-jnigen.jar"/>\r
244                 </path>\r
245                 <ant antfile="../../build-template.xml" dir="extensions/gdx-freetype">\r
246                         <property name="distDir" value="${distDir}/extensions/gdx-freetype"/>\r
247                         <property name="jar" value="gdx-freetype"/>\r
248                         <reference refid="classpath"/>\r
249                 </ant>\r
250         </target>\r
251 \r
252         <!-- gdx bullet -->\r
253         <target name="gdx-bullet" depends="gdx-core">\r
254                 <path id="classpath">\r
255                         <pathelement location="${distDir}/gdx.jar"/>\r
256                         <pathelement location="${distDir}/extensions/gdx-jnigen/gdx-jnigen.jar"/>\r
257                 </path>\r
258                 <path id="src">\r
259                                 <pathelement location="extensions/gdx-bullet/src"/>\r
260                                 <pathelement location="extensions/gdx-bullet/jni/swig-src"/>\r
261                 </path>\r
262                 <ant antfile="../../build-template.xml" dir="extensions/gdx-bullet">\r
263                         <property name="distDir" value="${distDir}/extensions/gdx-bullet"/>\r
264                         <property name="jar" value="gdx-bullet"/>\r
265                         <reference refid="classpath"/>\r
266                         <reference refid="src"/>\r
267                 </ant>\r
268         </target>\r
269 \r
270         <!-- generates the javadoc for the core api and the application implementations -->\r
271         <target name="docs" depends="clean">\r
272                 <javadoc destdir="${distDir}/docs/api" author="true" version="true" use="true"\r
273                 windowtitle="libgdx API" doctitle="libgdx API" footer="libgdx API" useexternalfile="true">\r
274                         <header><![CDATA[\r
275                                 libgdx API\r
276                                 <style>\r
277                                 body, td, th { font-family:Helvetica, Tahoma, Arial, sans-serif; font-size:10pt }\r
278                                 pre, code, tt { font-size:9pt; font-family:Lucida Console, Courier New, sans-serif }\r
279                                 h1, h2, h3, .FrameTitleFont, .FrameHeadingFont, .TableHeadingColor font { font-size:105%;  font-weight:bold }\r
280                                 .TableHeadingColor { background:#EEEEFF; }\r
281                                 a { text-decoration:none }\r
282                                 a:hover { text-decoration:underline }\r
283                                 a:link, a:visited { color:blue }\r
284                                 table { border:0px }\r
285                                 .TableRowColor td:first-child { border-left:1px solid black }\r
286                                 .TableRowColor td { border:0px; border-bottom:1px solid black; border-right:1px solid black }\r
287                                 hr { border:0px; border-bottom:1px solid #333366; }\r
288                                 </style>\r
289                         ]]></header>\r
290                         <bottom><![CDATA[\r
291                                 <div style="font-size:9pt"><i>\r
292                                 Copyright &copy; 2010-2013 Mario Zechner (contact@badlogicgames.com), Nathan Sweet (admin@esotericsoftware.com)\r
293                                 </i></div>\r
294                         ]]></bottom>\r
295                         <fileset dir="gdx/src" defaultexcludes="yes">\r
296                                 <include name="com/badlogic/gdx/**" />\r
297                                 <exclude name="com/badlogic/gdx/**/*.glsl"/>\r
298                                 <exclude name="com/badlogic/gdx/utils/arial-15.fnt" />\r
299                                 <exclude name="com/badlogic/gdx/utils/arial-15.png" />\r
300                                 <exclude name="com/badlogic/gdx/utils/XmlReader.rl" />\r
301                                 <exclude name="com/badlogic/gdx/utils/JsonReader.rl" />\r
302                         </fileset>\r
303                         <fileset dir="backends" includes="gdx-backend-jglfw/src/com/badlogic/gdx/backends/jglfw/JglfwApplication.java"/>\r
304                         <fileset dir="backends" includes="gdx-backend-lwjgl/src/com/badlogic/gdx/backends/lwjgl/LwjglApplication.java"/>\r
305                         <fileset dir="backends" includes="gdx-backend-lwjgl/src/com/badlogic/gdx/backends/lwjgl/LwjglCanvas.java"/>\r
306                         <fileset dir="backends" includes="gdx-backend-lwjgl/src/com/badlogic/gdx/backends/lwjgl/LwjglApplet.java"/>\r
307                         <fileset dir="backends" includes="gdx-backend-android/src/com/badlogic/gdx/backends/android/AndroidApplication.java"/>\r
308                         <fileset dir="backends" includes="gdx-backend-android/src/com/badlogic/gdx/backends/android/AndroidApplicationConfiguration.java"/>\r
309                         <fileset dir="backends" includes="gdx-backends-gwt/src/com/badlogic/gdx/backends/gwt/GwtApplication.java"/>\r
310                         <fileset dir="backends" includes="gdx-backends-gwt/src/com/badlogic/gdx/backends/gwt/GwtApplicationConfiguration.java"/>\r
311             <fileset dir="backends" includes="gdx-backend-robovm/src/com/badlogic/gdx/backends/iosrobovm/IOSApplication.java"/>\r
312                         <fileset dir="backends" includes="gdx-backend-robovm/src/com/badlogic/gdx/backends/iosrobovm/IOSApplicationConfiguration.java"/>\r
313                 </javadoc>\r
314         </target>\r
315 \r
316         <target name="jars"\r
317 depends="clean,gdx-setup-ui,gdx-core,gdx-openal,gdx-backend-lwjgl,gdx-backend-jglfw,gdx-backend-android,gdx-backend-gwt,gdx-backend-robovm,gdx-tools,gdx-controllers,gdx-controllers-desktop,gdx-controllers-android,gdx-controllers-gwt,gdx-image,gdx-audio,gdx-freetype,gdx-bullet,gdx-tiled-preprocessor"/>\r
318 \r
319         <target name="all" depends="jars,docs">\r
320                 <!-- copy distribution files (licences etc.) -->\r
321                 <copy tofile="${distDir}/README" file="README.md"/>\r
322                 <copy tofile="${distDir}/LICENSE" file="LICENSE"/>\r
323                 <copy tofile="${distDir}/CC-LICENSE" file="CC-LICENSE"/>\r
324                 <copy tofile="${distDir}/AUTHORS" file="AUTHORS"/>\r
325                 <copy tofile="${distDir}/CONTRIBUTORS" file="CONTRIBUTORS"/>\r
326 \r
327                 <!-- zip dist dir -->\r
328                 <zip destfile="libgdx-${version}.zip" basedir="${distDir}"/>\r
329                 <checksum file="libgdx-${version}.zip" forceOverwrite="yes" />\r
330         </target>\r
331 </project>\r