keywords: UE4, Building

Path:

\Engine\Source\Programs\UnrealBuildTool\Configuration\ModuleRules.cs

API in Common:

/// <summary>
/// Use run time type information
/// </summary>
public bool bUseRTTI = false;

/// <summary>
/// Use AVX instructions
/// </summary>
public bool bUseAVX = false;

/// <summary>
/// Enable buffer security checks.  This should usually be enabled as it prevents severe security risks.
/// </summary>
public bool bEnableBufferSecurityChecks = true;

/// <summary>
/// Enable exception handling
/// </summary>
public bool bEnableExceptions = false;

/// <summary>
/// Enable objective C exception handling
/// </summary>
public bool bEnableObjCExceptions = false;

/// <summary>
/// Enable warnings for shadowed variables
/// </summary>
public bool bEnableShadowVariableWarnings = true;

/// <summary>
/// Enable warnings for using undefined identifiers in #if expressions
/// </summary>
public bool bEnableUndefinedIdentifierWarnings = true;

/// <summary>
/// Enforce "include what you use" rules when PCHUsage is set to ExplicitOrSharedPCH; warns when monolithic headers (Engine.h, UnrealEd.h, etc...) 
/// are used, and checks that source files include their matching header first.
/// </summary>
public bool bEnforceIWYU = true;

/// <summary>
/// Whether to add all the default include paths to the module (eg. the Source/Classes folder, subfolders under Source/Public).
/// </summary>
public bool bAddDefaultIncludePaths = true;

/// <summary>
/// Whether this module should be precompiled. Defaults to the bPrecompile flag from the target. Clear this flag to prevent a module being precompiled.
/// </summary>
public bool bPrecompile;

/// <summary>
/// Whether this module should use precompiled data. Always true for modules created from installed assemblies.
/// </summary>
public bool bUsePrecompiled;

/// <summary>
/// List of system/library include paths - typically used for External (third party) modules.  These are public stable header file directories that are not checked when resolving header dependencies.
/// </summary>
public List<string> PublicSystemIncludePaths = new List<string>();

/// <summary>
/// (This setting is currently not need as we discover all files from the 'Public' folder) List of all paths to include files that are exposed to other modules
/// </summary>
public List<string> PublicIncludePaths = new List<string>();

/// <summary>
/// List of all paths to this module's internal include files, not exposed to other modules (at least one include to the 'Private' path, more if we want to avoid relative paths)
/// </summary>
public List<string> PrivateIncludePaths = new List<string>();

/// <summary>
/// List of system/library paths (directory of .lib files) - typically used for External (third party) modules
/// </summary>
public List<string> PublicLibraryPaths = new List<string>();

/// <summary>
/// List of search paths for libraries at runtime (eg. .so files)
/// </summary>
public List<string> PrivateRuntimeLibraryPaths = new List<string>();

/// <summary>
/// List of search paths for libraries at runtime (eg. .so files)
/// </summary>
public List<string> PublicRuntimeLibraryPaths = new List<string>();

/// <summary>
/// List of additional libraries (names of the .lib files including extension) - typically used for External (third party) modules
/// </summary>
public List<string> PublicAdditionalLibraries = new List<string>();

/// <summary>
/// List of delay load DLLs - typically used for External (third party) modules
/// </summary>
public List<string> PublicDelayLoadDLLs = new List<string>();

/// <summary>
/// Private compiler definitions for this module
/// </summary>
public List<string> PrivateDefinitions = new List<string>();

/// <summary>
/// Public compiler definitions for this module
/// </summary>
public List<string> PublicDefinitions = new List<string>();

/// <summary>
/// Which stanard to use for compiling this module
/// </summary>
public CppStandardVersion CppStandard = CppStandardVersion.Default;

生命是一团欲望,欲望不满足便痛苦,满足便无聊。人生就在痛苦和无聊之间摇摆。──亚瑟·叔本华(Arthur Schopenhauer)《悲观论集卷》