summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* test: Fix test failure in GitHub CI mingw64 jobsHEADmasterJoel Rosdahl2023-05-071-2/+4
|
* doc: Add remote file storage example with URL-encoded spaceJoel Rosdahl2023-05-061-1/+1
| | | | As suggested in #1281.
* bump: Upgrade to doctest 2.4.11Joel Rosdahl2023-04-221-9/+24
| | | | Fixes #1194.
* chore: Suppress clang-tidy warnings we don't want to fixJoel Rosdahl2023-04-191-0/+3
|
* refactor: Improve calculate_result_and_manifest_key parametersJoel Rosdahl2023-04-191-12/+12
| | | | | As suggested by clang-tidy (readability-suspicious-call-argument,-warnings-as-errors).
* refactor: Use constructor member initializer listsJoel Rosdahl2023-04-192-6/+4
| | | | | As suggested by clang-tidy (cppcoreguidelines-prefer-member-initializer).
* refactor: Use std::unique_ptr for data in util::BytesJoel Rosdahl2023-04-192-51/+44
|
* chore: Sort .clang-tidy check listJoel Rosdahl2023-04-192-64/+67
|
* chore: Add comments for all statistics countersJoel Rosdahl2023-04-191-0/+120
| | | | As suggested in discussion #1271.
* refactor: Extract MSVC debug option logic to a functionJoel Rosdahl2023-04-191-14/+19
|
* fix: Limit MSVC debug flag detection to documented parameters (#1263)Stephan Rohmen2023-04-191-3/+7
|
* fix: Don't add additional depend mode options after Clang -- optionJoel Rosdahl2023-04-172-1/+16
| | | | | | | | | | | | | With the depend mode enabled, ccache executes the original command line verbatim, potentially with the addition of a few extra options. However, for clang or clang-cl it is not possible to simply append the additional options to the end of the original command line since there may be a "--" option to indicate the end of options. Fix this by inserting the additional options directly after the compiler instead of at the end. Fixes #1273.
* bump: Update to zstd 1.5.5 (#1272)Raihaan Shouhell2023-04-171-2/+2
|
* fix: Find Ccache version from lightweight Git tagJoel Rosdahl2023-04-171-1/+1
| | | | | | | | | | | | | | Ccache calculates its version from a matching Git tag by using the "git describe" command, which only considers annotated tags. All ccache tags are annotated. However, when running a GitHub action job for a tag the local Git repository is (at least by default) a shallow clone with the tag being converted to a lightweight tag. This makes "git describe" not see the tag. Fix this by adding --tags to "git describe" to make it consider lightweight tags as well. Fixes #1270.
* test: Add test for default value of inode_cacheJoel Rosdahl2023-04-171-0/+1
|
* fix: Make output of "ccache -k max_size" parsableJoel Rosdahl2023-04-171-8/+9
|
* ci: Disable Windows 64-bit MSBuild jobs for nowJoel Rosdahl2023-04-171-20/+22
| | | | | | The Windows VS2019 64-bit MSBuild and Windows VS2022 64-bit MSBuild GitHub actions jobs have started failing on master due to some changes in the CI environment. See issue #1278.
* feat: Don't treat /Zi as unsupported for clang-cl (#1266)Tobias Hieta2023-03-282-1/+28
| | | | | | | | For MSVC /Zi is unsupported since it writes a additional .pdb file per each .obj file and it creates some messy interaction with ccache. But for clang-cl /Zi is actually treated as /Z7 and only embeds the debug info in the .obj file so it makes sense to allow this flag when compiling with clang-cl.
* Update NEWSJoel Rosdahl2023-03-221-0/+11
| | | | (cherry picked from commit 9b1033f3ae534e5aad02c10f663b589b8f28c026)
* build: Make ccache compile with clang-cl on Windows (#1260)Tobias Hieta2023-03-163-6/+7
|
* chore: Update copyright yearsv4.8Joel Rosdahl2023-03-122-2/+2
|
* chore: Update NEWSJoel Rosdahl2023-03-121-0/+141
|
* Revert "bump: Upgrade to zstd 1.5.4"Joel Rosdahl2023-03-121-2/+2
| | | | | | This reverts commit 1853902f75567089a5ef46511573c7f352c6c232. zstd 1.5.4 requires CMake 3.18+ (by mistake), so downgrade for now.
* chore: Fix typosJoel Rosdahl2023-03-112-4/+4
|
* chore: Add typos configurationJoel Rosdahl2023-03-112-1/+10
|
* feat: Support overriding MSVC /Z* optionsJoel Rosdahl2023-03-083-4/+63
| | | | | | | | | | | | MSVC options /Zi and /ZI are too hard since they produce separate PDB files. /Z7 is OK, but if the command line contains /Zi or /ZI followed by /Z7, MSVC will use the latter (with a warning) but ccache will still consider the command line too hard. This commit makes ccache understand that only the last /Z* option will be used and thus accepts the command line if the last /Z* option is /Z7. Closes #1239.
* refactor: Improve InodeCache::get signatureJoel Rosdahl2023-03-074-60/+40
|
* feat: Make it possible to disable ccache for a certain source code fileJoel Rosdahl2023-03-075-2/+50
|
* enhance: Add util::read_file_part<std::string> implementationJoel Rosdahl2023-03-073-17/+36
|
* refactor: Use util::BitSet for hash_source_code_fileJoel Rosdahl2023-03-078-148/+173
|
* refactor: Use util::BitSet for core::SloppinessJoel Rosdahl2023-03-056-89/+49
|
* enhance: Add util::BitSetJoel Rosdahl2023-03-053-0/+198
|
* bump: Upgrade to doctest 2.4.10Joel Rosdahl2023-03-042-24/+96
|
* feat: Improve cache size presentation and specificationJoel Rosdahl2023-03-0412-199/+371
| | | | | | | | | | | | | | | | | | Aligned how cache size is presented (in "ccache --show-stats", "ccache --show-compression", "ccache --recompress", debug logs, etc.) and specified (in configuration files, "ccache --max-size" and "ccache --trim-max-size"). The size units are now formatted according to the type of size unit prefix used for the max_size/CCACHE_MAXSIZE setting: a decimal size unit prefix (k/M/G/T with or without B for bytes) in max_size means using decimal size unit prefix for presented sizes, and similar for binary size unit prefixes (Ki/Mi/Gi/Ti with or without B for bytes). If no unit is specified, GiB is assumed, . For example, "ccache -M 10" means 10 GiB. Also aligned how cache sizes are calculated. Now all sizes are computed as "apparent size", i.e., rounded up to the disk block size. This means that the cache size in "--show-stats" and the sizes presented in "--show-compression" and "--recompress" now match.
* enhance: Add util::TextTable::Cell::Cell(std::string_view)Joel Rosdahl2023-03-042-5/+9
|
* feat: Improve disk size calculation on WindowsJoel Rosdahl2023-03-042-4/+5
| | | | Windows file system block size is typically 4096 bytes, not 1024.
* enhance: Add util::likely_size_on_diskJoel Rosdahl2023-03-042-2/+22
|
* enhance: Add util::split_once(std::string&&, char)Joel Rosdahl2023-03-043-9/+66
|
* refactor: Move Util::parse_size to utilJoel Rosdahl2023-03-048-76/+77
|
* refactor: Move Util::format_{human,parsable}_* to utilJoel Rosdahl2023-03-049-121/+121
|
* feat: Improve error message when failing to parse command line configJoel Rosdahl2023-03-041-1/+6
|
* chore: Remove now superfluous "this->" in lambdaJoel Rosdahl2023-03-041-1/+1
| | | | It was needed for compatibility with older compilers.
* chore: Always add -Wdouble-promotion to dev mode flagsJoel Rosdahl2023-03-041-3/+1
| | | | Clang 3.4 is not longer supported anyway.
* chore: Enable and fix some more warningsJoel Rosdahl2023-03-045-16/+16
|
* chore: Clean up Redis helper scripts a bit (#1254)Anders Björklund2023-02-222-13/+16
| | | | - Support any version of manifest and result. - Skip over tmp dir and allow avoiding setnx.
* feat: Add support for setting per-compilation config on command lineJoel Rosdahl2023-02-2010-161/+260
| | | | Closes #1035.
* chore: Fix typosJoel Rosdahl2023-02-162-2/+2
|
* bump: Upgrade to zstd 1.5.4Joel Rosdahl2023-02-101-2/+2
|
* fix: Log config and command line before finding compilerJoel Rosdahl2023-02-091-16/+18
| | | | | | | | If the compiler can't be found then ccache exits early and doesn't print the config and command line to the log. This makes it harder to debug problems with finding the compiler, like issue #1249. Improve this by logging "safe things" before searching for the compiler.
* perf: Don't update stats file when there are no incremented countersJoel Rosdahl2023-02-081-1/+1
| | | | | This can happen for instance when ccache is about to exit with a fatal error.