/** * Copyright (c) 2014-present, Facebook, Inc. All rights reserved. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to use, * copy, modify, and distribute this software in source code or binary form for use * in connection with the web services and APIs provided by Facebook. * * As with any software that integrates with the Facebook platform, your use of * this software is subject to the Facebook Developer Principles and Policies * [http://developers.facebook.com/policy/]. This copyright notice shall be * included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ using System.IO; using UnityEngine; using UnityEditor; #if UNITY_IOS using UnityEditor.Build.Reporting; using UnityEditor.iOS.Xcode; #endif using UnityEditor.Callbacks; namespace Facebook.Unity.PostProcess {     ///     /// Automatically disables Bitcode on iOS builds     /// public static class DisableBitcode { [PostProcessBuildAttribute(999)] public static void OnPostProcessBuild(BuildTarget buildTarget, string pathToBuildProject) { #if UNITY_IOS if (buildTarget != BuildTarget.iOS) return; string projectPath = pathToBuildProject + "/Unity-iPhone.xcodeproj/project.pbxproj"; PBXProject pbxProject = new PBXProject(); pbxProject.ReadFromFile(projectPath); //Disabling Bitcode on all targets //Main string target = pbxProject.GetUnityMainTargetGuid(); pbxProject.SetBuildProperty(target, "ENABLE_BITCODE", "NO"); //Unity Tests target = pbxProject.TargetGuidByName(PBXProject.GetUnityTestTargetName()); pbxProject.SetBuildProperty(target, "ENABLE_BITCODE", "NO"); //Unity Framework target = pbxProject.GetUnityFrameworkTargetGuid(); pbxProject.SetBuildProperty(target, "ENABLE_BITCODE", "NO"); pbxProject.WriteToFile(projectPath); #endif } } }