diff options
Diffstat (limited to 'cmake/modules/FindCCache.cmake')
| -rw-r--r-- | cmake/modules/FindCCache.cmake | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/cmake/modules/FindCCache.cmake b/cmake/modules/FindCCache.cmake index 956dee2..a18d4e0 100644 --- a/cmake/modules/FindCCache.cmake +++ b/cmake/modules/FindCCache.cmake | |||
| @@ -12,7 +12,16 @@ include(FindPackageHandleStandardArgs) | |||
| 12 | find_package_handle_standard_args(CCache REQUIRED_VARS CCACHE_PROGRAM) | 12 | find_package_handle_standard_args(CCache REQUIRED_VARS CCACHE_PROGRAM) |
| 13 | 13 | ||
| 14 | if(CCACHE_FOUND) | 14 | if(CCACHE_FOUND) |
| 15 | # Supports Unix Makefiles and Ninja | 15 | # Supports Unix Makefiles, Ninja and Xcode |
| 16 | set_property(GLOBAL PROPERTY RULE_LAUNCH_COMPILE "${CCACHE_PROGRAM}") | 16 | set_property(GLOBAL PROPERTY RULE_LAUNCH_COMPILE "${CCACHE_PROGRAM}") |
| 17 | set_property(GLOBAL PROPERTY RULE_LAUNCH_LINK "${CCACHE_PROGRAM}") | 17 | set_property(GLOBAL PROPERTY RULE_LAUNCH_LINK "${CCACHE_PROGRAM}") |
| 18 | |||
| 19 | file(WRITE "${CMAKE_BINARY_DIR}/launch-c" "exec \"${CCACHE_PROGRAM}\" \"${CMAKE_C_COMPILER}\" \"$@\"\n") | ||
| 20 | file(WRITE "${CMAKE_BINARY_DIR}/launch-cxx" "exec \"${CCACHE_PROGRAM}\" \"${CMAKE_CXX_COMPILER}\" \"$@\"\n") | ||
| 21 | execute_process(COMMAND chmod +x "${CMAKE_BINARY_DIR}/launch-c" "${CMAKE_BINARY_DIR}/launch-cxx") | ||
| 22 | |||
| 23 | set(CMAKE_XCODE_ATTRIBUTE_CC "${CMAKE_BINARY_DIR}/launch-c" PARENT_SCOPE) | ||
| 24 | set(CMAKE_XCODE_ATTRIBUTE_CXX "${CMAKE_BINARY_DIR}/launch-cxx" PARENT_SCOPE) | ||
| 25 | set(CMAKE_XCODE_ATTRIBUTE_LD "${CMAKE_BINARY_DIR}/launch-c" PARENT_SCOPE) | ||
| 26 | set(CMAKE_XCODE_ATTRIBUTE_LDPLUSPLUS "${CMAKE_BINARY_DIR}/launch-cxx" PARENT_SCOPE) | ||
| 18 | endif() | 27 | endif() |
