IDE: added macro IDEBuildOptions

git-svn-id: trunk@22954 -
This commit is contained in:
mattias 2009-12-04 11:27:01 +00:00
parent c9cea59735
commit c47bbec585
2 changed files with 46 additions and 30 deletions

View File

@ -57,46 +57,48 @@ type
function OnSubstituteCompilerOption(Options: TParsedCompilerOptions;
const UnparsedValue: string;
PlatformIndependent: boolean): string;
function MacroFuncMakeExe(const Filename: string; const Data: PtrInt;
var Abort: boolean): string;
function MacroFuncProject(const Param: string; const Data: PtrInt;
var Abort: boolean): string;
function MacroFuncLCLWidgetType(const Param: string; const Data: PtrInt;
var Abort: boolean): string;
function MacroFuncTargetCPU(const Param: string; const Data: PtrInt;
var Abort: boolean): string;
function MacroFuncTargetOS(const Param: string; const Data: PtrInt;
var Abort: boolean): string;
function MacroFuncSrcOS(const Param: string; const Data: PtrInt;
var Abort: boolean): string;
function MacroFuncEnv(const Param: string; const Data: PtrInt;
var Abort: boolean): string;
function MacroFuncFPCVer(const Param: string; const Data: PtrInt;
var Abort: boolean): string;
function MacroFuncLCLWidgetType(const Param: string; const Data: PtrInt;
var Abort: boolean): string;
function MacroFuncMake(const Param: string; const Data: PtrInt;
var Abort: boolean): string;// make utility
function MacroFuncMakeExe(const Filename: string; const Data: PtrInt;
var Abort: boolean): string;
function MacroFuncParams(const Param: string; const Data: PtrInt;
var Abort: boolean): string;
function MacroFuncProject(const Param: string; const Data: PtrInt;
var Abort: boolean): string;
function MacroFuncProjFile(const Param: string; const Data: PtrInt;
var Abort: boolean): string;
function MacroFuncProjPath(const Param: string; const Data: PtrInt;
var Abort: boolean): string;
function MacroFuncTargetFile(const Param: string; const Data: PtrInt;
var Abort: boolean): string;
function MacroFuncTargetCmdLine(const Param: string; const Data: PtrInt;
var Abort: boolean): string;
function MacroFuncRunCmdLine(const Param: string; const Data: PtrInt;
var Abort: boolean): string;
function MacroFuncProjPublishDir(const Param: string; const Data: PtrInt;
var Abort: boolean): string;
function MacroFuncProjUnitPath(const Param: string; const Data: PtrInt;
var Abort: boolean): string;
function MacroFuncProjIncPath(const Param: string; const Data: PtrInt;
var Abort: boolean): string;
function MacroFuncProjSrcPath(const Param: string; const Data: PtrInt;
var Abort: boolean): string;
function MacroFuncProjOutDir(const Param: string; const Data: PtrInt;
var Abort: boolean): string;
function MacroFuncEnv(const Param: string; const Data: PtrInt;
var Abort: boolean): string;
function MacroFuncMake(const Param: string; const Data: PtrInt;
var Abort: boolean): string;// make utility
function MacroFuncProjPath(const Param: string; const Data: PtrInt;
var Abort: boolean): string;
function MacroFuncProjPublishDir(const Param: string; const Data: PtrInt;
var Abort: boolean): string;
function MacroFuncProjSrcPath(const Param: string; const Data: PtrInt;
var Abort: boolean): string;
function MacroFuncProjUnitPath(const Param: string; const Data: PtrInt;
var Abort: boolean): string;
function MacroFuncRunCmdLine(const Param: string; const Data: PtrInt;
var Abort: boolean): string;
function MacroFuncSrcOS(const Param: string; const Data: PtrInt;
var Abort: boolean): string;
function MacroFuncTargetCmdLine(const Param: string; const Data: PtrInt;
var Abort: boolean): string;
function MacroFuncTargetCPU(const Param: string; const Data: PtrInt;
var Abort: boolean): string;
function MacroFuncTargetFile(const Param: string; const Data: PtrInt;
var Abort: boolean): string;
function MacroFuncTargetOS(const Param: string; const Data: PtrInt;
var Abort: boolean): string;
function MacroFuncIDEBuildOptions(const Param: string; const Data: PtrInt;
var Abort: boolean): string;
function CTMacroFuncProjectUnitPath(Data: Pointer): boolean;
function CTMacroFuncProjectIncPath(Data: Pointer): boolean;
function CTMacroFuncProjectSrcPath(Data: Pointer): boolean;
@ -276,6 +278,8 @@ begin
lisMakeExe,@MacroFuncMakeExe,[]));
GlobalMacroList.Add(TTransferMacro.Create('Make','',
lisPathOfTheMakeUtility, @MacroFuncMake, []));
GlobalMacroList.Add(TTransferMacro.Create('IDEBuildOptions','',
lisIDEBuildOptions, @MacroFuncIDEBuildOptions, []));
// codetools macro functions
CodeToolBoss.DefineTree.MacroFunctions.AddExtended(
@ -1201,6 +1205,17 @@ begin
Result:=GetTargetOS(true);
end;
function TBuildManager.MacroFuncIDEBuildOptions(const Param: string;
const Data: PtrInt; var Abort: boolean): string;
begin
if (MiscellaneousOptions<>nil)
and (MiscellaneousOptions.BuildLazOpts<>nil)
then
Result:=MiscellaneousOptions.BuildLazOpts.ExtraOptions
else
Result:='';
end;
function TBuildManager.MacroFuncSrcOS(const Param: string; const Data: PtrInt;
var Abort: boolean): string;
begin

View File

@ -4560,6 +4560,7 @@ resourcestring
+'options to build Lazarus is not supported by this installation.%sThe '
+'directory %s%s%s is not writable.%sSee the Lazarus website for other '
+'ways to install Lazarus.';
lisIDEBuildOptions = 'IDE build options';
implementation