ccache for Linux Publisher's description
from Andrew Tridgell
ccache is a compiler cache.
ccache is a compiler cache. It speeds up recompilation by caching previous compilations and detecting when the same compilation is being done again. Supported languages are C, C++, Objective-C and Objective-C++.
* Keeps statistics on hits/misses.
* Automatic cache size management.
* Can cache compilations that generate warnings.
* Easy installation.
* Low overhead.
* Optionally uses hard links where possible to avoid copies.
What's New in This Release:New features and improvements
* Added support for hashing the output of a custom command (e.g. $compiler --version) to identify the compiler instead of stat-ing or hashing the compiler binary. This can improve robustness when the compiler (as seen by ccache) actually isnвЂ™t the real compiler but another compiler wrapper.
* Added support for caching compilations that use precompiled headers. (See the manual for important instructions regarding this.)
* Locking of the files containing statistics counters is now done using symlinks instead of POSIX locks. This should make ccache behave a lot better on file systems where POSIX locks are slow or broken (e.g. NFS on some systems).
* Manifest files are now updated without the need of taking locks.
* Updates of statistics counters are now always done in one of the sub-level statistics files. This reduces lock contention, which especially improves performance on slow NFS mounts.
* Reading and writing of statistics counters has been made forward-compatible (unknown counters are retained).
* Files are now read without using mmap(). This has two benefits: itвЂ™s more robust against file changes during reading and it improves performance on poor systems where mmap() doesnвЂ™t use the disk cache.
* Added .cp and .CP as known C++ suffixes.
* Improved logging.
* Added -install_name as an option known to take an argument. (This improves statistics when using the Darwin linker.)
* Non-fatal error messages are now never printed to stderr but logged instead.
* Fixed a bug affecting failing commands when --ccache-skip is used.
* Made --ccache-skip work for all options.
* EINTR is now handled correctly.
* Work on porting ccache to win32 (native), mostly done by Ramiro Polla. The port is not yet finished, but will hopefully be complete in some subsequent release.
* Added a --nostats flag to the performance benchmark program.
* Made the performance benchmark program more accurate when measuring cache hits.
* Added a new test framework for unit tests written in C.
* Got rid of configure-dev; dev mode is now given by dev.mk.in presence.
* Improved documentation on how to combine ccache with other compiler wrappers (like distcc).
* New LICENSE.txt file with licensing and copyright details about bundled source code.
* New AUTHORS.txt file with a list of ccache contributors.
* New HACKING.txt file with some notes about ccache code conventions.
System Requirements:No special requirements.
Program Release Status: Minor Update
Program Install Support: Install and Uninstall