diff --git a/cmake/CPM.cmake b/cmake/CPM.cmake index 4c03d96..7aa8b66 100644 --- a/cmake/CPM.cmake +++ b/cmake/CPM.cmake @@ -67,22 +67,25 @@ endif() set_property(GLOBAL PROPERTY CPM_INITIALIZED true) -# the policy allows us to change options without caching -cmake_policy(SET CMP0077 NEW) -set(CMAKE_POLICY_DEFAULT_CMP0077 NEW) +macro(cpm_set_policies) + # the policy allows us to change options without caching + cmake_policy(SET CMP0077 NEW) + set(CMAKE_POLICY_DEFAULT_CMP0077 NEW) -# the policy allows us to change set(CACHE) without caching -if(POLICY CMP0126) - cmake_policy(SET CMP0126 NEW) - set(CMAKE_POLICY_DEFAULT_CMP0126 NEW) -endif() + # the policy allows us to change set(CACHE) without caching + if(POLICY CMP0126) + cmake_policy(SET CMP0126 NEW) + set(CMAKE_POLICY_DEFAULT_CMP0126 NEW) + endif() -# The policy uses the download time for timestamp, instead of the timestamp in the archive. This -# allows for proper rebuilds when a projects url changes -if(POLICY CMP0135) - cmake_policy(SET CMP0135 NEW) - set(CMAKE_POLICY_DEFAULT_CMP0135 NEW) -endif() + # The policy uses the download time for timestamp, instead of the timestamp in the archive. This + # allows for proper rebuilds when a projects url changes + if(POLICY CMP0135) + cmake_policy(SET CMP0135 NEW) + set(CMAKE_POLICY_DEFAULT_CMP0135 NEW) + endif() +endmacro() +cpm_set_policies() option(CPM_USE_LOCAL_PACKAGES "Always try to use `find_package` to get dependencies" $ENV{CPM_USE_LOCAL_PACKAGES} @@ -494,6 +497,7 @@ endfunction() # Download and add a package from source function(CPMAddPackage) + cpm_set_policies() list(LENGTH ARGN argnLength) if(argnLength EQUAL 1)