BuildAndroid.js 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. var fs = require('fs-extra');
  2. var bcommon = require("./BuildCommon");
  3. var host = require("./Host");
  4. var buildDir = bcommon.artifactsRoot + "Build/Android/";
  5. var playerBuildDir = buildDir + "AtomicPlayer/";
  6. namespace('build', function() {
  7. task('android_player', {
  8. async: true
  9. }, function() {
  10. bcommon.cleanCreateDir(playerBuildDir);
  11. bcommon.cleanCreateDir(bcommon.getGenScriptRootDir("ANDROID"));
  12. var atomicTool = host.getAtomicToolBinary();
  13. process.chdir(playerBuildDir);
  14. var cmds = [
  15. atomicTool + " bind " + bcommon.atomicRoot + " Script/Packages/Atomic/ ANDROID",
  16. atomicTool + " bind " + bcommon.atomicRoot + " Script/Packages/AtomicPlayer/ ANDROID",
  17. atomicTool + " bind " + bcommon.atomicRoot + " Script/Packages/AtomicNETNative/ ANDROID",
  18. atomicTool + " bind " + bcommon.atomicRoot + " Script/Packages/AtomicNETScript/ ANDROID"
  19. ];
  20. cmds.push("cmake -G \"Unix Makefiles\" -DCMAKE_TOOLCHAIN_FILE=" + bcommon.atomicRoot + "Build//CMake/Toolchains/android.toolchain.cmake -DCMAKE_BUILD_TYPE=Release ../../../../");
  21. cmds.push("make -j4");
  22. jake.exec(cmds, function() {
  23. var androidPlayerBinary = playerBuildDir + "Source/AtomicPlayer/Application/libAtomicPlayer.so";
  24. fs.copySync(androidPlayerBinary, buildDir + "Bin/libAtomicPlayer.so");
  25. console.log("Built Android Player");
  26. complete();
  27. }, {
  28. printStdout: true
  29. });
  30. });
  31. }); // end of build namespace