mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-08-27 15:25:07 +02:00
IDE: added IDE macro $(OutputFile), issue #27729, from elmar69
git-svn-id: trunk@59663 -
This commit is contained in:
parent
76c92368a2
commit
a625b39fbf
@ -323,6 +323,7 @@ type
|
||||
function IsActive: boolean; virtual;
|
||||
function TrimCustomOptions(o: string): string; virtual; abstract;
|
||||
function CreatePPUFilename(const SourceFileName: string): string; virtual; abstract;
|
||||
function CreateTargetFilename: string; virtual; abstract;
|
||||
function GetUnitOutputDirectory(RelativeToBaseDir: boolean): string; virtual; abstract;
|
||||
public
|
||||
property Owner: TObject read fOwner write fOwner;
|
||||
|
@ -143,6 +143,8 @@ type
|
||||
var {%H-}Abort: boolean): string;
|
||||
function MacroFuncTargetFile(const {%H-}Param: string; const {%H-}Data: PtrInt;
|
||||
var {%H-}Abort: boolean): string;
|
||||
function MacroFuncOutputFile(const {%H-}Param: string; const {%H-}Data: PtrInt;
|
||||
var {%H-}Abort: boolean): string;
|
||||
function MacroFuncTargetOS(const {%H-}Param: string; const Data: PtrInt;
|
||||
var {%H-}Abort: boolean): string;
|
||||
function MacroFuncIDEBuildOptions(const {%H-}Param: string; const Data: PtrInt;
|
||||
@ -414,6 +416,8 @@ begin
|
||||
lisTargetFilenamePlusParams,@MacroFuncTargetCmdLine,[]));
|
||||
GlobalMacroList.Add(TTransferMacro.Create('RunCmdLine','',
|
||||
lisLaunchingCmdLine,@MacroFuncRunCmdLine,[]));
|
||||
GlobalMacroList.Add(TTransferMacro.Create('OutputFile','',
|
||||
lisOutputFilenameOfProject,@MacroFuncOutputFile,[]));
|
||||
GlobalMacroList.Add(TTransferMacro.Create('ProjPublishDir','',
|
||||
lisPublishProjDir,@MacroFuncProjPublishDir,[]));
|
||||
GlobalMacroList.Add(TTransferMacro.Create('ProjNamespaces','',
|
||||
@ -2187,6 +2191,15 @@ begin
|
||||
Result:='';
|
||||
end;
|
||||
|
||||
function TBuildManager.MacroFuncOutputFile(const Param: string;
|
||||
const Data: PtrInt; var Abort: boolean): string;
|
||||
begin
|
||||
if Project1<>nil then
|
||||
Result:=Project1.CompilerOptions.CreateTargetFilename
|
||||
else
|
||||
Result:='';
|
||||
end;
|
||||
|
||||
function TBuildManager.MacroFuncTargetCmdLine(const Param: string;
|
||||
const Data: PtrInt; var Abort: boolean): string;
|
||||
begin
|
||||
|
@ -486,7 +486,7 @@ type
|
||||
function MakeOptionsString(Flags: TCompilerCmdLineOptions): String; virtual;
|
||||
function GetSyntaxOptionsString(Kind: TPascalCompiler): string; virtual;
|
||||
function CreatePPUFilename(const SourceFileName: string): string; override;
|
||||
function CreateTargetFilename: string; virtual;
|
||||
function CreateTargetFilename: string; override;
|
||||
function GetTargetFileExt: string; virtual;
|
||||
function GetTargetFilePrefix: string; virtual;
|
||||
procedure GetInheritedCompilerOptions(var OptionsList: TFPList // list of TAdditionalCompilerOptions
|
||||
|
@ -235,6 +235,7 @@ resourcestring
|
||||
lisSaveAllModified = 'Save all modified files';
|
||||
lisTargetFilenameOfProject = 'Target filename of project';
|
||||
lisTargetFilenamePlusParams = 'Target filename + params';
|
||||
lisOutputFilenameOfProject = 'Output filename of project';
|
||||
lisTestDirectory = 'Test directory';
|
||||
lisLaunchingCmdLine = 'Launching target command line';
|
||||
lisPublishProjDir = 'Publish project directory';
|
||||
|
Loading…
Reference in New Issue
Block a user