mirror of
https://github.com/lefticus/6502-cpp.git
synced 2024-10-13 03:23:40 +00:00
30 lines
808 B
CMake
30 lines
808 B
CMake
option(ENABLE_CACHE "Enable cache if available" ON)
|
|
if(NOT ENABLE_CACHE)
|
|
return()
|
|
endif()
|
|
|
|
set(CACHE_OPTION
|
|
"ccache"
|
|
CACHE STRING "Compiler cache to be used")
|
|
set(CACHE_OPTION_VALUES "ccache" "sccache")
|
|
set_property(CACHE CACHE_OPTION PROPERTY STRINGS ${CACHE_OPTION_VALUES})
|
|
list(
|
|
FIND
|
|
CACHE_OPTION_VALUES
|
|
${CACHE_OPTION}
|
|
CACHE_OPTION_INDEX)
|
|
|
|
if(${CACHE_OPTION_INDEX} EQUAL -1)
|
|
message(
|
|
STATUS
|
|
"Using custom compiler cache system: '${CACHE_OPTION}', explicitly supported entries are ${CACHE_OPTION_VALUES}")
|
|
endif()
|
|
|
|
find_program(CACHE_BINARY ${CACHE_OPTION})
|
|
if(CACHE_BINARY)
|
|
message(STATUS "${CACHE_OPTION} found and enabled")
|
|
set(CMAKE_CXX_COMPILER_LAUNCHER ${CACHE_BINARY})
|
|
else()
|
|
message(WARNING "${CACHE_OPTION} is enabled but was not found. Not using it")
|
|
endif()
|