You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
105 lines
4.6 KiB
105 lines
4.6 KiB
<?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="*.*" />
|
|
</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>
|
|
|