BuildMac.js 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  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. atomicTool + " bind " + bcommon.atomicRoot + " Script/Packages/AtomicApp/ MACOSX",
  18. atomicTool + " bind " + bcommon.atomicRoot + " Script/Packages/AtomicNETNative/ MACOSX",
  19. atomicTool + " bind " + bcommon.atomicRoot + " Script/Packages/AtomicNETScript/ MACOSX",
  20. "cmake -DATOMIC_DEV_BUILD=0 -G Xcode ../../../../",
  21. "xcodebuild -target AtomicPlayer -configuration Release -parallelizeTargets -jobs 4"
  22. ];
  23. jake.exec(cmds, function() {
  24. var macPlayerBinary = playerBuildDir + "Source/AtomicPlayer/Application/Release/AtomicPlayer.app/Contents/MacOS/AtomicPlayer";
  25. fs.copySync(macPlayerBinary, buildDir + "Bin/AtomicPlayer");
  26. console.log("Built Mac Player");
  27. complete();
  28. }, {
  29. printStdout: true
  30. });
  31. });
  32. task('mac_editor', {
  33. async: true
  34. }, function() {
  35. var atomicTool = host.getAtomicToolBinary();
  36. var editorBuildDir = buildDir + "AtomicEditor/";
  37. bcommon.cleanCreateDir(editorBuildDir);
  38. process.chdir(editorBuildDir);
  39. var cmds = [
  40. atomicTool + " bind " + bcommon.atomicRoot + " Script/Packages/Atomic/ MACOSX",
  41. atomicTool + " bind " + bcommon.atomicRoot + " Script/Packages/AtomicPlayer/ MACOSX",
  42. atomicTool + " bind " + bcommon.atomicRoot + " Script/Packages/ToolCore/ MACOSX",
  43. atomicTool + " bind " + bcommon.atomicRoot + " Script/Packages/Editor/ MACOSX",
  44. atomicTool + " bind " + bcommon.atomicRoot + " Script/Packages/WebView/ MACOSX",
  45. atomicTool + " bind " + bcommon.atomicRoot + " Script/Packages/AtomicApp/ MACOSX",
  46. atomicTool + " bind " + bcommon.atomicRoot + " Script/Packages/AtomicNETNative/ MACOSX",
  47. atomicTool + " bind " + bcommon.atomicRoot + " Script/Packages/AtomicNETScript/ MACOSX",
  48. "cmake -DATOMIC_DEV_BUILD=0 -G Xcode ../../../../",
  49. "xcodebuild -target AtomicEditor -configuration Release -parallelizeTargets -jobs 4",
  50. "cd " + editorBuildDir + "Source/AtomicEditor/Release && zip -r -X " + buildDir + "Bin/AtomicEditor.zip ./AtomicEditor.app"
  51. ];
  52. jake.exec(cmds, function() {
  53. console.log("Built Mac Editor");
  54. complete();
  55. }, {
  56. printStdout: true
  57. });
  58. });
  59. }); // end of build namespace