OSDN Git Service

Build system updated to use jme-colladabinding.jar.
[mikumikustudio/MikuMikuStudio.git] / build.xml
index 1bf1c10..edcb100 100644 (file)
--- a/build.xml
+++ b/build.xml
 
   <target name="dist-core" depends="compile, -enforce.jar.deps"
          description="generate jme jar file">
-    <jar destfile="${jars}/jme.jar" basedir="${class}" update="no" compress="true" includes="com/jme/**/*.class, com/jme/**/*.tga, com/jme/**/*.png, com/jme/**/*.glf, com/jme/**/*.vert, com/jme/**/*.frag" />
+    <jar destfile="${jars}/jme.jar" basedir="${class}" update="no"
+         duplicate="fail" compress="true" includes="com/jme/**/*.class, com/jme/**/*.tga, com/jme/**/*.png, com/jme/**/*.glf, com/jme/**/*.vert, com/jme/**/*.frag" />
   </target>
   <target name="dist-audio" depends="compile, -enforce.jar.deps"
           description="generate jme jar file (audio)">
-    <jar destfile="${jars}/jme-audio.jar" basedir="${class}" update="no" compress="true" includes="com/jmex/audio/**/*.class" />
+    <jar destfile="${jars}/jme-audio.jar" basedir="${class}" update="no"
+         duplicate="fail" compress="true"
+         includes="com/jmex/audio/**/*.class" />
   </target>
   <target name="dist-awt" depends="compile, -enforce.jar.deps"
           description="generate jme jar file (awt)">
-    <jar destfile="${jars}/jme-awt.jar" basedir="${class}" update="no" compress="true" includes="com/jmex/awt/**/*.class" />
+    <jar destfile="${jars}/jme-awt.jar" basedir="${class}" update="no"
+         duplicate="fail" compress="true" includes="com/jmex/awt/**/*.class" />
   </target>
   <target name="dist-swt" depends="compile, -enforce.jar.deps"
           description="generate jme jar file (swt)">
-    <jar destfile="${jars}/jme-swt.jar" basedir="${class}" update="no" compress="true" includes="com/jmex/swt/**/*.class" />
+    <jar destfile="${jars}/jme-swt.jar" basedir="${class}" update="no"
+         duplicate="fail" compress="true" includes="com/jmex/swt/**/*.class" />
   </target>
   <target name="dist-editors" depends="compile, -enforce.jar.deps"
           description="generate jme jar file (editors)">
-    <jar destfile="${jars}/jme-editors.jar" basedir="${class}" update="no" compress="true" includes="com/jmex/editors/**/*.class" />
+    <jar destfile="${jars}/jme-editors.jar" basedir="${class}" update="no"
+         duplicate="fail" compress="true" includes="com/jmex/editors/**/*.class" />
   </target>
   <target name="dist-effects" depends="compile, -enforce.jar.deps"
           description="generate jme jar file (effects)">
-    <jar destfile="${jars}/jme-effects.jar" basedir="${class}" update="no" compress="true" includes="com/jmex/effects/**/*.class, com/jmex/effects/**/data/*" />
+    <jar destfile="${jars}/jme-effects.jar" basedir="${class}" update="no"
+         duplicate="fail" compress="true"
+         includes="com/jmex/effects/**/*.class, com/jmex/effects/**/data/*" />
   </target>
   <target name="dist-font" depends="compile, -enforce.jar.deps"
           description="generate jme jar file (font)">
-    <jar destfile="${jars}/jme-font.jar" basedir="${class}" update="no" compress="true" includes="com/jmex/font2d/**/*.class, com/jmex/font3d/**/*.class" />
+    <jar destfile="${jars}/jme-font.jar" basedir="${class}" update="no"
+         duplicate="fail" compress="true" includes="com/jmex/font2d/**/*.class, com/jmex/font3d/**/*.class" />
   </target>
   <target name="dist-gamestates" depends="compile, -enforce.jar.deps"
           description="generate jme jar file (gamestates)">
-    <jar destfile="${jars}/jme-gamestates.jar" basedir="${class}" update="no" compress="true" includes="com/jmex/game/**/*.class" />
+    <jar destfile="${jars}/jme-gamestates.jar" basedir="${class}" update="no"
+         duplicate="fail" compress="true" includes="com/jmex/game/**/*.class" />
   </target>
   <target name="dist-model" depends="compile, -enforce.jar.deps"
           description="generate jme jar file (model)">
-          <jar destfile="${jars}/jme-model.jar" basedir="${class}" update="no" compress="true" includes="com/jmex/model/**/*.class" excludes="com/jmex/model/collada/**, com/jmex/model/ogrexml/**" />
+    <jar destfile="${jars}/jme-model.jar" basedir="${class}" update="no"
+         duplicate="fail" compress="true" includes="com/jmex/model/**/*.class"
+         excludes="com/jmex/model/collada/**, com/jmex/model/ogrexml/**" />
   </target>
   <target name="dist-collada" depends="compile, -enforce.jar.deps"
           description="generate jme jar file (collada)">
-    <jar destfile="${jars}/jme-collada.jar" basedir="${class}" update="no" compress="true" includes="com/jmex/model/collada/**/*.class" />
+    <jar destfile="${jars}/jme-collada.jar" basedir="${class}" update="no"
+         duplicate="fail" compress="true"
+         includes="com/jmex/model/collada/*.class">
+      <zipfileset src="lib/jme-colladabinding.jar"
+                  excludes="META-INF/readme.txt"/>
+    </jar>
   </target>
   <target name="dist-scene" depends="compile, -enforce.jar.deps"
           description="generate jme jar file (scene)">
-    <jar destfile="${jars}/jme-scene.jar" basedir="${class}" update="no" compress="true" includes="com/jmex/scene/**/*.class" />
+    <jar destfile="${jars}/jme-scene.jar" basedir="${class}" update="no"
+         duplicate="fail" compress="true" includes="com/jmex/scene/**/*.class" />
   </target>
   <target name="dist-terrain" depends="compile, -enforce.jar.deps"
           description="generate jme jar file (terrain)">
-    <jar destfile="${jars}/jme-terrain.jar" basedir="${class}" update="no" compress="true" includes="com/jmex/terrain/**/*.class" />
+    <jar destfile="${jars}/jme-terrain.jar" basedir="${class}" update="no"
+         duplicate="fail" compress="true"
+         includes="com/jmex/terrain/**/*.class" />
   </target>
   <target name="dist-ogrexml" depends="compile, -enforce.jar.deps"
           description="generate jme jar file (ogrexml)">
-    <jar destfile="${jars}/jme-ogrexml.jar" basedir="${class}" update="no" compress="true" includes="com/jmex/model/ogrexml/**/*.class" />
-  </target>
-  <target name="dist-xml" depends="compile, -enforce.jar.deps"
-          description="generate jme jar file (xml)">
-    <jar destfile="${jars}/jme-xml.jar" basedir="${class}" update="no" compress="true" includes="com/jmex/xml/**/*.class" />
+    <jar destfile="${jars}/jme-ogrexml.jar" basedir="${class}" update="no"
+         duplicate="fail" compress="true"
+         includes="com/jmex/model/ogrexml/**/*.class" />
   </target>
 
   <!-- Creates all the jME jars -->
-  <target name="dist-all" depends="dist-core, dist-terrain, dist-ogrexml, dist-audio, dist-awt, dist-swt, dist-effects, dist-model, dist-collada, dist-editors, dist-font, dist-gamestates, dist-scene, dist-xml" description="Generate all jar files" />
+  <target name="dist-all" depends="dist-core, dist-terrain, dist-ogrexml, dist-audio, dist-awt, dist-swt, dist-effects, dist-model, dist-collada, dist-editors, dist-font, dist-gamestates, dist-scene" description="Generate all jar files" />
 
   <target name="webdist-all" depends="dist-all" description="sign JARs for JNLP distribution">
     <signjar jar="${jars}/jme.jar" alias="jme" keystore="${webstart}/${keyStore}" storepass="${storepass}" />
     <signjar jar="${jars}/jme-scene.jar" alias="jme" keystore="${webstart}/${keyStore}" storepass="${storepass}" />
     <signjar jar="${jars}/jme-terrain.jar" alias="jme" keystore="${webstart}/${keyStore}" storepass="${storepass}" />
     <signjar jar="${jars}/jme-ogrexml.jar" alias="jme" keystore="${webstart}/${keyStore}" storepass="${storepass}" />
-    <signjar jar="${jars}/jme-xml.jar" alias="jme" keystore="${webstart}/${keyStore}" storepass="${storepass}" />
   </target>
 
   <target name="doc" depends="compile"
       <targetfileset dir="${jars}" excludes="**/.*/**" includes="jmetest*.jar"/>
     </dependset>
 
-    <jar destfile="${jars}/jmetest.jar" basedir="${class}" compress="true" excludes="jmetest/**/data/**, com/**" index="yes">
+    <jar destfile="${jars}/jmetest.jar" basedir="${class}"
+         duplicate="fail" compress="true"
+         excludes="jmetest/**/data/**, com/**" index="yes">
       <manifest>
         <attribute name="Implementation-Title" value="${name}" />
         <attribute name="Implementation-Vendor" value="${vendor}" />
     </jar>
 
     <!-- Jar the demo data -->
-    <jar destfile="${jars}/jmetest-data-cursor.jar" basedir="${class}" compress="true" includes="jmetest/data/cursor/**" />
-    <jar destfile="${jars}/jmetest-data-images.jar" basedir="${class}" compress="true" includes="jmetest/data/images/**" />
-    <jar destfile="${jars}/jmetest-data-model.jar" basedir="${class}" compress="true" includes="jmetest/data/model/**" />
-    <jar destfile="${jars}/jmetest-data-skybox1.jar" basedir="${class}" compress="true" includes="jmetest/data/skybox1/**" />
-    <jar destfile="${jars}/jmetest-data-sound.jar" basedir="${class}" compress="true" includes="jmetest/data/sound/**" />
-    <jar destfile="${jars}/jmetest-data-texture.jar" basedir="${class}" compress="true" includes="jmetest/data/texture/**" />
+    <jar destfile="${jars}/jmetest-data-cursor.jar" basedir="${class}"
+         duplicate="fail" compress="true" includes="jmetest/data/cursor/**" />
+    <jar destfile="${jars}/jmetest-data-images.jar" basedir="${class}"
+         duplicate="fail" compress="true" includes="jmetest/data/images/**" />
+    <jar destfile="${jars}/jmetest-data-model.jar" basedir="${class}"
+         duplicate="fail" compress="true" includes="jmetest/data/model/**" />
+    <jar destfile="${jars}/jmetest-data-skybox1.jar" basedir="${class}"
+         duplicate="fail" compress="true" includes="jmetest/data/skybox1/**" />
+    <jar destfile="${jars}/jmetest-data-sound.jar" basedir="${class}"
+         duplicate="fail" compress="true" includes="jmetest/data/sound/**" />
+    <jar destfile="${jars}/jmetest-data-texture.jar" basedir="${class}"
+         duplicate="fail" compress="true" includes="jmetest/data/texture/**" />
   </target>
 
   <target name="webdist-test" depends="dist-test" description="sign test jars for Webstart distribution">
       <targetfileset dir="${webstart}" excludes="**/.*/**" includes="*.jar"/>
     </dependset>
 
+    <!-- WHY ARE ALL THE NATIVE FILES update="yes"?
+         We are specifying exactly what we want in them, so we should not be
+         recreating them. -->
+
     <!--  Jar and sign the Windows libraries -->
-    <jar destfile="${webstart}/lwjgl-windows.jar" basedir="lib/lwjgl/native/windows" includes="lwjgl.dll" update="yes" />
-       <jar destfile="${webstart}/lwjgl-windows.jar" basedir="lib/lwjgl/native/windows" includes="lwjgl64.dll" update="yes" />
-    <jar destfile="${webstart}/openal-windows.jar" basedir="lib/lwjgl/native/windows" includes="OpenAL32.dll" update="yes" />
-       <jar destfile="${webstart}/openal-windows.jar" basedir="lib/lwjgl/native/windows" includes="OpenAL64.dll" update="yes" />
-    <jar destfile="${webstart}/jinput-windows.jar" basedir="lib/lwjgl/native/windows" includes="jinput-dx8.dll" update="yes" />
-    <jar destfile="${webstart}/jinput-windows.jar" basedir="lib/lwjgl/native/windows" includes="jinput-raw.dll" update="yes" />
+    <jar destfile="${webstart}/lwjgl-windows.jar" duplicate="fail" update="yes"
+         basedir="lib/lwjgl/native/windows" includes="lwjgl.dll" />
+       <jar destfile="${webstart}/lwjgl-windows.jar" duplicate="fail" update="yes"
+         basedir="lib/lwjgl/native/windows" includes="lwjgl64.dll" />
+    <jar destfile="${webstart}/openal-windows.jar" duplicate="fail" update="yes"
+         basedir="lib/lwjgl/native/windows" includes="OpenAL32.dll" />
+       <jar destfile="${webstart}/openal-windows.jar" duplicate="fail"
+         basedir="lib/lwjgl/native/windows" includes="OpenAL64.dll" update="yes" />
+    <jar destfile="${webstart}/jinput-windows.jar" duplicate="fail"
+         basedir="lib/lwjgl/native/windows" includes="jinput-dx8.dll" update="yes" />
+    <jar destfile="${webstart}/jinput-windows.jar" duplicate="fail"
+         basedir="lib/lwjgl/native/windows" includes="jinput-raw.dll" update="yes" />
     <signjar jar="${webstart}/lwjgl-windows.jar" alias="jme" keystore="${webstart}/${keyStore}" storepass="${storepass}" />
     <signjar jar="${webstart}/openal-windows.jar" alias="jme" keystore="${webstart}/${keyStore}" storepass="${storepass}" />
     <signjar jar="${webstart}/jinput-windows.jar" alias="jme" keystore="${webstart}/${keyStore}" storepass="${storepass}" />
 
     <!-- Jar and sign Linux native libraries -->
-    <jar destfile="${webstart}/lwjgl-linux.jar" basedir="lib/lwjgl/native/linux" includes="liblwjgl.so" update="yes" />
-    <jar destfile="${webstart}/lwjgl-linux.jar" basedir="lib/lwjgl/native/linux" includes="liblwjgl64.so" update="yes" />
-    <jar destfile="${webstart}/openal-linux.jar" basedir="lib/lwjgl/native/linux" includes="libopenal.so" update="yes" />
-    <jar destfile="${webstart}/openal-linux.jar" basedir="lib/lwjgl/native/linux" includes="libopenal64.so" update="yes" />
-    <jar destfile="${webstart}/jinput-linux.jar" basedir="lib/lwjgl/native/linux" includes="libjinput-linux.so" update="yes" />
-    <jar destfile="${webstart}/jinput-linux.jar" basedir="lib/lwjgl/native/linux" includes="libjinput-linux64.so" update="yes" />
+    <jar destfile="${webstart}/lwjgl-linux.jar" duplicate="fail"
+         basedir="lib/lwjgl/native/linux" includes="liblwjgl.so" update="yes" />
+    <jar destfile="${webstart}/lwjgl-linux.jar" duplicate="fail"
+         basedir="lib/lwjgl/native/linux" includes="liblwjgl64.so" update="yes" />
+    <jar destfile="${webstart}/openal-linux.jar" duplicate="fail"
+         basedir="lib/lwjgl/native/linux" includes="libopenal.so" update="yes" />
+    <jar destfile="${webstart}/openal-linux.jar" duplicate="fail"
+         basedir="lib/lwjgl/native/linux" includes="libopenal64.so" update="yes" />
+    <jar destfile="${webstart}/jinput-linux.jar" duplicate="fail"
+         basedir="lib/lwjgl/native/linux" includes="libjinput-linux.so" update="yes" />
+    <jar destfile="${webstart}/jinput-linux.jar" duplicate="fail"
+         basedir="lib/lwjgl/native/linux" includes="libjinput-linux64.so" update="yes" />
     <signjar jar="${webstart}/lwjgl-linux.jar" alias="jme" keystore="${webstart}/${keyStore}" storepass="${storepass}" />
     <signjar jar="${webstart}/openal-linux.jar" alias="jme" keystore="${webstart}/${keyStore}" storepass="${storepass}" />
     <signjar jar="${webstart}/jinput-linux.jar" alias="jme" keystore="${webstart}/${keyStore}" storepass="${storepass}" />
 
     <!-- Jar (eventually) and sign Mac native libraries -->
-    <jar destfile="${webstart}/lwjgl-mac.jar" basedir="lib/lwjgl/native/macosx" includes="liblwjgl.jnilib" update="yes" />
-    <jar destfile="${webstart}/jinput-mac.jar" basedir="lib/lwjgl/native/macosx" includes="libjinput-osx.jnilib" update="yes" />
-    <jar destfile="${webstart}/openal-mac.jar" basedir="lib/lwjgl/native/macosx" includes="openal.dylib" update="yes" />
+    <jar destfile="${webstart}/lwjgl-mac.jar" duplicate="fail"
+         basedir="lib/lwjgl/native/macosx" includes="liblwjgl.jnilib" update="yes" />
+    <jar destfile="${webstart}/jinput-mac.jar" duplicate="fail"
+         basedir="lib/lwjgl/native/macosx" includes="libjinput-osx.jnilib" update="yes" />
+    <jar destfile="${webstart}/openal-mac.jar" duplicate="fail"
+         basedir="lib/lwjgl/native/macosx" includes="openal.dylib" update="yes" />
 
     <signjar jar="${webstart}/lwjgl-mac.jar" alias="jme" keystore="${webstart}/${keyStore}" storepass="${storepass}" />
     <signjar jar="${webstart}/openal-mac.jar" alias="jme" keystore="${webstart}/${keyStore}" storepass="${storepass}" />