From aaaf67f9c39aaa22e642f6d1ff6b957cef8e162a Mon Sep 17 00:00:00 2001 From: Daniel Agar Date: Sat, 30 Jun 2018 14:35:58 -0400 Subject: [PATCH] cmake don't automatically enable ccache if already enabled --- CMakeLists.txt | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index adb3fe8ce1..fecbb749ed 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -231,7 +231,18 @@ endforeach() option(CCACHE "Use ccache if available" ON) find_program(CCACHE_PROGRAM ccache) if (CCACHE AND CCACHE_PROGRAM AND NOT DEFINED ENV{CCACHE_DISABLE}) - set_property(GLOBAL PROPERTY RULE_LAUNCH_COMPILE "${CCACHE_PROGRAM}") + + get_filename_component(ccache_real_path ${CCACHE_PROGRAM} REALPATH) + get_filename_component(cxx_real_path ${CMAKE_CXX_COMPILER} REALPATH) + get_filename_component(cxx_abs_path ${CMAKE_CXX_COMPILER} ABSOLUTE) + + if ("${ccache_real_path}" STREQUAL "${cxx_real_path}") + message(STATUS "ccache enabled via symlink (${cxx_abs_path} -> ${cxx_real_path})") + else() + message(STATUS "ccache enabled (export CCACHE_DISABLE=1 to disable)") + set_property(GLOBAL PROPERTY RULE_LAUNCH_COMPILE "${CCACHE_PROGRAM}") + endif() + endif() #=============================================================================