From eed57f92c3fc5e3d1c31824a06b83be2f50d5be0 Mon Sep 17 00:00:00 2001 From: Rob Aldred Date: Fri, 16 Sep 2016 22:50:41 +0100 Subject: [PATCH 1/2] Delete PostprocessBuildPlayer --- source/Editor/PostprocessBuildPlayer | 11 ----------- 1 file changed, 11 deletions(-) delete mode 100755 source/Editor/PostprocessBuildPlayer diff --git a/source/Editor/PostprocessBuildPlayer b/source/Editor/PostprocessBuildPlayer deleted file mode 100755 index 42c4bff..0000000 --- a/source/Editor/PostprocessBuildPlayer +++ /dev/null @@ -1,11 +0,0 @@ -#!/bin/bash - -#Runs post-process build scripts. -#Must follow naming convention PostprocessBuildPlayer_* and be kept in the Assets/Editor folder. - -echo "Running post-process build scripts." -for script in `/bin/ls -1 Assets/Editor | grep -i ^postprocessbuildplayer_ | grep -v [.]meta$`; do - chmod +x "Assets/Editor/$script" - echo "[[[ $script ]]]" - "Assets/Editor/$script" "$@" -done \ No newline at end of file From c71624a8d4d6fa8a62111cc4fc0a277b33de253d Mon Sep 17 00:00:00 2001 From: Rob Aldred Date: Fri, 16 Sep 2016 23:05:17 +0100 Subject: [PATCH 2/2] Support new build pipeline for adding iOS frameworks Added new build pipeline script to automate the adding of iOS frameworks to the xcode project The old shell script and python scripts are no longer required, Unity now comes with xcode tools on the UnityEditor.iOS.Xcode namespace --- source/Editor/PostBuildTriggerGA.cs | 39 +++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 source/Editor/PostBuildTriggerGA.cs diff --git a/source/Editor/PostBuildTriggerGA.cs b/source/Editor/PostBuildTriggerGA.cs new file mode 100644 index 0000000..3bf0fd5 --- /dev/null +++ b/source/Editor/PostBuildTriggerGA.cs @@ -0,0 +1,39 @@ +using System.IO; +using UnityEngine; +using UnityEditor; +using UnityEditor.Callbacks; +using UnityEditor.iOS.Xcode; + +public class PostBuildTriggerGA { + + [PostProcessBuildAttribute(1)] + public static void OnPostProcessBuild(BuildTarget target, string path) + { + Debug.Log( "GAv4 Unity: Post build script starts"); + if (target == BuildTarget.iOS) + { + + // Get target for Xcode project + string projPath = PBXProject.GetPBXProjectPath(path); + Debug.Log( "GAv4 Unity: Project path is " + projPath); + + PBXProject proj = new PBXProject(); + proj.ReadFromString(File.ReadAllText(projPath)); + + string targetName = PBXProject.GetUnityTargetName(); + string projectTarget = proj.TargetGuidByName(targetName); + + // Add dependencies + Debug.Log( "GAv4 Unity: Adding frameworks"); + + proj.AddFrameworkToProject(projectTarget, "AdSupport.framework", false); + proj.AddFrameworkToProject(projectTarget, "CoreData.framework", false); + proj.AddFrameworkToProject(projectTarget, "SystemConfiguration.framework", false); + proj.AddFrameworkToProject(projectTarget, "libz.dylib", false); + proj.AddFrameworkToProject(projectTarget, "libsqlite3.tbd", false); + + File.WriteAllText(projPath, proj.WriteToString()); + + } + } +}