ObjectList
ObjectList
Builds a list of objects, typically for later input into a Library, Executable or DLL.
ObjectList( alias ) ; Alias
{
; options for compilation
.Compiler ; Compiler to use
.CompilerOptions ; Options for compiler
.CompilerOutputPath ; Path to store intermediate objects
.CompilerOutputExtension ; (optional) Specify the file extension for generated objects (default .obj or .o)
.CompilerOutputKeepBaseExtension ; (optional) Append extension instead of replacing it (default: false)
.CompilerOutputPrefix ; (optional) Specify a prefix for generated objects (default none)
; Specify inputs for compilation
.CompilerInputPath ; (optional) Path to find files in
.CompilerInputPattern ; (optional) Pattern(s) to use when finding files (default *.cpp)
.CompilerInputPathRecurse ; (optional) Recurse into dirs when finding files (default true)
.CompilerInputExcludePath ; (optional) Path(s) to exclude from compilation
.CompilerInputExcludedFiles ; (optional) File(s) to exclude from compilation (partial, root-relative of full path)
.CompilerInputExcludePattern ; (optional) Pattern(s) to exclude from compilation
.CompilerInputFiles ; (optional) Explicit array of files to build
.CompilerInputFilesRoot ; (optional) Root path to use for .obj path generation for explicitly listed files
.CompilerInputUnity ; (optional) Unity to build (or Unities)
.CompilerInputAllowNoFiles ; (optional) Don't fail if no inputs are found
.CompilerInputObjectLists ; (optional) ObjectList(s) whos output should be used as an input
; Cache & Distributed compilation control
.AllowCaching ; (optional) Allow caching of compiled objects if available (default true)
.AllowDistribution ; (optional) Allow distributed compilation if available (default true)
; Custom preprocessor support
.Preprocessor ; (optional) Compiler to use for preprocessing
.PreprocessorOptions ; (optional) Args to pass to compiler if using custom preprocessor
; Additional compiler options
.CompilerForceUsing ; (optional) List of objects to be used with /FU
; (optional) Properties to control precompiled header use
.PCHInputFile ; (optional) Precompiled header (.cpp) file to compile
.PCHOutputFile ; (optional) Precompiled header compilation output
.PCHOptions ; (optional) Options for compiler for precompiled header
; Additional options
.PreBuildDependencies ; (optional) Force targets to be built before this ObjectList (Rarely needed,
; but useful when a ObjectList relies on generated code).
.Hidden ; (optional) Hide a target from -showtargets (default false)
}
Build-Time Substitutions
- CompilerOptions
- %1 - Input file for each invocation of the compiler as determined by the various Input parameters.
- %2 - Output name of object being compiled, as specified by CompilerOutputPath and the name of discovered objects depending on the Compiler input options (extension is also replace with CompilerOutputExtension).
- %3 - Object file for PCH file, as used in linking. (PCHOutputFile + CompilerOutputExtension). (MSVC Only)
- %4 - CompilerForceUsing expansion. Expand items with /FU"%4". (MSVC Only)
- PCHOptions
- %1 - Input file for used to generate the PCH (PCHInputFile).
- %2 - Output name of PCH file to generate (PCHOutputFile).
- %3 - Object file for PCH, as used in linking. (PCHOutputFile + CompilerOutputExtension). (MSVC Only)
- %4 - CompilerForceUsing expansion. Expand items with /FU"%4". (MSVC Only)