mirror of https://github.com/axmolengine/axmol.git
100 lines
3.0 KiB
Bash
Executable File
100 lines
3.0 KiB
Bash
Executable File
#!/bin/bash
|
|
#This script is used to finish a android automated compiler.
|
|
#You should make sure have finished the environment setting.
|
|
#Here are the environment variables you should set.
|
|
#$COCOS2DX_ROOT $ANDROID_SDK_ROOT $ANDROID_NDK_ROOT $NDK_ROOT
|
|
|
|
antcompile()
|
|
{
|
|
#Change API level.(API level:14)
|
|
sed '/target=/s/=.*$/=android-14/' ant.properties > anttmp.properties
|
|
cp anttmp.properties ant.properties
|
|
rm anttmp.properties
|
|
ant release
|
|
compileresult=$[$compileresult+$?]
|
|
if [ $IsTestCpp == 1 ] && [ $? == 0 ]
|
|
then
|
|
cd bin
|
|
mv TestCpp-release.apk TestCpp-release-14.apk
|
|
cd ..
|
|
fi
|
|
|
|
#Change API level.(API level:15)
|
|
sed '/target=/s/=.*$/=android-15/' ant.properties > anttmp.properties
|
|
cp anttmp.properties ant.properties
|
|
rm anttmp.properties
|
|
ant release
|
|
compileresult=$[$compileresult+$?]
|
|
if [ $IsTestCpp == 1 ] && [ $? == 0 ]
|
|
then
|
|
cd bin
|
|
mv TestCpp-release.apk TestCpp-release-15.apk
|
|
cd ..
|
|
fi
|
|
|
|
#After all test versions completed,changed current API level to the original.(API level:8)
|
|
sed '/target=/s/=.*$/=android-8/' ant.properties > anttmp.properties
|
|
cp anttmp.properties ant.properties
|
|
rm anttmp.properties
|
|
}
|
|
|
|
#record the relevant catalog
|
|
compileresult=0
|
|
CUR=$(pwd)
|
|
cd ../../../..
|
|
ROOT=$(pwd)
|
|
IsTestCpp=1
|
|
|
|
#copy configuration files to target.
|
|
sed -i '' '14d' $CUR/ant.properties
|
|
gsed -i "14 i\\key.store=$ANDROID_HOME/debug.keystore" $CUR/ant.properties
|
|
cp $CUR/../debug.keystore $ANDROID_HOME
|
|
|
|
cp $ROOT/tools/jenkins_scripts/ant.properties $ROOT/samples/Cpp/TestCpp/proj.android
|
|
cp $ROOT/tools/jenkins_scripts/build.xml $ROOT/samples/Cpp/TestCpp/proj.android
|
|
cp $ROOT/tools/jenkins_scripts/mac/rootconfig-mac.sh $ROOT/samples/Cpp/TestCpp/proj.android
|
|
cd samples/Cpp/TestCpp/proj.android
|
|
sh rootconfig-mac.sh TestCpp
|
|
sh build_native.sh
|
|
|
|
#update android project configuration files
|
|
cd ..
|
|
android update project -p proj.android
|
|
cd proj.android
|
|
antcompile
|
|
|
|
IsTestCpp=0
|
|
|
|
cp $ROOT/tools/jenkins_scripts/ant.properties $ROOT/samples/Cpp/HelloCpp/proj.android
|
|
cp $ROOT/tools/jenkins_scripts/build.xml $ROOT/samples/Cpp/HelloCpp/proj.android
|
|
cp $ROOT/tools/jenkins_scripts/mac/rootconfig-mac.sh $ROOT/samples/Cpp/HelloCpp/proj.android
|
|
cd ../../Cpp/HelloCpp/proj.android
|
|
sh rootconfig-mac.sh HelloCpp
|
|
sh build_native.sh
|
|
cd ..
|
|
android update project -p proj.android
|
|
cd proj.android
|
|
antcompile
|
|
|
|
cp $ROOT/tools/jenkins_scripts/ant.properties $ROOT/samples/Lua/HelloLua/proj.android
|
|
cp $ROOT/tools/jenkins_scripts/build.xml $ROOT/samples/Lua/HelloLua/proj.android
|
|
cp $ROOT/tools/jenkins_scripts/mac/rootconfig-mac.sh $ROOT/samples/Lua/HelloLua/proj.android
|
|
cd ../../Lua/HelloLua/proj.android
|
|
sh rootconfig-mac.sh HelloLua
|
|
sh build_native.sh
|
|
cd ..
|
|
android update project -p proj.android
|
|
cd proj.android
|
|
antcompile
|
|
|
|
#return the compileresult.
|
|
cd ../../..
|
|
if [ $compileresult != 0 ]; then
|
|
# git checkout -f
|
|
# git clean -df -x
|
|
exit 1
|
|
else
|
|
# git checkout -f
|
|
# git clean -df -x
|
|
exit 0
|
|
fi |