diff --git a/scripts/cmake/Dependencies.cmake b/scripts/cmake/Dependencies.cmake index 2bf2e408f9919f054c4c165ac733c472be77a0b3..e92aa3f81e7d2571dac6d07701b822e3f1bc027f 100644 --- a/scripts/cmake/Dependencies.cmake +++ b/scripts/cmake/Dependencies.cmake @@ -313,10 +313,19 @@ configure_file(${PROJECT_SOURCE_DIR}/scripts/cmake/test/CTestCustom.in.cmake ${PROJECT_BINARY_DIR}/CTestCustom.cmake @ONLY ) -CPMAddPackage( - NAME Format.cmake - VERSION 1.7.0 - GITHUB_REPOSITORY TheLartians/Format.cmake - OPTIONS - "CMAKE_FORMAT_EXCLUDE scripts/cmake/CPM.cmake|.*/Tests.cmake|scripts/cmake/jedbrown/.*|scripts/cmake/conan/conan.cmake|scripts/cmake/vector-of-bool/.*" -) +find_program(CLANG_FORMAT_PROGRAM clang-format) +find_program(CMAKE_FORMAT_PROGRAM cmake-format) + +if(CLANG_FORMAT_PROGRAM OR CMAKE_FORMAT_PROGRAM) + if(NOT CMAKE_FORMAT_PROGRAM) + set(skip_cmake "FORMAT_SKIP_CMAKE YES") + endif() + CPMAddPackage( + NAME Format.cmake + VERSION 1.7.0 + GITHUB_REPOSITORY TheLartians/Format.cmake + OPTIONS + ${skip_cmake} + "CMAKE_FORMAT_EXCLUDE scripts/cmake/CPM.cmake|.*/Tests.cmake|scripts/cmake/jedbrown/.*|scripts/cmake/conan/conan.cmake|scripts/cmake/vector-of-bool/.*" + ) +endif()