diff options
author | dundargoc <33953936+dundargoc@users.noreply.github.com> | 2022-07-25 15:18:49 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-07-25 06:18:49 -0700 |
commit | e12035fc0ce2f94015e665e410d09f58647078ed (patch) | |
tree | dde9894e99c4f4bd2d9280169ea98443aa895366 | |
parent | e12c62c1f7a7ebb957831ca1e0e49771e190a1a8 (diff) | |
download | rneovim-e12035fc0ce2f94015e665e410d09f58647078ed.tar.gz rneovim-e12035fc0ce2f94015e665e410d09f58647078ed.tar.bz2 rneovim-e12035fc0ce2f94015e665e410d09f58647078ed.zip |
build(lint): check uncrustify version #19468
This to prevent the user from accidentally using the wrong uncrustify
version.
-rw-r--r-- | cmake/CheckUncrustifyVersion.cmake | 13 | ||||
-rwxr-xr-x | src/nvim/CMakeLists.txt | 8 |
2 files changed, 21 insertions, 0 deletions
diff --git a/cmake/CheckUncrustifyVersion.cmake b/cmake/CheckUncrustifyVersion.cmake new file mode 100644 index 0000000000..4812c24ace --- /dev/null +++ b/cmake/CheckUncrustifyVersion.cmake @@ -0,0 +1,13 @@ +if(UNCRUSTIFY_PRG) + execute_process(COMMAND uncrustify --version + OUTPUT_VARIABLE user_version + OUTPUT_STRIP_TRAILING_WHITESPACE) + string(REGEX REPLACE "[A-Za-z_#-]" "" user_version ${user_version}) + + file(STRINGS ${CONFIG_FILE} required_version LIMIT_COUNT 1) + string(REGEX REPLACE "[A-Za-z_# -]" "" required_version ${required_version}) + + if(NOT user_version STREQUAL required_version) + message(FATAL_ERROR "Wrong uncrustify version! Required version is ${required_version} but found ${user_version}") + endif() +endif() diff --git a/src/nvim/CMakeLists.txt b/src/nvim/CMakeLists.txt index 49d5f8a677..4b8774e598 100755 --- a/src/nvim/CMakeLists.txt +++ b/src/nvim/CMakeLists.txt @@ -789,6 +789,12 @@ foreach(sfile ${LINT_NVIM_SOURCES}) endforeach() add_custom_target(lintc DEPENDS ${LINT_TARGETS}) +add_custom_target(uncrustify-version + COMMAND ${CMAKE_COMMAND} + -D UNCRUSTIFY_PRG=${UNCRUSTIFY_PRG} + -D CONFIG_FILE=${PROJECT_SOURCE_DIR}/src/uncrustify.cfg + -P ${PROJECT_SOURCE_DIR}/cmake/CheckUncrustifyVersion.cmake) + add_glob_targets( TARGET lintuncrustify COMMAND ${UNCRUSTIFY_PRG} @@ -796,6 +802,8 @@ add_glob_targets( FILES ${LINT_NVIM_SOURCES} ) +add_dependencies(lintuncrustify uncrustify-version) + add_custom_target( lintcfull COMMAND |