mirror of
https://github.com/SFML/CSFML.git
synced 2026-10-26 21:16:13 +01:00
Add format target for running clang-format
This commit is contained in:
1 parent
86d52f4712
commit
42aec92642
6 files changed
+224
No files matched your search
@@ -0,0 +1,27 @@
|
||||
# Check executable exists
|
||||
if(NOT EXISTS ${CLANG_FORMAT_EXECUTABLE})
|
||||
find_program(CLANG_FORMAT_EXEC_TEMP ${CLANG_FORMAT_EXECUTABLE})
|
||||
if(CLANG_FORMAT_EXEC_TEMP)
|
||||
set(CLANG_FORMAT_EXECUTABLE ${CLANG_FORMAT_EXEC_TEMP})
|
||||
unset(CLANG_FORMAT_EXEC_TEMP)
|
||||
else()
|
||||
message(FATAL_ERROR "Unable to find clang-format executable: \"${CLANG_FORMAT_EXECUTABLE}\"")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
# Check executable version
|
||||
execute_process(COMMAND ${CLANG_FORMAT_EXECUTABLE} --version OUTPUT_VARIABLE CLANG_FORMAT_VERSION)
|
||||
string(REGEX MATCH "clang-format version ([0-9]+)" CLANG_FORMAT_VERSION ${CLANG_FORMAT_VERSION})
|
||||
unset(CLANG_FORMAT_VERSION)
|
||||
if(NOT CMAKE_MATCH_1 EQUAL 14)
|
||||
message(FATAL_ERROR "clang-format version ${CMAKE_MATCH_1} not supported. Must use version 14")
|
||||
endif()
|
||||
|
||||
# Run
|
||||
set(SOURCES "")
|
||||
foreach(FOLDER IN ITEMS examples include src test)
|
||||
file(GLOB_RECURSE folder_files "${FOLDER}/*.h" "${FOLDER}/*.hpp" "${FOLDER}/*.c" "${FOLDER}/*.cpp")
|
||||
list(APPEND SOURCES ${folder_files})
|
||||
endforeach()
|
||||
|
||||
execute_process(COMMAND ${CLANG_FORMAT_EXECUTABLE} -i ${SOURCES})
|
||||
Reference in new issue
Block a user