2013-09-27 21:54:48 +08:00
|
|
|
@echo off
|
|
|
|
|
|
|
|
set APPNAME="CrystalCraze"
|
|
|
|
|
|
|
|
set buildexternalsfromsource=
|
|
|
|
set PARALLEL_BUILD_FLAG=
|
|
|
|
|
|
|
|
goto :getopts
|
|
|
|
|
|
|
|
:usage
|
|
|
|
echo Build C/C++ code for %APPNAME% using Android NDK
|
|
|
|
echo OPTIONS:
|
|
|
|
echo -s Build externals from source
|
|
|
|
echo -p Run make with -j8 option to take advantage of multiple processors
|
|
|
|
echo -h this help
|
|
|
|
pause
|
|
|
|
exit /b 1
|
|
|
|
|
|
|
|
:def
|
|
|
|
echo "NDK_ROOT not defined. Please define NDK_ROOT in your environment."
|
|
|
|
pause
|
|
|
|
exit /b 1
|
|
|
|
|
|
|
|
:getopts
|
|
|
|
set "par=%~1"
|
|
|
|
if "%par%"=="" (goto :L)
|
|
|
|
if "%~1"=="-s" set /a buildexternalsfromsource=1
|
|
|
|
if "%~1"=="-p" set PARALLEL_BUILD_FLAG=\-j8
|
|
|
|
if "%~1"=="-h" goto :usage
|
|
|
|
shift
|
|
|
|
goto :getopts
|
|
|
|
|
|
|
|
:L
|
|
|
|
set NDK_ROOT=%NDK_ROOT%
|
|
|
|
if "%NDK_ROOT%"=="" goto:def
|
|
|
|
|
|
|
|
rem check toolchains
|
|
|
|
if exist %NDK_ROOT%\toolchains\arm-linux-androideabi-4.8 (goto :toolchains48)
|
|
|
|
if exist %NDK_ROOT%\toolchains\arm-linux-androideabi-4.7 (goto :toolchains47)
|
|
|
|
if exist %NDK_ROOT%\toolchains\arm-linux-androideabi-4.6 (goto :toolchains46)
|
|
|
|
echo "Couldn't find the gcc toolchain."
|
|
|
|
pause
|
|
|
|
exit /b 1
|
|
|
|
|
|
|
|
:toolchains48
|
|
|
|
set NDK_TOOLCHAIN_VERSION=4.8
|
|
|
|
goto :InitPath
|
|
|
|
:toolchains47
|
|
|
|
set NDK_TOOLCHAIN_VERSION=4.7
|
|
|
|
goto :InitPath
|
|
|
|
:toolchains46
|
|
|
|
set NDK_TOOLCHAIN_VERSION=4.6
|
|
|
|
|
|
|
|
:InitPath
|
|
|
|
|
|
|
|
set COCOS2DX_ROOT=%~dp0..\..\..\..
|
|
|
|
set APP_ROOT=%~dp0..
|
|
|
|
set APP_ANDROID_ROOT=%~dp0
|
2013-10-10 17:10:37 +08:00
|
|
|
set RESROUCE_ROOT="%APP_ROOT%\..\Shared\games\CrystalCraze\Published-Android"
|
|
|
|
set BINDINGS_JS_ROOT=%APP_ROOT%\..\..\..\scripting\javascript\bindings\js
|
2013-09-27 21:54:48 +08:00
|
|
|
|
|
|
|
if "%buildexternalsfromsource%"=="1" (goto :MODULE1) else (goto :MODULE2)
|
|
|
|
:MODULE1
|
|
|
|
echo "Building external dependencies from source"
|
|
|
|
set NDK_MODULE_PATH=%COCOS2DX_ROOT%;%COCOS2DX_ROOT%\cocos2dx\platform\third_party\android\source
|
|
|
|
goto :COPY_RES
|
|
|
|
:MODULE2
|
|
|
|
echo "Using prebuilt externals"
|
|
|
|
set NDK_MODULE_PATH=%COCOS2DX_ROOT%;%COCOS2DX_ROOT%\cocos2dx\platform\third_party\android\prebuilt
|
|
|
|
|
|
|
|
:COPY_RES
|
|
|
|
echo NDK_ROOT = %NDK_ROOT%
|
|
|
|
echo COCOS2DX_ROOT=%COCOS2DX_ROOT%
|
|
|
|
echo APP_ROOT=%APP_ROOT%
|
|
|
|
echo APP_ANDROID_ROOT=%APP_ANDROID_ROOT%
|
|
|
|
echo NDK_TOOLCHAIN_VERSION=%NDK_TOOLCHAIN_VERSION%
|
|
|
|
|
|
|
|
rem make sure assets is exist
|
|
|
|
if exist %APP_ANDROID_ROOT%\assets rd /q /s %APP_ANDROID_ROOT%\assets
|
|
|
|
|
|
|
|
mkdir %APP_ANDROID_ROOT%\assets
|
|
|
|
mkdir %APP_ANDROID_ROOT%\assets\res
|
|
|
|
|
|
|
|
rem copy Resources/* into assets' root
|
2013-10-10 17:10:37 +08:00
|
|
|
xcopy /e /q /r /y %RESROUCE_ROOT%\* %APP_ANDROID_ROOT%\assets
|
2013-09-27 21:54:48 +08:00
|
|
|
|
|
|
|
rem copy bindings/*.js into assets' root
|
2013-10-10 17:10:37 +08:00
|
|
|
xcopy /e /q /r /y %BINDINGS_JS_ROOT%\*.js %APP_ANDROID_ROOT%\assets
|
2013-09-27 21:54:48 +08:00
|
|
|
|
|
|
|
call %NDK_ROOT%\ndk-build.cmd %PARALLEL_BUILD_FLAG% NDK_LOG=0 V=0
|
|
|
|
pause
|