Browse Source

--- Merging r32118 into '.':
U packages/fpmkunit/src/fpmkunit.pp
--- Recording mergeinfo for merge of r32118 into '.':
U .

# revisions: 32118

git-svn-id: branches/fixes_3_0@32240 -

joost 9 years ago
parent
commit
6880ce93e8
1 changed files with 14 additions and 4 deletions
  1. 14 4
      packages/fpmkunit/src/fpmkunit.pp

+ 14 - 4
packages/fpmkunit/src/fpmkunit.pp

@@ -1099,10 +1099,10 @@ Type
     FGeneralCriticalSection: TRTLCriticalSection;
     FGeneralCriticalSection: TRTLCriticalSection;
 {$ifdef HAS_UNIT_ZIPPER}
 {$ifdef HAS_UNIT_ZIPPER}
     FZipper: TZipper;
     FZipper: TZipper;
+    FGZFileStream: TGZFileStream;
 {$endif HAS_UNIT_ZIPPER}
 {$endif HAS_UNIT_ZIPPER}
 {$ifdef HAS_TAR_SUPPORT}
 {$ifdef HAS_TAR_SUPPORT}
     FTarWriter: TTarWriter;
     FTarWriter: TTarWriter;
-    FGZFileStream: TGZFileStream;
 {$endif HAS_TAR_SUPPORT}
 {$endif HAS_TAR_SUPPORT}
     procedure AddFileToArchive(const APackage: TPackage; Const ASourceFileName, ADestFileName : String);
     procedure AddFileToArchive(const APackage: TPackage; Const ASourceFileName, ADestFileName : String);
     procedure FinishArchive(Sender: TObject);
     procedure FinishArchive(Sender: TObject);
@@ -1377,7 +1377,11 @@ uses typinfo, rtlconsts;
 
 
 const
 const
 {$ifdef CREATE_TAR_FILE}
 {$ifdef CREATE_TAR_FILE}
+  {$ifdef HAS_UNIT_ZIPPER}
   ArchiveExtension = '.tar.gz';
   ArchiveExtension = '.tar.gz';
+  {$else }
+  ArchiveExtension = '.tar';
+  {$endif HAS_UNIT_ZIPPER}
 {$else CREATE_TAR_FILE}
 {$else CREATE_TAR_FILE}
   ArchiveExtension = '.zip';
   ArchiveExtension = '.zip';
 {$endif CREATE_TAR_FILE}
 {$endif CREATE_TAR_FILE}
@@ -5012,15 +5016,19 @@ begin
   {$ifdef HAS_TAR_SUPPORT}
   {$ifdef HAS_TAR_SUPPORT}
   if not assigned(FTarWriter) then
   if not assigned(FTarWriter) then
     begin
     begin
+    {$ifdef HAS_UNIT_ZIPPER}
       FGZFileStream := TGZFileStream.create(GetArchiveName + ArchiveExtension, gzopenwrite);
       FGZFileStream := TGZFileStream.create(GetArchiveName + ArchiveExtension, gzopenwrite);
       try
       try
         FTarWriter := TTarWriter.Create(FGZFileStream);
         FTarWriter := TTarWriter.Create(FGZFileStream);
-        FTarWriter.Permissions := [tpReadByOwner, tpWriteByOwner, tpReadByGroup, tpReadByOther];
-        FTarWriter.UserName := 'root';
-        FTarWriter.GroupName := 'root';
       except
       except
         FGZFileStream.Free;
         FGZFileStream.Free;
       end;
       end;
+    {$else}
+    FTarWriter := TTarWriter.Create(GetArchiveName + ArchiveExtension);
+    {$endif HAS_UNIT_ZIPPER}
+    FTarWriter.Permissions := [tpReadByOwner, tpWriteByOwner, tpReadByGroup, tpReadByOther];
+    FTarWriter.UserName := 'root';
+    FTarWriter.GroupName := 'root';
     end;
     end;
 {$ifdef unix}
 {$ifdef unix}
   if (FpStat(ASourceFileName, FileStat) = 0) and (FileStat.st_mode and S_IXUSR = S_IXUSR) then
   if (FpStat(ASourceFileName, FileStat) = 0) and (FileStat.st_mode and S_IXUSR = S_IXUSR) then
@@ -5057,7 +5065,9 @@ begin
   if assigned(FTarWriter) then
   if assigned(FTarWriter) then
     begin
     begin
       FreeAndNil(FTarWriter);
       FreeAndNil(FTarWriter);
+      {$ifdef HAS_UNIT_ZIPPER}
       FGZFileStream.Free;
       FGZFileStream.Free;
+      {$endif HAS_UNIT_ZIPPER}
     end;
     end;
   {$endif HAS_TAR_SUPPORT}
   {$endif HAS_TAR_SUPPORT}
   {$ifdef HAS_UNIT_ZIPPER}
   {$ifdef HAS_UNIT_ZIPPER}