procedure TCodeSigningHelper.DoProjectBuildingFinished(ASender: TObject; ABuildSuccessful: boolean);
var
s: string;
sTargetOS: string;
b: boolean;
begin
s := '$(TargetFile)';
sTargetOS := GetTargetOS;
if IDEMacros.SubstituteMacros(s) then begin
if ABuildSuccessful then begin
b := False;
if TMicrosoftSignToolSigner.SupportsLazarusTargetOS(sTargetOS) then begin
b := CodeSigningOptions.MicrosoftSignToolOptions.AutoSign;
end else if TAppleCodeSignSigner.SupportsLazarusTargetOS(sTargetOS) then begin
b := CodeSigningOptions.AppleCodeSignOptions.AutoSign;
end else if TJavaKeyToolSigner.SupportsLazarusTargetOS(sTargetOS) then begin
b := CodeSigningOptions.JavaKeyToolOptions.AutoSign;
end;
if b then begin
AddIDEMessage(mluNone, rsCodeSigningStatusSigning, '', 0, 0, rsCodeSigningViewCodeSign);
CertificateSignExecutable(s);
end;