/
PbxModifier.cs
37 lines (30 loc) · 1.23 KB
/
PbxModifier.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
// NDILiteSenderPlugin - NDI send-only plugin for Unity
// https://github.com/keijiro/NDILiteSenderPlugin
using UnityEngine;
using UnityEditor;
using UnityEditor.Callbacks;
using UnityEditor.iOS.Xcode;
using System.IO;
namespace Klak.NdiLite
{
public class PbxModifier
{
[PostProcessBuild]
public static void OnPostprocessBuild(BuildTarget buildTarget, string path)
{
if (buildTarget == BuildTarget.iOS)
{
string projPath = path + "/Unity-iPhone.xcodeproj/project.pbxproj";
PBXProject proj = new PBXProject();
proj.ReadFromString(File.ReadAllText(projPath));
string target = proj.GetUnityFrameworkTargetGuid();
// Add the header/library search path.
proj.AddBuildProperty(target, "HEADER_SEARCH_PATHS", "/Library/NDI\\ SDK\\ for\\ Apple/include");
proj.AddBuildProperty(target, "LIBRARY_SEARCH_PATHS", "/Library/NDI\\ SDK\\ for\\ Apple/lib/iOS");
// Add the NDI library to the build phase.
proj.AddFrameworkToProject(target, "libndi_ios.a", false);
File.WriteAllText(projPath, proj.WriteToString());
}
}
}
}