Beispiel #1
0
 public virtual void AddDelegateCallback(IgorBuildCommon.GetExtraBuildOptions NewDelegate)
 {
     if(!BuildOptionsDelegates.Contains(NewDelegate))
     {
         BuildOptionsDelegates.Add(NewDelegate);
     }
 }
Beispiel #2
0
        public override void RegisterModule()
        {
            IgorCore.RegisterNewModule(this);

            BuildOptionsDelegates.Clear();

            IgorBuildCommon.RegisterBuildPlatforms(new string[] { "iOS" });
        }
Beispiel #3
0
        public override void RegisterModule()
        {
            bool DidRegister = IgorCore.RegisterNewModule(this);

            IgorBuildCommon.RegisterBuildPlatforms(new string[] { "OSX32", "OSX64", "OSXUniversal", "Windows32", "Windows64", "Linux32", "Linux64", "LinuxUniversal" });
        }
Beispiel #4
0
        public virtual bool Build()
        {
            string BuiltName     = GetBuiltNameForTarget(JobBuildTarget);
            string BuiltBaseName = BuiltName;

            if (BuiltBaseName.Contains("."))
            {
                BuiltBaseName = BuiltName.Substring(0, BuiltBaseName.LastIndexOf('.'));
            }

            string DataFolderName = BuiltBaseName + "_Data";

            if (File.Exists(BuiltName))
            {
                IgorRuntimeUtils.DeleteFile(BuiltName);
            }

            if (Directory.Exists(DataFolderName))
            {
                IgorRuntimeUtils.DeleteDirectory(DataFolderName);
            }

#if !UNITY_4_3
            BuiltName = System.IO.Path.Combine(System.IO.Path.GetFullPath("."), BuiltName);
#endif
            BuildPipeline.BuildPlayer(IgorUtils.GetLevels(), BuiltName, JobBuildTarget, IgorBuildCommon.GetBuildOptions());

            Log("Destination file is: " + BuiltName);

            List <string> BuiltFiles = new List <string>();

            if (Directory.Exists(DataFolderName))
            {
                if (IgorAssert.EnsureTrue(this, File.Exists(BuiltName), "The built file " + BuiltName + " doesn't exist.  Something went wrong during the build step.  Please check the logs!"))
                {
                    BuiltFiles.Add(BuiltName);
                }

                if (IgorAssert.EnsureTrue(this, Directory.Exists(DataFolderName), "The built data directory for the Windows build " + DataFolderName + " doesn't exist.  Something went wrong during the build step.  Please check the logs!"))
                {
                    BuiltFiles.Add(DataFolderName);
                }
            }
            else
            {
                if (IgorAssert.EnsureTrue(this, Directory.Exists(BuiltName), "The built app directory for the Mac build " + BuiltName + " doesn't exist.  Something went wrong during the build step.  Please check the logs!"))
                {
                    BuiltFiles.Add(BuiltName);
                }
            }

            IgorCore.SetNewModuleProducts(BuiltFiles);

            return(true);
        }
Beispiel #5
0
        public virtual string GetBuiltNameForTarget(BuildTarget NewTarget)
        {
            string BuiltName = "";

            bool bOSX     = false;
            bool bWindows = false;
            bool bLinux   = false;

            if (NewTarget == BuildTarget.StandaloneOSXIntel)
            {
                BuiltName = GetConfigString("BuiltOSX32Name");
                bOSX      = true;
            }
            else if (NewTarget == BuildTarget.StandaloneOSXIntel64)
            {
                BuiltName = GetConfigString("BuiltOSX64Name");
                bOSX      = true;
            }
            else if (NewTarget == BuildTarget.StandaloneOSXUniversal)
            {
                BuiltName = GetConfigString("BuiltOSXUniversalName");
                bOSX      = true;
            }

            if (NewTarget == BuildTarget.StandaloneWindows)
            {
                BuiltName = GetConfigString("BuiltWindows32Name");
                bWindows  = true;
            }
            else if (NewTarget == BuildTarget.StandaloneWindows64)
            {
                BuiltName = GetConfigString("BuiltWindows64Name");
                bWindows  = true;
            }

            if (NewTarget == BuildTarget.StandaloneLinux)
            {
                BuiltName = GetConfigString("BuiltLinux32Name");
                bLinux    = true;
            }
            else if (NewTarget == BuildTarget.StandaloneLinux64)
            {
                BuiltName = GetConfigString("BuiltLinux64Name");
                bLinux    = true;
            }
            else if (NewTarget == BuildTarget.StandaloneLinuxUniversal)
            {
                BuiltName = GetConfigString("BuiltLinuxUniversalName");
                bLinux    = true;
            }

            if (BuiltName == "")
            {
                if (bOSX)
                {
                    BuiltName = GetConfigString("BuiltOSXName");
                }
                else if (bWindows)
                {
                    BuiltName = GetConfigString("BuiltWindowsName");
                }
                else if (bLinux)
                {
                    BuiltName = GetConfigString("BuiltLinuxName");
                }
            }

            if (BuiltName == "")
            {
                BuiltName = IgorJobConfig.GetStringParam(IgorBuildCommon.BuiltNameFlag);
            }

            if (BuiltName == "")
            {
                BuiltName = Path.GetFileName(EditorUserBuildSettings.GetBuildLocation(NewTarget));
            }

            if (BuiltName == "")
            {
                if (bOSX)
                {
                    BuiltName = "Unity.app";
                }
                else if (bWindows)
                {
                    BuiltName = "Unity.exe";
                }
                else if (bLinux)
                {
                    BuiltName = "Unity";
                }
            }

            if (!bLinux && !BuiltName.Contains(".exe") && !BuiltName.Contains(".app"))
            {
                if (bOSX)
                {
                    BuiltName += ".app";
                }
                if (bWindows)
                {
                    BuiltName += ".exe";
                }
            }

            if (!string.IsNullOrEmpty(BuiltName) && IgorJobConfig.IsBoolParamSet(IgorBuildCommon.AppendCommitInfoFlag))
            {
                string CommitInfo = IgorBuildCommon.GetCommitInfo();
                if (!string.IsNullOrEmpty(CommitInfo))
                {
                    BuiltName = BuiltName.Insert(BuiltName.IndexOf("."), "_" + CommitInfo);
                }
            }

            return(BuiltName);
        }