blob: bb13e46a57efa0a0259eb0ef77ac92a804fd353a (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
|
# SPDX-License-Identifier: GPL-3.0-or-later
# Resolve developer tools only when the corresponding target is invoked.
set(RCC_PYTHON_EXECUTABLE python3 CACHE STRING "Python interpreter for developer tools")
set(RCC_CLANG_FORMAT_EXECUTABLE clang-format CACHE STRING "clang-format executable")
set(RCC_CLANG_TIDY_EXECUTABLE clang-tidy CACHE STRING "clang-tidy executable")
set(RCC_ANALYZER_EXECUTABLE clang++ CACHE STRING "Clang static analyzer executable")
set(RCC_CLANG_FORMAT_VERSION "" CACHE STRING "Required clang-format version, if specified")
set(RCC_CLANG_TIDY_VERSION "" CACHE STRING "Required clang-tidy version, if specified")
set(RCC_ANALYZER_VERSION "" CACHE STRING "Required Clang analyzer version, if specified")
set(RCC_DEV_BASE HEAD CACHE STRING "Git revision used for changed-file checks")
set(rccDevScript "${CMAKE_CURRENT_SOURCE_DIR}/dev.py")
add_custom_target(format-check
COMMAND "${RCC_PYTHON_EXECUTABLE}" "${rccDevScript}" format
--build-dir "${CMAKE_BINARY_DIR}"
--base "${RCC_DEV_BASE}"
--tool "${RCC_CLANG_FORMAT_EXECUTABLE}"
--tool-version "${RCC_CLANG_FORMAT_VERSION}"
WORKING_DIRECTORY "${RCC_SOURCE_DIR}/.."
USES_TERMINAL VERBATIM)
add_custom_target(format
COMMAND "${RCC_PYTHON_EXECUTABLE}" "${rccDevScript}" format --fix
--build-dir "${CMAKE_BINARY_DIR}"
--base "${RCC_DEV_BASE}"
--tool "${RCC_CLANG_FORMAT_EXECUTABLE}"
--tool-version "${RCC_CLANG_FORMAT_VERSION}"
WORKING_DIRECTORY "${RCC_SOURCE_DIR}/.."
USES_TERMINAL VERBATIM)
add_custom_target(tidy
COMMAND "${RCC_PYTHON_EXECUTABLE}" "${rccDevScript}" tidy
--build-dir "${CMAKE_BINARY_DIR}" --base "${RCC_DEV_BASE}"
--tool "${RCC_CLANG_TIDY_EXECUTABLE}"
--tool-version "${RCC_CLANG_TIDY_VERSION}"
WORKING_DIRECTORY "${RCC_SOURCE_DIR}/.."
USES_TERMINAL VERBATIM)
add_custom_target(analyze
COMMAND "${RCC_PYTHON_EXECUTABLE}" "${rccDevScript}" analyze
--build-dir "${CMAKE_BINARY_DIR}" --base "${RCC_DEV_BASE}"
--tool "${RCC_ANALYZER_EXECUTABLE}"
--tool-version "${RCC_ANALYZER_VERSION}"
WORKING_DIRECTORY "${RCC_SOURCE_DIR}/.."
USES_TERMINAL VERBATIM)
|