b9ab400909
- update to 4.5.1: * Fixed entry_size field for result entries. * The actual compression level is now once again stored in the cache entry header. * Corrected error handling for unconstructible secondary storage backends. For instance, this avoids a crash when a Redis server can't be reached. * Made various improvements to the cache entry format. Among other things, the header now contains a creation timestamp and a note of the ccache version used to create the entry. The cache entry checksum has also been upgraded to use 128-bit XXH3 instead 64-bit XXH3. * Made HTTP keep-alive configurable, defaulting to off for now. * Added support for rewriting absolute path to Clang option --gcc-toolchain. * Fixed a problem with special characters in the user info part of URLs for HTTP storage. * The hard link and file clone features are now disabled when secondary storage is used since they only work for the local primary cache.
Dirk Mueller2021-12-02 22:00:57 +00:00
c202c906fa
- update to 4.5.1: * Fixed entry_size field for result entries. * The actual compression level is now once again stored in the cache entry header. * Corrected error handling for unconstructible secondary storage backends. For instance, this avoids a crash when a Redis server can't be reached. * Made various improvements to the cache entry format. Among other things, the header now contains a creation timestamp and a note of the ccache version used to create the entry. The cache entry checksum has also been upgraded to use 128-bit XXH3 instead 64-bit XXH3. * Made HTTP keep-alive configurable, defaulting to off for now. * Added support for rewriting absolute path to Clang option --gcc-toolchain. * Fixed a problem with special characters in the user info part of URLs for HTTP storage. * The hard link and file clone features are now disabled when secondary storage is used since they only work for the local primary cache.
Dirk Mueller2021-12-02 22:00:57 +00:00
adde36de56
Accepting request 935151 from home:Guillaume_G:branches:devel:tools:building
Martin Pluskal2021-12-02 13:17:49 +00:00
6f941e3783
Accepting request 935151 from home:Guillaume_G:branches:devel:tools:building
Martin Pluskal2021-12-02 13:17:49 +00:00
58c8cdccdd
- Update to version 4.2.1: * Ccache now only dup2s stderr into $UNCACHED_ERR_FD for calls to the preprocessor/compiler. This works around a complex bug in interaction with GNU Make, LTO linking and the Linux PTY driver. * Fixed detection of color diagnostics usage when using -Xclang -fcolordiagnostics options. * The -frecord-gcc-switches compiler option is now handled correctly to avoid false positive cache hits. * Made it possible for per-compilation debug log files to be written in most argument processing error scenarios. Previously, ccache would only write debug log files if the argument processing phase was successful. * Made ccache bail out on too hard Clang option -gen-cdb-fragment-path. * The run_second_cpp made is now enforced on macOS if -g is used since newer Clang versions on macOS produce different debug information when compiling preprocessed code. * Made ccache only reject -f(no-)color-diagnostics for a known GCC compiler. This fixes a problem when using said option with clang++ on macOS. * Build configuration scripts now probe for atomic increment as well. This fixes a linking error on Sparc. * An existing CMake log message level is now used when warning about not finding asciidoc. * Fixed assertion in the "Debug option" test. * Upgraded to doctest 2.4.6. This fixes a build error with glibc >= 2.34.
Martin Pluskal2021-04-06 08:23:19 +00:00
6ea659e20d
- Update to version 4.2.1: * Ccache now only dup2s stderr into $UNCACHED_ERR_FD for calls to the preprocessor/compiler. This works around a complex bug in interaction with GNU Make, LTO linking and the Linux PTY driver. * Fixed detection of color diagnostics usage when using -Xclang -fcolordiagnostics options. * The -frecord-gcc-switches compiler option is now handled correctly to avoid false positive cache hits. * Made it possible for per-compilation debug log files to be written in most argument processing error scenarios. Previously, ccache would only write debug log files if the argument processing phase was successful. * Made ccache bail out on too hard Clang option -gen-cdb-fragment-path. * The run_second_cpp made is now enforced on macOS if -g is used since newer Clang versions on macOS produce different debug information when compiling preprocessed code. * Made ccache only reject -f(no-)color-diagnostics for a known GCC compiler. This fixes a problem when using said option with clang++ on macOS. * Build configuration scripts now probe for atomic increment as well. This fixes a linking error on Sparc. * An existing CMake log message level is now used when warning about not finding asciidoc. * Fixed assertion in the "Debug option" test. * Upgraded to doctest 2.4.6. This fixes a build error with glibc >= 2.34.
Martin Pluskal2021-04-06 08:23:19 +00:00
e237c1cd99
- Update to version 4.2: * Improved calculation of relative paths when using base_dir to also consider canonical paths (i.e. paths with dereferenced symlinks) as candidates. * Added a debug_dir (CCACHE_DEBUGDIR) configuration setting for specifying a directory for files written in debug mode. * Added support for compiler option -x cuda, understood by Clang. * The value of the SOURCE_DATE_EPOCH variable is now only hashed if it potentially affects the output from ccache. This means that ccache now (like before version 4.0) will be able produce cache hits for source code that doesn’t contain __DATE__ or __TIME__ macros regardless of the value of SOURCE_DATE_EPOCH.
Martin Pluskal2021-02-04 11:16:29 +00:00
11348f174a
- Update to version 4.2: * Improved calculation of relative paths when using base_dir to also consider canonical paths (i.e. paths with dereferenced symlinks) as candidates. * Added a debug_dir (CCACHE_DEBUGDIR) configuration setting for specifying a directory for files written in debug mode. * Added support for compiler option -x cuda, understood by Clang. * The value of the SOURCE_DATE_EPOCH variable is now only hashed if it potentially affects the output from ccache. This means that ccache now (like before version 4.0) will be able produce cache hits for source code that doesn’t contain __DATE__ or __TIME__ macros regardless of the value of SOURCE_DATE_EPOCH.
Martin Pluskal2021-02-04 11:16:29 +00:00
6ad3593cee
Accepting request 850291 from home:paulfee:branches:devel:tools:building
Martin Pluskal2020-11-24 07:00:36 +00:00
764abdc954
Accepting request 850291 from home:paulfee:branches:devel:tools:building
Martin Pluskal2020-11-24 07:00:36 +00:00
ae74d12dc2
- Update to version 4.0: * Changed the default cache directory location to follow the XDG base directory specification. * Changed compression algorithm from Deflate (zlib) to Zstandard, enabled by default. * Added functionality for recompressing cache content with a higher compression level. * Changed hash algorithm from MD4 to BLAKE3. * Added checksumming with XXH3 to detect data corruption. * Improved cache directory structure. * Added support for using file cloning (AKA “reflinks”). * Added an experimental “inode cache” for file hashes. - Changes for version 3.7.12: * Coverage files (.gcno) produced by GCC 9+ when using -fprofile-dir=dir are now handled gracefully by falling back to running the compiler. * Fixed writing to log file larger than 2 GiB when running ccache compiled in 32-bit mode. - Drop no longer applying patch: * 0001-Add-another-cleanup-mechanism-evict-older-than.patch
Martin Pluskal2020-11-04 08:12:50 +00:00
387ccbb54a
- Update to version 4.0: * Changed the default cache directory location to follow the XDG base directory specification. * Changed compression algorithm from Deflate (zlib) to Zstandard, enabled by default. * Added functionality for recompressing cache content with a higher compression level. * Changed hash algorithm from MD4 to BLAKE3. * Added checksumming with XXH3 to detect data corruption. * Improved cache directory structure. * Added support for using file cloning (AKA “reflinks”). * Added an experimental “inode cache” for file hashes. - Changes for version 3.7.12: * Coverage files (.gcno) produced by GCC 9+ when using -fprofile-dir=dir are now handled gracefully by falling back to running the compiler. * Fixed writing to log file larger than 2 GiB when running ccache compiled in 32-bit mode. - Drop no longer applying patch: * 0001-Add-another-cleanup-mechanism-evict-older-than.patch
Martin Pluskal2020-11-04 08:12:50 +00:00
214a7312b5
Accepting request 816388 from home:sjamgade:branches:science:machinelearning
Martin Pluskal2020-06-22 13:58:43 +00:00
474517d68f
Accepting request 816388 from home:sjamgade:branches:science:machinelearning
Martin Pluskal2020-06-22 13:58:43 +00:00
43a6569b4d
- Added patch for another cleanup mechanism based on age of file: * 0001-Add-another-cleanup-mechanism-evict-older-than.patch
Martin Pluskal2020-06-22 12:57:26 +00:00
262d0a3622
- Added patch for another cleanup mechanism based on age of file: * 0001-Add-another-cleanup-mechanism-evict-older-than.patch
Martin Pluskal2020-06-22 12:57:26 +00:00
f9a61759fe
Accepting request 816339 from home:sjamgade:branches:science:machinelearning
Martin Pluskal2020-06-22 12:51:49 +00:00
e35b94066a
Accepting request 816339 from home:sjamgade:branches:science:machinelearning
Martin Pluskal2020-06-22 12:51:49 +00:00
1994e41790
- Update to version 3.7.9: * Fixed replacing of /dev/null when building as root with hard link mode enabled and using -o /dev/null. * Removed incorrect assertion resulting in “ccache: error: Internal error in format” when using -fdebug-prefix-map=X= with X equal to $PWD. * Improved CUDA/NVCC support: Recognize -dc and -x cu options. * Improved name of temporary file used in NFS-safe unlink. - Changes for version 3.7.8: * Use $PWD instead of the real CWD (current working directory) when checking for CWD in preprocessed output. This fixes a problem when $PWD includes a symlink part and the user has set hash_dir = false. * Rewrote the Windows version of the lockfile routines. This should mitigate several problems with the old implementation. * If localtime_r fails the epoch time is now logged instead of garbage. * Improved error message when a boolean environment variable has an invalid value. * Improved the regression fix in ccache 3.7.5 related to not passing compilation-only options to the preprocessor. * ccache’s PCH test suite now skips running the tests if it detects broken PCH compiler support. * Fixed unit test failure on Windows. * Fixed “stringop-truncation” build warning on Windows. * Improved “x_rename” implementation on Windows. * Improved removal of temporary file when rewriting absolute paths to relative in the dependency file. * Clarified “include_file_ctime sloppiness” in the Performance section in the manual.
Martin Pluskal2020-04-03 07:50:59 +00:00
da36e3f7ae
- Update to version 3.7.9: * Fixed replacing of /dev/null when building as root with hard link mode enabled and using -o /dev/null. * Removed incorrect assertion resulting in “ccache: error: Internal error in format” when using -fdebug-prefix-map=X= with X equal to $PWD. * Improved CUDA/NVCC support: Recognize -dc and -x cu options. * Improved name of temporary file used in NFS-safe unlink. - Changes for version 3.7.8: * Use $PWD instead of the real CWD (current working directory) when checking for CWD in preprocessed output. This fixes a problem when $PWD includes a symlink part and the user has set hash_dir = false. * Rewrote the Windows version of the lockfile routines. This should mitigate several problems with the old implementation. * If localtime_r fails the epoch time is now logged instead of garbage. * Improved error message when a boolean environment variable has an invalid value. * Improved the regression fix in ccache 3.7.5 related to not passing compilation-only options to the preprocessor. * ccache’s PCH test suite now skips running the tests if it detects broken PCH compiler support. * Fixed unit test failure on Windows. * Fixed “stringop-truncation” build warning on Windows. * Improved “x_rename” implementation on Windows. * Improved removal of temporary file when rewriting absolute paths to relative in the dependency file. * Clarified “include_file_ctime sloppiness” in the Performance section in the manual.
Martin Pluskal2020-04-03 07:50:59 +00:00
5aa504bc37
Accepting request 770545 from devel:tools:building
Oliver Kurz
2020-02-14 15:29:57 +00:00
52eac206d1
Accepting request 770545 from devel:tools:building
Oliver Kurz
2020-02-14 15:29:57 +00:00
c2760b825b
- Update to version 3.7.7: * Fixed a bug related to object file location in the dependency file (if using -MD or -MMD but not -MF and the build directory is not the same as the source directory then the object file location in the .d file would become incorrect). This fixes regression in ccache 3.7.5 introduced by the bug fix related to EDG-based compilers. Note that this removes support for EDG-based compilers again. (A better fix for this is planned for ccache 4.0.) * Removed the unify mode since it has bugs and shortcomings that are non-trivial or impossible to fix: it doesn’t work with the direct mode, it doesn’t handle C++ raw strings correctly, it can give false cache hits for .incbin directives, it’s turned off when using -g and it can make line numbers in warning messages and __LINE__ macros incorrect. mtime and ctime values are now stored in the manifest files only when sloppy_file_stat is set. This avoids adding superfluous manifest file entries on direct mode cache misses. * A “Result:” line is now always printed to the log. * The “cache miss” statistics counter will now be updated for read-only cache misses, making it consistent with the cache hit case.
Martin Pluskal2020-02-06 11:57:18 +00:00
b96e1b0fd8
- Update to version 3.7.7: * Fixed a bug related to object file location in the dependency file (if using -MD or -MMD but not -MF and the build directory is not the same as the source directory then the object file location in the .d file would become incorrect). This fixes regression in ccache 3.7.5 introduced by the bug fix related to EDG-based compilers. Note that this removes support for EDG-based compilers again. (A better fix for this is planned for ccache 4.0.) * Removed the unify mode since it has bugs and shortcomings that are non-trivial or impossible to fix: it doesn’t work with the direct mode, it doesn’t handle C++ raw strings correctly, it can give false cache hits for .incbin directives, it’s turned off when using -g and it can make line numbers in warning messages and __LINE__ macros incorrect. mtime and ctime values are now stored in the manifest files only when sloppy_file_stat is set. This avoids adding superfluous manifest file entries on direct mode cache misses. * A “Result:” line is now always printed to the log. * The “cache miss” statistics counter will now be updated for read-only cache misses, making it consistent with the cache hit case.
Martin Pluskal2020-02-06 11:57:18 +00:00
ceb87773ec
- Update to version 3.7.6: * The opt-in “file_macro sloppiness” mode has been removed so that the input file path now is always included in the direct mode hash. This fixes a bug that could result in false cache hits in an edge case when “file_macro sloppiness” is enabled and several identical source files include a relative header file with the same name but in different directories. * Statistics files are no longer lost when the filesystem of the cache is full. * Bail out on too hard Clang option -MJarg (in addition to the previous bailout of -MJ arg). * Properly handle color diagnostics in the depend mode as well.
Martin Pluskal2019-12-18 09:32:21 +00:00
099d4ee00e
- Update to version 3.7.6: * The opt-in “file_macro sloppiness” mode has been removed so that the input file path now is always included in the direct mode hash. This fixes a bug that could result in false cache hits in an edge case when “file_macro sloppiness” is enabled and several identical source files include a relative header file with the same name but in different directories. * Statistics files are no longer lost when the filesystem of the cache is full. * Bail out on too hard Clang option -MJarg (in addition to the previous bailout of -MJ arg). * Properly handle color diagnostics in the depend mode as well.
Martin Pluskal2019-12-18 09:32:21 +00:00
5dda414960
- Update to version 3.7.5: * Added support for -MF=arg (with an extra equal sign) as understood by EDG-based compilers. * Fixed a regression in 3.7.2 that could result in a warning message instead of an error in an edge case related to usage of “-Werror”. * An implicit -MQ is now passed to the preprocessor only if the object file extension is non-standard. This will make it easier to use EDG-based compilers (e.g. GHS) which don’t understand -MQ. (This is a bug fix of the corresponding improvement implemented in ccache 3.4.) * ccache now falls back to running the real compiler instead of failing fataly if an internal temporary file is missing after compilation. * Fixed a crash if localtime returns null pointer in localtime_r replacement. * Fixed header file dependency tracking when building ccache itself. * Fixed warning during configure in out-of-tree build in developer mode.
Martin Pluskal2019-11-05 08:15:25 +00:00
5d6c8b546a
- Update to version 3.7.5: * Added support for -MF=arg (with an extra equal sign) as understood by EDG-based compilers. * Fixed a regression in 3.7.2 that could result in a warning message instead of an error in an edge case related to usage of “-Werror”. * An implicit -MQ is now passed to the preprocessor only if the object file extension is non-standard. This will make it easier to use EDG-based compilers (e.g. GHS) which don’t understand -MQ. (This is a bug fix of the corresponding improvement implemented in ccache 3.4.) * ccache now falls back to running the real compiler instead of failing fataly if an internal temporary file is missing after compilation. * Fixed a crash if localtime returns null pointer in localtime_r replacement. * Fixed header file dependency tracking when building ccache itself. * Fixed warning during configure in out-of-tree build in developer mode.
Martin Pluskal2019-11-05 08:15:25 +00:00
0ff8d178df
- Update to version 3.7.4: * Added support for the -gz[=type] compiler option (previously ccache would think that “-gz” alone would enable debug information, thus potentially including the current directory in the hash). * Added support for converting paths like “/c/users/...” into relative paths on Windows.
Martin Pluskal2019-10-16 07:22:35 +00:00
2fba5fd753
- Update to version 3.7.4: * Added support for the -gz[=type] compiler option (previously ccache would think that “-gz” alone would enable debug information, thus potentially including the current directory in the hash). * Added support for converting paths like “/c/users/...” into relative paths on Windows.
Martin Pluskal2019-10-16 07:22:35 +00:00
99de669921
- Update to version 3.7.3: * The cache size (which is counted in “used disk blocks”) is now correct on filesystems that use more or less disk blocks than conventional filesystems, e.g. ecryptfs or btrfs/zfs with transparent compression. This also fixes a related problem with ccache’s own test suite when run on such file systems. Fixed a regression in 3.7.2 when using the compiler option “-Werror” and then “-Wno-error” later on the command line. - Changes n version 3.7.2: * The compiler option -gdwarf* no longer forces “run_second_cpp = true”. * Added verification that the value passed to the -o/--set-config option is valid. * Fixed detection of precompiled headers in the depend mode. * Bail out on too hard Clang option -ftime-trace. * ccache now updates the correct stats file when adding/updating manifest files. This bug previously made the file and size statistics counters incorrect over time. * Fixed warnings from Clang about unused arguments during preprocessing. * Unknown manifest versions are now handled gracefully in --dump-manifest. * Fixed make check with “funny” locales.
Martin Pluskal2019-08-26 09:02:33 +00:00
b0922e9c8f
- Update to version 3.7.3: * The cache size (which is counted in “used disk blocks”) is now correct on filesystems that use more or less disk blocks than conventional filesystems, e.g. ecryptfs or btrfs/zfs with transparent compression. This also fixes a related problem with ccache’s own test suite when run on such file systems. Fixed a regression in 3.7.2 when using the compiler option “-Werror” and then “-Wno-error” later on the command line. - Changes n version 3.7.2: * The compiler option -gdwarf* no longer forces “run_second_cpp = true”. * Added verification that the value passed to the -o/--set-config option is valid. * Fixed detection of precompiled headers in the depend mode. * Bail out on too hard Clang option -ftime-trace. * ccache now updates the correct stats file when adding/updating manifest files. This bug previously made the file and size statistics counters incorrect over time. * Fixed warnings from Clang about unused arguments during preprocessing. * Unknown manifest versions are now handled gracefully in --dump-manifest. * Fixed make check with “funny” locales.
Martin Pluskal2019-08-26 09:02:33 +00:00