Browse Source

* rename zlib.pas -> zbase.pas to overcome conflicting name with the
other zlib package
* paszlib unit added as generic interface for all other units, this
unit is partly compatible with the other zlib pacakge

peter 25 years ago
parent
commit
9198133711

+ 50 - 48
packages/paszlib/Makefile

@@ -1,5 +1,5 @@
 #
 #
-# Makefile generated by fpcmake v0.99.13 [2000/01/04]
+# Makefile generated by fpcmake v0.99.13 [2000/01/06]
 #
 #
 
 
 defaultrule: all
 defaultrule: all
@@ -104,27 +104,54 @@ endif
 
 
 export FPC OS_TARGET OS_SOURCE CPU_TARGET CPU_SOURCE FPC_VERSION
 export FPC OS_TARGET OS_SOURCE CPU_TARGET CPU_SOURCE FPC_VERSION
 
 
-# Default FPCDIR
-ifndef FPCDIR
-FPCDIR=../..
-endif
-
 # Test FPCDIR to look if the RTL dir exists
 # Test FPCDIR to look if the RTL dir exists
 ifdef FPCDIR
 ifdef FPCDIR
 override FPCDIR:=$(subst \,/,$(FPCDIR))
 override FPCDIR:=$(subst \,/,$(FPCDIR))
 ifeq ($(wildcard $(FPCDIR)/rtl),)
 ifeq ($(wildcard $(FPCDIR)/rtl),)
-override FPCDIR=
+override FPCDIR=wrong
 endif
 endif
 else
 else
-override FPCDIR=
+override FPCDIR=wrong
+endif
+
+# Default FPCDIR
+ifeq ($(FPCDIR),wrong)
+override FPCDIR=../..
+ifeq ($(wildcard $(FPCDIR)/rtl),)
+override FPCDIR=wrong
+endif
 endif
 endif
 
 
 # Detect FPCDIR
 # Detect FPCDIR
-ifeq ($(FPCDIR),)
+ifeq ($(FPCDIR),wrong)
 ifdef inlinux
 ifdef inlinux
-FPCDIR=/usr/lib/fpc/$(FPC_VERSION)
+override FPCDIR=/usr/lib/fpc/$(FPC_VERSION)
 else
 else
-FPCDIR:=$(subst /$(FPC)$(EXEEXT),,$(firstword $(strip $(wildcard $(addsuffix /$(FPC)$(EXEEXT),$(SEARCHPATH))))))
+override FPCDIR:=$(subst /$(FPC)$(EXEEXT),,$(firstword $(strip $(wildcard $(addsuffix /$(FPC)$(EXEEXT),$(SEARCHPATH))))))
+endif
+endif
+
+ifndef PACKAGEDIR
+PACKAGEDIR=$(FPCDIR)/packages
+endif
+ifndef COMPONENTDIR
+COMPONENTDIR=$(FPCDIR)/components
+endif
+# Check if packagedir really exists else turn it off
+ifeq ($(wildcard $(PACKAGEDIR)),)
+PACKAGEDIR=
+endif
+ifeq ($(wildcard $(COMPONENTDIR)),)
+COMPONENTDIR=
+endif
+
+# Create rtl,units dir
+ifneq ($(FPCDIR),.)
+override UNITSDIR=$(FPCDIR)/units/$(OS_TARGET)
+ifneq ($(wildcard $(FPCDIR)/rtl),)
+override RTLDIR=$(FPCDIR)/rtl/$(OS_TARGET)
+else
+override RTLDIR=$(UNITSDIR)/rtl
 endif
 endif
 endif
 endif
 
 
@@ -153,7 +180,7 @@ endif
 
 
 # Targets
 # Targets
 
 
-override UNITOBJECTS+=adler crc crcasm gzio infblock infcodes inffast inftrees infutil strutils trees zcompres zdeflate zinflate zlib zuncompr zutil
+override UNITOBJECTS+=paszlib adler crc crcasm gzio infblock infcodes inffast inftrees infutil strutils trees zcompres zdeflate zinflate zbase zuncompr zutil
 override EXAMPLEOBJECTS+=example minigzip
 override EXAMPLEOBJECTS+=example minigzip
 
 
 # Clean
 # Clean
@@ -161,24 +188,14 @@ override EXAMPLEOBJECTS+=example minigzip
 
 
 # Install
 # Install
 
 
+UNITSUBDIR=paszlib
 ZIPTARGET=install
 ZIPTARGET=install
 
 
 # Defaults
 # Defaults
 
 
-override NEEDOPT=-Sm
 
 
 # Directories
 # Directories
 
 
-ifndef PACKAGEDIR
-ifneq ($(wildcard $(FPCDIR)/packages),)
-PACKAGEDIR=$(FPCDIR)/packages
-else
-PACKAGEDIR=$(FPCDIR)/units/$(OS_TARGET)
-endif
-endif
-ifndef COMPONENTDIR
-COMPONENTDIR=$(FPCDIR)/components
-endif
 
 
 # Packages
 # Packages
 
 
@@ -203,11 +220,6 @@ else
 BASEDIR=.
 BASEDIR=.
 endif
 endif
 
 
-# this can be set to 'rtl' when the RTL units are installed
-ifndef UNITPREFIX
-UNITPREFIX=units
-endif
-
 # set the prefix directory where to install everything
 # set the prefix directory where to install everything
 ifndef PREFIXINSTALLDIR
 ifndef PREFIXINSTALLDIR
 ifdef inlinux
 ifdef inlinux
@@ -218,12 +230,6 @@ endif
 endif
 endif
 export PREFIXINSTALLDIR
 export PREFIXINSTALLDIR
 
 
-# Create rtl,fcl,units dir
-ifneq ($(FPCDIR),.)
-override RTLDIR=$(FPCDIR)/rtl/$(OS_TARGET)
-override UNITSDIR=$(FPCDIR)/units/$(OS_TARGET)
-endif
-
 #####################################################################
 #####################################################################
 # Install Directories
 # Install Directories
 #####################################################################
 #####################################################################
@@ -248,7 +254,7 @@ endif
 
 
 # set the directory where to install the units.
 # set the directory where to install the units.
 ifndef UNITINSTALLDIR
 ifndef UNITINSTALLDIR
-UNITINSTALLDIR=$(BASEINSTALLDIR)/$(UNITPREFIX)/$(OS_TARGET)
+UNITINSTALLDIR=$(BASEINSTALLDIR)/units/$(OS_TARGET)
 ifdef UNITSUBDIR
 ifdef UNITSUBDIR
 UNITINSTALLDIR:=$(UNITINSTALLDIR)/$(UNITSUBDIR)
 UNITINSTALLDIR:=$(UNITINSTALLDIR)/$(UNITSUBDIR)
 endif
 endif
@@ -275,15 +281,15 @@ endif
 # Where the doc files will be stored
 # Where the doc files will be stored
 ifndef DOCINSTALLDIR
 ifndef DOCINSTALLDIR
 ifdef inlinux
 ifdef inlinux
-DOCINSTALLDIR=$(PREFIXINSTALLDIR)/doc/fpc/$(FPC_VERSION)
+DOCINSTALLDIR=$(PREFIXINSTALLDIR)/doc/fpc-$(FPC_VERSION)
 else
 else
 DOCINSTALLDIR=$(BASEINSTALLDIR)/doc
 DOCINSTALLDIR=$(BASEINSTALLDIR)/doc
 endif
 endif
 endif
 endif
 
 
 # Where the some extra (data)files will be stored
 # Where the some extra (data)files will be stored
-ifndef EXTRAINSTALLDIR
-EXTRAINSTALLDIR=$(BASEINSTALLDIR)
+ifndef DATAINSTALLDIR
+DATAINSTALLDIR=$(BASEINSTALLDIR)
 endif
 endif
 
 
 
 
@@ -299,18 +305,14 @@ ifneq ($(OS_TARGET),$(OS_SOURCE))
 override FPCOPT+=-T$(OS_TARGET)
 override FPCOPT+=-T$(OS_TARGET)
 endif
 endif
 
 
-ifdef NEEDOPT
-override FPCOPT+=$(NEEDOPT)
+ifdef UNITSDIR
+override FPCOPT+=-Fu$(UNITSDIR)
 endif
 endif
 
 
 ifdef RTLDIR
 ifdef RTLDIR
 override FPCOPT+=-Fu$(RTLDIR)
 override FPCOPT+=-Fu$(RTLDIR)
 endif
 endif
 
 
-ifdef UNITSDIR
-override FPCOPT+=-Fu$(UNITSDIR)
-endif
-
 # Smartlinking
 # Smartlinking
 ifdef SMARTLINK
 ifdef SMARTLINK
 override FPCOPT+=-CX
 override FPCOPT+=-CX
@@ -835,7 +837,7 @@ ifneq ($(INSTALLPPULIBFILES),)
 endif
 endif
 endif
 endif
 ifdef EXTRAINSTALLFILES
 ifdef EXTRAINSTALLFILES
-	@$(ECHO) -e $(addprefix "\n"$(EXTRAINSTALLDIR)/,$(EXTRAINSTALLFILES))
+	@$(ECHO) -e $(addprefix "\n"$(DATAINSTALLDIR)/,$(EXTRAINSTALLFILES))
 endif
 endif
 
 
 fpc_install: $(INSTALLTARGET)
 fpc_install: $(INSTALLTARGET)
@@ -860,8 +862,8 @@ ifneq ($(INSTALLPPULIBFILES),)
 endif
 endif
 endif
 endif
 ifdef EXTRAINSTALLFILES
 ifdef EXTRAINSTALLFILES
-	$(MKDIR) $(EXTRAINSTALLDIR)
-	$(INSTALL) $(EXTRAINSTALLFILES) $(EXTRAINSTALLDIR)
+	$(MKDIR) $(DATAINSTALLDIR)
+	$(INSTALL) $(EXTRAINSTALLFILES) $(DATAINSTALLDIR)
 endif
 endif
 
 
 #####################################################################
 #####################################################################
@@ -1028,6 +1030,6 @@ endif
 	@$(ECHO)  UnitInstallDir....... $(UNITINSTALLDIR)
 	@$(ECHO)  UnitInstallDir....... $(UNITINSTALLDIR)
 	@$(ECHO)  SourceInstallDir..... $(SOURCEINSTALLDIR)
 	@$(ECHO)  SourceInstallDir..... $(SOURCEINSTALLDIR)
 	@$(ECHO)  DocInstallDir........ $(DOCINSTALLDIR)
 	@$(ECHO)  DocInstallDir........ $(DOCINSTALLDIR)
-	@$(ECHO)  ExtraInstallDir...... $(EXTRAINSTALLDIR)
+	@$(ECHO)  DataInstallDir....... $(DATAINSTALLDIR)
 	@$(ECHO)
 	@$(ECHO)
 
 

+ 3 - 3
packages/paszlib/Makefile.fpc

@@ -3,11 +3,11 @@
 #
 #
 
 
 [targets]
 [targets]
-units=adler crc crcasm gzio infblock infcodes inffast inftrees infutil strutils trees zcompres zdeflate zinflate zlib zuncompr zutil
+units=paszlib adler crc crcasm gzio infblock infcodes inffast inftrees infutil strutils trees zcompres zdeflate zinflate zbase zuncompr zutil
 examples=example minigzip
 examples=example minigzip
 
 
-[require]
-options=-Sm
+[install]
+unitsubdir=paszlib
 
 
 [dirs]
 [dirs]
 fpcdir=../..
 fpcdir=../..

+ 4 - 4
packages/paszlib/crc.pas

@@ -14,7 +14,7 @@ interface
 {$I zconf.inc}
 {$I zconf.inc}
 
 
 uses
 uses
-  zutil, zlib;
+  zutil, zbase;
 
 
 
 
 function crc32(crc : uLong; buf : pBytef; len : uInt) : uLong;
 function crc32(crc : uLong; buf : pBytef; len : uInt) : uLong;
@@ -38,7 +38,7 @@ function crc32(crc : uLong; buf : pBytef; len : uInt) : uLong;
 
 
 }
 }
 
 
-function get_crc_table : puLong;  { can be used by asm versions of crc32() }
+function get_crc_table : pointer;  { can be used by asm versions of crc32() }
 
 
 
 
 implementation
 implementation
@@ -175,13 +175,13 @@ const
 { =========================================================================
 { =========================================================================
   This function can be used by asm versions of crc32() }
   This function can be used by asm versions of crc32() }
 
 
-function get_crc_table : {const} puLong;
+function get_crc_table : {const} pointer;
 begin
 begin
 {$ifdef DYNAMIC_CRC_TABLE}
 {$ifdef DYNAMIC_CRC_TABLE}
   if (crc_table_empty) then
   if (crc_table_empty) then
     make_crc_table;
     make_crc_table;
 {$endif}
 {$endif}
-  get_crc_table :=  {const} puLong(@crc_table);
+  get_crc_table :=  {const} pointer(@crc_table);
 end;
 end;
 
 
 { ========================================================================= }
 { ========================================================================= }

+ 1 - 1
packages/paszlib/crcasm.pas

@@ -24,7 +24,7 @@ interface
 {$ENDIF}
 {$ENDIF}
 
 
 uses
 uses
-  zutil, zlib;
+  zutil, zbase;
 
 
 function crc32(crc : uLong; buf : pBytef; len : uInt) : uLong;
 function crc32(crc : uLong; buf : pBytef; len : uInt) : uLong;
 
 

+ 25 - 22
packages/paszlib/gzio.pas

@@ -21,12 +21,13 @@ uses
   {$else}
   {$else}
   SysUtils,
   SysUtils,
   {$endif}
   {$endif}
-  zutil, zlib, crc, zdeflate, zinflate;
+  zutil, zbase, crc, zdeflate, zinflate;
 
 
 type gzFile = voidp;
 type gzFile = voidp;
 type z_off_t = long;
 type z_off_t = long;
 
 
 function gzopen  (path:string; mode:string) : gzFile;
 function gzopen  (path:string; mode:string) : gzFile;
+function gzsetparams (f:gzfile; level:int; strategy:int) : int;
 function gzread  (f:gzFile; buf:voidp; len:uInt) : int;
 function gzread  (f:gzFile; buf:voidp; len:uInt) : int;
 function gzgetc  (f:gzfile) : int;
 function gzgetc  (f:gzfile) : int;
 function gzgets  (f:gzfile; buf:PChar; len:int) : PChar;
 function gzgets  (f:gzfile; buf:PChar; len:int) : PChar;
@@ -43,10 +44,12 @@ function gzflush (f:gzFile; flush:int)           : int;
   {$endif}
   {$endif}
 {$endif}
 {$endif}
 
 
-function gzseek  (f:gzfile; offset:z_off_t; whence:int) : z_off_t;
-function gztell  (f:gzfile) : z_off_t;
-function gzclose (f:gzFile)                      : int;
-function gzerror (f:gzFile; var errnum:Int)      : string;
+function gzseek   (f:gzfile; offset:z_off_t; whence:int) : z_off_t;
+function gzrewind (f:gzFile) : int;
+function gztell   (f:gzfile) : z_off_t;
+function gzeof    (f:gzfile) : boolean;
+function gzclose  (f:gzFile)                      : int;
+function gzerror  (f:gzFile; var errnum:Int)      : string;
 
 
 const
 const
   SEEK_SET {: z_off_t} = 0; { seek from beginning of file }
   SEEK_SET {: z_off_t} = 0; { seek from beginning of file }
@@ -123,7 +126,7 @@ var
   s        : gz_streamp;
   s        : gz_streamp;
 {$IFDEF MSDOS}
 {$IFDEF MSDOS}
   attr     : word;       { file attributes }
   attr     : word;       { file attributes }
-{$ENDIF}  
+{$ENDIF}
 
 
 {$IFNDEF NO_DEFLATE}
 {$IFNDEF NO_DEFLATE}
   gzheader : array [0..9] of byte;
   gzheader : array [0..9] of byte;
@@ -222,7 +225,7 @@ begin
     Reset (s^.gzfile,1);
     Reset (s^.gzfile,1);
   {$else}
   {$else}
   if (not FileExists(s^.path)) and (s^.mode='w') then
   if (not FileExists(s^.path)) and (s^.mode='w') then
-    ReWrite (s^.gzfile,1)  
+    ReWrite (s^.gzfile,1)
   else
   else
     Reset (s^.gzfile,1);
     Reset (s^.gzfile,1);
   {$endif}
   {$endif}
@@ -407,7 +410,7 @@ begin
       if (c <> Z_EOF) then begin
       if (c <> Z_EOF) then begin
         Inc(s^.stream.avail_in);
         Inc(s^.stream.avail_in);
         Dec(s^.stream.next_in);
         Dec(s^.stream.next_in);
-	s^.transparent := TRUE;
+        s^.transparent := TRUE;
       end;
       end;
       if (s^.stream.avail_in <> 0) then s^.z_err := Z_OK
       if (s^.stream.avail_in <> 0) then s^.z_err := Z_OK
       else s^.z_err := Z_STREAM_END;
       else s^.z_err := Z_STREAM_END;
@@ -584,9 +587,9 @@ begin
       {$I+}
       {$I+}
       if (s^.stream.avail_in = 0) then begin
       if (s^.stream.avail_in = 0) then begin
         s^.z_eof := true;
         s^.z_eof := true;
-	if (IOResult <> 0) then begin
-	  s^.z_err := Z_ERRNO;
-	  break;
+        if (IOResult <> 0) then begin
+          s^.z_err := Z_ERRNO;
+          break;
         end;
         end;
       end;
       end;
       s^.stream.next_in := s^.inbuf;
       s^.stream.next_in := s^.inbuf;
@@ -610,18 +613,18 @@ begin
 
 
       if (s^.crc <> filecrc) or (s^.stream.total_out <> filelen)
       if (s^.crc <> filecrc) or (s^.stream.total_out <> filelen)
         then s^.z_err := Z_DATA_ERROR
         then s^.z_err := Z_DATA_ERROR
-	else begin
-	  { Check for concatenated .gz files: }
-	  check_header(s);
-	  if (s^.z_err = Z_OK) then begin
+        else begin
+          { Check for concatenated .gz files: }
+          check_header(s);
+          if (s^.z_err = Z_OK) then begin
             total_in := s^.stream.total_in;
             total_in := s^.stream.total_in;
             total_out := s^.stream.total_out;
             total_out := s^.stream.total_out;
 
 
-	    inflateReset (s^.stream);
-	    s^.stream.total_in := total_in;
-	    s^.stream.total_out := total_out;
-	    s^.crc := crc32 (0, Z_NULL, 0);
-	  end;
+            inflateReset (s^.stream);
+            s^.stream.total_in := total_in;
+            s^.stream.total_out := total_out;
+            s^.crc := crc32 (0, Z_NULL, 0);
+          end;
       end; {IF-THEN-ELSE}
       end; {IF-THEN-ELSE}
     end;
     end;
 
 
@@ -768,10 +771,10 @@ var
 begin
 begin
 {$ifdef HAS_snprintf}
 {$ifdef HAS_snprintf}
     snprintf(buf, sizeof(buf), format, a1, a2, a3, a4, a5, a6, a7, a8,
     snprintf(buf, sizeof(buf), format, a1, a2, a3, a4, a5, a6, a7, a8,
-	     a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20);
+             a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20);
 {$else}
 {$else}
     sprintf(buf, format, a1, a2, a3, a4, a5, a6, a7, a8,
     sprintf(buf, format, a1, a2, a3, a4, a5, a6, a7, a8,
-	    a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20);
+            a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20);
 {$endif}
 {$endif}
     len := strlen(buf); { old sprintf doesn't return the nb of bytes written }
     len := strlen(buf); { old sprintf doesn't return the nb of bytes written }
     if (len <= 0) return 0;
     if (len <= 0) return 0;

+ 5 - 5
packages/paszlib/infblock.pas

@@ -20,7 +20,7 @@ uses
   {$IFDEF DEBUG}
   {$IFDEF DEBUG}
   strutils,
   strutils,
   {$ENDIF}
   {$ENDIF}
-  zutil, zlib;
+  zutil, zbase;
 
 
 function inflate_blocks_new(var z : z_stream;
 function inflate_blocks_new(var z : z_stream;
                             c : check_func;  { check function }
                             c : check_func;  { check function }
@@ -162,7 +162,7 @@ begin
   Inc(s^.zend, w);
   Inc(s^.zend, w);
   s^.checkfn := c;
   s^.checkfn := c;
   s^.mode := ZTYPE;
   s^.mode := ZTYPE;
-  {$IFDEF DEBUG}  
+  {$IFDEF DEBUG}
   Tracev('inflate:   blocks allocated');
   Tracev('inflate:   blocks allocated');
   {$ENDIF}
   {$ENDIF}
   inflate_blocks_reset(s^, z, Z_NULL);
   inflate_blocks_reset(s^, z, Z_NULL);
@@ -299,7 +299,7 @@ begin
                 Tracev('inflate:     dynamic codes block (last)')
                 Tracev('inflate:     dynamic codes block (last)')
               else
               else
                 Tracev('inflate:     dynamic codes block');
                 Tracev('inflate:     dynamic codes block');
-              {$ENDIF}                
+              {$ENDIF}
               {DUMPBITS(3);}
               {DUMPBITS(3);}
               b := b shr 3;
               b := b shr 3;
               Dec(k, 3);
               Dec(k, 3);
@@ -762,7 +762,7 @@ begin
           end;
           end;
           {$IFDEF DEBUG}
           {$IFDEF DEBUG}
           Tracev('inflate:       trees ok');
           Tracev('inflate:       trees ok');
-          {$ENDIF}          
+          {$ENDIF}
           { c renamed to cs }
           { c renamed to cs }
           cs := inflate_codes_new(bl, bd, tl, td, z);
           cs := inflate_codes_new(bl, bd, tl, td, z);
           if (cs = Z_NULL) then
           if (cs = Z_NULL) then
@@ -926,7 +926,7 @@ begin
   ZFREE(z, s);
   ZFREE(z, s);
   {$IFDEF DEBUG}
   {$IFDEF DEBUG}
   Trace('inflate:   blocks freed');
   Trace('inflate:   blocks freed');
-  {$ENDIF}  
+  {$ENDIF}
   inflate_blocks_free := Z_OK;
   inflate_blocks_free := Z_OK;
 end;
 end;
 
 

+ 4 - 4
packages/paszlib/infcodes.pas

@@ -16,7 +16,7 @@ uses
   {$IFDEF DEBUG}
   {$IFDEF DEBUG}
   strutils,
   strutils,
   {$ENDIF}
   {$ENDIF}
-  zutil, zlib;
+  zutil, zbase;
 
 
 function inflate_codes_new (bl : uInt;
 function inflate_codes_new (bl : uInt;
                             bd : uInt;
                             bd : uInt;
@@ -175,7 +175,7 @@ begin
           Tracevv('inflate:         literal '+char(t^.base))
           Tracevv('inflate:         literal '+char(t^.base))
         else
         else
           Tracevv('inflate:         literal '+IntToStr(t^.base));
           Tracevv('inflate:         literal '+IntToStr(t^.base));
-        {$ENDIF}          
+        {$ENDIF}
         c^.mode := LIT;
         c^.mode := LIT;
         continue;  { break switch statement }
         continue;  { break switch statement }
       end;
       end;
@@ -196,7 +196,7 @@ begin
       begin
       begin
         {$IFDEF DEBUG}
         {$IFDEF DEBUG}
         Tracevv('inflate:         end of block');
         Tracevv('inflate:         end of block');
-        {$ENDIF}        
+        {$ENDIF}
         c^.mode := WASH;
         c^.mode := WASH;
         continue;         { break C-switch statement }
         continue;         { break C-switch statement }
       end;
       end;
@@ -568,7 +568,7 @@ procedure inflate_codes_free(c : pInflate_codes_state;
                              var z : z_stream);
                              var z : z_stream);
 begin
 begin
   ZFREE(z, c);
   ZFREE(z, c);
-  {$IFDEF DEBUG}  
+  {$IFDEF DEBUG}
   Tracev('inflate:       codes free');
   Tracev('inflate:       codes free');
   {$ENDIF}
   {$ENDIF}
 end;
 end;

+ 2 - 2
packages/paszlib/inffast.pas

@@ -19,7 +19,7 @@ uses
   {$ifdef DEBUG}
   {$ifdef DEBUG}
   strutils,
   strutils,
   {$ENDIF}
   {$ENDIF}
-  zutil, zlib;
+  zutil, zbase;
 
 
 function inflate_fast( bl : uInt;
 function inflate_fast( bl : uInt;
                        bd : uInt;
                        bd : uInt;
@@ -244,7 +244,7 @@ begin
             Tracevv('inflate:         * literal '+char(t^.base))
             Tracevv('inflate:         * literal '+char(t^.base))
           else
           else
             Tracevv('inflate:         * literal '+IntToStr(t^.base));
             Tracevv('inflate:         * literal '+IntToStr(t^.base));
-          {$ENDIF}            
+          {$ENDIF}
           q^ := Byte(t^.base);
           q^ := Byte(t^.base);
           Inc(q);
           Inc(q);
           Dec(m);
           Dec(m);

+ 1 - 1
packages/paszlib/inftrees.pas

@@ -18,7 +18,7 @@ interface
 {$I zconf.inc}
 {$I zconf.inc}
 
 
 uses
 uses
-  zutil, zlib;
+  zutil, zbase;
 
 
 
 
 { Maximum size of dynamic tree.  The maximum found in a long but non-
 { Maximum size of dynamic tree.  The maximum found in a long but non-

+ 1 - 1
packages/paszlib/infutil.pas

@@ -17,7 +17,7 @@ interface
 {$I zconf.inc}
 {$I zconf.inc}
 
 
 uses
 uses
-  zutil, zlib;
+  zutil, zbase;
 
 
 { copy as much as possible from the sliding window to the output area }
 { copy as much as possible from the sliding window to the output area }
 function inflate_flush(var s : inflate_blocks_state;
 function inflate_flush(var s : inflate_blocks_state;

+ 328 - 0
packages/paszlib/paszlib.pas

@@ -0,0 +1,328 @@
+unit paszlib;
+
+interface
+
+uses
+  zbase;
+
+type
+  { Compatibility types }
+  Uint = cardinal;
+  Ulong = Cardinal;
+  Ulongf = Cardinal;
+  Pulongf = ^Ulongf;
+  z_off_t = longint;
+
+  TAllocfunc = function (opaque:pointer; items:uInt; size:uInt):pointer;
+  TFreeFunc = procedure (opaque:pointer; address:pointer);
+
+  TInternalState = record
+    end;
+  PInternalState = ^TInternalstate;
+
+  TZStream = z_stream;
+  PZstream = ^TZStream;
+
+  gzFile = pointer;
+
+
+const
+  Z_NO_FLUSH = 0;
+
+  Z_PARTIAL_FLUSH = 1;
+  Z_SYNC_FLUSH = 2;
+  Z_FULL_FLUSH = 3;
+  Z_FINISH = 4;
+
+  Z_OK = 0;
+  Z_STREAM_END = 1;
+  Z_NEED_DICT = 2;
+  Z_ERRNO = -(1);
+  Z_STREAM_ERROR = -(2);
+  Z_DATA_ERROR = -(3);
+  Z_MEM_ERROR = -(4);
+  Z_BUF_ERROR = -(5);
+  Z_VERSION_ERROR = -(6);
+
+  Z_NO_COMPRESSION = 0;
+  Z_BEST_SPEED = 1;
+  Z_BEST_COMPRESSION = 9;
+  Z_DEFAULT_COMPRESSION = -(1);
+
+  Z_FILTERED = 1;
+  Z_HUFFMAN_ONLY = 2;
+  Z_DEFAULT_STRATEGY = 0;
+
+  Z_BINARY = 0;
+  Z_ASCII = 1;
+  Z_UNKNOWN = 2;
+
+  Z_DEFLATED = 8;
+
+  Z_NULL = 0;
+
+function zlibVersion:string;
+function deflate(var strm:TZstream; flush:longint):longint;
+function deflateEnd(var strm:TZstream):longint;
+function inflate(var strm:TZstream; flush:longint):longint;
+function inflateEnd(var strm:TZstream):longint;
+function deflateSetDictionary(var strm:TZstream;dictionary : pchar; dictLength:uInt):longint;
+function deflateCopy(var dest,source:TZstream):longint;
+function deflateReset(var strm:TZstream):longint;
+function deflateParams(var strm:TZstream; level:longint; strategy:longint):longint;
+function inflateSetDictionary(var strm:TZStream;dictionary : pchar; dictLength:uInt):longint;
+function inflateSync(var strm:TZStream):longint;
+function inflateReset(var strm:TZStream):longint;
+function compress(dest:pchar;destLen:uLongf; source : pchar; sourceLen:uLong):longint;
+function compress2(dest:pchar;destLen:uLongf; source : pchar; sourceLen:uLong; level:longint):longint;
+function uncompress(dest:pchar;destLen:uLongf; source : pchar; sourceLen:uLong):longint;
+function gzopen(path:pchar; mode:pchar):gzFile;
+function gzsetparams(Thefile:gzFile; level:longint; strategy:longint):longint;
+function gzread(thefile:gzFile; buf : pointer; len:cardinal):longint;
+function gzwrite(thefile:gzFile; buf: pointer; len:cardinal):longint;
+function gzputs(thefile:gzFile; s:pchar):longint;
+function gzgets(thefile:gzFile; buf:pchar; len:longint):pchar;
+function gzputc(thefile:gzFile; c:char):longint;
+function gzgetc(thefile:gzFile):char;
+function gzflush(thefile:gzFile; flush:longint):longint;
+function gzseek(thefile:gzFile; offset:z_off_t; whence:longint):z_off_t;
+function gzrewind(thefile:gzFile):longint;
+function gztell(thefile:gzFile):z_off_t;
+function gzeof(thefile:gzFile):longbool;
+function gzclose(thefile:gzFile):longint;
+function gzerror(thefile:gzFile; var errnum:longint):string;
+function adler32(theadler:uLong;buf : pchar; len:uInt):uLong;
+function crc32(thecrc:uLong;buf : pchar; len:uInt):uLong;
+function deflateInit_(var strm:TZStream; level:longint; version:pchar; stream_size:longint):longint;
+function inflateInit_(var strm:TZStream; version:pchar; stream_size:longint):longint;
+function deflateInit2_(var strm:TZStream; level:longint; method:longint; windowBits:longint; memLevel:longint;strategy:longint; version:pchar; stream_size:longint):longint;
+function inflateInit2_(var strm:TZStream; windowBits:longint; version:pchar; stream_size:longint):longint;
+function deflateInit(var strm:TZStream;level : longint) : longint;
+function inflateInit(var strm:TZStream) : longint;
+function deflateInit2(var strm:TZStream;level,method,windowBits,memLevel,strategy : longint) : longint;
+function inflateInit2(var strm:TZStream; windowBits : longint) : longint;
+function zError(err:longint):string;
+function inflateSyncPoint(z:PZstream):longint;
+function get_crc_table:pointer;
+
+implementation
+
+uses
+  zutil,zdeflate,zinflate,zcompres,zuncompr,gzio,adler,crc;
+
+function zlibVersion:string;
+begin
+  zlibversion:=zbase.zlibversion;
+end;
+
+function deflate(var strm:TZstream; flush:longint):longint;
+begin
+  deflate:=zdeflate.deflate(strm,flush);
+end;
+
+function deflateEnd(var strm:TZstream):longint;
+begin
+  deflateEnd:=zdeflate.deflateEnd(strm);
+end;
+
+function inflate(var strm:TZstream; flush:longint):longint;
+begin
+  inflate:=zinflate.inflate(strm,flush);
+end;
+
+function inflateEnd(var strm:TZstream):longint;
+begin
+  inflateEnd:=zinflate.inflateEnd(strm);
+end;
+
+function deflateSetDictionary(var strm:TZstream;dictionary : pchar; dictLength:uInt):longint;
+begin
+  deflateSetDictionary:=zdeflate.deflateSetDictionary(strm,pbytef(dictionary),dictlength);
+end;
+
+function deflateCopy(var dest,source:TZstream):longint;
+begin
+  deflateCopy:=zdeflate.deflateCopy(@dest,@source);
+end;
+
+function deflateReset(var strm:TZstream):longint;
+begin
+  deflateReset:=zdeflate.deflateReset(strm);
+end;
+
+function deflateParams(var strm:TZstream; level:longint; strategy:longint):longint;
+begin
+  deflateParams:=zdeflate.deflateParams(strm,level,strategy);
+end;
+
+function inflateSetDictionary(var strm:TZStream;dictionary : pchar; dictLength:uInt):longint;
+begin
+  inflateSetDictionary:=zinflate.inflateSetDictionary(strm,pbytef(dictionary),dictlength);
+end;
+
+function inflateSync(var strm:TZStream):longint;
+begin
+  inflateSync:=zinflate.inflateSync(strm);
+end;
+
+function inflateReset(var strm:TZStream):longint;
+begin
+  inflateReset:=zinflate.inflateReset(strm);
+end;
+
+function compress(dest:pchar;destLen:uLongf; source : pchar; sourceLen:uLong):longint;
+begin
+  compress:=zcompres.compress(pbytef(dest),destlen,pbytef(source),sourcelen);
+end;
+
+function compress2(dest:pchar;destLen:uLongf; source : pchar; sourceLen:uLong; level:longint):longint;
+begin
+  compress2:=zcompres.compress2(pbytef(dest),destlen,pbytef(source),sourcelen,level);
+end;
+
+function uncompress(dest:pchar;destLen:uLongf; source : pchar; sourceLen:uLong):longint;
+begin
+  uncompress:=zuncompr.uncompress(pbytef(dest),destlen,pbytef(source),sourcelen);
+end;
+
+function gzopen(path:pchar; mode:pchar):gzFile;
+begin
+  gzopen:=gzio.gzopen(path,mode);
+end;
+
+function gzsetparams(Thefile:gzFile; level:longint; strategy:longint):longint;
+begin
+  gzsetparams:=gzio.gzsetparams(thefile,level,strategy);
+end;
+
+function gzread(thefile:gzFile; buf : pointer; len:cardinal):longint;
+begin
+  gzread:=gzio.gzread(thefile,buf,len);
+end;
+
+function gzwrite(thefile:gzFile; buf: pointer; len:cardinal):longint;
+begin
+  gzwrite:=gzio.gzwrite(thefile,buf,len);
+end;
+
+function gzputs(thefile:gzFile; s:pchar):longint;
+begin
+  gzputs:=gzio.gzputs(thefile,s);
+end;
+
+function gzgets(thefile:gzFile; buf:pchar; len:longint):pchar;
+begin
+  gzgets:=gzio.gzgets(thefile,buf,len);
+end;
+
+function gzputc(thefile:gzFile; c:char):longint;
+begin
+  gzputc:=gzio.gzputc(thefile,c);
+end;
+
+function gzgetc(thefile:gzFile):char;
+begin
+  gzgetc:=chr(gzio.gzgetc(thefile));
+end;
+
+function gzflush(thefile:gzFile; flush:longint):longint;
+begin
+  gzflush:=gzio.gzflush(thefile,flush);
+end;
+
+function gzseek(thefile:gzFile; offset:z_off_t; whence:longint):z_off_t;
+begin
+  gzseek:=gzio.gzseek(thefile,offset,whence);
+end;
+
+function gzrewind(thefile:gzFile):longint;
+begin
+  gzrewind:=gzio.gzrewind(thefile);
+end;
+
+function gztell(thefile:gzFile):z_off_t;
+begin
+  gztell:=gzio.gztell(thefile);
+end;
+
+function gzeof(thefile:gzFile):longbool;
+begin
+  gzeof:=gzio.gzeof(thefile);
+end;
+
+function gzclose(thefile:gzFile):longint;
+begin
+  gzclose:=gzio.gzclose(thefile);
+end;
+
+function gzerror(thefile:gzFile; var errnum:longint):string;
+begin
+  gzerror:=gzio.gzerror(thefile,errnum);
+end;
+
+function adler32(theadler:uLong;buf : pchar; len:uInt):uLong;
+begin
+  adler32:=adler.adler32(theadler,pbytef(buf),len);
+end;
+
+function crc32(thecrc:uLong;buf : pchar; len:uInt):uLong;
+begin
+  crc32:=crc.crc32(thecrc,pbytef(buf),len);
+end;
+
+function deflateInit_(var strm:TZStream; level:longint; version:pchar; stream_size:longint):longint;
+begin
+  deflateInit_:=zdeflate.deflateInit_(@strm,level,version,stream_size);
+end;
+
+function inflateInit_(var strm:TZStream; version:pchar; stream_size:longint):longint;
+begin
+  inflateInit_:=zinflate.inflateInit_(@strm,version,stream_size);
+end;
+
+function deflateInit2_(var strm:TZStream; level:longint; method:longint; windowBits:longint; memLevel:longint;strategy:longint; version:pchar; stream_size:longint):longint;
+begin
+  deflateInit2_:=zdeflate.deflateInit2_(strm,level,method,windowBits,memlevel,strategy,version,stream_size);
+end;
+
+function inflateInit2_(var strm:TZStream; windowBits:longint; version:pchar; stream_size:longint):longint;
+begin
+  inflateInit2_:=zinflate.inflateInit2_(strm,windowBits,version,stream_size);
+end;
+
+function deflateInit(var strm:TZStream;level : longint) : longint;
+begin
+  deflateInit:=zdeflate.deflateInit(strm,level);
+end;
+
+function inflateInit(var strm:TZStream) : longint;
+begin
+  inflateInit:=zinflate.inflateInit(strm);
+end;
+
+function deflateInit2(var strm:TZStream;level,method,windowBits,memLevel,strategy : longint) : longint;
+begin
+  deflateInit2:=zdeflate.deflateInit2(strm,level,method,windowbits,memlevel,strategy);
+end;
+
+function inflateInit2(var strm:TZStream; windowBits : longint) : longint;
+begin
+  inflateInit2:=zinflate.inflateInit2_(strm,windowBits,ZLIB_VERSION,sizeof(TZStream));
+end;
+
+function zError(err:longint):string;
+begin
+  zerror:=zbase.zerror(err);
+end;
+
+function inflateSyncPoint(z:PZstream):longint;
+begin
+  inflateSyncPoint:=zinflate.inflateSyncPoint(z^);
+end;
+
+function get_crc_table:pointer;
+begin
+  get_crc_table:=crc.get_crc_table;
+end;
+
+end.

+ 11 - 11
packages/paszlib/trees.pas

@@ -45,7 +45,7 @@ uses
   {$ifdef DEBUG}
   {$ifdef DEBUG}
   strutils,
   strutils,
   {$ENDIF}
   {$ENDIF}
-  zutil, zlib;
+  zutil, zbase;
 
 
 { ===========================================================================
 { ===========================================================================
   Internal compression state. }
   Internal compression state. }
@@ -319,7 +319,7 @@ function _tr_tally (var s : deflate_state;
 function _tr_flush_block (var s : deflate_state;
 function _tr_flush_block (var s : deflate_state;
                           buf : pcharf;
                           buf : pcharf;
                           stored_len : ulg;
                           stored_len : ulg;
-			  eof : boolean) : ulg;
+                          eof : boolean) : ulg;
 
 
 procedure _tr_align(var s : deflate_state);
 procedure _tr_align(var s : deflate_state);
 
 
@@ -508,7 +508,7 @@ const
 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 28
 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 28
 );
 );
 
 
-  
+
 { First normalized length for each code (0 = MIN_MATCH) }
 { First normalized length for each code (0 = MIN_MATCH) }
   base_length : array[0..LENGTH_CODES-1] of int = (
   base_length : array[0..LENGTH_CODES-1] of int = (
 0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 20, 24, 28, 32, 40, 48, 56,
 0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 20, 24, 28, 32, 40, 48, 56,
@@ -956,42 +956,42 @@ begin
   for i := 0 to L_CODES+2-1 do
   for i := 0 to L_CODES+2-1 do
   begin
   begin
     WriteLn(header, '((%3u),(%3u))%s', static_ltree[i].Code,
     WriteLn(header, '((%3u),(%3u))%s', static_ltree[i].Code,
-		static_ltree[i].Len, SEPARATOR(i, L_CODES+1, 5));
+                static_ltree[i].Len, SEPARATOR(i, L_CODES+1, 5));
   end;
   end;
 
 
   WriteLn(header, 'local const ct_data static_dtree[D_CODES] := (');
   WriteLn(header, 'local const ct_data static_dtree[D_CODES] := (');
   for i := 0 to D_CODES-1 do
   for i := 0 to D_CODES-1 do
   begin
   begin
     WriteLn(header, '((%2u),(%2u))%s', static_dtree[i].Code,
     WriteLn(header, '((%2u),(%2u))%s', static_dtree[i].Code,
-		static_dtree[i].Len, SEPARATOR(i, D_CODES-1, 5));
+                static_dtree[i].Len, SEPARATOR(i, D_CODES-1, 5));
   end;
   end;
 
 
   WriteLn(header, 'const uch _dist_code[DIST_CODE_LEN] := (');
   WriteLn(header, 'const uch _dist_code[DIST_CODE_LEN] := (');
   for i := 0 to DIST_CODE_LEN-1 do
   for i := 0 to DIST_CODE_LEN-1 do
   begin
   begin
     WriteLn(header, '%2u%s', _dist_code[i],
     WriteLn(header, '%2u%s', _dist_code[i],
-		SEPARATOR(i, DIST_CODE_LEN-1, 20));
+                SEPARATOR(i, DIST_CODE_LEN-1, 20));
   end;
   end;
 
 
   WriteLn(header, 'const uch _length_code[MAX_MATCH-MIN_MATCH+1]= (');
   WriteLn(header, 'const uch _length_code[MAX_MATCH-MIN_MATCH+1]= (');
   for i := 0 to MAX_MATCH-MIN_MATCH+1-1 do
   for i := 0 to MAX_MATCH-MIN_MATCH+1-1 do
   begin
   begin
     WriteLn(header, '%2u%s', _length_code[i],
     WriteLn(header, '%2u%s', _length_code[i],
-		SEPARATOR(i, MAX_MATCH-MIN_MATCH, 20));
+                SEPARATOR(i, MAX_MATCH-MIN_MATCH, 20));
   end;
   end;
 
 
   WriteLn(header, 'local const int base_length[LENGTH_CODES] := (');
   WriteLn(header, 'local const int base_length[LENGTH_CODES] := (');
   for i := 0 to LENGTH_CODES-1 do
   for i := 0 to LENGTH_CODES-1 do
   begin
   begin
     WriteLn(header, '%1u%s', base_length[i],
     WriteLn(header, '%1u%s', base_length[i],
-		SEPARATOR(i, LENGTH_CODES-1, 20));
+                SEPARATOR(i, LENGTH_CODES-1, 20));
   end;
   end;
 
 
   WriteLn(header, 'local const int base_dist[D_CODES] := (');
   WriteLn(header, 'local const int base_dist[D_CODES] := (');
   for i := 0 to D_CODES-1 do
   for i := 0 to D_CODES-1 do
   begin
   begin
     WriteLn(header, '%5u%s', base_dist[i],
     WriteLn(header, '%5u%s', base_dist[i],
-		SEPARATOR(i, D_CODES-1, 10));
+                SEPARATOR(i, D_CODES-1, 10));
   end;
   end;
 
 
   close(header);
   close(header);
@@ -2064,8 +2064,8 @@ begin
 
 
     {$ifdef DEBUG}
     {$ifdef DEBUG}
     Tracev(^M'opt %lu(%lu) stat %lu(%lu) stored %lu lit %u '+
     Tracev(^M'opt %lu(%lu) stat %lu(%lu) stored %lu lit %u '+
-	    '{opt_lenb, s.opt_len, static_lenb, s.static_len, stored_len,'+
-	    's.last_lit}');
+            '{opt_lenb, s.opt_len, static_lenb, s.static_len, stored_len,'+
+            's.last_lit}');
     {$ENDIF}
     {$ENDIF}
 
 
     if (static_lenb <= opt_lenb) then
     if (static_lenb <= opt_lenb) then

+ 4 - 4
packages/paszlib/zlib.pas → packages/paszlib/zbase.pas

@@ -1,4 +1,4 @@
-Unit Zlib;
+Unit Zbase;
 
 
 
 
 { Original:
 { Original:
@@ -168,7 +168,7 @@ type
   check_func = function(check : uLong;
   check_func = function(check : uLong;
                         buf : pBytef;
                         buf : pBytef;
                         {const buf : array of byte;}
                         {const buf : array of byte;}
-	                len : uInt) : uLong;
+                        len : uInt) : uLong;
 type
 type
   inflate_block_mode =
   inflate_block_mode =
      (ZTYPE,    { get type bits (3, including end bit) }
      (ZTYPE,    { get type bits (3, including end bit) }
@@ -288,10 +288,10 @@ type
     adler : uLong;        { adler32 value of the uncompressed data }
     adler : uLong;        { adler32 value of the uncompressed data }
     reserved : uLong;     { reserved for future use }
     reserved : uLong;     { reserved for future use }
   end;
   end;
-{$ifdef fpc}  
+{$ifdef fpc}
   TZStream = z_stream;
   TZStream = z_stream;
   PZStream = ^TZStream;
   PZStream = ^TZStream;
-{$endif}  
+{$endif}
 
 
 {  The application must update next_in and avail_in when avail_in has
 {  The application must update next_in and avail_in when avail_in has
    dropped to zero. It must update next_out and avail_out when avail_out
    dropped to zero. It must update next_out and avail_out when avail_out

+ 6 - 6
packages/paszlib/zcompres.pas

@@ -13,14 +13,14 @@ interface
 {$I zconf.inc}
 {$I zconf.inc}
 
 
 uses
 uses
-  zutil, zlib, zDeflate;
+  zutil, zbase, zDeflate;
 
 
                         { utility functions }
                         { utility functions }
 
 
 {EXPORT}
 {EXPORT}
 function compress (dest : pBytef;
 function compress (dest : pBytef;
                    var destLen : uLong;
                    var destLen : uLong;
-                   const source : array of Byte;
+                   source : pBytef;
                    sourceLen : uLong) : int;
                    sourceLen : uLong) : int;
 
 
  { Compresses the source buffer into the destination buffer.  sourceLen is
  { Compresses the source buffer into the destination buffer.  sourceLen is
@@ -37,7 +37,7 @@ function compress (dest : pBytef;
 {EXPORT}
 {EXPORT}
 function compress2 (dest : pBytef;
 function compress2 (dest : pBytef;
                     var destLen : uLong;
                     var destLen : uLong;
-                    const source : array of byte;
+                    source : pBytef;
                     sourceLen : uLong;
                     sourceLen : uLong;
                     level : int) : int;
                     level : int) : int;
 {  Compresses the source buffer into the destination buffer. The level
 {  Compresses the source buffer into the destination buffer. The level
@@ -56,14 +56,14 @@ implementation
 }
 }
 function compress2 (dest : pBytef;
 function compress2 (dest : pBytef;
                     var destLen : uLong;
                     var destLen : uLong;
-                    const source : array of byte;
+                    source : pbytef;
                     sourceLen : uLong;
                     sourceLen : uLong;
                     level : int) : int;
                     level : int) : int;
 var
 var
   stream : z_stream;
   stream : z_stream;
   err : int;
   err : int;
 begin
 begin
-  stream.next_in := pBytef(@source);
+  stream.next_in := source;
   stream.avail_in := uInt(sourceLen);
   stream.avail_in := uInt(sourceLen);
 {$ifdef MAXSEG_64K}
 {$ifdef MAXSEG_64K}
   { Check for source > 64K on 16-bit machine: }
   { Check for source > 64K on 16-bit machine: }
@@ -112,7 +112,7 @@ end;
  }
  }
 function compress (dest : pBytef;
 function compress (dest : pBytef;
                    var destLen : uLong;
                    var destLen : uLong;
-                   const source : array of Byte;
+                   source : pBytef;
                    sourceLen : uLong) : int;
                    sourceLen : uLong) : int;
 begin
 begin
   compress := compress2(dest, destLen, source, sourceLen, Z_DEFAULT_COMPRESSION);
   compress := compress2(dest, destLen, source, sourceLen, Z_DEFAULT_COMPRESSION);

+ 9 - 1
packages/paszlib/zdeflate.pas

@@ -62,7 +62,7 @@ interface
 {$I zconf.inc}
 {$I zconf.inc}
 
 
 uses
 uses
-  zutil, zlib;
+  zutil, zbase;
 
 
 
 
 function deflateInit_(strm : z_streamp;
 function deflateInit_(strm : z_streamp;
@@ -180,6 +180,14 @@ function deflateEnd (var strm : z_stream) : int;
 
 
 { The following functions are needed only in some special applications. }
 { The following functions are needed only in some special applications. }
 
 
+function deflateInit2_(var strm : z_stream;
+                       level : int;
+                       method : int;
+                       windowBits : int;
+                       memLevel : int;
+                       strategy : int;
+                       const version : string;
+                       stream_size : int) : int;
 
 
 {EXPORT}
 {EXPORT}
 function deflateInit2 (var strm : z_stream;
 function deflateInit2 (var strm : z_stream;

+ 5 - 5
packages/paszlib/zinflate.pas

@@ -13,7 +13,7 @@ interface
 {$I zconf.inc}
 {$I zconf.inc}
 
 
 uses
 uses
-  zutil, zlib, infblock, infutil;
+  zutil, zbase, infblock, infutil;
 
 
 function inflateInit(var z : z_stream) : int;
 function inflateInit(var z : z_stream) : int;
 
 
@@ -134,7 +134,7 @@ function inflate(var z : z_stream;
 
 
      If a preset dictionary is needed at this point (see inflateSetDictionary
      If a preset dictionary is needed at this point (see inflateSetDictionary
   below), inflate sets strm-adler to the adler32 checksum of the
   below), inflate sets strm-adler to the adler32 checksum of the
-  dictionary chosen by the compressor and returns Z_NEED_DICT; otherwise 
+  dictionary chosen by the compressor and returns Z_NEED_DICT; otherwise
   it sets strm->adler to the adler32 checksum of all output produced
   it sets strm->adler to the adler32 checksum of all output produced
   so far (that is, total_out bytes) and returns Z_OK, Z_STREAM_END or
   so far (that is, total_out bytes) and returns Z_OK, Z_STREAM_END or
   an error code as described below. At the end of the stream, inflate()
   an error code as described below. At the end of the stream, inflate()
@@ -254,7 +254,7 @@ begin
   { initialize state }
   { initialize state }
   { SetLength(strm.msg, 255); }
   { SetLength(strm.msg, 255); }
   z.msg := '';
   z.msg := '';
-{$ifdef fpc}  
+{$ifdef fpc}
   if not Assigned(z.zalloc) then
   if not Assigned(z.zalloc) then
   begin
   begin
     z.zalloc := @zcalloc;
     z.zalloc := @zcalloc;
@@ -262,7 +262,7 @@ begin
   end;
   end;
   if not Assigned(z.zfree) then
   if not Assigned(z.zfree) then
     z.zfree := @zcfree;
     z.zfree := @zcfree;
-{$else}    
+{$else}
   if not Assigned(z.zalloc) then
   if not Assigned(z.zalloc) then
   begin
   begin
     z.zalloc := zcalloc;
     z.zalloc := zcalloc;
@@ -529,7 +529,7 @@ begin
         if ((b and PRESET_DICT) = 0) then
         if ((b and PRESET_DICT) = 0) then
         begin
         begin
           z.state^.mode := BLOCKS;
           z.state^.mode := BLOCKS;
-	  continue;      { break C-switch }
+          continue;      { break C-switch }
         end;
         end;
         z.state^.mode := DICT4;
         z.state^.mode := DICT4;
         { falltrough }
         { falltrough }

+ 4 - 4
packages/paszlib/zuncompr.pas

@@ -13,7 +13,7 @@ interface
 {$I zconf.inc}
 {$I zconf.inc}
 
 
 uses
 uses
-  zutil, zlib, zInflate;
+  zutil, zbase, zInflate;
 
 
 { ===========================================================================
 { ===========================================================================
      Decompresses the source buffer into the destination buffer.  sourceLen is
      Decompresses the source buffer into the destination buffer.  sourceLen is
@@ -33,20 +33,20 @@ uses
 
 
 function uncompress (dest : pBytef;
 function uncompress (dest : pBytef;
                      var destLen : uLong;
                      var destLen : uLong;
-                     const source : array of byte;
+                     source : pBytef;
                      sourceLen : uLong) : int;
                      sourceLen : uLong) : int;
 
 
 implementation
 implementation
 
 
 function uncompress (dest : pBytef;
 function uncompress (dest : pBytef;
                      var destLen : uLong;
                      var destLen : uLong;
-                     const source : array of byte;
+                     source : pBytef;
                      sourceLen : uLong) : int;
                      sourceLen : uLong) : int;
 var
 var
   stream : z_stream;
   stream : z_stream;
   err : int;
   err : int;
 begin
 begin
-  stream.next_in := pBytef(@source);
+  stream.next_in := source;
   stream.avail_in := uInt(sourceLen);
   stream.avail_in := uInt(sourceLen);
   { Check for source > 64K on 16-bit machine: }
   { Check for source > 64K on 16-bit machine: }
   if (uLong(stream.avail_in) <> sourceLen) then
   if (uLong(stream.avail_in) <> sourceLen) then