ant debug/release/clean 時に ndk-build を実行する為の custom_rules.xml
SDK r20, NDK r8, Windows XP の cmd.exe 上でしか試してません。もしかしたら GnuWin32 が無いとダメかも。
ついでに 1.6 準拠指定も入ってます。不要なら削除。
<?xml version="1.0" encoding="UTF-8"?> <project name="custom_rules"> <!-- 1.6 準拠 --> <property name="java.target" value="1.6" /> <property name="java.source" value="1.6" /> <!-- quick check on ndk.dir --> <fail message="ndk.dir is missing. Make sure to generate local.properties using 'android update project' or to inject it through an env var" unless="ndk.dir" /> <property environment="env" /> <condition property="cmd" value=".cmd" else=""> <os family="windows" /> </condition> <condition property="shell" value="${env.ComSpec}" else="${env.SHELL}"> <os family="windows" /> </condition> <property name="ndk-build" value="${ndk.dir}/ndk-build${cmd}" /> <target name="-check-release"> <condition property="releaseFlag"> <equals arg1="${build.target}" arg2="release" /> </condition> </target> <target name="-pre-build" depends="-check-release"> <if condition="${releaseFlag}"> <then> <exec executable="${ndk-build}" failonerror="true"> <arg value="NDK_DEBUG=0" /> <arg value="-B" /> </exec> </then> <else> <exec executable="${ndk-build}" failonerror="true"> <arg value="NDK_DEBUG=1" /> <arg value="-B" /> </exec> </else> </if> </target> <target name="clean" depends="android_rules.clean"> <exec executable="${ndk-build}" failonerror="true"> <arg value="clean" /> </exec> </target> </project>
ndk.dir を local.properties ファイルか、コマンドラインで指定してください。
ndk.dir=D:/android/ndk
参考