aboutsummaryrefslogtreecommitdiff
path: root/CMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r--CMakeLists.txt35
1 files changed, 27 insertions, 8 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index ee59d26a89..d8dc2beae4 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -612,6 +612,33 @@ if(NOT BUSTED_OUTPUT_TYPE)
set(BUSTED_OUTPUT_TYPE "nvim")
endif()
+#
+# Lint
+#
+find_program(LUACHECK_PRG luacheck)
+find_program(STYLUA_PRG stylua)
+find_program(FLAKE8_PRG flake8)
+find_program(UNCRUSTIFY_PRG uncrustify)
+find_program(SHELLCHECK_PRG shellcheck)
+include(DefCmdTarget)
+def_cmd_target(lintlua ${LUACHECK_PRG} LUACHECK_PRG true)
+if(LUACHECK_PRG)
+ add_custom_command(OUTPUT lintlua-cmd APPEND COMMAND ${LUACHECK_PRG} -q runtime/ scripts/ src/ test/)
+endif()
+if(STYLUA_PRG)
+ add_custom_command(OUTPUT lintlua-cmd APPEND COMMAND ${STYLUA_PRG} --color=always --check runtime/)
+else()
+ add_custom_command(OUTPUT lintlua-cmd APPEND COMMAND ${CMAKE_COMMAND} -E echo "STYLUA_PRG not found")
+endif()
+def_cmd_target(lintpy ${FLAKE8_PRG} FLAKE8_PRG true)
+if(FLAKE8_PRG)
+ add_custom_command(OUTPUT lintpy-cmd APPEND COMMAND ${FLAKE8_PRG} contrib/ scripts/ src/ test/)
+endif()
+def_cmd_target(lintsh ${SHELLCHECK_PRG} SHELLCHECK_PRG true)
+if(SHELLCHECK_PRG)
+ add_custom_command(OUTPUT lintsh-cmd APPEND COMMAND ${SHELLCHECK_PRG} scripts/vim-patch.sh)
+endif()
+
include(InstallHelpers)
file(GLOB MANPAGES
@@ -745,14 +772,6 @@ if(BUSTED_LUA_PRG)
set_target_properties(functionaltest-lua PROPERTIES FOLDER test)
endif()
-foreach(TARGET IN ITEMS lintlua lintsh lintpy lintuncrustify)
- add_custom_target(${TARGET}
- COMMAND ${CMAKE_COMMAND}
- -DPROJECT_ROOT=${PROJECT_SOURCE_DIR}
- -DTARGET=${TARGET}
- -P ${PROJECT_SOURCE_DIR}/cmake/lint.cmake)
-endforeach()
-
#add uninstall target
if(NOT TARGET uninstall)
configure_file(