コード例 #1
0
 /** Copy constructor. */
 public CPPEnvironmentConfiguration(CPPEnvironmentConfiguration InCopyEnvironment) :
     base(InCopyEnvironment)
 {
     OutputDirectory                  = InCopyEnvironment.OutputDirectory;
     LocalShadowDirectory             = InCopyEnvironment.LocalShadowDirectory;
     PCHHeaderNameInCode              = InCopyEnvironment.PCHHeaderNameInCode;
     PrecompiledHeaderIncludeFilename = InCopyEnvironment.PrecompiledHeaderIncludeFilename;
     PrecompiledHeaderAction          = InCopyEnvironment.PrecompiledHeaderAction;
     bForceIncludePrecompiledHeader   = InCopyEnvironment.bForceIncludePrecompiledHeader;
     bUseRTTI            = InCopyEnvironment.bUseRTTI;
     bFasterWithoutUnity = InCopyEnvironment.bFasterWithoutUnity;
     MinFilesUsingPrecompiledHeaderOverride = InCopyEnvironment.MinFilesUsingPrecompiledHeaderOverride;
     bEnableExceptions  = InCopyEnvironment.bEnableExceptions;
     OptimizeCode       = InCopyEnvironment.OptimizeCode;
     bCreateDebugInfo   = InCopyEnvironment.bCreateDebugInfo;
     bIsBuildingLibrary = InCopyEnvironment.bIsBuildingLibrary;
     bIsBuildingDLL     = InCopyEnvironment.bIsBuildingDLL;
     bUseStaticCRT      = InCopyEnvironment.bUseStaticCRT;
     CLRMode            = InCopyEnvironment.CLRMode;
     CPPIncludeInfo.IncludePaths.UnionWith(InCopyEnvironment.CPPIncludeInfo.IncludePaths);
     CPPIncludeInfo.SystemIncludePaths.UnionWith(InCopyEnvironment.CPPIncludeInfo.SystemIncludePaths);
     SystemDotNetAssemblyPaths.AddRange(InCopyEnvironment.SystemDotNetAssemblyPaths);
     FrameworkAssemblyDependencies.AddRange(InCopyEnvironment.FrameworkAssemblyDependencies);
     PrivateAssemblyDependencies.AddRange(InCopyEnvironment.PrivateAssemblyDependencies);
     Definitions.AddRange(InCopyEnvironment.Definitions);
     AdditionalArguments = InCopyEnvironment.AdditionalArguments;
     AdditionalFrameworks.AddRange(InCopyEnvironment.AdditionalFrameworks);
 }
コード例 #2
0
ファイル: STBuildModule.cs プロジェクト: rajeshwarn/STEngine
 public PrecompileHeaderEnvironment(string InitModuleName, string InitPCHHeaderNameInCode, FileItem InitPrecompiledHeaderIncludeFilename, CPPCLRMode InitCLRMode, ModuleRules.CodeOptimization InitOptimizeCode)
 {
     ModuleName = InitModuleName;
     PCHHeaderNameInCode = InitPCHHeaderNameInCode;
     PrecompiledHeaderIncludeFilename = InitPrecompiledHeaderIncludeFilename;
     CLRMode = InitCLRMode;
     OptimizeCode = InitOptimizeCode;
 }
コード例 #3
0
    public void SetOptimizeCode(ModuleRules.CodeOptimization OptimizeCode)
    {
        bool bDebugBuild    = Utils.BuildPlatform.IsDebugBuild();
        bool bShippingBuild = Utils.BuildPlatform.IsShippingBuild();

        Utils.Module.OptimizeCode = OptimizeCode;

        switch (OptimizeCode)
        {
        case ModuleRules.CodeOptimization.Never:
            Utils.Log.Info("Disabling code optimization...");
            break;

        case ModuleRules.CodeOptimization.InNonDebugBuilds:
            if (bDebugBuild)
            {
                Utils.Log.Info("Debug build detected; disabling code optimization...");
            }
            else
            {
                Utils.Log.Info("Non-debug build detected; enabling code optimization...");
            }
            break;

        case ModuleRules.CodeOptimization.InShippingBuildsOnly:
            if (bShippingBuild)
            {
                Utils.Log.Info("Shipping build detected; enabling code optimization...");
            }
            else
            {
                Utils.Log.Info("Non-shipping build detected; disabling code optimization...");
            }
            break;

        case ModuleRules.CodeOptimization.Always:
            Utils.Log.Info("Enabling code optimization...");
            break;

        case ModuleRules.CodeOptimization.Default:
            if (bDebugBuild)
            {
                Utils.Log.Info("Debug build detected; disabling code optimization for game modules...");
            }
            else
            {
                Utils.Log.Info("Non-debug build detected; enabling code optimization for game modules...");
            }
            break;

        default:
            Utils.Log.Warning("Unknown code optimization settings: '{0}'!", OptimizeCode.ToString());
            break;
        }
    }
コード例 #4
0
        public UEBuildModuleCPP(
			UEBuildTarget InTarget,
			string InName,
			UEBuildModuleType InType,
			string InModuleDirectory,
			string InGeneratedCodeDirectory,
			bool? InIsRedistributableOverride,
			IntelliSenseGatherer InIntelliSenseGatherer,
			IEnumerable<FileItem> InSourceFiles,
			IEnumerable<string> InPublicIncludePaths,
			IEnumerable<string> InPublicSystemIncludePaths,
            IEnumerable<string> InPublicLibraryPaths,
			IEnumerable<string> InDefinitions,
			IEnumerable<string> InPublicIncludePathModuleNames,
			IEnumerable<string> InPublicDependencyModuleNames,
			IEnumerable<string> InPublicDelayLoadDLLs,
			IEnumerable<string> InPublicAdditionalLibraries,
			IEnumerable<string> InPublicFrameworks,
			IEnumerable<string> InPublicWeakFrameworks,
			IEnumerable<UEBuildFramework> InPublicAdditionalFrameworks,
			IEnumerable<string> InPublicAdditionalShadowFiles,
			IEnumerable<UEBuildBundleResource> InPublicAdditionalBundleResources,
			IEnumerable<string> InPrivateIncludePaths,
			IEnumerable<string> InPrivateIncludePathModuleNames,
			IEnumerable<string> InPrivateDependencyModuleNames,
			IEnumerable<string> InCircularlyReferencedDependentModules,
			IEnumerable<string> InDynamicallyLoadedModuleNames,
            IEnumerable<string> InPlatformSpecificDynamicallyLoadedModuleNames,
			IEnumerable<RuntimeDependency> InRuntimeDependencies,
            ModuleRules.CodeOptimization InOptimizeCode,
			bool InAllowSharedPCH,
			string InSharedPCHHeaderFile,
			bool InUseRTTI,
			bool InEnableBufferSecurityChecks,
			bool InFasterWithoutUnity,
			int InMinFilesUsingPrecompiledHeaderOverride,
			bool InBuildLocallyWithSNDBS,
			bool InEnableExceptions,
			bool InEnableShadowVariableWarnings,
			bool bInBuildSourceFiles,
			string InBuildCsFilename,
			bool bInUseAVX
			)
            : base(InTarget,
					InName, 
					InType,
					InModuleDirectory,
					InIsRedistributableOverride,
					InDefinitions, 
					InPublicIncludePaths,
					InPublicSystemIncludePaths, 
					InPublicLibraryPaths, 
					InPublicAdditionalLibraries,
					InPublicFrameworks,
					InPublicWeakFrameworks,
					InPublicAdditionalFrameworks,
					InPublicAdditionalShadowFiles,
					InPublicAdditionalBundleResources,
					InPublicIncludePathModuleNames,
					InPublicDependencyModuleNames,
					InPublicDelayLoadDLLs,
					InPrivateIncludePaths, 
					InPrivateIncludePathModuleNames,
					InPrivateDependencyModuleNames, 
					InCircularlyReferencedDependentModules,
					InDynamicallyLoadedModuleNames,
                    InPlatformSpecificDynamicallyLoadedModuleNames,
					InRuntimeDependencies,
					InBuildCsFilename)
        {
            GeneratedCodeDirectory = InGeneratedCodeDirectory;
            IntelliSenseGatherer = InIntelliSenseGatherer;

            CategorizeSourceFiles(InSourceFiles, SourceFilesFound);
            if (bInBuildSourceFiles)
            {
                SourceFilesToBuild.CopyFrom(SourceFilesFound);
            }

            Definitions = HashSetFromOptionalEnumerableStringParameter(InDefinitions);
            foreach (var Def in Definitions)
            {
                Log.TraceVerbose("Compile Env {0}: {1}", Name, Def);
            }
            OptimizeCode                           = InOptimizeCode;
            bAllowSharedPCH                        = InAllowSharedPCH;
            SharedPCHHeaderFile                    = InSharedPCHHeaderFile;
            bUseRTTI                               = InUseRTTI;
            bUseAVX                                = bInUseAVX;
            bEnableBufferSecurityChecks 		   = InEnableBufferSecurityChecks;
            bFasterWithoutUnity                    = InFasterWithoutUnity;
            MinFilesUsingPrecompiledHeaderOverride = InMinFilesUsingPrecompiledHeaderOverride;
            bBuildLocallyWithSNDBS				   = InBuildLocallyWithSNDBS;
            bEnableExceptions                      = InEnableExceptions;
            bEnableShadowVariableWarnings          = InEnableShadowVariableWarnings;
        }
コード例 #5
0
ファイル: CPPEnvironment.cs プロジェクト: mymei/UE4
 /** Copy constructor. */
 public CPPEnvironmentConfiguration(CPPEnvironmentConfiguration InCopyEnvironment)
     : base(InCopyEnvironment)
 {
     OutputDirectory                        = InCopyEnvironment.OutputDirectory;
     LocalShadowDirectory                   = InCopyEnvironment.LocalShadowDirectory;
     PCHHeaderNameInCode                    = InCopyEnvironment.PCHHeaderNameInCode;
     PrecompiledHeaderIncludeFilename       = InCopyEnvironment.PrecompiledHeaderIncludeFilename;
     PrecompiledHeaderAction                = InCopyEnvironment.PrecompiledHeaderAction;
     bForceIncludePrecompiledHeader         = InCopyEnvironment.bForceIncludePrecompiledHeader;
     bUseRTTI                               = InCopyEnvironment.bUseRTTI;
     bFasterWithoutUnity                    = InCopyEnvironment.bFasterWithoutUnity;
     MinFilesUsingPrecompiledHeaderOverride = InCopyEnvironment.MinFilesUsingPrecompiledHeaderOverride;
     bEnableExceptions                      = InCopyEnvironment.bEnableExceptions;
     bEnableShadowVariableWarning          = InCopyEnvironment.bEnableShadowVariableWarning;
     OptimizeCode                           = InCopyEnvironment.OptimizeCode;
     bCreateDebugInfo                       = InCopyEnvironment.bCreateDebugInfo;
     bIsBuildingLibrary                     = InCopyEnvironment.bIsBuildingLibrary;
     bIsBuildingDLL                         = InCopyEnvironment.bIsBuildingDLL;
     bUseStaticCRT						   = InCopyEnvironment.bUseStaticCRT;
     CLRMode                                = InCopyEnvironment.CLRMode;
     CPPIncludeInfo.IncludePaths            .UnionWith(InCopyEnvironment.CPPIncludeInfo.IncludePaths);
     CPPIncludeInfo.SystemIncludePaths      .UnionWith(InCopyEnvironment.CPPIncludeInfo.SystemIncludePaths);
     SystemDotNetAssemblyPaths    .AddRange(InCopyEnvironment.SystemDotNetAssemblyPaths);
     FrameworkAssemblyDependencies.AddRange(InCopyEnvironment.FrameworkAssemblyDependencies);
      			PrivateAssemblyDependencies  .AddRange(InCopyEnvironment.PrivateAssemblyDependencies);
     Definitions                  .AddRange(InCopyEnvironment.Definitions);
     AdditionalArguments                    = InCopyEnvironment.AdditionalArguments;
     AdditionalFrameworks		 .AddRange(InCopyEnvironment.AdditionalFrameworks);
 }
コード例 #6
0
 /** Copy constructor. */
 public CPPEnvironmentConfiguration(CPPEnvironmentConfiguration InCopyEnvironment)
 {
     OutputDirectory                        = InCopyEnvironment.OutputDirectory;
     LocalShadowDirectory                   = InCopyEnvironment.LocalShadowDirectory;
     PCHHeaderNameInCode                    = InCopyEnvironment.PCHHeaderNameInCode;
     PrecompiledHeaderIncludeFilename       = InCopyEnvironment.PrecompiledHeaderIncludeFilename;
     PrecompiledHeaderAction                = InCopyEnvironment.PrecompiledHeaderAction;
     bForceIncludePrecompiledHeader         = InCopyEnvironment.bForceIncludePrecompiledHeader;
     TargetPlatform                         = InCopyEnvironment.TargetPlatform;
     TargetArchitecture                     = InCopyEnvironment.TargetArchitecture;
     TargetConfiguration                    = InCopyEnvironment.TargetConfiguration;
     bUseRTTI                               = InCopyEnvironment.bUseRTTI;
     bFasterWithoutUnity                    = InCopyEnvironment.bFasterWithoutUnity;
     MinFilesUsingPrecompiledHeaderOverride = InCopyEnvironment.MinFilesUsingPrecompiledHeaderOverride;
     bEnableExceptions                      = InCopyEnvironment.bEnableExceptions;
     bEnableInlining                        = InCopyEnvironment.bEnableInlining;
     OptimizeCode                           = InCopyEnvironment.OptimizeCode;
     bCreateDebugInfo                       = InCopyEnvironment.bCreateDebugInfo;
     bIsBuildingLibrary                     = InCopyEnvironment.bIsBuildingLibrary;
     bIsBuildingDLL                         = InCopyEnvironment.bIsBuildingDLL;
     CLRMode                                = InCopyEnvironment.CLRMode;
     IncludePaths                 .AddRange(InCopyEnvironment.IncludePaths);
     SystemIncludePaths           .AddRange(InCopyEnvironment.SystemIncludePaths);
     SystemDotNetAssemblyPaths    .AddRange(InCopyEnvironment.SystemDotNetAssemblyPaths);
     FrameworkAssemblyDependencies.AddRange(InCopyEnvironment.FrameworkAssemblyDependencies);
      			PrivateAssemblyDependencies  .AddRange(InCopyEnvironment.PrivateAssemblyDependencies);
     Definitions                  .AddRange(InCopyEnvironment.Definitions);
     AdditionalArguments                    = InCopyEnvironment.AdditionalArguments;
 }
コード例 #7
0
        public UEBuildModuleCPP(
			UEBuildTarget InTarget,
			string InName,
			UEBuildModuleType InType,
			string InModuleDirectory,
			string InOutputDirectory,
			IntelliSenseGatherer InIntelliSenseGatherer,
			IEnumerable<FileItem> InSourceFiles,
			IEnumerable<string> InPublicIncludePaths,
			IEnumerable<string> InPublicSystemIncludePaths,
			IEnumerable<string> InDefinitions,
			IEnumerable<string> InPublicIncludePathModuleNames,
			IEnumerable<string> InPublicDependencyModuleNames,
			IEnumerable<string> InPublicDelayLoadDLLs,
			IEnumerable<string> InPublicAdditionalLibraries,
			IEnumerable<string> InPublicFrameworks,
			IEnumerable<string> InPublicAdditionalFrameworks,
			IEnumerable<string> InPrivateIncludePaths,
			IEnumerable<string> InPrivateIncludePathModuleNames,
			IEnumerable<string> InPrivateDependencyModuleNames,
			IEnumerable<string> InCircularlyReferencedDependentModules,
			IEnumerable<string> InDynamicallyLoadedModuleNames,
            IEnumerable<string> InPlatformSpecificDynamicallyLoadedModuleNames,
            ModuleRules.CodeOptimization InOptimizeCode,
			bool InAllowSharedPCH,
			string InSharedPCHHeaderFile,
			bool InUseRTTI,
			bool InEnableBufferSecurityChecks,
			bool InFasterWithoutUnity,
			int InMinFilesUsingPrecompiledHeaderOverride,
			bool InEnableExceptions,
			bool InEnableInlining
			)
            : base(InTarget,
					InName, 
					InType,
					InModuleDirectory,
					InOutputDirectory, 
					InDefinitions, 
					InPublicIncludePaths,
					InPublicSystemIncludePaths, 
					null, 
					InPublicAdditionalLibraries,
					InPublicFrameworks,
					InPublicAdditionalFrameworks,
					null,
					InPublicIncludePathModuleNames,
					InPublicDependencyModuleNames,
					InPublicDelayLoadDLLs,
					InPrivateIncludePaths, 
					InPrivateIncludePathModuleNames,
					InPrivateDependencyModuleNames, 
					InCircularlyReferencedDependentModules,
					InDynamicallyLoadedModuleNames,
                    InPlatformSpecificDynamicallyLoadedModuleNames)
        {
            IntelliSenseGatherer = InIntelliSenseGatherer;
            SourceFiles = new List<FileItem>( InSourceFiles );
            Definitions = ListFromOptionalEnumerableStringParameter(InDefinitions);
            foreach (var Def in Definitions)
            {
                Log.TraceVerbose("Compile Env {0}: {1}", Name, Def);
            }
            OptimizeCode                           = InOptimizeCode;
            bAllowSharedPCH                        = InAllowSharedPCH;
            SharedPCHHeaderFile                    = InSharedPCHHeaderFile;
            bUseRTTI                               = InUseRTTI;
            bEnableBufferSecurityChecks 		   = InEnableBufferSecurityChecks;
            bFasterWithoutUnity                    = InFasterWithoutUnity;
            MinFilesUsingPrecompiledHeaderOverride = InMinFilesUsingPrecompiledHeaderOverride;
            bEnableExceptions                      = InEnableExceptions;
            bEnableInlining                        = InEnableInlining;
        }