[PATCH] D126575: [ccache] Add Windows support
Nathaniel McVicar via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri May 27 15:44:07 PDT 2022
NathanielMcVicar created this revision.
NathanielMcVicar added a reviewer: stella.stamenova.
Herald added a subscriber: mgorny.
Herald added a project: All.
NathanielMcVicar requested review of this revision.
Herald added a project: LLVM.
Herald added a subscriber: llvm-commits.
Windows builds can't receive environment variables on the command line or make use of RULE_LAUNCH_COMPILE with ccache.
Repository:
rG LLVM Github Monorepo
https://reviews.llvm.org/D126575
Files:
llvm/CMakeLists.txt
Index: llvm/CMakeLists.txt
===================================================================
--- llvm/CMakeLists.txt
+++ llvm/CMakeLists.txt
@@ -173,11 +173,12 @@
if(LLVM_CCACHE_BUILD)
find_program(CCACHE_PROGRAM ccache)
if(CCACHE_PROGRAM)
- set(LLVM_CCACHE_MAXSIZE "" CACHE STRING "Size of ccache")
- set(LLVM_CCACHE_DIR "" CACHE STRING "Directory to keep ccached data")
- set(LLVM_CCACHE_PARAMS "CCACHE_CPP2=yes CCACHE_HASHDIR=yes"
- CACHE STRING "Parameters to pass through to ccache")
+ set(LLVM_CCACHE_MAXSIZE "" CACHE STRING "Size of ccache")
+ set(LLVM_CCACHE_DIR "" CACHE STRING "Directory to keep ccached data")
+ set(LLVM_CCACHE_PARAMS "CCACHE_CPP2=yes CCACHE_HASHDIR=yes"
+ CACHE STRING "Parameters to pass through to ccache")
+ if(NOT CMAKE_SYSTEM_NAME MATCHES "Windows")
set(CCACHE_PROGRAM "${LLVM_CCACHE_PARAMS} ${CCACHE_PROGRAM}")
if (LLVM_CCACHE_MAXSIZE)
set(CCACHE_PROGRAM "CCACHE_MAXSIZE=${LLVM_CCACHE_MAXSIZE} ${CCACHE_PROGRAM}")
@@ -186,6 +187,14 @@
set(CCACHE_PROGRAM "CCACHE_DIR=${LLVM_CCACHE_DIR} ${CCACHE_PROGRAM}")
endif()
set_property(GLOBAL PROPERTY RULE_LAUNCH_COMPILE ${CCACHE_PROGRAM})
+ else()
+ if(LLVM_CCACHE_MAXSIZE OR LLVM_CCACHE_DIR OR
+ NOT LLVM_CCACHE_PARAMS MATCHES "CCACHE_CPP2=yes CCACHE_HASHDIR=yes")
+ message(FATAL_ERROR "Ccache configuration through CMake is not supported on Windows. Please use environment variables.")
+ endif()
+ set(CMAKE_C_COMPILER_LAUNCHER ${CCACHE_PROGRAM})
+ set(CMAKE_CXX_COMPILER_LAUNCHER ${CCACHE_PROGRAM})
+ endif()
else()
message(FATAL_ERROR "Unable to find the program ccache. Set LLVM_CCACHE_BUILD to OFF")
endif()
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D126575.432657.patch
Type: text/x-patch
Size: 1749 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20220527/f7655115/attachment.bin>
More information about the llvm-commits
mailing list