]>
git.ipfire.org Git - thirdparty/ccache.git/log
Joel Rosdahl [Tue, 2 Oct 2018 19:47:15 +0000 (21:47 +0200)]
Move ATTR_NORETURN function declarations closer to the definition
Joel Rosdahl [Tue, 2 Oct 2018 19:45:25 +0000 (21:45 +0200)]
Remove superfluous “extern” function declarations from
a9e8810f
Function declarations are extern by default.
Joel Rosdahl [Tue, 2 Oct 2018 19:33:27 +0000 (21:33 +0200)]
Merge remote-tracking branch 'afbjorklund/everything'
* afbjorklund/everything:
Make configure work with older clang versions
Add option for enabling more compiler warnings
Add configure support for detecting clang
Avoid bad function cast by using temporary
Proper use of const qualifier char* strings
Removed locally shadowed global variables
Don't use undefined macros, use ifdef instead
Add noreturn to functions that don't return
Add missing extern prototypes, or make static
Don't use reserved id macros in the headers
Only compile getopt_long.c when needed
Address issues found by lgtm.com alerts
Joel Rosdahl [Tue, 2 Oct 2018 19:28:39 +0000 (21:28 +0200)]
Update NEWS
Rafael Kitover [Wed, 12 Sep 2018 10:24:54 +0000 (03:24 -0700)]
Fix configure arg --without-bundled-zlib
If the result of the AC_ARG_WITH check is 'no', assume system zlib.
Joel Rosdahl [Tue, 2 Oct 2018 18:51:12 +0000 (20:51 +0200)]
Update uncrustify config and run uncrustify version 0.66.1_f
Joel Rosdahl [Tue, 2 Oct 2018 18:31:01 +0000 (20:31 +0200)]
Remove bogus out-of-memory check in reformat()
Joel Rosdahl [Tue, 2 Oct 2018 18:26:13 +0000 (20:26 +0200)]
Update NEWS
Joel Rosdahl [Tue, 2 Oct 2018 18:19:16 +0000 (20:19 +0200)]
Improve debug mode documentation
Joel Rosdahl [Tue, 2 Oct 2018 18:15:32 +0000 (20:15 +0200)]
Improve debug log filenames
The “<objectfile>.ccache-hashX” files are also input data, so I think
that calling the “human-readable” version “<objectfile>.ccache-input” a
bit unpedagogical. Changes:
<objectfile>.ccache-hashX -> <objectfile>.ccache-input-X
<objectfile>.ccache-input -> <objectfile>.ccache-input-text
Joel Rosdahl [Sat, 29 Sep 2018 19:48:41 +0000 (21:48 +0200)]
Merge remote-tracking branch 'afbjorklund/hash_debug' into pr/279
* afbjorklund/hash_debug:
Register debug_end as an exit function instead
Avoid using strcat and small realloc
Rename helper functions, as suggested in review
Save debug file streams, instead of reopening
Add section markers, to the text file
Rename hash_debug, add matching end function
Improve documentation with example file names
Output log to debug, even without a logfile
Avoid global md variable in mdfour file
Add --hash-file command, for convenience
Add functionality to debug the hashing
Add feature to also log into a memory buffer
Add config for debug option ($CCACHE_DEBUG)
Add util to return the command as a string
Joel Rosdahl [Sun, 23 Sep 2018 19:51:23 +0000 (21:51 +0200)]
Update NEWS
Joel Rosdahl [Sun, 23 Sep 2018 19:50:04 +0000 (21:50 +0200)]
Improve documentation of file_stat_matches_ctime
Anders F Björklund [Tue, 3 Jul 2018 21:01:26 +0000 (23:01 +0200)]
Add option to disable ctime check for manifest
Make it possible to use e.g. "git-restore-mtime"*,
to use the original timestamps and avoid checksums.
* https://github.com/MestreLion/git-tools
Restoring ctime is much harder than restoring mtime,
since you need to change the system clock to do it.
Anders F Björklund [Sun, 16 Sep 2018 20:19:09 +0000 (22:19 +0200)]
Make configure work with older clang versions
Apparently clang-3.4 did not have -Wreserved-id-macro
Anders F Björklund [Sun, 16 Sep 2018 18:42:39 +0000 (20:42 +0200)]
Add option for enabling more compiler warnings
But remove some of the more annoying clang ones:
18 [-Werror,-Wconversion]
18 [-Werror,-Wdisabled-macro-expansion]
9 [-Werror,-Wdouble-promotion]
9 [-Werror,-Wfloat-conversion]
1 [-Werror,-Wformat-nonliteral]
52 [-Werror,-Wpadded]
29 [-Werror,-Wshorten-64-to-32]
75 [-Werror,-Wsign-conversion]
It's not really feasible to enable every warning.
Anders F Björklund [Sun, 16 Sep 2018 18:35:40 +0000 (20:35 +0200)]
Add configure support for detecting clang
Also note that both GCC and Clang are GNU
Anders F Björklund [Sun, 16 Sep 2018 17:07:44 +0000 (19:07 +0200)]
Avoid bad function cast by using temporary
The result after round/ceil _should_ work
Anders F Björklund [Sun, 16 Sep 2018 16:48:03 +0000 (18:48 +0200)]
Proper use of const qualifier char* strings
Anders F Björklund [Sun, 16 Sep 2018 16:45:55 +0000 (18:45 +0200)]
Removed locally shadowed global variables
Rename the local, or remove the parameter
Anders F Björklund [Sun, 16 Sep 2018 16:44:12 +0000 (18:44 +0200)]
Don't use undefined macros, use ifdef instead
Anders F Björklund [Sun, 16 Sep 2018 16:40:15 +0000 (18:40 +0200)]
Add noreturn to functions that don't return
Fix the extra semicolon and unreachable code
Anders F Björklund [Sun, 16 Sep 2018 16:37:05 +0000 (18:37 +0200)]
Add missing extern prototypes, or make static
Anders F Björklund [Sun, 16 Sep 2018 16:31:20 +0000 (18:31 +0200)]
Don't use reserved id macros in the headers
With an exception for the generated config.h
Anders F Björklund [Sun, 16 Sep 2018 16:28:16 +0000 (18:28 +0200)]
Only compile getopt_long.c when needed
ISO C disallows empty translation units
Anders F Björklund [Sun, 16 Sep 2018 12:40:44 +0000 (14:40 +0200)]
Address issues found by lgtm.com alerts
Thomas Otto [Wed, 6 Jun 2018 10:52:36 +0000 (12:52 +0200)]
test: Fix various Solaris shell issues
Joel Rosdahl [Sun, 2 Sep 2018 08:35:09 +0000 (10:35 +0200)]
Merge branch '3.4-maint'
* 3.4-maint:
Prepare for v3.4.3
Update NEWS
Upgrade zlib to 1.2.11
Joel Rosdahl [Sun, 2 Sep 2018 08:27:04 +0000 (10:27 +0200)]
Prepare for v3.4.3
Joel Rosdahl [Sun, 2 Sep 2018 08:05:59 +0000 (10:05 +0200)]
Update NEWS
Anders F Björklund [Sun, 26 Aug 2018 18:15:45 +0000 (20:15 +0200)]
Upgrade zlib to 1.2.11
Anders F Björklund [Mon, 27 Aug 2018 17:25:55 +0000 (19:25 +0200)]
Register debug_end as an exit function instead
Joel Rosdahl [Thu, 23 Aug 2018 20:25:55 +0000 (22:25 +0200)]
Merge branch '3.4-maint'
* 3.4-maint:
Update NEWS
Bail out on compiler option -save-temps=obj
Joel Rosdahl [Thu, 23 Aug 2018 20:20:30 +0000 (22:20 +0200)]
Update NEWS
Anders F Björklund [Tue, 21 Aug 2018 20:22:38 +0000 (22:22 +0200)]
Bail out on compiler option -save-temps=obj
Also add a test, and handle default (=cwd)
Closes #299
Joel Rosdahl [Sun, 19 Aug 2018 06:52:07 +0000 (08:52 +0200)]
Fix minor memory leak introduced in
dde3543c
Joel Rosdahl [Sun, 19 Aug 2018 06:50:19 +0000 (08:50 +0200)]
Fix “clang analyze” false positive
Joel Rosdahl [Sat, 18 Aug 2018 20:36:32 +0000 (22:36 +0200)]
Update NEWS
Mike Gulick [Tue, 24 Jul 2018 19:23:03 +0000 (15:23 -0400)]
process_preprocessed_file: Move gnu_getcwd() out of tight loop
Change process_preprocessed_file from calling getcwd() once per line
in the preprocessed source file to once at the start of the function.
The performance of getcwd() on Mac seems to be terrible compared to
Linux. On a macOS 10.13 build machine, this change improves
process_preprocessed_file runtime on a 10MB preprocessed file from 75
seconds to .75 seconds.
Joel Rosdahl [Sat, 18 Aug 2018 20:28:24 +0000 (22:28 +0200)]
Merge branch '3.4-maint'
* 3.4-maint:
Update NEWS
Add handling of separate -target parameter
Bail out on too hard clang option “-MJ”
Anders F Björklund [Sat, 28 Jul 2018 10:30:10 +0000 (12:30 +0200)]
Make sure to install gperf for analyze
Also move the 32-bit libraries
to the 32-bit target (only).
Closes #290
Joel Rosdahl [Tue, 14 Aug 2018 19:49:04 +0000 (21:49 +0200)]
Update NEWS
Anders F Björklund [Tue, 3 Jul 2018 16:54:34 +0000 (18:54 +0200)]
Add handling of separate -target parameter
Otherwise you will get an error in the log:
"x86_64-pc-linux-gnu is not a regular file,
not considering as input file"
The argument seems to be specific to clang.
Joel Rosdahl [Tue, 14 Aug 2018 19:44:39 +0000 (21:44 +0200)]
Update NEWS
Anders F Björklund [Tue, 12 Jun 2018 21:51:35 +0000 (23:51 +0200)]
Add a Vagrantfile for testing on FreeBSD
Anders F Björklund [Tue, 12 Jun 2018 21:11:44 +0000 (23:11 +0200)]
Compiler "cc" might still be the same as "clang"
It migt also be "gcc", but try to play it safe.
Anders F Björklund [Tue, 12 Jun 2018 20:23:57 +0000 (22:23 +0200)]
Add FreeBSD compatibility to test suites
Anders F Björklund [Tue, 12 Jun 2018 19:58:29 +0000 (21:58 +0200)]
Add patch for X/Open, from FreeBSD ports
Without this, e.g. "strndup" isn't visible.
Joel Rosdahl [Tue, 14 Aug 2018 19:14:36 +0000 (21:14 +0200)]
Bail out on too hard clang option “-MJ”
See discussion in pull request #277.
Anders F Björklund [Sun, 12 Aug 2018 16:10:59 +0000 (18:10 +0200)]
Avoid using strcat and small realloc
For performance reasons with large strings, we don't want to
call strlen multiple times or to realloc one byte at a time.
Anders F Björklund [Sun, 12 Aug 2018 15:01:05 +0000 (17:01 +0200)]
Rename helper functions, as suggested in review
Anders F Björklund [Sun, 12 Aug 2018 14:47:16 +0000 (16:47 +0200)]
Save debug file streams, instead of reopening
Also opens txt file in text mode, not binary
Anders F Björklund [Sun, 12 Aug 2018 14:24:54 +0000 (16:24 +0200)]
Add section markers, to the text file
Anders F Björklund [Sun, 12 Aug 2018 14:06:39 +0000 (16:06 +0200)]
Rename hash_debug, add matching end function
Remove the parameter stating if hit or miss
Anders F Björklund [Sun, 12 Aug 2018 13:56:14 +0000 (15:56 +0200)]
Improve documentation with example file names
Anders F Björklund [Sun, 12 Aug 2018 13:46:31 +0000 (15:46 +0200)]
Output log to debug, even without a logfile
Anders F Björklund [Mon, 11 Jun 2018 18:34:35 +0000 (20:34 +0200)]
Avoid some shellcheck excludes that do make sense
Anders F Björklund [Mon, 11 Jun 2018 18:25:02 +0000 (20:25 +0200)]
Add target to run shellcheck on test bash scripts
Joel Rosdahl [Fri, 10 Aug 2018 19:13:03 +0000 (21:13 +0200)]
Add missing delimiter when hashing “-MF”
Joel Rosdahl [Fri, 10 Aug 2018 11:25:17 +0000 (13:25 +0200)]
Improve printing of “stats zeroed” statistics
* Refactored how formatting functions work in “ccache -s” output. They
now return a formatted string (or NULL for “don’t print statistics
line at all”) instead of printing the value.
* Added a new format_timestamp function.
* Added STATS_ZEROTIMESTAMP to the common stats_info array instead of
being a special case.
* Let the STATS_ZEROTIMESTAMP value be 0 for new caches so that the
“stats zeroed” statistics line only shows up when “ccache -z” actually
has been called.
Closes #285.
Joel Rosdahl [Wed, 8 Aug 2018 12:53:14 +0000 (14:53 +0200)]
Update NEWS
Joel Rosdahl [Wed, 8 Aug 2018 12:27:52 +0000 (14:27 +0200)]
Merge branch '3.4-maint'
* 3.4-maint:
Remove debug log
Improve logging related to hashing of the CWD
Anders F Björklund [Thu, 7 Jun 2018 19:20:19 +0000 (21:20 +0200)]
Add configure option to disable man pages
Building the man page requires asciidoc, if building from the source
repository. Add option to only install the program, but not the man.
When building from the release tarball, the man page is already built.
So we can still default to installing it, and requiring asciidoc/a2x.
Closes #264
Anders F Björklund [Sat, 23 Jun 2018 17:09:49 +0000 (19:09 +0200)]
Avoid global md variable in mdfour file
Pass the pointer as a parameter instead
Anders F Björklund [Sat, 23 Jun 2018 17:09:06 +0000 (19:09 +0200)]
Add --hash-file command, for convenience
Anders F Björklund [Thu, 21 Jun 2018 17:06:50 +0000 (19:06 +0200)]
Add functionality to debug the hashing
Anders F Björklund [Sat, 23 Jun 2018 13:31:09 +0000 (15:31 +0200)]
Add feature to also log into a memory buffer
This feature is needed for the debug config
Anders F Björklund [Sat, 23 Jun 2018 13:23:33 +0000 (15:23 +0200)]
Add config for debug option ($CCACHE_DEBUG)
Anders F Björklund [Sat, 23 Jun 2018 13:04:58 +0000 (15:04 +0200)]
Add util to return the command as a string
We had print_command for logging to a file
Joel Rosdahl [Thu, 7 Jun 2018 19:52:09 +0000 (21:52 +0200)]
Remove debug log
Joel Rosdahl [Thu, 7 Jun 2018 19:48:42 +0000 (21:48 +0200)]
Improve logging related to hashing of the CWD
Joel Rosdahl [Thu, 7 Jun 2018 19:31:38 +0000 (21:31 +0200)]
Improve installation instructions
Joel Rosdahl [Mon, 7 May 2018 19:46:09 +0000 (21:46 +0200)]
Merge branch '3.4-maint'
* 3.4-maint:
Update NEWS
Avoid TOCTOU issue when deciding if config is valid
Joel Rosdahl [Mon, 7 May 2018 19:45:12 +0000 (21:45 +0200)]
Update NEWS
Tomasz Miąsko [Wed, 2 May 2018 00:00:00 +0000 (00:00 +0000)]
Avoid TOCTOU issue when deciding if config is valid
Previously, a separate call to access had been used to distinguish
between I/O errors and invalid configuration file. This could lead to
spurious errors if configuration file have been created in-between call
to conf_read and access. Use errno to tell those two cases apart.
Closes #260.
Joel Rosdahl [Mon, 7 May 2018 18:10:44 +0000 (20:10 +0200)]
Fix code style
Havard Graff [Tue, 24 Apr 2018 20:05:42 +0000 (22:05 +0200)]
hashutil: fix memory-leak/double free
Havard Graff [Tue, 24 Apr 2018 20:05:01 +0000 (22:05 +0200)]
Fix some casting warnings
Joel Rosdahl [Mon, 7 May 2018 17:54:17 +0000 (19:54 +0200)]
Update NEWS
Anders F Björklund [Sun, 22 Apr 2018 09:49:32 +0000 (11:49 +0200)]
Add the sanitize blacklist contents to the hash
Joel Rosdahl [Tue, 17 Apr 2018 19:57:01 +0000 (21:57 +0200)]
Update NEWS
Joel Rosdahl [Tue, 17 Apr 2018 19:53:32 +0000 (21:53 +0200)]
Simplify logic
Anders F Björklund [Mon, 9 Apr 2018 18:35:25 +0000 (20:35 +0200)]
Print the time when stats last updated
Joel Rosdahl [Mon, 23 Apr 2018 20:04:12 +0000 (22:04 +0200)]
Merge branch '3.4-maint'
* 3.4-maint:
Use double when calculating cache thresholds
Add a 32-bit build target, using multilib (-m32)
Convert float config to double, add rounding
Upgrade clang to 5.0, for the Travis docker
Make sure to export ASAN_OPTIONS properly
Add small helper to run all Travis tests
Make sure to call configure with right path
Add a travis-build container, for running locally
Look for -fdebug-prefix-map feature explicitly
Improve the Travis build matrix
Fix log printing of before/after cleanup
Remove irrelevant variable assignment in wipe_dir
win32: Fix CCACHE_COMPILERCHECK=mtime test case
Joel Rosdahl [Mon, 23 Apr 2018 19:56:32 +0000 (21:56 +0200)]
Use double when calculating cache thresholds
We could at least in theory have large enough caches that float’s
precision won’t be enough.
Also removed include of <float.h> which I think is superfluous.
Anders F Björklund [Sun, 8 Apr 2018 11:51:06 +0000 (13:51 +0200)]
Add a 32-bit build target, using multilib (-m32)
Use gcc-multilib rather than doing a full cross-compile.
But set the --host, just in case something is listening.
Anders F Björklund [Sun, 8 Apr 2018 13:28:58 +0000 (15:28 +0200)]
Convert float config to double, add rounding
We were getting different results when converting "float" to
integers, on 32-bit versus 64-bit platforms. So use "roundf".
Also exposed a typo in another testsuite, where we only cleaned
files as a result of roundoff... Make cleaning explicit again.
Anders F Björklund [Sat, 7 Apr 2018 12:29:52 +0000 (14:29 +0200)]
Upgrade clang to 5.0, for the Travis docker
Anders F Björklund [Sat, 7 Apr 2018 12:50:33 +0000 (14:50 +0200)]
Make sure to export ASAN_OPTIONS properly
Anders F Björklund [Sun, 1 Apr 2018 12:40:05 +0000 (14:40 +0200)]
Add small helper to run all Travis tests
The idea behind this script is to run the same checks as .travis.yml
but locally instead. It is not identical, but should be close enough.
Note: this does not include any tests for the osx or cuda platforms,
only the linux targets - although that does include the mingw build.
Anders F Björklund [Sun, 1 Apr 2018 12:39:44 +0000 (14:39 +0200)]
Make sure to call configure with right path
Anders F Björklund [Sun, 1 Apr 2018 11:53:02 +0000 (13:53 +0200)]
Add a travis-build container, for running locally
This is not the actual Travis docker container, but it
should be similar enough for doing local verification:
make travis
make travis CC=clang
make travis CC=clang CFLAGS="-fsanitize=address -g" ASAN_OPTIONS="detect_leaks=0"
make travis CC=i686-w64-mingw32-gcc HOST="--host=i686-w64-mingw32" TEST="unittest/run.exe"
Anders F Björklund [Sun, 1 Apr 2018 11:13:33 +0000 (13:13 +0200)]
Look for -fdebug-prefix-map feature explicitly
Seems like old clang-3.4 didn't have this feature, while the
newer MinGW might. So remove the hardcoding, and do the check.
Anders F Björklund [Sun, 1 Apr 2018 07:39:15 +0000 (09:39 +0200)]
Improve the Travis build matrix
Run in containers where possible, save the installations for the
targets that actually need to do them (currently: mingw and cuda)
Anders F Björklund [Fri, 30 Mar 2018 19:23:04 +0000 (21:23 +0200)]
Fix log printing of before/after cleanup
Seems like MinGW doesn't have the %z (size_t) printf format
So add some %f casting variant, so that it works everywhere.
Joel Rosdahl [Mon, 23 Apr 2018 19:44:56 +0000 (21:44 +0200)]
Remove irrelevant variable assignment in wipe_dir
peterbudai@hotmail.com [Wed, 28 Mar 2018 20:20:12 +0000 (22:20 +0200)]
win32: Fix CCACHE_COMPILERCHECK=mtime test case
Previously if compiler command was an .sh script, win32 version
automatically added an .EXE extension to the command line and
then test case failed. With this change .sh files won't get
appended by an EXE extension and test case successfully runs
Joel Rosdahl [Sun, 25 Mar 2018 20:25:23 +0000 (22:25 +0200)]
Merge branch '3.4-maint'
* 3.4-maint:
Prepare for v3.4.2
direct .i mode: Don't create tmp.cpp_stderr file at all
Joel Rosdahl [Sun, 25 Mar 2018 20:22:56 +0000 (22:22 +0200)]
Prepare for v3.4.2
peterbudai@hotmail.com [Fri, 16 Mar 2018 22:54:16 +0000 (23:54 +0100)]
direct .i mode: Don't create tmp.cpp_stderr file at all
Create tmp file only when it's actually needed.