summaryrefslogtreecommitdiff
path: root/cmake/tags.cmake
blob: 00e6f0d6a341ca9e4807c2992ad35a53f4a4d8e7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
find_program(CTAGS_EXECUTABLE
  NAMES ctags-universal universal-ctags ctags
  DOC "Generate a ctags index for source navigation: make tags")
mark_as_advanced(CTAGS_EXECUTABLE)

if(CTAGS_EXECUTABLE)
  add_custom_target(tags
    COMMAND ${CTAGS_EXECUTABLE}
            -R
            --languages=C
            --c-kinds=+p
            --fields=+S
            --exclude=build
            --exclude=build-claude
            --exclude=build_tmp
            --exclude=.git
            -f ${CMAKE_SOURCE_DIR}/tags
            ${CMAKE_SOURCE_DIR}
    WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
    COMMENT "Generating ctags index at ${CMAKE_SOURCE_DIR}/tags")
endif()