File: FindClangFormat.cmake

package info (click to toggle)
stdgpu 1.3.0%2Bgit20220507.32e0517-6
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 2,528 kB
  • sloc: cpp: 7,818; pascal: 1,893; xml: 214; sh: 181; makefile: 50
file content (24 lines) | stat: -rw-r--r-- 955 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24

find_program(CLANG_FORMAT_EXECUTABLE
             NAMES
             "clang-format-10" # Prefer exact version
             "clang-format")

if(CLANG_FORMAT_EXECUTABLE)
    execute_process(COMMAND "${CLANG_FORMAT_EXECUTABLE}" "--version" OUTPUT_VARIABLE CLANG_FORMAT_VERSION_TEXT)
    string(REGEX MATCH "clang-format version ([^\n]*)" CLANG_FORMAT_VERSION_TEXT_CUT "${CLANG_FORMAT_VERSION_TEXT}")
    set(CLANG_FORMAT_VERSION "${CMAKE_MATCH_1}")

    unset(CLANG_FORMAT_VERSION_TEXT_CUT)
    unset(CLANG_FORMAT_VERSION_TEXT)
endif()

include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(ClangFormat
                                  REQUIRED_VARS CLANG_FORMAT_EXECUTABLE
                                  VERSION_VAR CLANG_FORMAT_VERSION)

if(ClangFormat_FOUND)
    add_executable(ClangFormat::ClangFormat IMPORTED)
    set_target_properties(ClangFormat::ClangFormat PROPERTIES IMPORTED_LOCATION "${CLANG_FORMAT_EXECUTABLE}")
endif()