mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-31 10:30:20 +02:00
* Combine multiple packages into one manifest.xml
git-svn-id: trunk@29342 -
This commit is contained in:
parent
a3441a178e
commit
66adabf63c
@ -1163,7 +1163,6 @@ Type
|
|||||||
Function ReadyToCompile(APackage:TPackage) : Boolean;
|
Function ReadyToCompile(APackage:TPackage) : Boolean;
|
||||||
Procedure Install(APackage : TPackage; AnArchiveFiles: boolean);
|
Procedure Install(APackage : TPackage; AnArchiveFiles: boolean);
|
||||||
Procedure Archive(APackage : TPackage);
|
Procedure Archive(APackage : TPackage);
|
||||||
Procedure Manifest(APackage : TPackage);
|
|
||||||
Procedure PkgList(PkgList: TStrings; APackage : TPackage);
|
Procedure PkgList(PkgList: TStrings; APackage : TPackage);
|
||||||
Procedure Clean(APackage : TPackage; AllTargets: boolean);
|
Procedure Clean(APackage : TPackage; AllTargets: boolean);
|
||||||
Procedure Clean(APackage : TPackage; ACPU:TCPU; AOS : TOS);
|
Procedure Clean(APackage : TPackage; ACPU:TCPU; AOS : TOS);
|
||||||
@ -7177,31 +7176,6 @@ begin
|
|||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
Procedure TBuildEngine.Manifest(APackage : TPackage);
|
|
||||||
Var
|
|
||||||
L : TStrings;
|
|
||||||
PD,
|
|
||||||
MF : String;
|
|
||||||
begin
|
|
||||||
L:=TStringList.Create;
|
|
||||||
Try
|
|
||||||
Log(vlInfo, Format(SInfoManifestPackage,[APackage.Name]));
|
|
||||||
PD:=APackage.Directory;
|
|
||||||
if PD<>'' then
|
|
||||||
PD:=IncludeTrailingPathDelimiter(PD);
|
|
||||||
MF:=PD+ManifestFile;
|
|
||||||
Log(vlDebug, Format(SDbgGenerating, [MF]));
|
|
||||||
L.Add('<?xml version="1.0"?>');
|
|
||||||
L.Add('<packages>');
|
|
||||||
APackage.GetManifest(L);
|
|
||||||
L.Add('</packages>');
|
|
||||||
L.SaveToFile(MF);
|
|
||||||
Finally
|
|
||||||
L.Free;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
|
|
||||||
Procedure TBuildEngine.PkgList(PkgList: TStrings; APackage : TPackage);
|
Procedure TBuildEngine.PkgList(PkgList: TStrings; APackage : TPackage);
|
||||||
begin
|
begin
|
||||||
Log(vlInfo, Format(SInfoPkgListPackage,[APackage.Name]));
|
Log(vlInfo, Format(SInfoPkgListPackage,[APackage.Name]));
|
||||||
@ -7433,17 +7407,31 @@ end;
|
|||||||
|
|
||||||
procedure TBuildEngine.Manifest(Packages: TPackages);
|
procedure TBuildEngine.Manifest(Packages: TPackages);
|
||||||
Var
|
Var
|
||||||
|
L : TStrings;
|
||||||
I : Integer;
|
I : Integer;
|
||||||
P : TPackage;
|
P : TPackage;
|
||||||
begin
|
begin
|
||||||
If Assigned(BeforeManifest) then
|
If Assigned(BeforeManifest) then
|
||||||
BeforeManifest(Self);
|
BeforeManifest(Self);
|
||||||
Log(vlDebug, SDbgBuildEngineGenerateManifests);
|
Log(vlDebug, SDbgBuildEngineGenerateManifests);
|
||||||
For I:=0 to Packages.Count-1 do
|
|
||||||
begin
|
L:=TStringList.Create;
|
||||||
P:=Packages.PackageItems[i];
|
Try
|
||||||
Manifest(P);
|
Log(vlDebug, Format(SDbgGenerating, [ManifestFile]));
|
||||||
end;
|
L.Add('<?xml version="1.0"?>');
|
||||||
|
L.Add('<packages>');
|
||||||
|
For I:=0 to Packages.Count-1 do
|
||||||
|
begin
|
||||||
|
P:=Packages.PackageItems[i];
|
||||||
|
Log(vlInfo, Format(SInfoManifestPackage,[P.Name]));
|
||||||
|
P.GetManifest(L);
|
||||||
|
end;
|
||||||
|
L.Add('</packages>');
|
||||||
|
L.SaveToFile(ManifestFile);
|
||||||
|
Finally
|
||||||
|
L.Free;
|
||||||
|
end;
|
||||||
|
|
||||||
If Assigned(AfterManifest) then
|
If Assigned(AfterManifest) then
|
||||||
AfterManifest(Self);
|
AfterManifest(Self);
|
||||||
end;
|
end;
|
||||||
|
Loading…
Reference in New Issue
Block a user