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; function OnSubstituteCompilerOption(Options: TParsedCompilerOptions;
const UnparsedValue: string; const UnparsedValue: string;
PlatformIndependent: boolean): string; PlatformIndependent: boolean): string;
function MacroFuncMakeExe(const Filename: string; const Data: PtrInt; function MacroFuncEnv(const Param: string; const Data: PtrInt;
var Abort: boolean): string; 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 MacroFuncFPCVer(const Param: string; const Data: PtrInt; function MacroFuncFPCVer(const Param: string; const Data: PtrInt;
var Abort: boolean): string; 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; function MacroFuncParams(const Param: string; const Data: PtrInt;
var Abort: boolean): string; var Abort: boolean): string;
function MacroFuncProject(const Param: string; const Data: PtrInt;
var Abort: boolean): string;
function MacroFuncProjFile(const Param: string; const Data: PtrInt; function MacroFuncProjFile(const Param: string; const Data: PtrInt;
var Abort: boolean): string; 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; function MacroFuncProjIncPath(const Param: string; const Data: PtrInt;
var Abort: boolean): string; var Abort: boolean): string;
function MacroFuncProjSrcPath(const Param: string; const Data: PtrInt;
var Abort: boolean): string;
function MacroFuncProjOutDir(const Param: string; const Data: PtrInt; function MacroFuncProjOutDir(const Param: string; const Data: PtrInt;
var Abort: boolean): string; var Abort: boolean): string;
function MacroFuncEnv(const Param: string; const Data: PtrInt; function MacroFuncProjPath(const Param: string; const Data: PtrInt;
var Abort: boolean): string; var Abort: boolean): string;
function MacroFuncMake(const Param: string; const Data: PtrInt; function MacroFuncProjPublishDir(const Param: string; const Data: PtrInt;
var Abort: boolean): string;// make utility 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 CTMacroFuncProjectUnitPath(Data: Pointer): boolean;
function CTMacroFuncProjectIncPath(Data: Pointer): boolean; function CTMacroFuncProjectIncPath(Data: Pointer): boolean;
function CTMacroFuncProjectSrcPath(Data: Pointer): boolean; function CTMacroFuncProjectSrcPath(Data: Pointer): boolean;
@ -276,6 +278,8 @@ begin
lisMakeExe,@MacroFuncMakeExe,[])); lisMakeExe,@MacroFuncMakeExe,[]));
GlobalMacroList.Add(TTransferMacro.Create('Make','', GlobalMacroList.Add(TTransferMacro.Create('Make','',
lisPathOfTheMakeUtility, @MacroFuncMake, [])); lisPathOfTheMakeUtility, @MacroFuncMake, []));
GlobalMacroList.Add(TTransferMacro.Create('IDEBuildOptions','',
lisIDEBuildOptions, @MacroFuncIDEBuildOptions, []));
// codetools macro functions // codetools macro functions
CodeToolBoss.DefineTree.MacroFunctions.AddExtended( CodeToolBoss.DefineTree.MacroFunctions.AddExtended(
@ -1201,6 +1205,17 @@ begin
Result:=GetTargetOS(true); Result:=GetTargetOS(true);
end; 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; function TBuildManager.MacroFuncSrcOS(const Param: string; const Data: PtrInt;
var Abort: boolean): string; var Abort: boolean): string;
begin begin

View File

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