<?xml version="1.0" encoding="UTF-8"?> <project name="build openal-soft natives" default="all" basedir="../"> <!-- load cpp compiler ant task --> <taskdef resource="cpptasks.tasks" classpath="lib/antlibs/cpptasks.jar"/> <!-- load properties --> <property file="nbproject/openal-soft-native.properties"/> <condition property="ndk-build-name" value="ndk-build.cmd" else="ndk-build"> <os family="windows" /> </condition> <fileset id="lib.jars" dir="${openal-soft.lib.dir}"> <include name="**/*.jar"/> </fileset> <fileset id="lib.jme.jars" dir="${openal-soft.jme.dir}"> <include name="**/*.jar"/> </fileset> <pathconvert property="lib.importpath"> <fileset refid="lib.jars"/> <fileset refid="lib.jme.jars"/> </pathconvert> <target name="build-openal-soft-natives" description="builds the native openal-soft library for android" depends="create-native-headers, -create-folders, compile-android"> <echo message="Updating native jME3-openal-soft-natives.jar"/> <zip basedir="${openal-soft.output.dir}" file="${openal-soft.output.base}/jME3-openal-soft-natives-android.jar" compress="true"/> <copy file="${openal-soft.output.base}/jME3-openal-soft-natives-android.jar" todir="dist/opt/native-openal-soft/"/> </target> <target name="create-native-headers" description="creates the native C++ headers for the java native methods"> <javah destdir="${openal-soft.source.dir}" classpath="${openal-soft.build.dir}${path.separator}${lib.importpath}"> <class name="com.jme3.audio.android.AndroidOpenALSoftAudioRenderer"/> </javah> </target> <target name="-create-folders" description="creates the needed folders"> <mkdir dir="${openal-soft.build.dir}"/> <mkdir dir="${openal-soft.build.dir}/jni"/> <mkdir dir="${openal-soft.output.base}"/> <mkdir dir="${openal-soft.output.dir}"/> </target> <target name="compile-android" description="compiles libopenalsoftjme using the Android NDK" depends="-check-android-ndk" if="haveAndoidNdk"> <!-- copy OpenAL Soft files into jni directory --> <echo>Copying OpenAL Soft source files to build directory from ${openal-soft.include}</echo> <copy todir="${openal-soft.build.dir}/jni" verbose="true" flatten="false" overwrite="true"> <fileset dir="${openal-soft.include}"> <include name="**/*.*"/> <!-- <include name="**/*.cpp"/> <include name="**/*.h"/> <include name="**/*.cl"/> <include name="**/*.c"/> <include name="**/*.inc"/> <exclude name="/android/*.*"/> <include name="**/*.*" /> --> </fileset> </copy> <!-- copy jME3 Native OpenAL Soft files into jni directory --> <!-- <echo>Copying jME3 JNI files for OpenAL Soft to build directory from ${openal-soft.source.dir}</echo> <copy todir="build/openal-soft-android/jni" verbose="true" flatten="false" overwrite="true"> <fileset dir="${openal-soft.source.dir}"> <include name="*.cpp" /> <include name="*.h" /> <include name="**/*.*" /> </fileset> </copy> --> <!-- copy Android.mk and Application.mk files into jni directory --> <echo>Copying Android Make and JNI files for OpenAL Soft to build directory from ${openal-soft.source.dir}</echo> <copy todir="${openal-soft.build.dir}/jni" verbose="true" flatten="false" overwrite="true"> <fileset dir="${openal-soft.source.dir}"> <include name="*.*" /> <!--<include name="**/*.*"/>--> </fileset> </copy> <!-- <copy file="${openal-soft.source.dir}/Android.mk" todir="build/openal-soft-android/jni" verbose="true"/> <copy file="${openal-soft.source.dir}/Application.mk" todir="build/openal-soft-android/jni" verbose="true"/> --> <exec executable="${ndk.dir}/${ndk-build-name}" failonerror="true" > <!--<arg line="NDK_DEBUG=1"/>--> <arg line="TARGET_PLATFORM=android-9"/> <arg line="-C ${openal-soft.build.dir}/"/> </exec> <!-- copy resulting library directories to jarcontent directory --> <copy todir="${openal-soft.output.dir}" verbose="true" flatten="false"> <fileset dir="${openal-soft.build.dir}/libs"> <include name="**/*.*"/> <!--exclude name="**/x86/*.*"/--> </fileset> </copy> </target> <target name="-check-android-ndk"> <available file="${ndk.dir}/${ndk-build-name}" property="haveAndoidNdk"/> </target> </project>