Browse Source

Support for C# and Xamarin Studio with standalone editor build

Josh Engebretson 9 years ago
parent
commit
cc88663983

+ 8 - 1
Build/Scripts/BuildMac.js

@@ -26,7 +26,9 @@ task('atomiceditor', {
   var cmds = [];
 
   cmds.push("cmake ../../../ -DATOMIC_DEV_BUILD=0 -G Xcode");
-  cmds.push("xcodebuild -target AtomicEditor -target AtomicPlayer -configuration Release -parallelizeTargets -jobs 4")
+  cmds.push("xcodebuild -target AtomicEditor -target AtomicPlayer -target AtomicNETNative -configuration Release -parallelizeTargets -jobs 4")
+
+  cmds.push(host.atomicTool + " net compile " + atomicRoot + "Script/AtomicNET/AtomicNETProject.json MACOSX Release");
 
   jake.exec(cmds, function() {
 
@@ -56,6 +58,11 @@ task('atomiceditor', {
     fs.copySync(playerBinary,
       resourceDest + "ToolData/Deployment/MacOS/AtomicPlayer.app/Contents/MacOS/AtomicPlayer");
 
+    // AtomicNET
+    fs.copySync(atomicRoot + "Artifacts/AtomicNET/Release",
+      resourceDest + "ToolData/AtomicNET/Release");
+
+
     console.log("\n\nAtomic Editor build to " + editorAppFolder + "\n\n");
 
     complete();

+ 4 - 1
Source/AtomicApp/Player/IPCPlayerApp.cpp

@@ -119,7 +119,10 @@ namespace Atomic
 #else
 
 #ifdef __APPLE__
-                    engineParameters_["ResourcePrefixPaths"] = "../Resources";
+                    if (!resourcePrefix.Length())
+                    {
+                        engineParameters_["ResourcePrefixPaths"] = "../Resources";
+                    }
 #else
                     if (!resourcePrefix.Length())
                     {

+ 6 - 0
Source/AtomicEditor/EditorMode/AEEditorMode.cpp

@@ -172,7 +172,13 @@ bool EditorMode::PlayProject(String addArgs, bool debug)
 #ifdef ATOMIC_DEV_BUILD
         vargs.Insert(0, ToString("\"%s/Resources/\"", tenv->GetRootSourceDir().CString()));
 #else
+
+#ifdef ATOMIC_PLATFORM_OSX
+        vargs.Insert(0, ToString("\"%s\"", (fileSystem->GetProgramDir() + "../Resources/").CString()));
+#else
         vargs.Insert(0, ToString("\"%s\"", (fileSystem->GetProgramDir() + "Resources/").CString()));
+#endif
+
 #endif
         vargs.Insert(0, "--resourcePrefix");
     }

+ 9 - 3
Source/ToolCore/NETTools/NETProjectGen.cpp

@@ -315,11 +315,17 @@ namespace ToolCore
 
         String startArguments;
 
-        #ifdef ATOMIC_DEV_BUILD
+#ifdef ATOMIC_DEV_BUILD
             String playerBin = tenv->GetAtomicNETRootDir() + cfg + "/AtomicIPCPlayer.exe";
-        #else
-            String playerBin = tenv->GetAtomicNETRootDir() + "Release/AtomicIPCPlayer.exe";
+#else
+            FileSystem* fileSystem = GetSubsystem<FileSystem>();
+            String playerBin = tenv->GetAtomicNETRootDir() + "Release/AtomicIPCPlayer.exe";            
+
+#ifdef ATOMIC_PLATFORM_OSX
+            startArguments += ToString("--resourcePrefix \"%s\" ", (fileSystem->GetProgramDir() + "../Resources/").CString());
+#else
             startArguments += ToString("--resourcePrefix \"%s\" ", (fileSystem->GetProgramDir() + "Resources/").CString());
+#endif
         #endif