| Index | index by Group | index by Distribution | index by Vendor | index by creation date | index by Name | Mirrors | Help | Search |
| Name: ccache | Distribution: openSUSE Tumbleweed |
| Version: 4.11.3 | Vendor: openSUSE |
| Release: 2.2 | Build date: Mon Aug 4 23:49:57 2025 |
| Group: Unspecified | Build host: reproducible |
| Size: 1185093 | Source RPM: ccache-4.11.3-2.2.src.rpm |
| Packager: http://bugs.opensuse.org | |
| Url: https://ccache.dev/ | |
| Summary: A Fast C/C++ Compiler Cache | |
ccache is a compiler cache. It speeds up recompilation by caching the result of previous compilations and detecting when the same compilation is being done again. Supported languages are C, C++, Objective-C and Objective-C++.
GPL-3.0-or-later
* Mon Aug 04 2025 Andreas Stieger <andreas.stieger@gmx.de>
- switch cpp-httplib requirement to cmake(httplib) as preferred and
supported by upstream
* Tue Jun 03 2025 Marius Grossu <marius.grossu@suse.com>
- Update to 4.11.3:
* Fixed handling of Apple Clang `-Xpreprocessor -fopenmp` options (regression in
ccache 4.10).
* Adapted unit test code to compile with doctest 2.4.12.
* Silenced benign compiler warning in the profiling_gcc_10+ suite.
* Reset signal mask and signal defaults when executing compiler. This fixes a
problem where interrupting the compilation (e.g. with Ctrl+C) wouldn't kill
the compiler (regression in ccache 4.11).
* Fixed erroneous log file locking on Windows (regression in ccache 4.11).
* Added ability to send arbitrary HTTP headers to HTTP storage.
* Added support for MSVC's `/TC` and `/TP` options.
* Made the `absolute_paths_in_stderr` feature also handle MSVC diagnostics
messages.
* Absolute paths in MSVC diagnostics messages are now rewritten to relative if
`base_dir` is in effect.
* Added support for NVCC's `--compile` option.
* `posix_spawn` is now used instead `execv` to execute the compiler on POSIX
systems.
* Added support for GCC's `-fprofile-prefix-path` option.
* Added `response_file_format` config option to control response file format.
* Added support for Clang `-frandomize-layout-seed-file` option.
* Improved `absolute_paths_in_stderr` to recognize more paths patterns.
* Added support for the clang-cl option `/showIncludes:user`.
* Added support for Intel's LLVM-based compilers `icx` and `icx-cl`.
* A stat call for `~/.ccache` is now avoided if `CCACHE_DIR` is set.
* Added Support for `.bat` and `.cmd` scripts as the compiler on Windows.
* Added support for Clang's `-f{debug,file}-compilation-dir` options.
* Added knowledge about Clang's `--offload-compress` option. This will avoid
errors when ccache runs the compiler in preprocessor mode.
* Added knowledge about Clang options `-fmodules-cache-path`,
`-fmodule-map-file` and `-fbuild-session-file`.
* Improved handling of paths internally, thereby fixing some issues on Windows
(for example when using non-ASCII paths).
* Fixed interpretation of non-ASCII paths in environment variables on Windows.
* Made sure that remote storage `keep-alive` can be overridden as expected.
* Fixed detection of compiler type for hard-linked generic compiler name.
* Fixed problems with matching a path with `base_dir` if either ends with a
slash.
* The `-fprofile-abs-path` option is now correctly passed through to GCC.
* Writes to the log file are now synchronized.
* Command line config options ending with "`/ccache`" are now handled properly.
* Made `--trim-method mtime` actually use mtime instead of atime. +
* Fixed a bug where ccache failed to rename raw files correctly for large caches
that have more than two cache levels.
* Instructed MSVC to accept UTF-8 characters in ccache's own source code.
* Fixed binary patching of `sysconfdir` for the prebuilt Linux binary.
* Added an `HTTP_STORAGE_BACKEND` build option to make it possible to turn off
the http storage backend.
* Fixed call to `sha256sum` on macOS.
* Made tests pass in year 2038.
* Refreshed some Dockerfiles.
* Tue May 27 2025 Marius Grossu <marius.grossu@suse.com>
- Added BuildRequires: gcc11-PIE
(bsc#1239963)
* Thu Oct 10 2024 Guillaume GARDET <guillaume.gardet@opensuse.org>
- Really run tests and Unit tests in %check
* Wed Oct 09 2024 Dirk Müller <dmueller@suse.com>
- avoid optional dependency on doctest on SLE16 and older
- unbundle cpp-httplib for new enough distributions
* Thu Sep 12 2024 Dirk Müller <dmueller@suse.com>
- use unversioned gcc also for SLE16
* Fri Jul 26 2024 Antonio Teixeira <antonio.teixeira@suse.com>
- Update to 4.10.2:
* Fixed detection of Fmt version 11 and newer.
* Made the “-fprofile-update=atomic” test only run when that
option is supported by the compiler.
* Made the color diagnostics tests work when the user running the
tests has a non-POSIX login shell.
- Remove fmt_fix.patch
* Already included in 4.10.2 upstream release
* Thu Jul 18 2024 Ana Guerrero <ana.guerrero@suse.com>
- Add patch to fix build with fmt 11: fmt_fix.patch
* Mon Jul 01 2024 Dirk Müller <dmueller@suse.com>
- update to 4.10.1:
* Fixed prefix command lookup from `PATH`.
* Fixed detection and usage of system blake3.
* Find CppHttplib named libhttplib.so as well.
* Removed Xcode assembly workaround for zstd.
* Added bundled subset of Fmt again for convenience.
* Removed no longer needed workaround when building downloaded
Zstd
* Wed Jun 26 2024 jslaby@suse.cz
- Update to version 4.10:
* chore: Update authors
* chore: Update NEWS
* ci: Disable Ubuntu 24.04 builds temporarily
* build: Fix zstd build for older CMake versions
* chore: Juggle some include headers
* build: Fix MSVC /Zc:preprocessor warning (#1461)
* chore: Remove unused headers (#1460)
* refactor: Use tl::expected for process_args return value
* chore: Fix some Cppcheck warnings
* chore: Remove obsolete os_path helper in test_storage_local_util
* chore: Improve cast and avoid repeating types (#1459)
* feat: Add argument handling for Emscripten's --em-config (#1458)
* feat: Add support for -fdump-ipa-clones (#1449)
* fix: Force run_second_cpp=true when generating profiling information
* fix: Hash "apparent real path" of object file when using -fprofile-arcs
* test: Improve verbose printing of test names
* refactor: Add more Hash::hash overloads
* docs: Improve documentation of gcno_cwd sloppiness
* fix: Handle -fdiagnostics-color for Clang again
* chore: Clean up comment and debug log string
* test: Improve printing of test suite
* chore: Fix typo
* Tue Feb 27 2024 ming li <mli@suse.com>
- Update to 4.9.1:
* Improved detection of bad remote storage URLs gracefully. This also fixes
crashes seen in ccache’s own test suite.
* Made caching completely disabled when modification of a source or include
file is detected during ccache invocation. Previously this was only done for the direct mode.
* Fixed an MSVC crash when using /Zi with many concurrent compilations.
* Fixed a crash when -arch is the last compiler option.
- Drop no longer needed fix2038.patch
* Thu Jan 18 2024 Danilo Spinella <danilo.spinella@suse.com>
- Update to 4.9:
* Made ignore_options/CCACHE_IGNOREOPTIONS also skip the option from special
processing, similar to how --ccache-skip works.
* Added support for expanding environment variables references in all
configuration options.
* MSVC options /Fd, /FS and /MP are no longer included in the input hash.
* Made ccache terminate an ongoing compiler subprocess when terminated on all
platforms, not only on Unix.
* Added support for multiple -Xarch_* arguments matching -arch.
* Added a debug_level/CCACHE_DEBUGLEVEL configuration option, making it
possible to tell ccache to only write a log file for each compilation, not
other debug files.
* Added max_cache_size_kibibyte and max_files_in_cache fields in output from
ccache --print-stats.
* Paths after -Xclang -include are now rewritten to relative paths if
base_dir/CCACHE_BASEDIR is in effect.
* Added support for clang --analyze.
* Improved processing of input file arguments.
* Added support for st_Xtimensec fields in struct stat, thus improving
behavior on some BSDs when using newly created include files.
* Added support for the undocumented GCC/Clang option --include.
* Ccache now exits more gracefully on invalid sharded remote storage URLs.
* Made ccache bail out on too hard options -fmodules-ts, -fmodule-header,
- wrapper and -Xclang -ast-dump.
* Stopped relying on the st_blocks field in struct stat since it cannot be
trusted for filesystems such as ZFS that do transparent compression or
deduplication and adjust st_blocks some time in the future.
* Fixed crash on Windows for paths with only a drive letter.
* Made handling of Clang config options (such as --config-system-dir) more
robust.
* Fixed compiler type detection when compiler is a symlink called “clang-cl”.
* Made sure to use MSVC logic for clang-cl when handling a precompiled
header.
* Generalized expansion of remote storage URLs with sharding, for instance
making it possible to shard on port number.
* Upgraded to xxHash 0.8.2, thereby fixing an error when compiling ccache
with -Og.
* Fixed sign-compare warning in src/InodeCache.cpp on FreeBSD.
* Fixed the CMake option STATIC_LINK on Linux/macOS.
* Added the CMake option OFFLINE, defaulting to the value of the standard
variable FETCHCONTENT_FULLY_DISCONNECTED (which is OFF by default), to
disable downloading anything from the internet.
* Fixed warnings about unused functions on new MSVC versions.
* Made sure to set both C and C++ CMake compiler launcher variables if either
is set.
* The manual now mentions that system_headers sloppiness is not supported for
MSVC.
* Fixed regex in direct.bash.
- Fix SLE build by using gcc11 and disable hiredis dependency
* Sat Oct 28 2023 Andreas Stieger <andreas.stieger@gmx.de>
- update to 4.8.3
* Fixed handling of NVCC -Xcompiler and --Werror options
* Fixed bookkeeping of files when hard linking or file cloning is
enabled
* Made a workaround for GCC 12.3 bug 109241 where GCC fails to
compile ccache.
* Upgraded to xxHash 0.8.2, which fixes compilation of ccache
with GCC 12 and -Og.
- enable redis backend
* Mon Jun 12 2023 Dirk Müller <dmueller@suse.com>
- update to 4.8.2:
* Ccache no longer passes `-v` to the preprocessor. This
improves preprocessor mode hit rate when `-v` is on the
compiler command line.
* Made `--trim-max-size` accept 0 for no limit. +
* Clarified `--evict-older-than` semantics.
* Fixed typo in "`Directory is not hashed if using -gz`" test.
* Fri May 19 2023 Dirk Müller <dmueller@suse.com>
- update to 4.8.1:
* Fixed an issue with the depend mode in combination with `--`
on the command line for Clang-based compilers. +
* Improved knowledge about MSVC debug flags so that non-debug
`/Z*` options are once again supported. +
* Ccache no longer treats `/Zi` as unsupported for clang-cl.
* Made the output format of `ccache -k max_size` parsable by
ccache itself. +
* Added a remote file storage example with URL-encoded spaces.
* Mon Mar 13 2023 Dirk Müller <dmueller@suse.com>
- update to 4.8:
* Improved the automatic cache cleanup mechanism. Automatic
cleanups are now performed on 1/256 of the cache instead of
1/16, thus making them much quicker (but naturally more frequent).
Cleanups are coordinated between ccache processes so that at most
one process will perform cleanup at a time. Also, the actual cache
size will stay very close to the configured maximum size instead of
staying around 90% as was the case before.
* Added support for setting per-compilation configuration options on
the command line. Example: `ccache hash_dir=false gcc -c example.c`
* Made it possible to disable ccache for a certain source code file
by embedding the string `ccache:disable` in a comment near the top
of the file.
* Made ccache understand that an MSVC `/Z7` option overrides an
earlier `/Z*` option and thus is not too hard to cache.
* Added a `--recompress-threads` command line option for selecting
the number of CPU threads to use when recompressing the local cache.
* Added `--trim-recompress` and `--trim-recompress-threads` command
line options for recompressing file-based remote storage.
* Added tmpfs, ufs and zfs to the list of supported filesystems on
macOS and BSDs for the inode cache.
* Improved progress bars for clean/clear/evict-style operations.
* Improved printing of cache sizes in various outputs.
* Activate debug logging for command mode options like `--cleanup`.
* Added support for `-Wp,-U<macro>` in the direct mode.
* Added quotes around arguments with space in logged command lines.
* Added logging of executed command lines on Windows. +
* Made sure not to update the stats file when there are no incremented
counters.
* Improved actual disk size calculation on Windows.
* Bugfixes
* Mon Dec 05 2022 Dirk Müller <dmueller@suse.com>
- update to 4.7.4:
* Fixed an inode cache race condition.
* The default temporary directory is now `$XDG_RUNTIME_DIR/ccache-tmp`
instead of a hardcoded `/run/user/<UID>/ccache-tmp`. If `XDG_RUNTIME_DIR`
is not set, `<cache_dir>/tmp` is used. This avoids creating `/run/user/<UID>`
on systems that don't have it if compiling as root.
* Added a fallback in case `posix_fallocate` returns `EINVAL` when
creating the
inode cache file.
* Connection timeout for an HTTP connection is now reported as a timeout
instead
* Temporary files found in the cache are no longer counted in
`--show-compression`.
* Removed duplicate magic header in output from `--inspect`.
* Ccache now properly waits for all recompression jobs to finish when
there is no `f` subdirectory in the cache.
* Documentation improvements
* Thu Nov 17 2022 Danilo Spinella <danilo.spinella@suse.com>
- Update to 4.7.3
You can find the release notes here:
* https://github.com/ccache/ccache/blob/master/doc/NEWS.adoc#ccache-473
* https://github.com/ccache/ccache/blob/master/doc/NEWS.adoc#ccache-472
* https://github.com/ccache/ccache/blob/master/doc/NEWS.adoc#ccache-471
* https://github.com/ccache/ccache/blob/master/doc/NEWS.adoc#ccache-47
* Sun Sep 18 2022 Dirk Müller <dmueller@suse.com>
- update to 4.6.3:
* Fixed detection of PCH header for concatenated `-include` option (e.g.,
`-includepch.h` instead of `-include pch.h`).
* Fixed build with musl when using GCC 12.
* Disabled the `"Failure to write output file"` when running on a filesystem
that doesn't support read-only directories.
* Fixed a race condition that could lead to a crash if a file in the cache is
removed with unlucky timing, e.g. by another ccache process doing cache
cleanup.
* Dependency file rewriting will now always be performed if
`base_dir`/`CCACHE_BASEDIR` is active. This fixes a problem with the
dependency file content when Clang is used with `-fsanitize=address`.
* Fixed handling of error condition for `--hash-file`/`--checksum-file`.
* Made sure to enable the inode cache only if subsecond `stat` timestamps are
available.
* Added a work-around for a Clang bug when writing to a full NFS file system.
* Made failure writing to the output file increment the "`bad output file`"
counter instead of "`cache miss`".
* Fixed false positive cache hits for code constructions similar to
`__asm__(".incbin" " \"file\"")`.
* Fixed false success for `-fcolor-diagnostics` probe with GCC. A side effect of
this is that a compiler type that ccache can't identify from the compiler name
(such as `/usr/bin/cc` where `cc` is not a symlink) from now on won't produce
color diagnostics when used via ccache even if the compiler actually is GCC or
Clang.
* More cases of invalid secondary storage URLs are now handled gracefully.
* Fixed the display of maximum cache size in `ccache -s` if it's 0 (=
unlimited).
* Removed AsciiDoc markup from help text of `--trim-dir`.
* The temporary directory is now cleaned up properly even if it's left
unconfigured.
* Made cleanup of the temporary directory not rely a directory timestamp.
* Made sure to retain mtime/atime when recompressing cache files with
`-X`/`--recompress`.
* The correct umask is now used when populating the primary cache from a
secondary cache.
* Fixed creation of temporary files on file systems that don't support hard
links (such as FAT32).
* Added knowledge about `-Wa,...=file` so that ccache then falls back to running
the real compiler.
* Corrected handling of space in paths when using response file on Windows.
* Fixed crash due to empty include filename in preprocessor output generated by
`f2c`.
* Tue Aug 30 2022 Bernhard Wiedemann <bwiedemann@suse.com>
- Add fix2038.patch to make tests pass after 2038
* Sat Jun 04 2022 Dirk Müller <dmueller@suse.com>
- update to 4.6.1:
* Added support for passing a directory to the MSVC `/Fo` option.
* Added knowledge about the `-imsvc` compiler option.
* Added knowledge about the `-z` linker option.
* Improved handling of `.gcno` files in combination with absolute input file
paths.
* Adapted to changes in GCC 9+ `.gcno` files, which contain the current working
directory, by including said directory in the hash. You can opt out of this by
enabling "`gcno_cwd sloppiness`".
* A preexisting object file is no longer considered when using
`-fsyntax-only`.
* Authenticate with Redis before database selection.
* Don't exit with an error on failure reading a cached file.
* Bail out on too hard MSVC environment variables `CL` and `+_CL_+`.
* Only use `/run/user/<UID>/ccache-tmp` as the temporary directory if it's
writable.
* Fixed handling of the final newline in cached standard output from the
compiler.
* Fixed a bug related to distcc markers in standard error output.
* Paths to `base_dir` are now properly normalized on Windows.
* Fixed handling of MSVC `/Fp` and `/Yu` options with concatenated path.
* Fixed "`Multiple precompiled headers used`" error if MSVC `/Yu` option is used
after `/Fp`.
* Check for short reads when reading strings in result/manifest files.
* Log expanded secondary storage URL in put/remove.
* Fixed logging of statistics counters with value higher than one in debug log
and stats log.
* Avoid incorrect error log message for Redis write operations in `reshare`
mode.
* Support Redis URL without host (meaning localhost).
* Sun Apr 03 2022 Andreas Stieger <andreas.stieger@gmx.de>
- ccache 4.6:
* Add an option to use a bearer token with the HTTP backend.
* Add support for caching standard output from the compiler.
* Add a new --inspect option for debugging cache entries,
replacing the previous --dump-manifest and --dump-result
options
* Enable HTTP keep-alive by default
* Improve detection of the .incbin assembler directive to reduce
false positives
* Ccache now verifies that /run/user/<UID>/ccache-tmp is writable
before using it for temporary files
* Fix statistics output for secondary storage
* Fix a problem when copying a cache entry from secondary storage
into an empty primary storage.
* The process umask is now respected when making hard linked files
read only
* A forced recache is no longer considered a “direct cache miss”
* Documentation updates
- drop xxhash-avoid-armv6-unaligned-access.patch, included
/usr/bin/ccache /usr/lib64/ccache /usr/lib64/ccache/c++ /usr/lib64/ccache/cc /usr/lib64/ccache/clang /usr/lib64/ccache/clang++ /usr/lib64/ccache/g++ /usr/lib64/ccache/gcc /usr/lib64/ccache/gcc-objc /usr/lib64/ccache/gfortran /usr/lib64/ccache/nvcc /usr/share/doc/packages/ccache /usr/share/doc/packages/ccache/AUTHORS.adoc /usr/share/doc/packages/ccache/MANUAL.adoc /usr/share/doc/packages/ccache/NEWS.adoc /usr/share/doc/packages/ccache/README.md /usr/share/licenses/ccache /usr/share/licenses/ccache/GPL-3.0.txt /usr/share/licenses/ccache/LICENSE.adoc /usr/share/man/man1/ccache.1.gz
Generated by rpm2html 1.8.1
Fabrice Bellet, Thu Oct 23 23:06:42 2025