Zip-Ada: Ada library for zip files (.zip). Ada programming.
Zip-Ada

What is Zip-Ada ?
Zip-Ada is a library for dealing with the Zip compressed archive file format. The full sources of Zip-Ada are in Ada, compilable on every compiler and for every system. For more details, read the files zipada.txt and zip.ads from the archive below.
 
Why not call an zip or unzip executable, or use the zlib library ?

Distribution
Zip-Ada is free software - see copyright notice in Zip.ads

Download
Download the archive at the SourceForge project page.  

The archive contains:

Tips:
- unzip the archive with its directory structure ("unzip zipada*.zip");
- text-mode and lower case names can be forced for Unix ("unzip -aa -L zipada*.zip").

A small demo's source:
with Zip_Streams;                       use Zip_Streams;
with Zip.Create;                        use Zip.Create;

procedure Demo_zip is
  zip_file : aliased ZipFile_Stream; -- Archive is a file
  archive : Zip_Create_info;
begin
  Create (archive, zip_file'Unchecked_Access, "Mini_zip.zip" );
  Add_File(archive, "demo_zip.adb");
  Add_File(archive, "demo_unzip.adb");
  Add_String(archive,
    "==== Hello world! ====" & ASCII.LF &
    "It is such a nice ""Hello world""-like demo, isn't it ?",
    "nice_string.txt"
  );
  Finish (archive);
end Demo_zip;

For more sources...

Browse the source (of version 31)  
Source web pages automatically generated by gnathtml (GNAT).

Present state - latest changes (-!- marks an improvement which brings an incompatibility):

Maintainer of the Ada version: G. de Montmollin.
For a little sponsoring...   Support This Project
Visit also the project on SourceForge!   SourceForge.net Logo
Technical documentation: read appnote.txt (in the archive).
Legal notice: free distribution copyright (read zip.ads), no warranty.


Operating Systems, processors, compiler combinations where Zip-Ada (one single source, zero conditional define!) is reported to be in use:
OSCPUCompiler
MS Windows 95,98,NT,2K,XPIntel x86 (32 bit)GNU - GNAT
MS Windows x64Intel x64 (64 bit)
LinuxIntel x86 (32 bit)
Mac OS XPowerPC (64 bit)
Mac OS XIntel x64 (64 bit)
SolarisSPARC (32 or 64 bit)
SolarisIntel x64 (64 bit)
MS-DOS, DR-DOS (Novell)Intel x86 (16/32 bit)
OpenBSD(one of several)
MS Windows 95,98,NT,2K,XPIntel x86 (32 bit)Aonix - ObjectAda
MS Windows 95,98,NT,2K,XPIntel x86 (32 bit)RR Software - Janus/Ada
MS Windows NT+Intel x86 (32 bit)SofCheck - AdaMagic
MS Windows NT+Intel x64 (64 bit)
LinuxIntel x86 (32 bit)
Mac OS XPowerPC (64 bit)
Mac OS XIntel x64 (64 bit)
SolarisSPARC (32 or 64 bit)
SolarisIntel x64 (64 bit)
Don't hesitate to tell me about other OS / CPU / compiler combinations!
Summary of supported Zip formats:
Zip-AdaUnZip-Ada
FormatFormat #CompressDecompress
store0xx
shrink1xx
reduce_12xx
reduce_23xx
reduce_34xx
reduce_45xx
implode6 x
deflate8 x
enhanced deflate9 x
bzip212  
lzma14  
ppmd98  

Some people using Zip-Ada: