[Properties (by Name)] [Methods (by Name)] [Events (by Name)]
Main build engine for compiling and installing packages
Source position: fpmkunit.pp line 1343
type TBuildEngine = class(TComponent) |
||
public |
||
constructor Create(); override; |
|
Creates a new build engine instance |
destructor Destroy; override; |
|
Destroys the build engine and frees resources |
function AddPathPrefix(); |
|
Adds package-specific path prefix to a path |
property Verbose: Boolean; [rw] |
|
Controls verbose output during build operations |
property Interactive: Boolean; [rw] |
|
Whether the build engine runs in interactive mode |
procedure ResolveFileNames(); |
|
Resolves and validates file paths for package targets |
procedure ClearResolvedFileNames(); |
|
Clears resolved file name cache for a package |
procedure ExecuteCommand(); virtual; |
|
Executes a command with arguments and environment variables |
function GetExecuteCommandOutput(); virtual; |
|
Executes command and captures output text |
procedure CmdCopyFiles(); |
|
Copies files to destination directory |
procedure CmdCreateDir(); |
|
Creates a directory with necessary parent directories |
procedure CmdMoveFiles(); |
|
Moves files to destination directory |
procedure CmdDeleteFiles(); |
|
Deletes files from filesystem |
procedure CmdDeleteDestFiles(); |
|
Deletes files from destination directory |
procedure CmdArchiveFiles(); |
|
Creates archive file containing specified files |
procedure CmdRenameFile(); |
|
Renames or moves a file to new location |
procedure CmdRemoveDirs(); |
|
Removes directories from the filesystem |
procedure CmdRemoveTrees(); |
|
Removes directory trees from the filesystem |
procedure ExecuteCommands(); |
|
Executes a collection of build commands |
function DependencyOK(); |
|
Checks if dependency is satisfied |
function GetCompilerCommand(); deprecated ; |
|
Gets compiler command for target |
function TargetOK(); deprecated ; |
|
Checks if target is valid for platform |
function TargetInstallOK(); deprecated ; |
|
Checks if target can be installed on platform |
function NeedsCompile(); |
|
Checks if target needs compilation |
procedure Compile(); |
|
Compiles a specific target within a package |
procedure MaybeCompile(); |
|
Compiles target if compilation is needed |
procedure CompileDependencies(); |
|
Compiles all dependencies for a target |
function PackageOK(); virtual; |
|
Checks if package is valid for compilation |
procedure DoBeforeCompile(); virtual; |
|
Executes actions before package compilation |
procedure DoAfterCompile(); virtual; |
|
Executes actions after package compilation |
procedure DoBeforeInstall(); virtual; |
|
Executes actions before package installation |
procedure DoAfterInstall(); virtual; |
|
Executes actions after package installation |
procedure DoBeforeArchive(); virtual; |
|
Executes actions before package archiving |
procedure DoAfterArchive(); virtual; |
|
Executes actions after package archiving |
procedure DoBeforeClean(); virtual; |
|
Executes actions before package cleaning |
procedure DoAfterClean(); virtual; |
|
Executes actions after package cleaning |
function ReadyToCompile(); |
|
Checks if package is ready for compilation |
procedure Install(); |
|
Installs package files to target location |
procedure UnInstall(); |
|
Uninstalls package files from target location |
procedure Archive(); |
|
Creates archive of package files |
procedure PkgList(); |
|
Lists package contents and information |
procedure Clean(); |
|
Cleans compiled files and outputs |
function CheckDependencies(); |
|
Checks package dependencies are satisfied |
function CheckExternalPackage(); |
|
Checks if external package is available |
procedure CreateOutputDir(); |
|
Creates output directory for package |
procedure ZipInstall(); |
|
Creates ZIP archive during installation |
procedure Manifest(); |
|
Creates manifest of package contents |
procedure FPDocProject(); |
|
Generates FPDoc documentation project |
procedure Log(); |
|
Logs message with specified level and formatting |
property ListMode: Boolean; [rw] |
|
Mode for listing package information |
property ForceCompile: Boolean; [rw] |
|
Whether to force recompilation of all targets |
property ExternalPackages: TPackages; [r] |
|
Collection of external package dependencies |
property StartDir: string; [r] |
|
Starting directory for build operations |
property NotifyEventCollection: TNotifyEventCollection; [r] |
|
Collection of notification event handlers |
|
Event handler for logging messages |
|
end; |
|
Main build engine for compiling and installing packages |
|
| | | ||
| | | ||
| | | ||
TBuildEngine is the central component that orchestrates the entire build process for fpmake packages. It manages compilation, dependency resolution, file operations, and installation procedures.
The build engine provides the following functionality:
The engine works with TPackage objects to compile targets, resolve dependencies, and manage the entire build lifecycle from compilation through installation.
|
Central class for package management and building |
|
|
Build target representation in the fpmake system |
|
|
Base class for build system default configurations |
|
|
Base class for package installers |