]> git.ipfire.org Git - thirdparty/ccache.git/commit
Handle @file syntax on Windows correctly (#392)
authorMike Blumenkrantz <michael.blumenkrantz@gmail.com>
Thu, 25 Apr 2019 18:24:01 +0000 (14:24 -0400)
committerJoel Rosdahl <joel@rosdahl.net>
Thu, 25 Apr 2019 18:24:01 +0000 (20:24 +0200)
commit27f3fff705db7115e3a59f90da6c11b5f0888e98
tree37fd12a05d44b1236d7d6cbb4c04b5ffb08aa36c
parentcb5c262b17a90468f973e4b77aa724e6ffd33c3e
Handle @file syntax on Windows correctly (#392)

* add length return to win32argvtos()

this is useful for determining the length of the generated argument string

* correctly handle @file syntax on Windows

the @file syntax means that the process reads command arguments from the
specified file. this is commonly used in order to shorten commands which
would otherwise be longer than the maximum length limit: many build systems
do this in all cases to avoid hitting this limit.

when a command exceeds 8192 characters on on Windows, ccache now writes
the parsed/modified arguments to a tmpfile and then runs the command using
that tmpfile with @tmpfile in order to preserve this mechanism and avoid hitting
the length limit

fixes #95
src/ccache.h
src/execute.c
src/hashutil.c