BuildMac.js 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. var fs = require('fs-extra');
  2. var bcommon = require("./BuildCommon");
  3. var host = require("./Host");
  4. var buildDir = bcommon.artifactsRoot + "Build/Mac/";
  5. namespace('build', function() {
  6. task('mac_player', {
  7. async: true
  8. }, function() {
  9. var atomicTool = host.getAtomicToolBinary();
  10. var playerBuildDir = buildDir + "AtomicPlayer/";
  11. bcommon.cleanCreateDir(playerBuildDir);
  12. bcommon.cleanCreateDir(bcommon.getGenScriptRootDir("MACOSX"));
  13. process.chdir(playerBuildDir);
  14. var cmds = [
  15. atomicTool + " bind " + bcommon.atomicRoot + " Script/Packages/Atomic/ MACOSX",
  16. atomicTool + " bind " + bcommon.atomicRoot + " Script/Packages/AtomicPlayer/ MACOSX",
  17. "cmake -DATOMIC_DEV_BUILD=0 -G Xcode ../../../../",
  18. "xcodebuild -target AtomicPlayer -configuration Release"
  19. ];
  20. jake.exec(cmds, function() {
  21. var macPlayerBinary = playerBuildDir + "Source/AtomicPlayer/Application/Release/AtomicPlayer.app/Contents/MacOS/AtomicPlayer";
  22. fs.copySync(macPlayerBinary, buildDir + "Bin/AtomicPlayer");
  23. console.log("Built Mac Player");
  24. complete();
  25. }, {
  26. printStdout: true
  27. });
  28. });
  29. task('mac_editor', {
  30. async: true
  31. }, function() {
  32. var atomicTool = host.getAtomicToolBinary();
  33. var editorBuildDir = buildDir + "AtomicEditor/";
  34. bcommon.cleanCreateDir(editorBuildDir);
  35. process.chdir(editorBuildDir);
  36. var cmds = [
  37. atomicTool + " bind " + bcommon.atomicRoot + " Script/Packages/Atomic/ MACOSX",
  38. atomicTool + " bind " + bcommon.atomicRoot + " Script/Packages/AtomicPlayer/ MACOSX",
  39. atomicTool + " bind " + bcommon.atomicRoot + " Script/Packages/ToolCore/ MACOSX",
  40. atomicTool + " bind " + bcommon.atomicRoot + " Script/Packages/Editor/ MACOSX",
  41. atomicTool + " bind " + bcommon.atomicRoot + " Script/Packages/AtomicNET/ MACOSX",
  42. "cmake -DATOMIC_DEV_BUILD=0 -G Xcode ../../../../",
  43. "xcodebuild -target AtomicEditor -configuration Release"
  44. ];
  45. jake.exec(cmds, function() {
  46. var macEditorBinary = editorBuildDir + "Source/AtomicEditor/Release/AtomicEditor.app/Contents/MacOS/AtomicEditor";
  47. fs.copySync(macEditorBinary, buildDir + "Bin/AtomicEditor");
  48. console.log("Built Mac Editor");
  49. complete();
  50. }, {
  51. printStdout: true
  52. });
  53. });
  54. }); // end of build namespace