]> git.ipfire.org Git - thirdparty/ccache.git/log
thirdparty/ccache.git
2 years agorefactor: Remove dependency on core from util
Joel Rosdahl [Thu, 3 Aug 2023 11:37:25 +0000 (13:37 +0200)] 
refactor: Remove dependency on core from util

2 years agofeat: Include maximum size/files in --print-stats
Joel Rosdahl [Thu, 3 Aug 2023 11:24:32 +0000 (13:24 +0200)] 
feat: Include maximum size/files in --print-stats

New output:

- max_cache_size_kibibyte: maximum size of local storage in KiB (0 for
  no limit)
- max_files_in_cache: maximum number of files in local storage (0 for no
  limit)

Closes #1315.

2 years agorefactor: fs::path-ify ignore_header_paths and related functions
Joel Rosdahl [Thu, 3 Aug 2023 06:44:21 +0000 (08:44 +0200)] 
refactor: fs::path-ify ignore_header_paths and related functions

2 years agobump: Upgrade to fmt 8a4bec5cf53387356738a06ba0cf4fdf086241ae (10.0.0+)
Joel Rosdahl [Wed, 2 Aug 2023 15:20:22 +0000 (17:20 +0200)] 
bump: Upgrade to fmt 8a4bec5cf53387356738a06ba0cf4fdf086241ae (10.0.0+)

2 years agorefactor: fs::path-ify is_ccache_executable
Joel Rosdahl [Wed, 2 Aug 2023 11:01:38 +0000 (13:01 +0200)] 
refactor: fs::path-ify is_ccache_executable

2 years agorefactor: Rename and improve Stat class to util::DirEntry
Joel Rosdahl [Mon, 31 Jul 2023 17:12:30 +0000 (19:12 +0200)] 
refactor: Rename and improve Stat class to util::DirEntry

2 years agorefactor: Move core/wincompat.hpp to util
Joel Rosdahl [Thu, 27 Jul 2023 20:05:27 +0000 (22:05 +0200)] 
refactor: Move core/wincompat.hpp to util

2 years agorefactor: Remove Stat::OnError::throw_error
Joel Rosdahl [Thu, 27 Jul 2023 17:11:09 +0000 (19:11 +0200)] 
refactor: Remove Stat::OnError::throw_error

This is in preparation for moving the Stat class to util where we don't
want to know about core::Error.

2 years agorefactor: Move Util::traverse to util
Joel Rosdahl [Thu, 27 Jul 2023 13:37:10 +0000 (15:37 +0200)] 
refactor: Move Util::traverse to util

2 years agorefactor: Move Util::send_to_fd to core
Joel Rosdahl [Tue, 25 Jul 2023 19:43:15 +0000 (21:43 +0200)] 
refactor: Move Util::send_to_fd to core

2 years agochore: Tweak documentation related to debug level
Joel Rosdahl [Wed, 2 Aug 2023 11:35:49 +0000 (13:35 +0200)] 
chore: Tweak documentation related to debug level

2 years agofeat: Allow specifying debug level (#1312)
dsilakov [Wed, 2 Aug 2023 11:24:49 +0000 (14:24 +0300)] 
feat: Allow specifying debug level (#1312)

Allow specifying debug level via a debug_level option or CCACHE_DEBUGLEVEL
environment variable.

With debug_level=2 (default), ccache behavior's in debug mode is not changed.

With debug_level=1, ccache will only dump *.ccache-log files (and not the
*input* ones). This is useful for getting per-file caching results.

2 years agofix: Work around GCC 12.3 bug 109241
Joel Rosdahl [Tue, 1 Aug 2023 10:30:12 +0000 (12:30 +0200)] 
fix: Work around GCC 12.3 bug 109241

See also #1289.

2 years agorefactor: Remove superfluous util:: qualifications
Joel Rosdahl [Tue, 25 Jul 2023 06:55:14 +0000 (08:55 +0200)] 
refactor: Remove superfluous util:: qualifications

2 years agobump: Upgrade to xxHash 0.8.2
Joel Rosdahl [Mon, 24 Jul 2023 17:18:05 +0000 (19:18 +0200)] 
bump: Upgrade to xxHash 0.8.2

Closes #1085.

2 years agorefactor: Improve util::write_fd usage
Joel Rosdahl [Mon, 24 Jul 2023 13:29:37 +0000 (15:29 +0200)] 
refactor: Improve util::write_fd usage

2 years agorefactor: Improve util::read_file usage
Joel Rosdahl [Mon, 24 Jul 2023 11:51:42 +0000 (13:51 +0200)] 
refactor: Improve util::read_file usage

2 years agorefactor: Improve util::read_fd usage
Joel Rosdahl [Sun, 23 Jul 2023 14:53:25 +0000 (16:53 +0200)] 
refactor: Improve util::read_fd usage

2 years agoenhance: Add util::read_fd variant that returns all data at once
Joel Rosdahl [Sun, 23 Jul 2023 06:50:56 +0000 (08:50 +0200)] 
enhance: Add util::read_fd variant that returns all data at once

2 years agorefactor: Switch to tl::expected instead of nonstd::expected
Joel Rosdahl [Thu, 20 Jul 2023 08:30:06 +0000 (10:30 +0200)] 
refactor: Switch to tl::expected instead of nonstd::expected

2 years agorefactor: Use util::{throw_on_error,value_or_throw}
Joel Rosdahl [Thu, 20 Jul 2023 07:14:53 +0000 (09:14 +0200)] 
refactor: Use util::{throw_on_error,value_or_throw}

2 years agofix: Properly signal error on copy failure
Joel Rosdahl [Wed, 19 Jul 2023 13:55:52 +0000 (15:55 +0200)] 
fix: Properly signal error on copy failure

Restores behavior before 73a4585a58d5ab818a864485708d706532dfa3b4.

2 years agorefactor: Move util::rename to util::filesystem
Joel Rosdahl [Wed, 19 Jul 2023 06:43:38 +0000 (08:43 +0200)] 
refactor: Move util::rename to util::filesystem

2 years agorefactor: Move Util::get_hostname to util
Joel Rosdahl [Wed, 19 Jul 2023 06:33:25 +0000 (08:33 +0200)] 
refactor: Move Util::get_hostname to util

2 years agorefactor: Move Util::get_home_directory to Config
Joel Rosdahl [Tue, 18 Jul 2023 19:25:26 +0000 (21:25 +0200)] 
refactor: Move Util::get_home_directory to Config

2 years agorefactor: Move Util::ensure_dir_exists to util
Joel Rosdahl [Tue, 18 Jul 2023 17:26:13 +0000 (19:26 +0200)] 
refactor: Move Util::ensure_dir_exists to util

2 years agorefactor: Move Util::unlink_* to util
Joel Rosdahl [Tue, 18 Jul 2023 12:06:37 +0000 (14:06 +0200)] 
refactor: Move Util::unlink_* to util

2 years agorefactor: Let util::rename return std::error_code
Joel Rosdahl [Tue, 18 Jul 2023 08:19:05 +0000 (10:19 +0200)] 
refactor: Let util::rename return std::error_code

2 years agorefactor: Move Util::is_ccache_executable to ccache
Joel Rosdahl [Mon, 17 Jul 2023 16:46:27 +0000 (18:46 +0200)] 
refactor: Move Util::is_ccache_executable to ccache

2 years agochore: Clean up config.h
Joel Rosdahl [Mon, 17 Jul 2023 16:36:06 +0000 (18:36 +0200)] 
chore: Clean up config.h

2 years agorefactor: Move Util::localtime to util
Joel Rosdahl [Mon, 17 Jul 2023 13:46:19 +0000 (15:46 +0200)] 
refactor: Move Util::localtime to util

2 years agochore: Improve code style
Joel Rosdahl [Mon, 17 Jul 2023 13:41:06 +0000 (15:41 +0200)] 
chore: Improve code style

2 years agorefactor: Move Util::is_precompiled_header to argprocessing
Joel Rosdahl [Mon, 17 Jul 2023 13:38:57 +0000 (15:38 +0200)] 
refactor: Move Util::is_precompiled_header to argprocessing

2 years agorefactor: Move Util::to_lowercase to util
Joel Rosdahl [Mon, 17 Jul 2023 13:27:07 +0000 (15:27 +0200)] 
refactor: Move Util::to_lowercase to util

2 years agochore: Add note about using util::rename instead of fs::rename
Joel Rosdahl [Mon, 17 Jul 2023 10:36:15 +0000 (12:36 +0200)] 
chore: Add note about using util::rename instead of fs::rename

2 years agorefactor: Use std::filesystem::current_path
Joel Rosdahl [Mon, 17 Jul 2023 07:10:16 +0000 (09:10 +0200)] 
refactor: Use std::filesystem::current_path

2 years agorefactor: Improve std::filesystem wrappers
Joel Rosdahl [Mon, 17 Jul 2023 07:06:05 +0000 (09:06 +0200)] 
refactor: Improve std::filesystem wrappers

I couldn't figure out how to make the templated versions support both

    path current_path();

and

    void current_path(const path& p);

so using preprocessor macros instead.

2 years agorefactor: Use std::filesystem::remove_all
Joel Rosdahl [Sun, 16 Jul 2023 16:26:45 +0000 (18:26 +0200)] 
refactor: Use std::filesystem::remove_all

2 years agochore: Improve util::format_argv_for_logging
Joel Rosdahl [Sun, 16 Jul 2023 15:36:58 +0000 (17:36 +0200)] 
chore: Improve util::format_argv_for_logging

2 years agorefactor: Move Util::format_argv_for_logging to util
Joel Rosdahl [Sun, 16 Jul 2023 15:26:23 +0000 (17:26 +0200)] 
refactor: Move Util::format_argv_for_logging to util

2 years agorefactor: Move Util::get_{actual,apparent}_cwd to util
Joel Rosdahl [Sun, 16 Jul 2023 12:48:36 +0000 (14:48 +0200)] 
refactor: Move Util::get_{actual,apparent}_cwd to util

2 years agorefactor: Use std::filesystem::create_director{ies,y}
Joel Rosdahl [Sun, 16 Jul 2023 08:22:06 +0000 (10:22 +0200)] 
refactor: Use std::filesystem::create_director{ies,y}

2 years agorefactor: Move Util::split_into_* to util
Joel Rosdahl [Sun, 16 Jul 2023 07:18:57 +0000 (09:18 +0200)] 
refactor: Move Util::split_into_* to util

2 years agorefactor: Move Util::size_change_kibibyte to LocalStorage
Joel Rosdahl [Sun, 16 Jul 2023 07:13:52 +0000 (09:13 +0200)] 
refactor: Move Util::size_change_kibibyte to LocalStorage

2 years agorefactor: Move Util::set_cloexec_flag to util
Joel Rosdahl [Sat, 15 Jul 2023 19:04:51 +0000 (21:04 +0200)] 
refactor: Move Util::set_cloexec_flag to util

2 years agorefactor: Create util::filesystem wrappers returning nonstd::expected
Joel Rosdahl [Sat, 15 Jul 2023 14:06:31 +0000 (16:06 +0200)] 
refactor: Create util::filesystem wrappers returning nonstd::expected

2 years agorefactor: Move Util::fallocate to util
Joel Rosdahl [Sat, 15 Jul 2023 08:41:25 +0000 (10:41 +0200)] 
refactor: Move Util::fallocate to util

2 years agochore: Fix grammar in comment
Joel Rosdahl [Fri, 14 Jul 2023 18:50:52 +0000 (20:50 +0200)] 
chore: Fix grammar in comment

2 years agorefactor: Move UmaskScope to util
Joel Rosdahl [Fri, 14 Jul 2023 18:46:37 +0000 (20:46 +0200)] 
refactor: Move UmaskScope to util

2 years agorefactor: Move Util::{g,s}et_umask to util
Joel Rosdahl [Fri, 14 Jul 2023 18:43:28 +0000 (20:43 +0200)] 
refactor: Move Util::{g,s}et_umask to util

2 years agorefactor: Use fs alias for std::filesystem
Joel Rosdahl [Fri, 14 Jul 2023 18:33:24 +0000 (20:33 +0200)] 
refactor: Use fs alias for std::filesystem

2 years agofix: Pass error code to fs::temp_directory_path as intended
Joel Rosdahl [Fri, 14 Jul 2023 15:15:30 +0000 (17:15 +0200)] 
fix: Pass error code to fs::temp_directory_path as intended

As noted by Thibault Odorico.

2 years agorefactor: Move Util::parse_duration to util
Joel Rosdahl [Fri, 14 Jul 2023 06:14:09 +0000 (08:14 +0200)] 
refactor: Move Util::parse_duration to util

2 years agorefactor: Use std::filesystem::current_path
Joel Rosdahl [Wed, 12 Jul 2023 19:20:04 +0000 (21:20 +0200)] 
refactor: Use std::filesystem::current_path

2 years agorefactor: Use std::filesystem::canonical
Joel Rosdahl [Wed, 12 Jul 2023 19:15:31 +0000 (21:15 +0200)] 
refactor: Use std::filesystem::canonical

2 years agorefactor: Use std::filesystem::temp_directory_path
Joel Rosdahl [Wed, 12 Jul 2023 18:42:42 +0000 (20:42 +0200)] 
refactor: Use std::filesystem::temp_directory_path

2 years agochore: Tweak code style
Joel Rosdahl [Wed, 12 Jul 2023 11:57:07 +0000 (13:57 +0200)] 
chore: Tweak code style

2 years agobump: Upgrade to hiredis 1.2.0
Joel Rosdahl [Wed, 12 Jul 2023 09:18:07 +0000 (11:18 +0200)] 
bump: Upgrade to hiredis 1.2.0

2 years agofeat: Support multiple -Xarch_* arguments matching -arch (#1131)
Tadej Novak [Wed, 12 Jul 2023 11:50:31 +0000 (13:50 +0200)] 
feat: Support multiple -Xarch_* arguments matching -arch (#1131)

2 years agorefactor: Move Util::rename to util
Joel Rosdahl [Tue, 11 Jul 2023 13:08:29 +0000 (15:08 +0200)] 
refactor: Move Util::rename to util

2 years agorefactor: Use fs::read_symlink instead of custom implementation
Joel Rosdahl [Tue, 11 Jul 2023 06:07:28 +0000 (08:07 +0200)] 
refactor: Use fs::read_symlink instead of custom implementation

2 years agorefactor: Get rid of asprintf usage and Windows compatibility wrapper
Joel Rosdahl [Mon, 10 Jul 2023 06:15:57 +0000 (08:15 +0200)] 
refactor: Get rid of asprintf usage and Windows compatibility wrapper

2 years agorefactor: Use fs::create_hard_link instead of custom implementation
Joel Rosdahl [Sun, 9 Jul 2023 19:53:54 +0000 (21:53 +0200)] 
refactor: Use fs::create_hard_link instead of custom implementation

2 years agorefactor: Move copy_file to util
Joel Rosdahl [Sun, 9 Jul 2023 17:08:20 +0000 (19:08 +0200)] 
refactor: Move copy_file to util

2 years agorefactor: Move clone_hard_link_or_copy_file to local storage class
Joel Rosdahl [Sun, 9 Jul 2023 16:36:31 +0000 (18:36 +0200)] 
refactor: Move clone_hard_link_or_copy_file to local storage class

2 years agorefactor: Move environment utility functions to util
Joel Rosdahl [Fri, 7 Jul 2023 14:42:23 +0000 (16:42 +0200)] 
refactor: Move environment utility functions to util

2 years agorefactor: Move functions for endian conversion to util
Joel Rosdahl [Fri, 7 Jul 2023 14:31:31 +0000 (16:31 +0200)] 
refactor: Move functions for endian conversion to util

2 years agorefactor: Move data type conversion utilities to util
Joel Rosdahl [Fri, 7 Jul 2023 14:24:40 +0000 (16:24 +0200)] 
refactor: Move data type conversion utilities to util

2 years agorefactor: Improve InodeCache::get signature
Joel Rosdahl [Fri, 7 Jul 2023 14:01:59 +0000 (16:01 +0200)] 
refactor: Improve InodeCache::get signature

2 years agochore: Remove now unused Hash::HashType distinction
Joel Rosdahl [Fri, 7 Jul 2023 13:44:28 +0000 (15:44 +0200)] 
chore: Remove now unused Hash::HashType distinction

After 561be2085df94b3c35dd803e56668e6feafc93b7 hash debugging will never
be enabled for a Hash instance that hashes binary data, so remove the
now unused Hash::HashType enum and related code.

2 years agorefactor: Use nonstd::span for data+size in more places
Joel Rosdahl [Fri, 7 Jul 2023 13:35:33 +0000 (15:35 +0200)] 
refactor: Use nonstd::span for data+size in more places

2 years agorefactor: Use std::array for hash digests instead of custom class
Joel Rosdahl [Fri, 7 Jul 2023 10:00:24 +0000 (12:00 +0200)] 
refactor: Use std::array for hash digests instead of custom class

2 years agorefactor: Improve format_base16/format_base32hex implementations
Joel Rosdahl [Fri, 7 Jul 2023 09:17:43 +0000 (11:17 +0200)] 
refactor: Improve format_base16/format_base32hex implementations

2 years agorefactor: Move format_base16/format_base32hex to util
Joel Rosdahl [Fri, 7 Jul 2023 08:29:40 +0000 (10:29 +0200)] 
refactor: Move format_base16/format_base32hex to util

2 years agochore: Add missing #include statements
Joel Rosdahl [Fri, 7 Jul 2023 08:29:18 +0000 (10:29 +0200)] 
chore: Add missing #include statements

2 years agobump: Upgrade to BLAKE3 1.4.1
Joel Rosdahl [Fri, 7 Jul 2023 06:53:31 +0000 (08:53 +0200)] 
bump: Upgrade to BLAKE3 1.4.1

2 years agochore: Tweak code style
Joel Rosdahl [Thu, 6 Jul 2023 16:51:13 +0000 (18:51 +0200)] 
chore: Tweak code style

2 years agofeat: Kill Windows compiler subprocess when ccache is aborted (#1274)
Andreas Reischuck [Thu, 6 Jul 2023 16:35:01 +0000 (18:35 +0200)] 
feat: Kill Windows compiler subprocess when ccache is aborted (#1274)

2 years agofeat: Support escaping dollar signs in configuration values
Joel Rosdahl [Sun, 2 Jul 2023 08:44:16 +0000 (10:44 +0200)] 
feat: Support escaping dollar signs in configuration values

2 years agofeat: Support environment variables in all configuration items
Joel Rosdahl [Sun, 2 Jul 2023 08:36:13 +0000 (10:36 +0200)] 
feat: Support environment variables in all configuration items

As mentioned in #1307.

2 years agochore: Remove stray -warnings-as-errors entry in .clang-tidy
Joel Rosdahl [Sat, 1 Jul 2023 08:33:17 +0000 (10:33 +0200)] 
chore: Remove stray -warnings-as-errors entry in .clang-tidy

2 years agochore: Improve log message for nonexistent header file for manifest
Joel Rosdahl [Sat, 1 Jul 2023 08:00:40 +0000 (10:00 +0200)] 
chore: Improve log message for nonexistent header file for manifest

2 years agochore: Make some constructors explicit
Joel Rosdahl [Fri, 30 Jun 2023 20:00:13 +0000 (22:00 +0200)] 
chore: Make some constructors explicit

2 years agofeat: Expand environment variables in debug_dir configuration (#1307)
cupu [Sun, 2 Jul 2023 08:34:13 +0000 (10:34 +0200)] 
feat: Expand environment variables in debug_dir configuration (#1307)

2 years agofix: Improve nvcc handling of -Xcompiler and --Werror (#1304)
Andrew Hardin [Thu, 29 Jun 2023 19:38:06 +0000 (13:38 -0600)] 
fix: Improve nvcc handling of -Xcompiler and --Werror (#1304)

2 years agofix: Improve MSVC .rsp file parsing (#1303)
Jiri Hörner [Thu, 29 Jun 2023 19:03:59 +0000 (21:03 +0200)] 
fix: Improve MSVC .rsp file parsing (#1303)

2 years agofeat: Let ignore_options/CCACHE_IGNOREOPTIONS also skip option
Joel Rosdahl [Wed, 21 Jun 2023 19:22:44 +0000 (21:22 +0200)] 
feat: Let ignore_options/CCACHE_IGNOREOPTIONS also skip option

The ignore_options (CCACHE_IGNOREOPTIONS) configuration makes ccache
exclude matching compiler options from the input hash. This commit also
makes ccache skip matching compiler options from any special processing,
similar to how --ccache-skip works.

As discussed in #1284 and #1301.

2 years agochore: Update typos configuration
Joel Rosdahl [Wed, 14 Jun 2023 18:49:31 +0000 (20:49 +0200)] 
chore: Update typos configuration

2 years agofeat: Don't hash /Fd, /FS or /MP (#1298)
huangqinjin [Wed, 21 Jun 2023 18:04:27 +0000 (02:04 +0800)] 
feat: Don't hash /Fd, /FS or /MP (#1298)

/Fd is to specify the file name of output PDB. But currently ccache only
supports /Z7 which doesn't generate PDB at compile time.

/FS forces writes to PDB to be serialized through MSPDBSRV.EXE.
It shouldn't affect generated files and it has no effect for /Z7.

/MP enables /FS. It creates multiple compiler instances and simultaneously
compile multiple source files which is not supported by ccache.

2 years agochore: Fix bad markup in NEWS.adoc
Joel Rosdahl [Thu, 15 Jun 2023 11:13:06 +0000 (13:13 +0200)] 
chore: Fix bad markup in NEWS.adoc

2 years agochore: Update authors v4.8.2
Joel Rosdahl [Mon, 12 Jun 2023 19:17:31 +0000 (21:17 +0200)] 
chore: Update authors

2 years agochore: Update NEWS
Joel Rosdahl [Mon, 12 Jun 2023 18:58:30 +0000 (20:58 +0200)] 
chore: Update NEWS

2 years agochore: Update .mailmap
Joel Rosdahl [Sun, 11 Jun 2023 16:11:00 +0000 (18:11 +0200)] 
chore: Update .mailmap

2 years agobump: Upgrade to cpp-httplib 0.12.6
Joel Rosdahl [Sat, 10 Jun 2023 11:25:40 +0000 (13:25 +0200)] 
bump: Upgrade to cpp-httplib 0.12.6

2 years agobump: Upgrade to BLAKE3 1.4.0
Joel Rosdahl [Fri, 9 Jun 2023 14:21:47 +0000 (16:21 +0200)] 
bump: Upgrade to BLAKE3 1.4.0

2 years agorefactor: Use std::size to compute array size (#1297)
Gregor Jasny [Wed, 7 Jun 2023 19:11:51 +0000 (21:11 +0200)] 
refactor: Use std::size to compute array size (#1297)

2 years agobuild: Fix Xcode build of zstd (#1296)
Gregor Jasny [Wed, 7 Jun 2023 19:11:07 +0000 (21:11 +0200)] 
build: Fix Xcode build of zstd (#1296)

Reproducer (CMake 3.26.4, Xcode 14.3):

    cmake -B _build -GXcode -DCMAKE_OSX_ARCHITECTURES=x86_64 \
          -DZSTD_FROM_INTERNET=ON -DREDIS_STORAGE_BACKEND=OFF
    cmake --build _build

See facebook/zstd#3622

2 years agofix: Keep the order of MSVC showIncludes output (#1295)
huangqinjin [Wed, 7 Jun 2023 06:51:38 +0000 (14:51 +0800)] 
fix: Keep the order of MSVC showIncludes output (#1295)

The bug is introduced in commit 3ec0d4ec961cb0c67ff1603b83a6026d9f3abbb5.

2 years agofix: Don't pass -v to the preprocessor
Joel Rosdahl [Tue, 6 Jun 2023 19:42:12 +0000 (21:42 +0200)] 
fix: Don't pass -v to the preprocessor

The -v option tells the compiler to print various diagnostics to stdout,
including randomly generated filenames. When ccache calls the
preprocessor and -v is on the command line, the random information will
become part of the input hash, making the preprocessor mode always
produce cache misses.

Fix this by only passing -v when compiling, not preprocessing.

Closes #1293.

2 years agoMerge pull request #1290 from rkitover/cmake-fixes
Joel Rosdahl [Tue, 6 Jun 2023 19:34:18 +0000 (21:34 +0200)] 
Merge pull request #1290 from rkitover/cmake-fixes