mirror of
https://github.com/neovim/neovim.git
synced 2024-12-19 18:55:14 -07:00
cmake: Replace RunLint.cmake with code in src/nvim/CMakeLists.txt
This also removes LINT_FILE environment variable, other then that functionality is kept. It is expected that developers needing partial linting will use `make lint`, touching interesting file before (if not done already by writing to them).
This commit is contained in:
parent
24fd125893
commit
c61858a997
12
Makefile
12
Makefile
@ -126,15 +126,15 @@ distclean: clean
|
|||||||
install: | nvim
|
install: | nvim
|
||||||
+$(BUILD_CMD) -C build install
|
+$(BUILD_CMD) -C build install
|
||||||
|
|
||||||
clint:
|
clint: build/.ran-cmake
|
||||||
$(CMAKE_PRG) -DLINT_PRG=./src/clint.py \
|
+$(BUILD_CMD) -C build clint
|
||||||
-DLINT_DIR=src \
|
|
||||||
-DLINT_SUPPRESS_URL="$(DOC_DOWNLOAD_URL_BASE)$(CLINT_ERRORS_FILE_PATH)" \
|
clint-full: build/.ran-cmake
|
||||||
-P cmake/RunLint.cmake
|
+$(BUILD_CMD) -C build clint-full
|
||||||
|
|
||||||
check-single-includes: build/.ran-cmake
|
check-single-includes: build/.ran-cmake
|
||||||
+$(BUILD_CMD) -C build check-single-includes
|
+$(BUILD_CMD) -C build check-single-includes
|
||||||
|
|
||||||
lint: check-single-includes clint testlint
|
lint: check-single-includes clint-full testlint
|
||||||
|
|
||||||
.PHONY: test testlint functionaltest unittest lint clint clean distclean nvim libnvim cmake deps install
|
.PHONY: test testlint functionaltest unittest lint clint clean distclean nvim libnvim cmake deps install
|
||||||
|
@ -1,32 +0,0 @@
|
|||||||
get_filename_component(LINT_DIR ${LINT_DIR} ABSOLUTE)
|
|
||||||
get_filename_component(LINT_PREFIX ${LINT_DIR} PATH)
|
|
||||||
set(LINT_SUPPRESS_FILE "${LINT_PREFIX}/errors.json")
|
|
||||||
|
|
||||||
if(DEFINED ENV{LINT_FILE})
|
|
||||||
file(GLOB_RECURSE LINT_FILES "$ENV{LINT_FILE}")
|
|
||||||
else()
|
|
||||||
file(GLOB_RECURSE LINT_FILES ${LINT_DIR}/*.c ${LINT_DIR}/*.h)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(LINT_ARGS)
|
|
||||||
|
|
||||||
if(LINT_SUPPRESS_URL)
|
|
||||||
file(DOWNLOAD ${LINT_SUPPRESS_URL} ${LINT_SUPPRESS_FILE})
|
|
||||||
list(APPEND LINT_ARGS "--suppress-errors=${LINT_SUPPRESS_FILE}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
foreach(lint_file ${LINT_FILES})
|
|
||||||
file(RELATIVE_PATH lint_file "${LINT_PREFIX}" "${lint_file}")
|
|
||||||
list(APPEND LINT_ARGS "${lint_file}")
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
execute_process(
|
|
||||||
COMMAND ${LINT_PRG} ${LINT_ARGS}
|
|
||||||
RESULT_VARIABLE res
|
|
||||||
WORKING_DIRECTORY "${LINT_PREFIX}")
|
|
||||||
|
|
||||||
file(REMOVE ${LINT_SUPPRESS_FILE})
|
|
||||||
|
|
||||||
if(NOT res EQUAL 0)
|
|
||||||
message(FATAL_ERROR "Linting failed: ${res}.")
|
|
||||||
endif()
|
|
@ -505,21 +505,32 @@ endfunction()
|
|||||||
|
|
||||||
add_download(${LINT_SUPPRESS_FILE} ${LINT_SUPPRESS_URL} off)
|
add_download(${LINT_SUPPRESS_FILE} ${LINT_SUPPRESS_URL} off)
|
||||||
|
|
||||||
|
set(LINT_NVIM_REL_SOURCES)
|
||||||
foreach(sfile ${LINT_NVIM_SOURCES})
|
foreach(sfile ${LINT_NVIM_SOURCES})
|
||||||
get_test_target("" "${sfile}" r suffix)
|
get_test_target("" "${sfile}" r suffix)
|
||||||
set(suppress_file ${LINT_SUPPRESSES_ROOT}/${suffix}.json)
|
set(suppress_file ${LINT_SUPPRESSES_ROOT}/${suffix}.json)
|
||||||
set(suppress_url "${LINT_SUPPRESS_URL_BASE}/${suffix}.json")
|
set(suppress_url "${LINT_SUPPRESS_URL_BASE}/${suffix}.json")
|
||||||
|
set(rsfile src/nvim/${r})
|
||||||
add_download(${suppress_file} ${suppress_url} on)
|
add_download(${suppress_file} ${suppress_url} on)
|
||||||
set(touch_file "${TOUCHES_DIR}/ran-clint-${suffix}")
|
set(touch_file "${TOUCHES_DIR}/ran-clint-${suffix}")
|
||||||
add_custom_command(
|
add_custom_command(
|
||||||
OUTPUT ${touch_file}
|
OUTPUT ${touch_file}
|
||||||
COMMAND ${LINT_PRG} --suppress-errors=${suppress_file} src/nvim/${r}
|
COMMAND ${LINT_PRG} --suppress-errors=${suppress_file} ${rsfile}
|
||||||
WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}
|
WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}
|
||||||
COMMAND ${CMAKE_COMMAND} -E touch ${touch_file}
|
COMMAND ${CMAKE_COMMAND} -E touch ${touch_file}
|
||||||
DEPENDS ${sfile} ${suppress_file}
|
DEPENDS ${sfile} ${suppress_file}
|
||||||
)
|
)
|
||||||
list(APPEND LINT_TARGETS ${touch_file})
|
list(APPEND LINT_TARGETS ${touch_file})
|
||||||
|
list(APPEND LINT_NVIM_REL_SOURCES ${rsfile})
|
||||||
endforeach()
|
endforeach()
|
||||||
add_custom_target(clint DEPENDS ${LINT_TARGETS})
|
add_custom_target(clint DEPENDS ${LINT_TARGETS})
|
||||||
|
|
||||||
|
add_custom_target(
|
||||||
|
clint-full
|
||||||
|
COMMAND
|
||||||
|
${LINT_PRG} --suppress-errors=${LINT_SUPPRESS_FILE} ${LINT_NVIM_REL_SOURCES}
|
||||||
|
WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}
|
||||||
|
DEPENDS ${LINT_NVIM_SOURCES} ${LINT_SUPPRESS_FILE}
|
||||||
|
)
|
||||||
|
|
||||||
add_subdirectory(po)
|
add_subdirectory(po)
|
||||||
|
Loading…
Reference in New Issue
Block a user