mozilla / sccache

Sccache is a ccache-like tool. It is used as a compiler wrapper and avoids compilation when possible. Sccache has the capability to utilize caching in remote storage environments, including various cloud storage options, or alternatively, in local storage.
Apache License 2.0
5.85k stars 552 forks source link

Sccache passes content of response file directly to CreateProcess with msvc. #2249

Open ashwinbanwari opened 2 months ago

ashwinbanwari commented 2 months ago

I work with a large repo which uses response files to get around the Windows Server 32k character limit with CreateProcess. Sccache works well for us except when compiling object files that have an incredibly large amount of compiler options (mostly -IC (include directories)). We get the error [1] sccache: caused by: failed to spawn Command followed by the expanded command sccache tried to use to compile where it expanded the content of the response file instead of trying to use the original command.

Expected result: Sccache should try to compile using the compile command given to it where it references a response file and not try to compile with the expanded form of the command.