The NetBSD Project

CVS log for pkgsrc/devel/ccache/Makefile

[BACK] Up to [cvs.NetBSD.org] / pkgsrc / devel / ccache

Request diff between arbitrary revisions


Keyword substitution: kv
Default branch: MAIN


Revision 1.84: download - view: text, markup, annotated - select for diffs
Sun Aug 25 06:18:32 2024 UTC (5 months, 3 weeks ago) by wiz
Branches: MAIN
CVS tags: pkgsrc-2024Q4-base, pkgsrc-2024Q4, pkgsrc-2024Q3-base, pkgsrc-2024Q3, HEAD
Diff to: previous 1.83: preferred, colored
Changes since revision 1.83: +2 -2 lines
*: replace CMAKE_ARGS with CMAKE_CONFIGURE_ARGS

Revision 1.83: download - view: text, markup, annotated - select for diffs
Mon Jul 22 17:48:58 2024 UTC (6 months, 3 weeks ago) by adam
Branches: MAIN
Diff to: previous 1.82: preferred, colored
Changes since revision 1.82: +2 -3 lines
ccache: updated to 4.10.2

Ccache 4.10.2

Build improvements

* Fixed detection of Fmt version 11 and newer.

Test improvements

* 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.

Revision 1.82: download - view: text, markup, annotated - select for diffs
Tue Jul 16 10:02:01 2024 UTC (7 months ago) by prlw1
Branches: MAIN
Diff to: previous 1.81: preferred, colored
Changes since revision 1.81: +2 -1 lines
Revbump for fmtlib 11.0.1
Pointed out by David Gutteridge on pkgsrc-changes

Revision 1.81: download - view: text, markup, annotated - select for diffs
Tue Jul 2 08:59:44 2024 UTC (7 months, 2 weeks ago) by adam
Branches: MAIN
Diff to: previous 1.80: preferred, colored
Changes since revision 1.80: +2 -2 lines
ccache: updated to 4.10.1

Ccache 4.10.1

Bug fixes

- Fixed prefix command lookup from `PATH`.

Build improvements

- 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.

Documentation improvements

- Clarified that `--set`-config writes to the configuration file.

Revision 1.80: download - view: text, markup, annotated - select for diffs
Thu May 30 06:28:20 2024 UTC (8 months, 2 weeks ago) by adam
Branches: MAIN
CVS tags: pkgsrc-2024Q2-base, pkgsrc-2024Q2
Diff to: previous 1.79: preferred, colored
Changes since revision 1.79: +5 -2 lines
ccache: updated to 4.10

Ccache 4.10

New features and improvements

Added support for GCC option -fcallgraph-info.

Added support for GCC option -fprofile-update.

Added support for GCC option -fdump-ipa-clones.

Added support for the MSVC /Yc option (precompiled header).

Added support for the MSVC /Tc<path> and /Tp<path> options (specifying source code type).

Added an experimental inode cache implementation for Windows. This speeds up ccache a lot when many headers are included, both for cache hits and cache misses.

This feature is currently disabled by default, but interested Windows users are encouraged to try it out by setting inode_cache = true.

Added knowledge of Xcode option -ivfsstatcache.

Added support for Apple Clang option -Xpreprocessor -fopenmp in direct mode.

Added knowledge of Emscripten option --em-config.

Reduced the risk of false positive direct mode hits.

Clear direct mode manifest on recache.

Optimized file reading on Windows.

Optimized file copying performed when hard linking or file cloning is enabled.

Use posix_spawn(3) for executing compiler check commands.

The prefix_command and prefix_command_cpp configuration options now allow any prefix, not only programs that exist in PATH. This means that prefix_command now can be a program with arguments.

Added a new incbin sloppiness value for ignoring presence of .incbin directives in the source code.

Added a --print-log-stats option that prints a machine-parsable variant of --show-log-stats.

Added a --format option for selecting JSON or tab format for --print-stats and --print-log-stats.

Added a --print-version option for printing ccache version in machine-parsable format.

The --inspect option now retains access time (atime) of the inspected file if possible.

Bug fixes

Fixed reading of files larger than 231 bytes on some systems where this was a problem.

Improved handling of large files on 32-bit systems.

Nonexistent include files are allowed in preprocessor mode again, fixing regression in ccache 4.9.1.

The Clang -fdiagnostics-color option is now handled again, fixing regression in ccache 4.6.2.

Fixed assertion failure on Windows mapped network drives.

Fixed handling of MSVC options /Fp and /Yu.

Fixed lock file implementation on MSYS2.

The “apparent real path” of the object file is now added to the input hash when using -fprofile-arcs to avoid false positive hits in some scenarios.

When generating profiling information, run_second_cpp is now forced to true so that the coverage report won’t refer to a temporary preprocessed file.

Build improvements

Improved handling of ccache dependencies. A new DEPS CMake variable selects how software library dependencies should be located or retrieved, replacing the old HIREDIS_FROM_INTERNET, ZSTD_FROM_INTERNET and OFFLINE variables. Options are AUTO (the default) for automatically downloading missing dependencies, DOWNLOAD for always downloading and LOCAL for never downloading. See Software library dependencies for details.

Added support for using a local installation of BLAKE3, cpp-httplib, nonstd-span and tl-expected instead of linking to bundled copies.

Removed bundled copies of doctest, fmt, getopt_long and xxhash.

Changed to use the Windows BLAKE3 implementation when building on MSYS2.

Documentation improvements

Improved documentation of “gcno_cwd sloppiness”.

Revision 1.79: download - view: text, markup, annotated - select for diffs
Fri Feb 16 20:14:59 2024 UTC (11 months, 4 weeks ago) by adam
Branches: MAIN
CVS tags: pkgsrc-2024Q1-base, pkgsrc-2024Q1
Diff to: previous 1.78: preferred, colored
Changes since revision 1.78: +2 -2 lines
ccache: updated to 4.9.1

Ccache 4.9.1

Bug fixes

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.

Revision 1.78: download - view: text, markup, annotated - select for diffs
Tue Jan 2 11:59:02 2024 UTC (13 months, 2 weeks ago) by adam
Branches: MAIN
Diff to: previous 1.77: preferred, colored
Changes since revision 1.77: +2 -2 lines
ccache: updated to 4.9

Ccache 4.9

New features and improvements

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.

Bug fixes

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.

Build improvements

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.

Documentation improvements

The manual now mentions that system_headers sloppiness is not supported for MSVC.

Test improvements

Fixed regex in direct.bash.

Revision 1.77: download - view: text, markup, annotated - select for diffs
Wed Aug 30 13:01:12 2023 UTC (17 months, 2 weeks ago) by adam
Branches: MAIN
CVS tags: pkgsrc-2023Q4-base, pkgsrc-2023Q4, pkgsrc-2023Q3-base, pkgsrc-2023Q3
Diff to: previous 1.76: preferred, colored
Changes since revision 1.76: +2 -2 lines
ccache: updated to 4.8.3

Ccache 4.8.3

Bug fixes

Fixed various problems with parsing of MSVC response file (.rsp).

Fixed handling of NVCC -Xcompiler and --Werror options.

Fixed bookkeeping of files when hard linking or file cloning is enabled. In ccache 4.8–4.8.2 this could result in incorrect size/count statistics after automatic or explicit cleanup.

Build improvements

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.

Revision 1.76: download - view: text, markup, annotated - select for diffs
Tue Jul 18 14:11:14 2023 UTC (19 months ago) by nia
Branches: MAIN
Diff to: previous 1.75: preferred, colored
Changes since revision 1.75: +3 -3 lines
devel: Adapt packages to use USE_(CC|CXX)_FEATURES

Revision 1.75: download - view: text, markup, annotated - select for diffs
Mon Jun 26 08:32:42 2023 UTC (19 months, 3 weeks ago) by jperkin
Branches: MAIN
CVS tags: pkgsrc-2023Q2-base, pkgsrc-2023Q2
Diff to: previous 1.74: preferred, colored
Changes since revision 1.74: +3 -1 lines
ccache: SunOS needs libsocket.

Revision 1.74: download - view: text, markup, annotated - select for diffs
Wed Jun 14 06:54:16 2023 UTC (20 months ago) by adam
Branches: MAIN
Diff to: previous 1.73: preferred, colored
Changes since revision 1.73: +2 -2 lines
ccache: updated to 4.8.2

Ccache 4.8.2

Bug fixes
Fixed parsing of Windows drive letter in file URLs for remote storage.

Fixed a bug affecting depend mode with MSVC.

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.

Build improvements
Made various fixes for Windows 64-bit MSBuild builds.

Silenced CMake warning for extracted timestamps.

Worked around problem with building ZStandard with Xcode.

Fixed undefined behavior (only triggered by unit tests) in util::read_file_part for zero count, making the build fail with _GLIBCXX_ASSERTIONS.

Documentation improvements
Clarified --evict-older-than semantics.

Test improvements
Fixed typo in “Directory is not hashed if using -gz” test.

Revision 1.73: download - view: text, markup, annotated - select for diffs
Mon May 22 08:04:59 2023 UTC (20 months, 3 weeks ago) by adam
Branches: MAIN
Diff to: previous 1.72: preferred, colored
Changes since revision 1.72: +2 -2 lines
ccache: updated to 4.8.1

Ccache 4.8.1

Bug fixes
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.

Build/CI improvements
Corrected ccache version in the macOS binary release.
Made it possible to build ccache with clang-cl on Windows.
Upgraded to doctest 2.4.11, thereby fixing a build issue on Solaris.

Documentation improvements
Added a remote file storage example with URL-encoded spaces.

Revision 1.72: download - view: text, markup, annotated - select for diffs
Tue Apr 25 13:51:49 2023 UTC (21 months, 3 weeks ago) by jperkin
Branches: MAIN
Diff to: previous 1.71: preferred, colored
Changes since revision 1.71: +2 -2 lines
*: GCC_REQD must always be appended to.

Revision 1.71: download - view: text, markup, annotated - select for diffs
Thu Mar 16 07:53:35 2023 UTC (23 months ago) by adam
Branches: MAIN
CVS tags: pkgsrc-2023Q1-base, pkgsrc-2023Q1
Diff to: previous 1.70: preferred, colored
Changes since revision 1.70: +2 -2 lines
ccache: switch to cmake/build.mk

Revision 1.70: download - view: text, markup, annotated - select for diffs
Tue Mar 14 06:30:23 2023 UTC (23 months ago) by adam
Branches: MAIN
Diff to: previous 1.69: preferred, colored
Changes since revision 1.69: +2 -3 lines
ccache: updated to 4.8

Ccache 4.8

New features and improvements
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.

Build/CI improvements
Added CI support for building macOS universal binaries.

Make it possible to force download of Zstd and Hiredis, e.g. with cmake -D ZSTD_FROM_INTERNET=ON […​].

Bug fixes
Fixed an edge case where a non-temporal identifier is misidentified.

Fixed reporting of local/remote cache misses in depend mode.

Fixed parsing of backslashes in MSVC RSP files.

Fixed a crash in --show-log-stats when the stats log file doesn’t exist.

Fixed matching of base directory for MSVC. The base directory will now match case-insensitively with absolute paths in preprocessed output, or from /showIncludes in the depend mode case, when compiling with MSVC.

Fixed a problem where the original umask would be used when storing a remote cache result in the local cache.

Changed the inode cache implementation to use spinlocks instead of pthread mutexes. This makes the inode cache work on FreeBSD and similar systems.

Don’t treat -Wp,-D as interchangeable with -D.

Disable the inode cache if the filesystem risks getting full soon. This fixes a problem when the cache is on a filesystem where posix_fallocate isn’t reliable, like Btrfs with compression enabled.

Fixed performance of cache path relativization in preprocessed output, primarily on Windows where stat calls are relatively costly.

Fixed rare crash in the signal handler at process exit.

Fixed handling of Unix-style paths passed to MSVC.

Fixed so that the config options and command line are logged before trying to locate the compiler and exiting early.

Documentation improvements
Improved description of --set-config.

Fixed broken markup in the manual.

Added a note to the manual that stats = false will disable automatic cleanup.

Fix a bad reference to the “Remote storage backends” section.

Revision 1.69: download - view: text, markup, annotated - select for diffs
Thu Jan 19 15:41:40 2023 UTC (2 years ago) by gdt
Branches: MAIN
Diff to: previous 1.68: preferred, colored
Changes since revision 1.68: +3 -3 lines
devel/ccache*: Adjust comment about xz to modern reality

Revision 1.67.2.1: download - view: text, markup, annotated - select for diffs
Wed Jan 4 12:26:08 2023 UTC (2 years, 1 month ago) by bsiegert
Branches: pkgsrc-2022Q4
Diff to: previous 1.67: preferred, colored; next MAIN 1.68: preferred, colored
Changes since revision 1.67: +3 -2 lines
Pullup ticket #6713 - requested by gutteridge
devel/ccache: i386 build fix

Revisions pulled up:
- devel/ccache/Makefile                                         1.68

---
   Module Name:    pkgsrc
   Committed By:   gutteridge
   Date:           Wed Jan  4 02:26:47 UTC 2023

   Modified Files:
            pkgsrc/devel/ccache: Makefile

   Log Message:
   ccache: fix builds on i386 (and possibly other arches)

   Addresses PR pkg/57157 from ano(ther)nymous.

Revision 1.68: download - view: text, markup, annotated - select for diffs
Wed Jan 4 02:26:47 2023 UTC (2 years, 1 month ago) by gutteridge
Branches: MAIN
Diff to: previous 1.67: preferred, colored
Changes since revision 1.67: +3 -2 lines
ccache: fix builds on i386 (and possibly other arches)

Addresses PR pkg/57157 from ano(ther)nymous.

Revision 1.67: download - view: text, markup, annotated - select for diffs
Fri Dec 9 16:14:12 2022 UTC (2 years, 2 months ago) by wiz
Branches: MAIN
CVS tags: pkgsrc-2022Q4-base
Branch point for: pkgsrc-2022Q4
Diff to: previous 1.66: preferred, colored
Changes since revision 1.66: +8 -2 lines
ccache: perl is a build dependency

Fix asciidoctor executable name to work for all ruby versions, not
just the current default.

Revision 1.66: download - view: text, markup, annotated - select for diffs
Fri Dec 9 11:56:47 2022 UTC (2 years, 2 months ago) by gdt
Branches: MAIN
Diff to: previous 1.65: preferred, colored
Changes since revision 1.65: +5 -1 lines
devel/ccache: Build man page

The man page was lost in the update, due to needing asciidoctor.
However, it built (and thus caused a PLIST error) on machines with
asciidoctor installed.  Depend on asciidoctor, rather than forcing it
off, since this package ought to have a man page.

Tested on NetBSD 9 amd64.

Revision 1.65: download - view: text, markup, annotated - select for diffs
Tue Dec 6 16:14:50 2022 UTC (2 years, 2 months ago) by adam
Branches: MAIN
Diff to: previous 1.64: preferred, colored
Changes since revision 1.64: +4 -2 lines
ccache: update compiler requirements

Revision 1.64: download - view: text, markup, annotated - select for diffs
Mon Dec 5 08:29:44 2022 UTC (2 years, 2 months ago) by adam
Branches: MAIN
Diff to: previous 1.63: preferred, colored
Changes since revision 1.63: +10 -11 lines
ccache: updated to 4.7.4

Ccache 4.7.4

Bug fixes

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 of an error.
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.

Other minor improvements

Improved inode cache logging.

Documentation improvements

Removed stray parenthesis.
Improved description of how header files are handled.
Added a hint about using -fno-pch-timestamp for precompiled headers with Clang.
Removed obsolete description of compiler type “pump”.


More https://ccache.dev/releasenotes.html

Revision 1.63: download - view: text, markup, annotated - select for diffs
Tue Jun 28 11:31:40 2022 UTC (2 years, 7 months ago) by wiz
Branches: MAIN
CVS tags: pkgsrc-2022Q3-base, pkgsrc-2022Q3
Diff to: previous 1.62: preferred, colored
Changes since revision 1.62: +2 -2 lines
*: recursive bump for perl 5.36

Revision 1.62: download - view: text, markup, annotated - select for diffs
Mon May 24 19:49:54 2021 UTC (3 years, 8 months ago) by wiz
Branches: MAIN
CVS tags: pkgsrc-2022Q2-base, pkgsrc-2022Q2, pkgsrc-2022Q1-base, pkgsrc-2022Q1, pkgsrc-2021Q4-base, pkgsrc-2021Q4, pkgsrc-2021Q3-base, pkgsrc-2021Q3, pkgsrc-2021Q2-base, pkgsrc-2021Q2
Diff to: previous 1.61: preferred, colored
Changes since revision 1.61: +2 -1 lines
*: recursive bump for perl 5.34

Revision 1.61: download - view: text, markup, annotated - select for diffs
Fri Oct 2 08:08:07 2020 UTC (4 years, 4 months ago) by adam
Branches: MAIN
CVS tags: pkgsrc-2021Q1-base, pkgsrc-2021Q1, pkgsrc-2020Q4-base, pkgsrc-2020Q4
Diff to: previous 1.60: preferred, colored
Changes since revision 1.60: +2 -3 lines
ccache: updated to 3.7.12

ccache 3.7.12

Bug fixes
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.

Other
Improved documentation about sharing a cache on NFS.
Fixed test case failures with old objdump versions.
Fixed test case failures with GCC 4.4.

Revision 1.60: download - view: text, markup, annotated - select for diffs
Mon Aug 31 18:07:17 2020 UTC (4 years, 5 months ago) by wiz
Branches: MAIN
CVS tags: pkgsrc-2020Q3-base, pkgsrc-2020Q3
Diff to: previous 1.59: preferred, colored
Changes since revision 1.59: +2 -1 lines
*: bump PKGREVISION for perl-5.32.

Revision 1.59: download - view: text, markup, annotated - select for diffs
Mon Jul 27 16:04:38 2020 UTC (4 years, 6 months ago) by adam
Branches: MAIN
Diff to: previous 1.58: preferred, colored
Changes since revision 1.58: +2 -2 lines
ccache: updated to 3.7.11

ccache 3.7.11

Bug fixes
Added knowledge about -fprofile-{correction,reorder-functions,values}.
ccache now handles the Intel compiler option -xCODE (where CODE is a processor feature code) correctly.
Added support for NVCC’s -Werror and --Werror options.

Other
ccache’s “Directory is not hashed if using -gz[=zlib]” tests are now skipped for GCC 6.

Revision 1.58: download - view: text, markup, annotated - select for diffs
Mon Jun 29 13:40:53 2020 UTC (4 years, 7 months ago) by adam
Branches: MAIN
Diff to: previous 1.57: preferred, colored
Changes since revision 1.57: +2 -2 lines
ccache: updated to 3.7.10

ccache 3.7.10

Bug fixes

Improved handling of profiling options. ccache should now work correctly for profiling options like -fprofile-{generate,use}[=path] for GCC ≥ 9 and Clang as well as -fauto-profile[=path] and the Clang-specific -fprofile-instr-{generate,use}[=path] and -fprofile-sample-{use,accurate} options.

ccache now copies files directly from the cache to the destination file instead of via a temporary file. This avoids problems when using filenames long enough to be near the file system’s filename max limit.

When the hard-link mode is enabled, ccache now only uses hard links for object files, not other files like dependency files. This is because compilers unlink object files before writing to them but they don’t do that for dependency files, so the latter can become overwritten and therefore corrupted in the cache.

Fixed a glitch related to hard-link mode and an empty cache.

ccache now supports the ccache.conf file to be a symlink.

Temporary files are now deleted immediately on signals like SIGTERM and SIGINT instead of some time later in a cleanup phase.

Fixed a bug that affected ccache’s -o/--set-config option for the base_dir and cache_dir_levels keys.

Revision 1.57: download - view: text, markup, annotated - select for diffs
Tue Mar 31 16:15:34 2020 UTC (4 years, 10 months ago) by adam
Branches: MAIN
CVS tags: pkgsrc-2020Q2-base, pkgsrc-2020Q2
Diff to: previous 1.56: preferred, colored
Changes since revision 1.56: +2 -2 lines
ccache: updated to 3.7.9

ccache 3.7.9

Bug fixes
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.

Other
Improved CUDA/NVCC support: Recognize -dc and -x cu options.
Improved name of temporary file used in NFS-safe unlink.

Revision 1.56: download - view: text, markup, annotated - select for diffs
Tue Mar 17 14:49:31 2020 UTC (4 years, 11 months ago) by adam
Branches: MAIN
CVS tags: pkgsrc-2020Q1-base, pkgsrc-2020Q1
Diff to: previous 1.55: preferred, colored
Changes since revision 1.55: +2 -2 lines
ccache: updated to 3.7.8

ccache 3.7.8

Bug fixes
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.

Other
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.

Revision 1.55: download - view: text, markup, annotated - select for diffs
Mon Jan 6 16:57:07 2020 UTC (5 years, 1 month ago) by adam
Branches: MAIN
Diff to: previous 1.54: preferred, colored
Changes since revision 1.54: +2 -2 lines
ccache: updated to 3.7.7

ccache 3.7.7
Bug fixes

* 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.

Revision 1.54: download - view: text, markup, annotated - select for diffs
Wed Nov 20 09:38:42 2019 UTC (5 years, 2 months ago) by adam
Branches: MAIN
CVS tags: pkgsrc-2019Q4-base, pkgsrc-2019Q4
Diff to: previous 1.53: preferred, colored
Changes since revision 1.53: +2 -2 lines
ccache: updated to 3.7.6

ccache 3.7.6

Bug fixes
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.

Revision 1.53: download - view: text, markup, annotated - select for diffs
Thu Oct 31 10:58:58 2019 UTC (5 years, 3 months ago) by adam
Branches: MAIN
Diff to: previous 1.52: preferred, colored
Changes since revision 1.52: +2 -2 lines
ccache: updated to 3.7.5

3.7.5:
New features
Added support for -MF=arg (with an extra equal sign) as understood by EDG-based compilers.

Bug fixes
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.

Revision 1.52: download - view: text, markup, annotated - select for diffs
Fri Sep 13 08:07:29 2019 UTC (5 years, 5 months ago) by adam
Branches: MAIN
CVS tags: pkgsrc-2019Q3-base, pkgsrc-2019Q3
Diff to: previous 1.51: preferred, colored
Changes since revision 1.51: +2 -2 lines
ccache: updated to 3.7.4

ccache 3.7.4
Improvements
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.

Revision 1.51: download - view: text, markup, annotated - select for diffs
Mon Aug 19 10:13:46 2019 UTC (5 years, 5 months ago) by adam
Branches: MAIN
Diff to: previous 1.50: preferred, colored
Changes since revision 1.50: +2 -3 lines
ccache: updated to 3.7.3

ccache 3.7.3

Bug fixes
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.

Revision 1.50: download - view: text, markup, annotated - select for diffs
Sun Aug 11 13:18:39 2019 UTC (5 years, 6 months ago) by wiz
Branches: MAIN
Diff to: previous 1.49: preferred, colored
Changes since revision 1.49: +2 -1 lines
Bump PKGREVISIONs for perl 5.30.0

Revision 1.49: download - view: text, markup, annotated - select for diffs
Sat Jul 27 13:40:36 2019 UTC (5 years, 6 months ago) by nia
Branches: MAIN
Diff to: previous 1.48: preferred, colored
Changes since revision 1.48: +2 -3 lines
ccache: Update to 3.7.2

Bug fixes

* 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.

Documentation

* Added a hint about not running autogen.sh when building from a release
  archive.
* Mention that xsltproc is needed when building from the source repository.

Revision 1.48: download - view: text, markup, annotated - select for diffs
Mon May 6 15:06:04 2019 UTC (5 years, 9 months ago) by adam
Branches: MAIN
CVS tags: pkgsrc-2019Q2-base, pkgsrc-2019Q2
Diff to: previous 1.47: preferred, colored
Changes since revision 1.47: +2 -2 lines
ccache: updated to 3.7.1

Changes 3.7.1:
Fixed a problem when using the compiler option -MF /dev/null.
Long commandlines are now handled gracefully on Windows by using the @file syntax to avoid hitting the commandline size limit.
Fixed complaint from GCC 9’s -Werror=format-overflow when compiling ccache itself.

Revision 1.47: download - view: text, markup, annotated - select for diffs
Mon Apr 29 17:13:15 2019 UTC (5 years, 9 months ago) by adam
Branches: MAIN
Diff to: previous 1.46: preferred, colored
Changes since revision 1.46: +5 -4 lines
ccache: updated to 3.7

Changes 3.7:
Fixed crash when the debug mode is enabled and the output file is in a non-writable directory, e.g. when the output file is /dev/null.

Fixed an issue when printing very large log messages to the debug log.

Fixed bugs related to support for -gsplit-dwarf. Previously ccache could produce an incorrect link to the .dwo file in the .o file.

Compilations with /dev/null as the input file are now cached.

ccache has learned how to contruct the object filename if no -o option is given and the source filename does not include a . or ends with a ..

Fixed a temporary file leak when the depend mode is enabled and the compiler produces standard error output.

Fixed a bug in the depend mode where a manifest hash only could be associated with one set of header dependencies.

Manifest files did not get marked as used on direct cache hits, so the LRU cache cleanup would incorrectly remove them eventually. This has been fixed.

The rewriting of absolute paths into relative paths in the dependency file has been enabled in the depend mode as well.

ccache now ignores unknown keys in configuration files for forward compatibility.

Rearranged command-line options into sections in the help text.

Documented the previously undocumented --dump-manifest and --hash-file options (only useful for debugging ccache itself).

Added missing documentation for the command-line option -k/--get-config added in ccache 3.5.

Renamed the --print-config command to --show-config.

Added a new --print-stats command that prints statistics counters in machine-parsable (tab-separated) format.

ccache no longer creates a missing output directory, thus mimicking the compiler behavior for -o out/obj.o when “out” doesn’t exist.

-fdebug-prefix-map=ARG, -ffile-prefix-map=ARG and -fmacro-prefix-map=ARG are now included in the hash, but only the part before “ARG”. This fixes a bug where compiler feature detection of said flags would not work correctly with ccache.

Bail out on too hard compiler option -gtoggle.

Bail out on too hard Clang options --analyze and -analyze.

Improved debug logging of file hashes in depend mode.

Improved handling of various -g* options. In particular, ccache now understands that -g0 cancels out previous -g* options.

Worked around a problem with Automake related to .d files when using the hard link mode.

Added opt-in (at configure time) support for enabling trace logs for profiling ccache itself. See doc/DEVELOPER.md in the code tree for more information

Removed support for Fortran 77 again. Some Fortran support was added in ccache 3.3, but the implementation did not work when Fortran modules are involved.

Revision 1.46: download - view: text, markup, annotated - select for diffs
Tue Jan 15 09:04:17 2019 UTC (6 years, 1 month ago) by adam
Branches: MAIN
CVS tags: pkgsrc-2019Q1-base, pkgsrc-2019Q1
Diff to: previous 1.45: preferred, colored
Changes since revision 1.45: +2 -5 lines
ccache: updated to 3.6

ccache 3.6

ccache now has an opt-in “depend mode”. When enabled, ccache never executes the preprocessor, which results in much lower cache miss overhead at the expense of a lower potential cache hit rate. The depend mode is only possible to use when the compiler option -MD or -MMD is used.

Added support for GCC’s -ffile-prefix-map option. The -fmacro-prefix-map option is now also skipped from the hash.

Added support for multiple -fsanitize-blacklist arguments.

ccache now includes the environment variables LANG, LC_ALL, LC_CTYPE and LC_MESSAGES in the hash since they may affect localization of compiler warning messages. Set sloppiness to locale to opt out of this.

Fixed a problem due to Clang overwriting the output file when compiling an assembler file.

Clarified the manual to explain the reasoning behind the “file_macro” sloppiness setting in a better way.

ccache now handles several levels of nonexistent directories when rewriting absolute paths to relative.

A new sloppiness setting clang_index_store makes ccache skip the Clang compiler option -index-store-path and its argument when computing the manifest hash. This is useful if you use Xcode, which uses an index store path derived from the local project path. Note that the index store won’t be updated correctly on cache hits if you enable this option.

Rename sloppiness no_system_headers to system_headers for consistency with other options. no_system_headers can still be used as an (undocumented) alias.

The GCC variables “DEPENDENCIES_OUTPUT” and “SUNPRO_DEPENDENCIES” are now supported correctly.

The algorithm that scans for __DATE_ and __TIME__ tokens in the hashed source code now doesn’t produce false positives for tokens where __DATE__ or __TIME__ is a substring.

Revision 1.45: download - view: text, markup, annotated - select for diffs
Fri Jan 4 23:43:23 2019 UTC (6 years, 1 month ago) by adam
Branches: MAIN
Diff to: previous 1.44: preferred, colored
Changes since revision 1.44: +7 -4 lines
ccache: updated to 3.5.1

ccache 3.5.1:
Added missing getopt_long.c source file to release archive.
Fixed (harmless) compiler warnings when building ccache object files.
CFLAGS is no longer passed to the linker when linking ccache.
Improved development mode build flags.

Revision 1.44: download - view: text, markup, annotated - select for diffs
Tue Oct 30 12:03:52 2018 UTC (6 years, 3 months ago) by adam
Branches: MAIN
CVS tags: pkgsrc-2018Q4-base, pkgsrc-2018Q4
Diff to: previous 1.43: preferred, colored
Changes since revision 1.43: +2 -2 lines
ccache: updated to 3.5

ccache 3.5

Added a boolean debug (CCACHE_DEBUG) configuration option. When enabled, ccache will create per-object debug files that are helpful e.g. when debugging unexpected cache misses. See also the new “Cache debugging” section in the manual.

Renamed CCACHE_CC to CCACHE_COMPILER (keeping the former as a deprecated alias).

Added a new command-line option -k/--get-config that prints the value of a config key.

It is now possible to let ccache hash a precomputed checksum file instead of the full content of a precompiled header. This can save time for large precompiled headers. Note that the build system needs to keep the checksum file in sync with the precompiled header for this to work.

Improved performance substantially when using hash_dir = false on platforms like macOS where getcwd() is slow.

Added “stats updated” timestamp in ccache -s output. This can be useful if you wonder whether ccache actually was used for your last build.

Renamed “stats zero time” to “stats zeroed” and documented it. The counter is also now only present in ccache -s output when ccache -z actually has been called.

The content of the -fsanitize-blacklist file is now included in the hash, so updates to the file will now correctly result in separate cache entries.

It’s now possible to opt out of building and installing man pages when running make install in the source repository.

If the compiler type can’t be detected (e.g. if it is named cc), use safer defaults that won’t trip up Clang.

Made the ccache test suite work on FreeBSD.

Added file_stat_matches_ctime option to disable ctime check if file_stat_matches is enabled.

Made “./configure --without-bundled-zlib” do what’s intended.

Revision 1.43: download - view: text, markup, annotated - select for diffs
Wed Sep 5 13:22:21 2018 UTC (6 years, 5 months ago) by adam
Branches: MAIN
CVS tags: pkgsrc-2018Q3-base, pkgsrc-2018Q3
Diff to: previous 1.42: preferred, colored
Changes since revision 1.42: +2 -2 lines
ccache: updated to 3.4.3

ccache 3.4.3

Bug fixes
Fixed a race condition when creating the initial config file in the cache directory.
Bail out on too hard clang option -MJ.
Bail out on too hard option -save-temps=obj.
Handle separate parameter to clang option -target correctly.
Upgraded bundled zlib to version 1.2.11.

Revision 1.42: download - view: text, markup, annotated - select for diffs
Fri Apr 6 08:04:53 2018 UTC (6 years, 10 months ago) by adam
Branches: MAIN
CVS tags: pkgsrc-2018Q2-base, pkgsrc-2018Q2
Diff to: previous 1.41: preferred, colored
Changes since revision 1.41: +3 -2 lines
ccached: updated to 3.4.2

ccache 3.4.2

Bug fixes:

The cleanup algorithm has been fixed to not misbehave when files are removed by another process while the cleanup process is running. Previously, too many files could be removed from the cache if multiple cleanup processes were triggered at the same time, in extreme cases trimming the cache to a much smaller size than the configured limits.

Correctly hash preprocessed headers located in a “.gch directory”. Previously, ccache would not pick up changes to such precompiled headers, risking false positive cache hits.

Fixed build failure when using the bundled zlib sources.

ccache 3.3.5 added a workaround for not triggering Clang errors when a precompiled header’s dependency has an updated timestamp (but identical content). That workaround is now only applied when the compiler is Clang.

Made it possible to perform out-of-source builds in dev mode again.

Revision 1.41: download - view: text, markup, annotated - select for diffs
Mon Feb 12 08:32:11 2018 UTC (7 years ago) by adam
Branches: MAIN
CVS tags: pkgsrc-2018Q1-base, pkgsrc-2018Q1
Diff to: previous 1.40: preferred, colored
Changes since revision 1.40: +2 -2 lines
ccache: updated to 3.4.1

ccache 3.4.1
Bug fixes
Fixed printing of version number in ccache --version.

ccache 3.4
New features and enhancements
The compiler option form --sysroot arg is now handled like the documented --sysroot=arg form.
Added support for caching .su files generated by GCC flag -fstack-usage.
ccache should now work with distcc’s “pump” wrapper.
The optional unifier is no longer disabled when the direct mode is enabled.
Added support for nvcc compiler options --compiler-bindir/-ccbin, --output-directory/-odir and --libdevice-directory/-ldir.
Boolean environment variable settings no longer accept the following (case-insensitive) values: 0, false, disable and no. All other values are accepted and taken to mean “true”. This is to stop users from setting e.g. CCACHE_DISABLE=0 and then expect the cache to be used.
Improved support for run_second_cpp = false: If combined with passing -fdirectives-only (GCC) or frewrite-includes (Clang) to the compiler, diagnostics warnings and similar will be correct.
An implicit -MQ is now passed to the preprocessor only if the object file extension is non-standard. This should make it easier to use EDG-based compilers (e.g. GHS) which don’t understand -MQ.
ccache now treats an unreadable configuration file just like a missing configuration file.
Documented more pitfalls with enabling hard_links (CCACHE_HARDLINK).
Documented caveats related to colored warnings from compilers.

Bug fixes
File size and number counters are now updated correctly when files are overwritten in the cache, e.g. when using CCACHE_RECACHE.
run_second_cpp is now forced for nvcc.
Fixed how the nvcc options -optf and -odir are handled.

Revision 1.40: download - view: text, markup, annotated - select for diffs
Tue Jan 30 05:43:19 2018 UTC (7 years ago) by adam
Branches: MAIN
Diff to: previous 1.39: preferred, colored
Changes since revision 1.39: +2 -2 lines
ccache: updated to 3.3.6

ccache 3.3.6

New features and improvements
- Improved instructions on how to get cache hits between different working
  directories.

Bug fixes
- Fixed regression in ccache 3.3.5 related to the `UNCACHED_ERR_FD` feature.

Revision 1.39: download - view: text, markup, annotated - select for diffs
Mon Jan 15 08:07:02 2018 UTC (7 years, 1 month ago) by adam
Branches: MAIN
Diff to: previous 1.38: preferred, colored
Changes since revision 1.38: +3 -2 lines
ccache: updated to 3.3.5

ccache 3.3.5

New features and improvements
* Documented how automatic cache cleanup works.

Bug fixes
* Fixed a regression where the original order of debug options could be lost. This reverts the “Improved parsing of -g* options” feature in ccache 3.3.
* Multiple -fdebug-prefix-map options should now be handled correctly.
* Fixed matching of directories in the ignore_headers_in_manifest configuration option.
* Fixed detection of missing argument to -opt/--options-file.
* ccache now bails out when building a precompiled header if any of the corresponding header files have an updated timestamp. This fixes complaints from clang.
* Fixed a bug related to erroneously storing a dependency file with absolute paths in the cache on a preprocessed hit.
* ccache -c/--cleanup now works like documented: it just recalculates size counters and trims the cache to not exceed the max size and file number limits. Previously, the forced cleanup took “limit_multiple” into account, so that ccache -c/--cleanup by default would trim the cache to 80% of the max limit.
* ccache no longer ignores linker arguments for clang since clang warns about them.
* Plugged a couple of file descriptor leaks.
* Fixed a bug where ccache would skip hashing the compiler argument following a -fno-working-directory, -fworking-directory, -nostdinc, -nostdinc++, -remap or -trigraphs option in preprocessor mode.

Revision 1.38: download - view: text, markup, annotated - select for diffs
Sun Feb 26 10:17:00 2017 UTC (7 years, 11 months ago) by adam
Branches: MAIN
CVS tags: pkgsrc-2017Q4-base, pkgsrc-2017Q4, pkgsrc-2017Q3-base, pkgsrc-2017Q3, pkgsrc-2017Q2-base, pkgsrc-2017Q2, pkgsrc-2017Q1-base, pkgsrc-2017Q1
Diff to: previous 1.37: preferred, colored
Changes since revision 1.37: +2 -2 lines
ccache 3.3.4:

New features and improvements:
* Documented the different cache statistics counters.

Bug fixes:
* Fixed a regression in ccache 3.3 related to potentially bad content of dependency files when compiling identical source code but with different source paths. This was only partially fixed in 3.3.2 and reverts the new “Names of included files are no longer included in the hash of the compiler’s preprocessed output” feature in 3.3.
* Corrected statistics counter for -optf/--options-file failure.
* Fixed undefined behavior warnings in ccache found by -fsanitize=undefined.

Revision 1.37: download - view: text, markup, annotated - select for diffs
Mon Oct 31 10:54:30 2016 UTC (8 years, 3 months ago) by adam
Branches: MAIN
CVS tags: pkgsrc-2016Q4-base, pkgsrc-2016Q4
Diff to: previous 1.36: preferred, colored
Changes since revision 1.36: +2 -2 lines
Changes 3.3.3:
* ccache now detects usage of .incbin assembler directives in the source code and avoids caching such compilations.

Revision 1.36: download - view: text, markup, annotated - select for diffs
Tue Oct 25 12:12:43 2016 UTC (8 years, 3 months ago) by adam
Branches: MAIN
Diff to: previous 1.35: preferred, colored
Changes since revision 1.35: +2 -2 lines
Changes 3.3.2:
* Fixed a regression in ccache 3.3 related to potentially bad content of dependency files when compiling identical source code but with different source paths.
* Fixed a regression in ccache 3.3.1: ccache could get confused when using the compiler option -Wp, to pass multiple options to the preprocessor, resulting in missing dependency files from direct mode cache hits.

Revision 1.35: download - view: text, markup, annotated - select for diffs
Tue Sep 20 12:36:20 2016 UTC (8 years, 4 months ago) by adam
Branches: MAIN
CVS tags: pkgsrc-2016Q3-base, pkgsrc-2016Q3
Diff to: previous 1.34: preferred, colored
Changes since revision 1.34: +2 -2 lines
Changes 3.3.1:
* Fixed a problem in the “multiple -arch options” support introduced in 3.3. When using the direct mode (the default), different combinations of -arch options were not detected properly.
* Fixed an issue when compiler option -Wp,-MT,path is used instead of -MT path (and similar for -MF, -MP and -MQ) and run_second_cpp (CCACHE_CPP2) is enabled.

Revision 1.34: download - view: text, markup, annotated - select for diffs
Sun Aug 28 13:44:18 2016 UTC (8 years, 5 months ago) by mef
Branches: MAIN
Diff to: previous 1.33: preferred, colored
Changes since revision 1.33: +2 -2 lines
Updated devel/ccache 3.2.7 to 3.3
---------------------------------
ccache 3.3
----------
Release date: 2016-08-27

Notes
~~~~~
- A C99-compatible compiler is now required to build ccache.

New features and improvements
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- The configuration option `run_second_cpp` (`CCACHE_CPP2`) now defaults to
  true. This improves ccache's out-of-the-box experience for compilers that
  can't compile their own preprocessed output with the same outcome as if they
  compiled the real source code directly, e.g. newer versions of GCC and Clang.

- The configuration option `hash_dir` (`CCACHE_HASHDIR`) now defaults to true.

- Added a new `ignore_headers_in_manifest` configuration option, which
  specifies headers that should be ignored in the direct mode.

- Added a new `prefix_command_cpp` (`CCACHE_PREFIX_CPP`) configuration option,
  which specifies one or several prefixes to add to the command line ccache
  uses when invoking the preprocessor.

- Added a new `limit_multiple` (`CCACHE_LIMIT_MULTIPLE`) configuration option,
  which specifies how much of the cache to remove when cleaning.

- Added a new `keep_comments_cpp` (`CCACHE_COMMENTS`) configuration option,
  which tells ccache not to discard the comments before hashing preprocessor
  output. This can be used to check documentation with *-Wdocumentation*.

- Added a new sloppiness option `no_system_headers`, which tells ccache not to
  include system headers in manifest files.

- Added a new statistics counter that tracks the number of performed cleanups
  due to the cache size being over the limit. The value is shown in the output
  of ``ccache -s''.

- Added support for relocating debug info directory using `-fdebug-prefix-map`.
  This allows for cache hits even when `hash_dir` is used in combination with
  `base_dir`.

- Added a new ``cache hit rate'' field to the output of ``ccache -s''.

- Added support for caching compilation of assembler code produced by e.g.
  ``gcc -S file.c''.

- Added support for cuda including the -optf/--options-file option.

- Added support for Fortran 77.

- Added support for multiple `-arch` options to produce "fat binaries".

- Multiple identical `-arch` arguments are now handled without bailing.

- The concatenated form of some long compiler options is now recognized, for
  example when using `-isystemPATH` instead of `-isystem PATH`.

- If hard-linking is enabled and but fails (e.g. due to cross-device linking),
  ccache now falls back to copying instead of running the compiler.

- Made the `hash_dir` option only have effect when generating debug info.

- ccache now knows how to convert absolute paths to relative paths inside
  dependency files when using `base_dir`.

- Improved parsing of `-g*` options.

- Made ccache understand `-Wp,-D*` options.

- ccache now understands the undocumented `-coverage` (only one dash) GCC
  option.

- Names of included files are no longer included in the hash of the compiler's
  preprocessed output. This leads to more potential cache hits when not using
  the direct mode.

- Increased buffer size used when reading file data. This improves performance
  slightly.

Bug fixes
~~~~~~~~~
- Bail out on too hard compiler option `-P`.

- Fixed clang test suite when running on Linux.

- Fixed build and test for MinGW32 and Windows.

Revision 1.33: download - view: text, markup, annotated - select for diffs
Tue Aug 9 13:14:17 2016 UTC (8 years, 6 months ago) by mef
Branches: MAIN
Diff to: previous 1.32: preferred, colored
Changes since revision 1.32: +2 -2 lines
Updated devel/ccache 3.2.5 to 3.2.7
-----------------------------------
ccache 3.2.7
------------
Release date: 2016-07-20

Bug fixes
~~~~~~~~~
- Fixed a bug which could lead to false cache hits for compiler command lines
  with a missing argument to an option that takes an argument.

- ccache now knows how to work around a glitch in the output of GCC 6's
  preprocessor.

ccache 3.2.6
------------
Release date: 2016-07-12

Bug fixes
~~~~~~~~~
- Fixed build problem on QNX, which lacks ``SA_RESTART''.

- Bail out on compiler option `-fstack-usage` since it creates a `.su` file
  which ccache currently doesn't handle.

- Fixed a bug where (due to ccache rewriting paths) the compiler could choose
  incorrect include files if `CCACHE_BASEDIR` is used and the source file path
  is absolute and is a symlink.

Revision 1.32: download - view: text, markup, annotated - select for diffs
Mon Apr 25 10:24:48 2016 UTC (8 years, 9 months ago) by adam
Branches: MAIN
CVS tags: pkgsrc-2016Q2-base, pkgsrc-2016Q2
Diff to: previous 1.31: preferred, colored
Changes since revision 1.31: +2 -2 lines
ccache 3.2.5

New features and improvements
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- Only pass clang-specific `-stdlib=` to the preprocessor.
- Improved handling of stale NFS handles.
- Made it harder to misinterpret documentation of boolean environment settings'
  semantics.

Bug fixes
~~~~~~~~~
- Include m4 files used by configure.ac in the source dist archives.
- Corrected "Performance" section in the manual regarding `__DATE_`, `__TIME__`
  and `__FILE__` macros.
- Fixed build on Solaris 10+ and AIX 7.
- Fixed failure to create directories on QNX.
- Don't (try to) update manifest file in ``read-only'' and ``read-only direct''
  modes.
- Fixed a bug in caching of `stat` system calls in ``file_stat_matches
  sloppiness mode''.
- Fixed bug in hashing of clang plugins, leading to unnecessary cache misses.
- Fixed --print-config to show ``pch_defines sloppiness''.
- The man page is now built when running ``make install'' from Git repository
  sources.

Revision 1.31: download - view: text, markup, annotated - select for diffs
Fri Oct 9 12:02:20 2015 UTC (9 years, 4 months ago) by adam
Branches: MAIN
CVS tags: pkgsrc-2016Q1-base, pkgsrc-2016Q1, pkgsrc-2015Q4-base, pkgsrc-2015Q4
Diff to: previous 1.30: preferred, colored
Changes since revision 1.30: +2 -2 lines
Changes 3.2.4:
Fixed build error related to zlib on systems with older make versions (regression in ccache 3.2.3).
Made conversion-to-bool explicit to avoid build warnings (and potential runtime errors) on legacy systems.
Improved signal handling: Kill compiler on SIGTERM; wait for compiler to exit before exiting; die appropriately.
Minor fixes related to Windows support.
The correct compression level is now used if compression is requested.
Fixed a bug where cache cleanup could be run too early for caches larger than 64 GiB on 32-bit systems.

Revision 1.30: download - view: text, markup, annotated - select for diffs
Sun Sep 13 07:59:45 2015 UTC (9 years, 5 months ago) by adam
Branches: MAIN
CVS tags: pkgsrc-2015Q3-base, pkgsrc-2015Q3
Diff to: previous 1.29: preferred, colored
Changes since revision 1.29: +2 -2 lines
Changes 3.2.3:

New features and improvements
* Added support for compiler option -gsplit-dwarf.

Bug fixes
* Support external zlib in nonstandard directory.
* Avoid calling exit() inside an exit handler.
* Let exit handler terminate properly.
* Bail out on compiler option --save-temps in addition to -save-temps.
* Only log "Disabling direct mode" once when failing to read potential include files.

Revision 1.29: download - view: text, markup, annotated - select for diffs
Mon May 18 10:33:55 2015 UTC (9 years, 9 months ago) by adam
Branches: MAIN
CVS tags: pkgsrc-2015Q2-base, pkgsrc-2015Q2
Diff to: previous 1.28: preferred, colored
Changes since revision 1.28: +2 -5 lines
Changes 3.2.2:

New features and improvements
* Added support for CCACHE_COMPILERCHECK=string:<value>. This is a faster alternative to CCACHE_COMPILERCHECK=<command> if the command’s output can be precalculated by the build system.
* Add support for caching code coverage results (compiling for gcov).

Bug fixes
* Fixed bug which could result in false cache hits when source code contains '"' followed by " /*" or " //" (with variations).
* Made hash of cached result created with and without CCACHE_CPP2 different. This makes it possible to rebuild with CCACHE_CPP2 set without having to clear the cache to get new results.
* Don’t try to reset a non-existing stats file. This avoids “No such file or directory” messages in the ccache log when the cache directory doesn’t exist.
* Fixed a bug where ccache deleted clang diagnostics after compiler failures.
* Avoid performing an unnecessary copy of the object file on a cache miss.
* Bail out on too hard compiler option -fmodules.
* Bail out on too hard compiler option -fplugin=libcc1plugin (interaction with GDB).
* Fixed build error when compiling ccache with recent clang versions.
* Removed signal-unsafe code from signal handler.
* Corrected logic for when to output cached stderr.
* Wipe the whole cached result on failure retrieving a cached file.
* Fixed build error when compiling ccache with recent clang versions.

Revision 1.28: download - view: text, markup, annotated - select for diffs
Thu Mar 19 23:01:15 2015 UTC (9 years, 11 months ago) by tnn
Branches: MAIN
CVS tags: pkgsrc-2015Q1-base, pkgsrc-2015Q1
Diff to: previous 1.27: preferred, colored
Changes since revision 1.27: +4 -2 lines
change from .xz to .gz distfile. xz needs gettext-lib by default which
leads to circular dependencies on some platforms with
PKGSRC_COMPILER=ccache gcc

Revision 1.27: download - view: text, markup, annotated - select for diffs
Thu Mar 19 18:33:43 2015 UTC (9 years, 11 months ago) by tnn
Branches: MAIN
Diff to: previous 1.26: preferred, colored
Changes since revision 1.26: +1 -5 lines
g/c CCACHE_DEFAULT_MAXSIZE, it is no longer possible to set the default
cache size this way, and the default is now bumped to 5GB so it's not
really needed.

Revision 1.26: download - view: text, markup, annotated - select for diffs
Thu Mar 19 18:09:17 2015 UTC (9 years, 11 months ago) by tnn
Branches: MAIN
Diff to: previous 1.25: preferred, colored
Changes since revision 1.25: +2 -1 lines
Add workaround for bin/47757 on NetBSD < 7. Bump revision.

Revision 1.25: download - view: text, markup, annotated - select for diffs
Mon Dec 15 05:33:26 2014 UTC (10 years, 2 months ago) by mef
Branches: MAIN
CVS tags: pkgsrc-2014Q4-base, pkgsrc-2014Q4
Diff to: previous 1.24: preferred, colored
Changes since revision 1.24: +2 -2 lines
Udate 3.2 to 3.2.1
ccache 3.2.1
------------
Release date: 2014-12-10
Bug fixes
~~~~~~~~~
- Fixed regression in temporary file handling, which lead to incorrect
  permissions for stats, manifest and ccache.conf files in the cache.

- `CACHEDIR.TAG` files are now created in the [0-9a-f] subdirectories so that
  ccache.conf is not lost in backups.

- Made the default cache size suffix `G`, as previously documented.

- `-fdiagnostics-color=auto` is now passed to the compiler even if stderr is
  redirected. This fixes a problem when, for instance, a configure test probes
  if the compiler (wrapped via ccache) supports `-fdiagnostics-color=auto`.

- Added missing documentation for `max_files` and `max_size` configuration
  options.

Revision 1.24: download - view: text, markup, annotated - select for diffs
Thu Nov 20 15:20:40 2014 UTC (10 years, 2 months ago) by adam
Branches: MAIN
Diff to: previous 1.23: preferred, colored
Changes since revision 1.23: +2 -2 lines
Changes 3.2:
New features and improvements
- Added support for configuring ccache via one or several configuration files
  instead of via environment variables. Environment variables still have
  priority but are no longer the recommended way of customizing ccache
  behavior. See the manual for more information.
- Added support for compiler error/warning messages with color.
- Made creation of temporary directories and cache directories smarter to avoid
  unnecessary `stat` calls.
- Improved efficiency of the algorithm that scans for `__DATE_` and `__TIME__`
  tokens in the hashed source code.
- Added support for several binaries (separated by space) in `CCACHE_PREFIX`.
- The `-c` option is no longer passed to the preprocessor. This fixes problems
  with clang and Solaris's C++ compiler.
- ccache no longer passes preprocessor options like `-D` and `-I` to the
  compiler when compiling preprocessed output. This fixes warnings emitted by
  clang.
- Compiler options `-fprofile-generate`, `-fprofile-arcs`, `-fprofile-use` and
  `-fbranch-probabilities` are now handled without bailing.
- Added support for clang's `--serialize-diagnostic` option, storing the
  diagnostic file (`.dia`) in the cache.
- Added support for precompiled headers when using clang.
- Added support for clang `.pth` (pretokenized header) files.
- Changed the `-x` language option to use the new objective C standard for GCC
  and clang.
- On a cache miss, ccache now instructs the compiler to create the object file
  at the real destination and then copies the file into the cache instead of
  the other way around. This is needed to support compiler options like
  `-fprofile-arcs` and `--serialize-diagnostics`.
- ccache now checks that included files' ctimes aren't too new. This check can
  be turned off by adding `include_file_ctime` to the ``ccache sloppiness''
  setting.
- Added possibility to get cache hits based on filename, size, mtime and ctime
  only. On other words, source code files are not even read, only stat-ed. This
  operation mode is opt-in by adding `file_stat_matches` to the ``ccache
  sloppiness'' setting.
- The filename part of options like `-Wp,-MDfilename` is no longer included in
  the hash since the filename doesn't have any bearing on the result.
- Added a ``read-only direct'' configuration setting, which is like the
  ordinary read-only setting except that ccache will only try to retrieve
  results from the cache using the direct mode, not the preprocessor mode.
- The display and interpretation of cache size has been changed to use SI
  units.
- Default cache size is now 5 GB (was previously 1 GiB).
- Added configuration option to set the compression level of compressed object
  files in the cache.
- Added support for `@file` and `-@file` arguments (reading options from a
  file).
- `-Wl,` options are no longer included in the hash since they don't affect
  compilation.
- Bail out on too hard compiler option `-Wp,-P`.
- Optimized MD4 calculation code on little-endian systems.
- Various improvements and fixes on win32.
- Improved logging to the ccache log file.
- Added `--dump-manifest` command-line option for debugging purposes.
- Added `--with-bundled-zlib` configure option.
- Upgraded bundled zlib to version 1.2.8.
- Improved `dev.mk` to be more platform independent.
- Made the test suite work with clang and gcc-llvm on OS X.
- Various other improvements of the test suite.

Bug fixes
- Any previous `.stderr` is now removed from the cache when recaching.
- Fixed an issue when handling the `-arch` compiler option with an argument.
- Fixed race condition when creating the initial cache directory.
- Fixed test suite failures when `CC` is a ccache-wrapped compiler.

Revision 1.23: download - view: text, markup, annotated - select for diffs
Sun Oct 19 20:25:39 2014 UTC (10 years, 4 months ago) by adam
Branches: MAIN
Diff to: previous 1.22: preferred, colored
Changes since revision 1.22: +3 -2 lines
Changes 3.1.10:

New features and improvements:
* Added support for the -Xclang compiler option.
* Improved handling of exit code of internally executed processes.
* Zero length object files in the cache are now rejected as invalid.
* Bail out on option -gsplit-dwarf (since it produces multiple output files).
* Compiler option -fdebug-prefix-map is now ignored (not part of the hash). (The -fdebug-prefix-map option may be used in combination with CCACHE_BASEDIR to reuse results across different directories.)
* Added note in documentation that --ccache-skip currently does not mean “don’t hash the following option”.
* To enable support for precompiled headers (PCH), CCACHE_SLOPPINESS now also needs to include the new pch_defines sloppiness. This is because ccache can’t detect changes in the source code when only defined macros have been changed.
* Stale files in the internal temporary directory (<ccache_dir>/tmp) are now cleaned up if they are older than one hour.

Bug fixes:
* Fixed path canonicalization in make_relative_path() when path doesn’t exist.
* Fixed bug in common_dir_prefix_length(). This corrects the CCACHE_BASEDIR behavior.
* ccache no longer tries to create the cache directory when CCACHE_DISABLE is set.
* Fixed bug when reading manifests with a very large number of file info entries.
* Fixed problem with logging of current working directory.

Revision 1.22: download - view: text, markup, annotated - select for diffs
Thu Oct 9 14:06:08 2014 UTC (10 years, 4 months ago) by wiz
Branches: MAIN
Diff to: previous 1.21: preferred, colored
Changes since revision 1.21: +1 -3 lines
Remove pkgviews: don't set PKG_INSTALLATION_TYPES in Makefiles.

Revision 1.21: download - view: text, markup, annotated - select for diffs
Mon Jan 21 13:52:36 2013 UTC (12 years ago) by wiz
Branches: MAIN
CVS tags: pkgsrc-2014Q3-base, pkgsrc-2014Q3, pkgsrc-2014Q2-base, pkgsrc-2014Q2, pkgsrc-2014Q1-base, pkgsrc-2014Q1, pkgsrc-2013Q4-base, pkgsrc-2013Q4, pkgsrc-2013Q3-base, pkgsrc-2013Q3, pkgsrc-2013Q2-base, pkgsrc-2013Q2, pkgsrc-2013Q1-base, pkgsrc-2013Q1
Diff to: previous 1.20: preferred, colored
Changes since revision 1.20: +2 -2 lines
Update to 3.1.9:

ccache 3.1.9
------------
Release date: 2013-01-06


Bug fixes
~~~~~~~~~

    - The EAGAIN signal is now handled correctly when emitting cached stderr
      output. This fixes a problem triggered by large error outputs from the
      compiler.
    - Subdirectories in the cache are no longer created in read-only mode.
    - Fixed so that ccache's log file descriptor is not made available to the
      compiler.
    - Improved error reporting when failing to create temporary stdout/stderr
      files when executing the compiler.
    - Disappearing temporary stdout/stderr files are now handled gracefully.


Other
~~~~~

    - Fixed test suite to work on ecryptfs.

Revision 1.20: download - view: text, markup, annotated - select for diffs
Wed Oct 31 11:16:44 2012 UTC (12 years, 3 months ago) by asau
Branches: MAIN
CVS tags: pkgsrc-2012Q4-base, pkgsrc-2012Q4
Diff to: previous 1.19: preferred, colored
Changes since revision 1.19: +1 -2 lines
Drop superfluous PKG_DESTDIR_SUPPORT, "user-destdir" is default these days.

Revision 1.19: download - view: text, markup, annotated - select for diffs
Mon Aug 27 22:21:44 2012 UTC (12 years, 5 months ago) by wiz
Branches: MAIN
CVS tags: pkgsrc-2012Q3-base, pkgsrc-2012Q3
Diff to: previous 1.18: preferred, colored
Changes since revision 1.18: +2 -2 lines
Update to 3.1.8:

ccache 3.1.8
------------
Release date: 2012-08-11


New features and improvements
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    - Made paths to dependency files relative in order to increase cache hits.
    - Added work-around to make ccache work with buggy GCC 4.1 when creating a
      pre-compiled header.
    - Clang plugins are now hashed to catch plugin upgrades.


Bug fixes
~~~~~~~~~

    - Fixed crash when the current working directory has been removed.
    - Fixed crash when stderr is closed.
    - Corrected a corner case when parsing backslash escapes in string
      literals.
    - Paths are now correctly canonicalized when computing paths relative to
      the base directory.


Other
~~~~~

    - Made git version macro work when compiling outside of the source
      directory.
    - Fixed `static_assert` macro definition clash with GCC 4.7.

Revision 1.18: download - view: text, markup, annotated - select for diffs
Sat Jan 28 15:01:00 2012 UTC (13 years ago) by wiz
Branches: MAIN
CVS tags: pkgsrc-2012Q2-base, pkgsrc-2012Q2, pkgsrc-2012Q1-base, pkgsrc-2012Q1
Diff to: previous 1.17: preferred, colored
Changes since revision 1.17: +3 -4 lines
Update to 3.1.7. Set LICENSE.

ccache 3.1.7
------------
Release date: 2012-01-08


Bug fixes
~~~~~~~~~

    - Non-writable `CCACHE_DIR` is now handled gracefully when
      `CCACHE_READONLY` is set.
    - Made failure to create files (typically due to bad directory permissions)
      in the cache directory fatal. Previously, such failures were silently and
      erroneously flagged as "compiler produced stdout".
    - Both the `-specs=file` and `--specs=file` forms are now recognized.
    - Added recognition and hashing of GCC plugins specified with
      `-fplugin=file`.
    - `CCACHE_COMPILERCHECK` now also determines how to hash explicit specs
      files (`-specs=file`).
    - Added `CPATH`, `C_INCLUDE_PATH` and similar environment variables to the
      hash to avoid false cache hits when such variables have changed.
    - Corrected log message when unify mode is enabled.
    - Reverted the GCC bug compatibility introduced in ccache 3.1.5 for
      `-MT`/`-MQ` options with concatenated arguments. (The bug is fixed in
      recent GCC versions.)


Other
~~~~~

    - Corrected license header for `mdfour.c`.
    - Improved documentation on how to fix bad object files in the cache.



ccache 3.1.6
------------
Release date: 2011-08-21


New features and improvements
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    - Rewrite argument to `--sysroot` if `CCACHE_BASEDIR` is used.


Bug fixes
~~~~~~~~~

    - Don't crash if `getcwd()` fails.
    - Fixed alignment of ``called for preprocessing'' counter.


ccache 3.1.5
------------
Release date: 2011-05-29


New features and improvements
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    - Added a new statistics counter named ``called for preprocessing''.
    - The original command line is now logged to the file specified with
      `CCACHE_LOGFILE`.
    - Improved error logging when system calls fail.
    - Added support for rewriting absolute paths in `-F`/`-iframework` GCC
      options.
    - Improved order of statistics counters in `ccache -s` output.


Bug fixes
~~~~~~~~~

    - The `-MF`/`-MT`/`-MQ` options with concatenated argument are now handled
      correctly when they are last on the command line.
    - ccache is now bug compatible with GCC for the `-MT`/`-MQ` options with
      concatenated arguments.
    - Fixed a minor memory leak.
    - Systems that lack (and don't need to be linked with) libm are now
      supported.

Revision 1.17: download - view: text, markup, annotated - select for diffs
Sat Nov 26 04:39:35 2011 UTC (13 years, 2 months ago) by sbd
Branches: MAIN
CVS tags: pkgsrc-2011Q4-base, pkgsrc-2011Q4
Diff to: previous 1.16: preferred, colored
Changes since revision 1.16: +3 -1 lines
Add missing devel/zlib buildlink.

Bump PKGREVISION

Revision 1.16: download - view: text, markup, annotated - select for diffs
Wed Mar 2 06:40:51 2011 UTC (13 years, 11 months ago) by wiz
Branches: MAIN
CVS tags: pkgsrc-2011Q3-base, pkgsrc-2011Q3, pkgsrc-2011Q2-base, pkgsrc-2011Q2, pkgsrc-2011Q1-base, pkgsrc-2011Q1
Diff to: previous 1.15: preferred, colored
Changes since revision 1.15: +3 -2 lines
Update to 3.1.4, inspired by PR 44659 by Marko Schuetz Schmuck:

ccache 3.1.4
Bug fixes

ccache 3.1.3
Bug and portability fixes

ccache 3.1.2
Bug fixes

ccache 3.1.1
Bug fixes

ccache 3.1

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.)


Bug fixes

ccache 3.0.1
Bug fixes

ccache 3.0

General
~~~~~~~

    - ccache is now licensed under the GNU General Public License (GPL) version
      3 or later.


Upgrade notes
~~~~~~~~~~~~~

    - The way the hashes are calculated has changed, so you won't get cache
      hits for compilation results stored by older ccache versions. Because of
      this, you might as well clear the old cache directory with `ccache
      --clear` if you want, unless you plan to keep using an older ccache
      version.


New features and improvements
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    - ccache now has a ``direct mode'' where it computes a hash of the source
      code (including all included files) and compiler options without
      running the preprocessor. By not running the preprocessor, CPU usage is
      reduced; the speed is somewhere between 1 and 5 times that of ccache
      running in traditional mode, depending on the circumstances. The speedup
      will be higher when I/O is fast (e.g., when files are in the disk cache).
      The direct mode can be disabled by setting +CCACHE_NODIRECT+.

    - Support has been added for rewriting absolute paths to relative paths
      when hashing, in order to increase cache hit rate when building the same
      source code in different directories even when compiling with `-g` and
      when using absolute include directory paths. This is done by setting the
      `CCACHE_BASEDIR` environment variable to an absolute path that specifies
      which paths to rewrite.

    - Object files are now optionally stored compressed in the cache. The
      runtime cost is negligible, and more files will fit in the ccache
      directory and in the disk cache. Set `CCACHE_COMPRESS` to enable object
      file compression. Note that you can't use compression in combination with
      the hard link feature.

    - A `CCACHE_COMPILERCHECK` option has been added. This option tells ccache
      what compiler-identifying information to hash to ensure that results
      retrieved from the cache are accurate. Possible values are: none (don't
      hash anything), mtime (hash the compiler's mtime and size) and content
      (hash the content of the compiler binary). The default is mtime.

    - It is now possible to specify extra files whose contents should be
      included in the hash sum by setting the `CCACHE_EXTRAFILES` option.

    - Added support for Objective-C and Objective-C\+\+. The statistics counter
      ``not a C/C++ file'' has been renamed to ``unsupported source language''.

    - Added support for the `-x` compiler option.

    - Added support for long command-line options.

    - A `CACHEDIR.TAG` file is now created in the cache directory. See
      <http://www.brynosaurus.com/cachedir/>.

    - Messages printed to the debug log (specified by `CCACHE_LOGFILE`) have
      been improved.

    - You can relax some checks that ccache does in direct mode by setting
      `CCACHE_SLOPPINESS`. See the manual for more information.

    - `CCACHE_TEMPDIR` no longer needs to be on the same filesystem as
      `CCACHE_DIR`.

    - The default value of `CCACHE_TEMPDIR` has been changed to
      `$CCACHE_DIR/tmp` to avoid cluttering the top directory.

    - Temporary files that later will be moved into the cache are now created
      in the cache directory they will end up in. This makes ccache more
      friendly to Linux's directory layout.

    - Improved the test suite and added tests for most of the new
      functionality. It's now also possible to specify a subset of tests to
      run.

    - Standard error output from the compiler is now only stored in the cache
      if it's non-empty.

    - If the compiler produces no object file or an empty object file, but
      gives a zero exit status (could be due to a file system problem, a buggy
      program specified by `CCACHE_PREFIX`, etc.), ccache copes with it
      properly.

    - Added `installcheck` and `distcheck` make targets.

    - Clarified cache size limit options' and cleanup semantics.

    - Improved display of cache max size values.

    - The following options are no longer hashed in the preprocessor mode:
      `-imacros`, `-imultilib`, `-iprefix`, `-iquote`, `-isysroot`,
      `-iwithprefix`, `-iwithprefixbefore`, `-nostdinc`, `-nostdinc++` and
      `-U`.

Revision 1.15: download - view: text, markup, annotated - select for diffs
Thu May 22 14:20:08 2008 UTC (16 years, 8 months ago) by tnn
Branches: MAIN
CVS tags: pkgsrc-2010Q4-base, pkgsrc-2010Q4, pkgsrc-2010Q3-base, pkgsrc-2010Q3, pkgsrc-2010Q2-base, pkgsrc-2010Q2, pkgsrc-2010Q1-base, pkgsrc-2010Q1, pkgsrc-2009Q4-base, pkgsrc-2009Q4, pkgsrc-2009Q3-base, pkgsrc-2009Q3, pkgsrc-2009Q2-base, pkgsrc-2009Q2, pkgsrc-2009Q1-base, pkgsrc-2009Q1, pkgsrc-2008Q4-base, pkgsrc-2008Q4, pkgsrc-2008Q3-base, pkgsrc-2008Q3, pkgsrc-2008Q2-base, pkgsrc-2008Q2, cwrapper, cube-native-xorg-base, cube-native-xorg
Diff to: previous 1.14: preferred, colored
Changes since revision 1.14: +7 -1 lines
Allow overriding the default cache size cap at compile time.

Revision 1.14: download - view: text, markup, annotated - select for diffs
Sat Mar 8 13:49:10 2008 UTC (16 years, 11 months ago) by joerg
Branches: MAIN
CVS tags: pkgsrc-2008Q1-base, pkgsrc-2008Q1
Diff to: previous 1.13: preferred, colored
Changes since revision 1.13: +2 -1 lines
DESTDIR clean.

Revision 1.13: download - view: text, markup, annotated - select for diffs
Sun Nov 18 10:39:56 2007 UTC (17 years, 3 months ago) by wiz
Branches: MAIN
CVS tags: pkgsrc-2007Q4-base, pkgsrc-2007Q4
Diff to: previous 1.12: preferred, colored
Changes since revision 1.12: +2 -2 lines
Update MASTER_SITES/HOMEPAGE, from Zafer Aydogan.

Revision 1.12: download - view: text, markup, annotated - select for diffs
Wed Sep 19 06:46:51 2007 UTC (17 years, 5 months ago) by tron
Branches: MAIN
CVS tags: pkgsrc-2007Q3-base, pkgsrc-2007Q3
Diff to: previous 1.11: preferred, colored
Changes since revision 1.11: +2 -2 lines
Resign as maintainer of all the packages which I'm no longer using.

Revision 1.11: download - view: text, markup, annotated - select for diffs
Sat Oct 14 08:24:31 2006 UTC (18 years, 4 months ago) by rillig
Branches: MAIN
CVS tags: pkgsrc-2007Q2-base, pkgsrc-2007Q2, pkgsrc-2007Q1-base, pkgsrc-2007Q1, pkgsrc-2006Q4-base, pkgsrc-2006Q4
Diff to: previous 1.10: preferred, colored
Changes since revision 1.10: +2 -2 lines
Fixed PKGMANDIR.

Revision 1.10: download - view: text, markup, annotated - select for diffs
Mon Apr 11 21:45:18 2005 UTC (19 years, 10 months ago) by tv
Branches: MAIN
CVS tags: pkgsrc-2006Q3-base, pkgsrc-2006Q3, pkgsrc-2006Q2-base, pkgsrc-2006Q2, pkgsrc-2006Q1-base, pkgsrc-2006Q1, pkgsrc-2005Q4-base, pkgsrc-2005Q4, pkgsrc-2005Q3-base, pkgsrc-2005Q3, pkgsrc-2005Q2-base, pkgsrc-2005Q2
Diff to: previous 1.9: preferred, colored
Changes since revision 1.9: +1 -2 lines
Remove USE_BUILDLINK3 and NO_BUILDLINK; these are no longer used.

Revision 1.9: download - view: text, markup, annotated - select for diffs
Thu Oct 14 02:39:19 2004 UTC (20 years, 4 months ago) by xtraeme
Branches: MAIN
CVS tags: pkgsrc-2005Q1-base, pkgsrc-2005Q1, pkgsrc-2004Q4-base, pkgsrc-2004Q4
Diff to: previous 1.8: preferred, colored
Changes since revision 1.8: +2 -3 lines
Update devel/ccache to 2.4.

Changes:

	* Added CCACHE_READONLY option.
	* Added CCACHE_TEMPDIR option.
	* Fixed handling of hard-linked compiler on AIX.
	* Added O_BINARY support, to try and support win32 compiles.
	* Show cache directory in stats output.
	* Fixed handling of HOME environment variable.

NOTE: This release changes the hash input slighly, so you will probably
find that you will not get any hits against your existing cache when
you upgrade.

Revision 1.8: download - view: text, markup, annotated - select for diffs
Wed Mar 10 22:41:30 2004 UTC (20 years, 11 months ago) by minskim
Branches: MAIN
CVS tags: pkgsrc-2004Q3-base, pkgsrc-2004Q3, pkgsrc-2004Q2-base, pkgsrc-2004Q2, pkgsrc-2004Q1-base, pkgsrc-2004Q1
Diff to: previous 1.7: preferred, colored
Changes since revision 1.7: +3 -1 lines
Enable pkgviews installation to allow to build other pkgviews packages
using ccache.  Noted by Ossi Herrala in PR pkg/24728.

Revision 1.7: download - view: text, markup, annotated - select for diffs
Thu Feb 12 07:11:43 2004 UTC (21 years ago) by jlam
Branches: MAIN
Diff to: previous 1.6: preferred, colored
Changes since revision 1.6: +2 -1 lines
Update devel/ccache to 2.3nb1.  Changes from version 2.3 include adding
a new environment variable CCACHE_HASHCC whose value may be used to
override the compiler-specific addition to the hash value used to
distinguish between two compiles.  This is useful where the compiler is
a shell script generated on-the-fly that executes the real compiler.
This allows ccache to function correctly within the pkgsrc
infrastructure.

Revision 1.6: download - view: text, markup, annotated - select for diffs
Sat Jan 31 21:36:54 2004 UTC (21 years ago) by jlam
Branches: MAIN
Diff to: previous 1.5: preferred, colored
Changes since revision 1.5: +6 -3 lines
Update devel/ccache to 2.3.  Changes from version 2.2 include:

	Added CCACHE_UMASK option
	Added support for compilation of .i files
	Fixed bug with DEPENDENCIES_OUTPUT flag
	Added support for more -Mx options
	Added separate stderr channel for distcc
	Improved test suite

Revision 1.5: download - view: text, markup, annotated - select for diffs
Thu Jul 17 21:29:48 2003 UTC (21 years, 7 months ago) by grant
Branches: MAIN
CVS tags: pkgsrc-2003Q4-base, pkgsrc-2003Q4
Diff to: previous 1.4: preferred, colored
Changes since revision 1.4: +2 -2 lines
s/netbsd.org/NetBSD.org/

Revision 1.4: download - view: text, markup, annotated - select for diffs
Sat Jul 5 22:06:36 2003 UTC (21 years, 7 months ago) by chris
Branches: MAIN
Diff to: previous 1.3: preferred, colored
Changes since revision 1.3: +2 -2 lines
Update ccache to version 2.2.  No clear list of changes since 1.8 is available.
However changes since 2.1.1 include:
# added a test suite
# better integration with distcc
# added CCACHE_PREFIX option
# disabled hard links by default
# recognise some more gcc options (eg. profiling)
# added --ccache-skip option

Revision 1.3: download - view: text, markup, annotated - select for diffs
Tue May 7 05:22:50 2002 UTC (22 years, 9 months ago) by tron
Branches: MAIN
CVS tags: pkgviews-base, pkgviews, netbsd-1-6-RELEASE-base, netbsd-1-6-1-base, netbsd-1-6-1, netbsd-1-6, buildlink2-base, buildlink2
Diff to: previous 1.2: preferred, colored
Changes since revision 1.2: +3 -3 lines
Update "ccache" package to version 1.8. Changes since version 1.5:
- fixed warning output line numbers
- added some more C++ extensions
- fixed a minor md4 hashing bug
- added support for some of the -M compiler options

Revision 1.2: download - view: text, markup, annotated - select for diffs
Mon Apr 8 17:39:38 2002 UTC (22 years, 10 months ago) by wiz
Branches: MAIN
CVS tags: netbsd-1-5-PATCH003
Diff to: previous 1.1: preferred, colored
Changes since revision 1.1: +5 -4 lines
pkglint, and remove a line from the DESCR.

Revision 1.1: download - view: text, markup, annotated - select for diffs
Mon Apr 8 17:07:53 2002 UTC (22 years, 10 months ago) by kent
Branches: MAIN
A compiler cache.
http://ccache.samba.org/

Diff request

This form allows you to request diffs between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.

Log view options

CVSweb <webmaster@jp.NetBSD.org>