OSDN Git Service

[fixed] new build scripts
authorbadlogicgames <badlogicgames@6c4fd544-2939-11df-bb46-9574ba5d0bfa>
Tue, 27 Dec 2011 03:18:32 +0000 (03:18 +0000)
committerbadlogicgames <badlogicgames@6c4fd544-2939-11df-bb46-9574ba5d0bfa>
Tue, 27 Dec 2011 03:18:32 +0000 (03:18 +0000)
[fixed] NativeCodeGenerator didn't take strings into account for cleanup...

build-new.xml
build-template.xml
extensions/gdx-bullet/bullet/.classpath
extensions/gdx-jnigen/.project
extensions/gdx-jnigen/src/com/badlogic/gdx/jnigen/NativeCodeGenerator.java
extensions/gdx-stb-truetype/.classpath

index 4176616..b9f9463 100644 (file)
                <delete dir="${distDir}"/>\r
        </target>\r
        \r
+       <!-- gdx jnigen -->\r
+       <target name="gdx-jnigen">\r
+               <ant antfile="../../build-template.xml" dir="extensions/gdx-jnigen">\r
+                       <property name="jar" value="gdx-jnigen"/>\r
+               </ant>\r
+       </target>\r
+       \r
        <!-- gdx core -->\r
-       <target name="gdx-core">\r
+       <target name="gdx-core" depends="gdx-jnigen">\r
+               <path id="classpath">\r
+                       <pathelement location="${distDir}/extensions/gdx-jnigen.jar"/>\r
+               </path>\r
                <ant antfile="../build-template.xml" dir="gdx">\r
                        <property name="jar" value="gdx"/>\r
                </ant>\r
index 5b23a9f..d266bcd 100644 (file)
@@ -48,7 +48,12 @@ zipfileset id="jarfiles" -> the jar files to be merged with the project's classe
 \r
        <!-- compile native code if available -->\r
        <target name="check-natives">\r
-               <available file="${jni}/build.xml" property="natives-present"/>\r
+               <condition property="natives-present">\r
+                       <and>\r
+                               <available file="${jni}/build.xml"/>\r
+                               <not><os family="windows"/></not>\r
+                       </and>\r
+               </condition>\r
        </target>\r
        <target name="compile-natives" depends="init, check-natives" if="natives-present">\r
                <ant antfile="build.xml" target="clean" dir="${jni}"/>\r
index 226bae7..324ee05 100644 (file)
@@ -4,6 +4,6 @@
        <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>\r
        <classpathentry exported="true" kind="lib" path="libs/bullet-natives.jar"/>\r
        <classpathentry combineaccessrules="false" kind="src" path="/gdx"/>\r
-       <classpathentry combineaccessrules="false" kind="src" path="/jnigen"/>\r
+       <classpathentry combineaccessrules="false" kind="src" path="/gdx-jnigen"/>\r
        <classpathentry kind="output" path="bin"/>\r
 </classpath>\r
index ac93d92..218aaa5 100644 (file)
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>\r
 <projectDescription>\r
-       <name>jnigen</name>\r
+       <name>gdx-jnigen</name>\r
        <comment></comment>\r
        <projects>\r
        </projects>\r
index c838157..d2afd5b 100644 (file)
@@ -108,7 +108,7 @@ public class NativeCodeGenerator {
                buffer.append(") {\n");\r
                \r
                // generate ArrayList and direct buffer to pointer statements,\r
-               if(javaMethod.hasArrayListOrBuffer) {\r
+               if(javaMethod.hasDisposableArgument) {\r
                        // direct buffer pointers\r
                        for(Argument arg: javaMethod.arguments) {\r
                                if(arg.type == ArgumentType.DirectBuffer) {\r
@@ -135,7 +135,7 @@ public class NativeCodeGenerator {
                \r
                // generate clean up code for ArrayLists\r
                StringBuffer cleanup = new StringBuffer();\r
-               if(javaMethod.hasArrayListOrBuffer) {\r
+               if(javaMethod.hasDisposableArgument) {\r
                        for(Argument arg: javaMethod.arguments) {\r
                                if(arg.type == ArgumentType.ArrayList) {\r
                                        cleanup.append("\tenv->ReleasePrimitiveArrayCritical(" + NON_POD_PREFIX + arg.name + ", " + arg.name + ", 0);\n");\r
@@ -344,7 +344,7 @@ public class NativeCodeGenerator {
                final ArrayList<Argument> arguments;\r
                final int startIndex;\r
                final int endIndex;\r
-               final boolean hasArrayListOrBuffer;\r
+               final boolean hasDisposableArgument;\r
 \r
                public JavaMethod(String name, String nativeCode,\r
                                ArrayList<Argument> arguments, int startIndex, int endIndex) {\r
@@ -354,12 +354,12 @@ public class NativeCodeGenerator {
                        this.startIndex = startIndex;\r
                        this.endIndex = endIndex;\r
                        for(Argument arg: arguments) {\r
-                               if(arg.type == ArgumentType.ArrayList || arg.type == ArgumentType.DirectBuffer) {\r
-                                       hasArrayListOrBuffer = true;\r
+                               if(arg.type == ArgumentType.ArrayList || arg.type == ArgumentType.DirectBuffer || arg.type == ArgumentType.String) {\r
+                                       hasDisposableArgument = true;\r
                                        return;\r
                                }\r
                        }\r
-                       hasArrayListOrBuffer = false;\r
+                       hasDisposableArgument = false;\r
                }\r
 \r
                @Override\r
index 40681bf..e6c9655 100644 (file)
@@ -3,8 +3,8 @@
        <classpathentry kind="src" path="src"/>\r
        <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>\r
        <classpathentry combineaccessrules="false" kind="src" path="/gdx"/>\r
-       <classpathentry combineaccessrules="false" kind="src" path="/jnigen"/>\r
        <classpathentry combineaccessrules="false" kind="src" path="/gdx-backend-lwjgl"/>\r
        <classpathentry kind="lib" path="libs/stbtruetype-natives.jar"/>\r
+       <classpathentry combineaccessrules="false" kind="src" path="/gdx-openal"/>\r
        <classpathentry kind="output" path="bin"/>\r
 </classpath>\r