mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-04-07 16:38:02 +02:00
IDE+lazbuild: fixed applying ide macros for the right build mode
git-svn-id: trunk@41579 -
This commit is contained in:
parent
f68f6c159f
commit
e043bb91b4
@ -2212,14 +2212,15 @@ function TBuildManager.OnGetBuildMacroValues(Options: TBaseCompilerOptions;
|
||||
procedure SetProjectMacroValues(Vars: TCTCfgScriptVariables);
|
||||
var
|
||||
Target: String;
|
||||
CurMode: String;
|
||||
begin
|
||||
Target:=GetModeMatrixTarget(Options);
|
||||
if EnvironmentOptions<>nil then
|
||||
ApplyBuildMatrixMacros(EnvironmentOptions.BuildMatrixOptions,Target,Vars);
|
||||
if (Project1<>nil) and (Project1.BuildModes<>nil) then
|
||||
begin
|
||||
ApplyBuildMatrixMacros(Project1.BuildModes.SharedMatrixOptions,Target,Vars);
|
||||
ApplyBuildMatrixMacros(Project1.BuildModes.SessionMatrixOptions,Target,Vars);
|
||||
if Project1<>nil then begin
|
||||
Target:=GetModeMatrixTarget(Options);
|
||||
CurMode:=Project1.ActiveBuildMode.Identifier;
|
||||
if EnvironmentOptions<>nil then
|
||||
ApplyBuildMatrixMacros(EnvironmentOptions.BuildMatrixOptions,Target,CurMode,Vars);
|
||||
ApplyBuildMatrixMacros(Project1.BuildModes.SharedMatrixOptions,Target,CurMode,Vars);
|
||||
ApplyBuildMatrixMacros(Project1.BuildModes.SessionMatrixOptions,Target,CurMode,Vars);
|
||||
end;
|
||||
SetCmdLineOverrides(Vars);
|
||||
{$IFDEF VerboseBuildMacros}
|
||||
|
@ -162,7 +162,7 @@ function CreateBuildMatrixOptionGUID: string;
|
||||
|
||||
function SplitMatrixMacro(MacroAssignment: string;
|
||||
out MacroName, MacroValue: string; ExceptionOnError: boolean): boolean;
|
||||
procedure ApplyBuildMatrixMacros(Options: TBuildMatrixOptions; Target: string;
|
||||
procedure ApplyBuildMatrixMacros(Options: TBuildMatrixOptions; Target, ActiveMode: string;
|
||||
CfgVars: TCTCfgScriptVariables);
|
||||
|
||||
implementation
|
||||
@ -385,8 +385,8 @@ begin
|
||||
Result:=true;
|
||||
end;
|
||||
|
||||
procedure ApplyBuildMatrixMacros(Options: TBuildMatrixOptions; Target: string;
|
||||
CfgVars: TCTCfgScriptVariables);
|
||||
procedure ApplyBuildMatrixMacros(Options: TBuildMatrixOptions;
|
||||
Target, ActiveMode: string; CfgVars: TCTCfgScriptVariables);
|
||||
var
|
||||
i: Integer;
|
||||
Option: TBuildMatrixOption;
|
||||
@ -395,6 +395,7 @@ begin
|
||||
for i:=0 to Options.Count-1 do begin
|
||||
Option:=Options[i];
|
||||
if Option.Typ<>bmotIDEMacro then continue;
|
||||
if not Option.FitsMode(ActiveMode) then continue;
|
||||
if not Option.FitsTarget(Target) then continue;
|
||||
//debugln(['ApplyBuildMatrixMacros Option.MacroName="',Option.MacroName,'" Value="',Option.Value,'"']);
|
||||
CfgVars.Values[Option.MacroName]:=Option.Value;
|
||||
|
Loading…
Reference in New Issue
Block a user