/**
* Sets the path to a directory to use as a cache storage for incremental build.
+ * Setting this activates caching.
*
* \since LTO_API_VERSION=18
*/
/**
* Sets the cache pruning interval (in seconds). A negative value disable the
- * pruning (default).
+ * pruning. An unspecified default value will be applied.
*
* \since LTO_API_VERSION=18
*/
* Sets the maximum cache size that can be persistent across build, in terms of
* percentage of the available space on the the disk. Set to 100 to indicate
* no limit, 50 to indicate that the cache size will not be left over half the
- * available space. A value over 100 will be reduced to 100.
+ * available space. A value over 100 will be reduced to 100. An unspecified
+ * default value will be applied.
*
* The formula looks like:
* AvailableSpace = FreeSpace + ExistingCacheSize
thinlto_code_gen_t cg, unsigned percentage);
/**
- * Sets the expiration (in seconds) for an entry in the cache.
+ * Sets the expiration (in seconds) for an entry in the cache. An unspecified
+ * default value will be applied.
*
* \since LTO_API_VERSION=18
*/
*/
struct CachingOptions {
- std::string Path;
- int PruningInterval = -1; // seconds, -1 to disable pruning
- unsigned int Expiration = 0; // seconds.
- unsigned MaxPercentageOfAvailableSpace = 0; // percentage.
+ std::string Path; // Path to the cache, empty to disable.
+ int PruningInterval = 1200; // seconds, -1 to disable pruning.
+ unsigned int Expiration = 7 * 24 * 3600; // seconds (1w default).
+ unsigned MaxPercentageOfAvailableSpace = 75; // percentage.
};
/// Provide a path to a directory where to store the cached files for