diff --git a/CMLibCommon.cmake b/CMLibCommon.cmake index d7b2910..79dae59 100644 --- a/CMLibCommon.cmake +++ b/CMLibCommon.cmake @@ -25,6 +25,7 @@ include(CMLibGlobalVariables) include(CMLibLSBInfo) include(CMLibCompiler) include(CMLibCompilerFlags) +include(CMLibDistCC) include(CMLibCompilerFeaturesHPPGenerate) include(CMLibFlagRemove) include(CMLibCommonTargetProperties) diff --git a/CMLibDistCC.cmake b/CMLibDistCC.cmake new file mode 100644 index 0000000..cbce913 --- /dev/null +++ b/CMLibDistCC.cmake @@ -0,0 +1,10 @@ +find_program(DISTCC_EXECUTABLE distcc) +mark_as_advanced(DISTCC_EXECUTABLE) +if(DISTCC_EXECUTABLE) + foreach(LANG C CXX) + if(NOT DEFINED CMAKE_${LANG}_COMPILER_LAUNCHER AND NOT CMAKE_${LANG}_COMPILER MATCHES ".*/distcc$") + message(STATUS "Enabling distcc for ${LANG}") + set(CMAKE_${LANG}_COMPILER_LAUNCHER ${DISTCC_EXECUTABLE} CACHE STRING "") + endif() + endforeach() +endif()