Set up linter

This commit is contained in:
Camden Dixie O'Brien 2024-12-25 18:08:55 +00:00
parent 5c49bb98ce
commit 69b958d393
3 changed files with 11 additions and 0 deletions

1
.clang-tidy Normal file
View File

@ -0,0 +1 @@
Checks: '-*,bugprone-*,-bugprone-easily-swappable-parameters,clang-analyzer-*,readability-*,-readability-braces-around-statements,-readability-magic-numbers,misc-const-correctness,-readability-identifier-length,-readability-isolate-declaration,-clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling,-readability-function-cognitive-complexity'

View File

@ -5,6 +5,8 @@ project(epec-mcu-emulator LANGUAGES C)
option(TESTS "Build unit tests" ON) option(TESTS "Build unit tests" ON)
option(WERROR "Treat warnings as errors" OFF) option(WERROR "Treat warnings as errors" OFF)
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
macro(set_default_target_options target) macro(set_default_target_options target)
set_property(TARGET ${target} PROPERTY C_STANDARD 11) set_property(TARGET ${target} PROPERTY C_STANDARD 11)
set_property(TARGET ${target} PROPERTY C_EXTENSIONS OFF) set_property(TARGET ${target} PROPERTY C_EXTENSIONS OFF)
@ -22,6 +24,10 @@ add_custom_target(check-format
COMMAND sh ${CMAKE_SOURCE_DIR}/scripts/check-format.sh COMMAND sh ${CMAKE_SOURCE_DIR}/scripts/check-format.sh
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
) )
add_custom_target(lint
COMMAND sh ${CMAKE_SOURCE_DIR}/scripts/lint.sh
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
)
add_subdirectory(engine) add_subdirectory(engine)

4
scripts/lint.sh Executable file
View File

@ -0,0 +1,4 @@
scripts_dir=`dirname $0`
sh "$scripts_dir/sources.sh" \
| xargs -n 1 clang-tidy -p "$scripts_dir/../build" \
--warnings-as-errors='*'