This directory contains utilities needed to support parallel dex compilation
of Android applications.

The DexMapper utility maps an applications classes (given in one or more input jar files),
to one or more output jars, that may then be compiled separately.

The DexReducer utility extracts .dex files from one or more archives, and package them in a
single output archive, renaming entries to: classes.dex, classes2.dex, ...

These utilities uses a low-level zip-file manipulation library contained in this package.
The library is optimized for serial parsing of zip archives and tasks such as copying entries
to one or more output archives.It employs direct byte buffers, to avoid copying file data to
the java heap, and allowing fast copies from input to output. Output is asynchronous, for optimal
performance when running on non-memory-based file systems.

WARNING: This library was designed for creating build tools needed to support parallel
dex compilation of Android applications, related functions. While the library provides
fairly general facilities for processing zip files, the API is still immature, and
subject to change.

Defined targets
---------------------------------------------------
blaze build java/com/google/devtools/build/android/ziputils:ziputils_lib
blaze build java/com/google/devtools/build/android/ziputils:mapper
blaze build java/com/google/devtools/build/android/ziputils:reducer
blaze test javatests/com/google/devtools/build/android/ziputils:all_tests
