aboutsummaryrefslogtreecommitdiff
path: root/ricochet/etc/scanners.cmake
diff options
context:
space:
mode:
authorRichard Qin <richard.qin.x@gmail.com>2026-10-30 02:24:12 +0800
committerRichard Qin <richard.qin.x@gmail.com>2026-10-30 02:24:12 +0800
commit464313d02b76385d3a2e8809a4595afabca88dae (patch)
tree6cbf81416b856ff15fdc4239de5e3624ef10b2cc /ricochet/etc/scanners.cmake
parentcf58b3b4dfa0dbbd0ca492484ca241b320c4ba9e (diff)
parentbdefdb301db843e87aee8c6c35808d295bb66ee5 (diff)
downloadrcc-project-464313d02b76385d3a2e8809a4595afabca88dae.tar.gz
rcc-project-464313d02b76385d3a2e8809a4595afabca88dae.tar.xz
Merge remote-tracking branch 'ricochet-import/master'HEADmaster
Diffstat (limited to 'ricochet/etc/scanners.cmake')
-rw-r--r--ricochet/etc/scanners.cmake27
1 files changed, 27 insertions, 0 deletions
diff --git a/ricochet/etc/scanners.cmake b/ricochet/etc/scanners.cmake
new file mode 100644
index 0000000..2dd9da0
--- /dev/null
+++ b/ricochet/etc/scanners.cmake
@@ -0,0 +1,27 @@
+file (GLOB_RECURSE RICOCHET_CC_FILES ${CMAKE_SOURCE_DIR}/src/*.cc)
+
+file(GLOB_RECURSE ALL_SRC_FILES
+ ${CMAKE_SOURCE_DIR}/src/*.cc
+ ${CMAKE_SOURCE_DIR}/src/*.hh
+ ${CMAKE_SOURCE_DIR}/include/*.hh
+)
+
+add_custom_target (format "clang-format" -i ${ALL_SRC_FILES} COMMENT "Formatting source code...")
+
+foreach (tidy_target ${ALL_SRC_FILES})
+ get_filename_component (basename ${tidy_target} NAME)
+ get_filename_component (dirname ${tidy_target} DIRECTORY)
+ get_filename_component (basedir ${dirname} NAME)
+ set (tidy_target_name "${basedir}__${basename}")
+ set (tidy_command clang-tidy --quiet -header-filter=.* -p=${PROJECT_BINARY_DIR} ${tidy_target})
+ add_custom_target (tidy_${tidy_target_name} ${tidy_command})
+ list (APPEND ALL_TIDY_TARGETS tidy_${tidy_target_name})
+
+ if (${tidy_target} IN_LIST RICOCHET_CC_FILES)
+ list (APPEND RICOCHET_TIDY_TARGETS tidy_${tidy_target_name})
+ endif ()
+endforeach (tidy_target)
+
+add_custom_target (tidy DEPENDS ${RICOCHET_TIDY_TARGETS})
+
+add_custom_target (tidy-all DEPENDS ${ALL_TIDY_TARGETS})