Example #1
0
        /// <summary>
        /// Creates the enterprise rules assembly
        /// </summary>
        /// <param name="bUsePrecompiled">Whether to use a precompiled enterprise and engine folder</param>
        /// <param name="bSkipCompile">Whether to skip compilation for this assembly</param>
        /// <returns>New rules assembly. Returns null if the enterprise directory is unavailable.</returns>
        public static RulesAssembly CreateEnterpriseRulesAssembly(bool bUsePrecompiled, bool bSkipCompile)
        {
            if (EnterpriseRulesAssembly == null)
            {
                RulesAssembly EngineAssembly = CreateEngineRulesAssembly(bUsePrecompiled, bSkipCompile);
                if (DirectoryReference.Exists(UnrealBuildTool.EnterpriseDirectory))
                {
                    RulesScope EnterpriseScope = new RulesScope("Enterprise", EngineAssembly.Scope);

                    //List<DirectoryReference> EnterpriseDirectories = new List<DirectoryReference>() { UnrealBuildTool.EnterpriseDirectory };

                    IReadOnlyList <PluginInfo> IncludedPlugins = Plugins.ReadEnterprisePlugins(UnrealBuildTool.EnterpriseDirectory);
                    EnterpriseRulesAssembly = CreateEngineOrEnterpriseRulesAssembly(EnterpriseScope, new List <DirectoryReference>()
                    {
                        UnrealBuildTool.EnterpriseDirectory
                    },
                                                                                    ProjectFileGenerator.EnterpriseProjectFileNameBase, IncludedPlugins, UnrealBuildTool.IsEnterpriseInstalled() || bUsePrecompiled, bSkipCompile, EngineAssembly);
                }
                else
                {
                    // If we're asked for the enterprise rules assembly but the enterprise directory is missing, fallback on the engine rules assembly
                    Log.TraceWarning("Trying to build an enterprise target but the enterprise directory is missing. Falling back on engine components only.");
                    return(EngineAssembly);
                }
            }

            return(EnterpriseRulesAssembly);
        }
Example #2
0
 /// <summary>
 /// Creates the enterprise rules assembly
 /// </summary>
 /// <param name="bUsePrecompiled">Whether to use a precompiled enterprise and engine folder</param>
 /// <param name="bSkipCompile">Whether to skip compilation for this assembly</param>
 /// <returns>New rules assembly. Returns null if the enterprise directory is unavailable.</returns>
 public static RulesAssembly CreateEnterpriseRulesAssembly(bool bUsePrecompiled, bool bSkipCompile)
 {
     if (EnterpriseRulesAssembly == null && DirectoryReference.Exists(UnrealBuildTool.EnterpriseDirectory))
     {
         IReadOnlyList <PluginInfo> IncludedPlugins = Plugins.ReadEnterprisePlugins(UnrealBuildTool.EnterpriseDirectory);
         EnterpriseRulesAssembly = CreateEngineOrEnterpriseRulesAssembly(UnrealBuildTool.EnterpriseDirectory, ProjectFileGenerator.EnterpriseProjectFileNameBase, IncludedPlugins, UnrealBuildTool.IsEnterpriseInstalled() || bUsePrecompiled, bSkipCompile, CreateEngineRulesAssembly(bUsePrecompiled, bSkipCompile));
     }
     return(EnterpriseRulesAssembly);
 }
Example #3
0
		/// <summary>
		/// Creates the enterprise rules assembly
		/// </summary>
		/// <returns>New rules assembly. Returns null if the enterprise directory is unavailable.</returns>
		public static RulesAssembly CreateEnterpriseRulesAssembly()
		{
			if (EnterpriseRulesAssembly == null && DirectoryReference.Exists(UnrealBuildTool.EnterpriseDirectory))
			{
				IReadOnlyList<PluginInfo> IncludedPlugins = Plugins.ReadEnterprisePlugins(UnrealBuildTool.EnterpriseDirectory);
				EnterpriseRulesAssembly = CreateRulesAssembly(UnrealBuildTool.EnterpriseDirectory, ProjectFileGenerator.EnterpriseProjectFileNameBase, IncludedPlugins, CreateEngineRulesAssembly());
			}
			return EnterpriseRulesAssembly;
		}