this repo has no description
1
2if (NOT CLANG_FORMAT_EXECUTABLE)
3 find_program(CLANG_FORMAT_EXECUTABLE NAMES clang-format clang-format-11 clang-format-10 clang-format-9)
4endif()
5
6set(CLANG_FORMAT_FLAGS "-i" CACHE STRING "Flags passed to the clang-format executable")
7
8if (CLANG_FORMAT_EXECUTABLE)
9 file(GLOB_RECURSE FORMAT_FILES
10 ${PROJECT_SOURCE_DIR}/*.c
11 ${PROJECT_SOURCE_DIR}/*.cpp
12 ${PROJECT_SOURCE_DIR}/*.h
13 ${PROJECT_SOURCE_DIR}/*.hh
14 ${PROJECT_SOURCE_DIR}/*.hpp
15 )
16 list(FILTER FORMAT_FILES EXCLUDE REGEX ${PROJECT_BINARY_DIR}/*)
17 list(FILTER FORMAT_FILES EXCLUDE REGEX ${PROJECT_SOURCE_DIR}/lib/cached/*)
18 list(FILTER FORMAT_FILES EXCLUDE REGEX ${PROJECT_SOURCE_DIR}/lib/thirdparty/*)
19 list(FILTER FORMAT_FILES EXCLUDE REGEX ${PROJECT_SOURCE_DIR}/include/minizinc/thirdparty/*)
20
21 separate_arguments(CLANG_FORMAT_FLAGS_LIST NATIVE_COMMAND ${CLANG_FORMAT_FLAGS})
22 add_custom_target(format
23 COMMAND ${CLANG_FORMAT_EXECUTABLE} ${CLANG_FORMAT_FLAGS_LIST} ${FORMAT_FILES}
24 COMMENT "Running ${CLANG_FORMAT_EXECUTABLE} on all source files"
25 )
26endif()
27