|cmake||2015-03-21||Russel Winder||[ea7416] Paths must be absolute in the finders it seems.|
|contrib||2015-03-03||AlexisWilke||[b9cf0c] More formatting changes and fixed a certain num...|
|debian||2015-12-12||AlexisWilke||[dbc501] Applied a couple fixes of uninitialized variabl...|
|dev||2015-03-24||AlexisWilke||[5c04a2] Fixed the install() target for the library so i...|
|doc||2015-03-23||AlexisWilke||[92bcbc] Properly support documentation tarball, SunOS n...|
|src||2015-12-12||AlexisWilke||[dbc501] Applied a couple fixes of uninitialized variabl...|
|tests||2015-11-29||AlexisWilke|| Fixed various system() calls of which the retur...|
|tools||2015-12-12||AlexisWilke||[dbc501] Applied a couple fixes of uninitialized variabl...|
|.gitignore||2015-03-17||Russel Winder||[ff6db3] Add Emacs backup files to the Git ignore list.|
|AUTHORS||2015-03-16||Russel Winder||[b2eb5e] Some tidying up of bits and pieces.|
|CMakeLists.txt||2015-09-14||R. Douglas Barbieri||[e1d779] Makes sure ZIPIOS_WINDOWS is defined at the hig...|
|COPYING||2015-03-16||Russel Winder||[b2eb5e] Some tidying up of bits and pieces.|
|NEWS||2015-03-02||AlexisWilke||[b4c66a] It looks like my last commit did not take. GIT ...|
|README.md||2015-11-29||AlexisWilke|| Fixed various system() calls of which the retur...|
|TODO||2015-03-21||AlexisWilke||[35b7f3] Started adding tests for compression levels and...|
|mk||2015-03-10||AlexisWilke||[5ec52d] Cleaned up the #include's and fixed the \file d...|
Zipios++ is a small C++ library for reading and writing zip files. The
structure and public interface are based (somewhat loosely) on the
java.util.zip package. The streams created to access the individual
entries in a zip file are based on the standard iostream library.
Zipios++ also provides a way for an application to support files from
multiple sources (e.g. from zip files or from ordinary directories)
The source code is released under the GNU Lesser General Public
Requires zlib (http://www.zlib.org).
To run the automatic unit test suite you need Catch
The tests also require the zip command line tool.
To build the projects, we use a C++ compiler (tested with g++ and
clang) as well as cmake.
This version of the software uses
cmake to generate the necessary make
files or solutions and projects under MS-Windows.
The following options are supported:
- `BUILD_SHARED_LIBS` (ON by default) - `BUILD_DOCUMENTATION` (ON by default) - `zipios_project_COVERAGE` (OFF by default) - `BUILD_ZIPIOS_TESTS` (ON by default)
In order to build Zipios++ as a static library, specify:
In order to explicitly disable building Doxygen documentation, specify:
In order to build the library with coverage support, use the coverage
option and make sure to compile in Debug mode too:
By default tests get built if catch.hpp is available. However, you may
have catch.hpp installed on your system but want to skip on building
the tests (i.e. nightly build). In that case you may turn them off with:
Once you have
cmake installed, you should be able to run the following
tar xf zipios.tar.gz mkdir BUILD cd BUILD cmake ../zipios make make install
The project comes with a build script (see
dev/build) that can be used
to run those steps. It will assume that you do not mind to have your
directory blown away and rebuilds everything. It also may setup various
flags on the command line to build the
DEBUG version, for example.
If you make changes to the source tree, you may re-run the make from the
source tree with something like:
make -C ../BUILD
For details about available installation configurations of cmake packages
refer to the CMake documentation online
make install installs the Zipios++ 2.1+ header files under
/usr/include/zipios/ and the library
You can choose another base path than
/usr/ using the following option
cmake command line:
The build script actually installs everything under
BUILD/dist so one
can verify the results and package them before shipping.
make also builds one test program. It can be found in the tests
directory in your
BUILD folder. It is one program that actually runs
many tests. (It is possible to run one test at a time, see the script
dev/check for an example.)
CMake comes with a graphical tool one can use under MS-Windows to
configure and generate a project supporting cmake. You will find more
information about cmake on their official website
The output of CMake can be projects and a solution for Visual Studio C++
or a set of
nmake files. cmake also supports other formats such as JOM.
Once the cmake output was generated, you can run your build tools and
then run the
INSTALL target. That will install the binary files in
It is strongly advise that your define the
variable before you install anything.
Please refer to the online documentation at
At this time, we generate the HTML and Latex version of the documentation.
It is pretty big, but we'll do our best to offer a .tar.gz of the
documentation on SourceForge.net each time we offer a new version of
If you have Doxygen installed, then the documentation will automatically
be generated. Note that under MS-Windows you may have to specify a
path for cmake to find Doxygen and properly generate the output. The
setup makes use of dot to generate images showing relationships between
classes and files.
Submit bug reports and patches via