c203d23be5
- Added executable detection script - Build will still work fine if ctags isn't installed
41 lines
1.1 KiB
CMake
41 lines
1.1 KiB
CMake
# The module defines the following variables:
|
|
# CTAGS_EXECUTABLE - path to ctags command line client
|
|
# CTAGS_FOUND - true if the command line client was found
|
|
# CTAGS_VERSION_STRING - the version of ctags found (since CMake 2.8.8)
|
|
# Example usage:
|
|
# find_package( Ctags )
|
|
# if( CTAGS_FOUND )
|
|
# message("ctags found: ${CTAGS_EXECUTABLE}")
|
|
# endif()
|
|
|
|
find_program( CTAGS_EXECUTABLE
|
|
NAMES ctags
|
|
DOC "ctags executable"
|
|
)
|
|
mark_as_advanced( CTAGS_EXECUTABLE )
|
|
|
|
if( CTAGS_EXECUTABLE )
|
|
execute_process(COMMAND ${CTAGS_EXECUTABLE} --version
|
|
OUTPUT_VARIABLE ctags_version
|
|
ERROR_QUIET
|
|
OUTPUT_STRIP_TRAILING_WHITESPACE
|
|
)
|
|
|
|
if( ctags_version MATCHES "^Exuberant Ctags [0-9]" )
|
|
string( REPLACE "Exuberant Ctags " "" CTAGS_VERSION_STRING "${ctags_version}" )
|
|
string( REGEX REPLACE ",.*$" "" CTAGS_VERSION_STRING ${CTAGS_VERSION_STRING} )
|
|
endif()
|
|
|
|
unset( ctags_version )
|
|
endif()
|
|
|
|
# Handle the QUIETLY and REQUIRED arguments and set CTAGS_FOUND to TRUE if
|
|
# all listed variables are TRUE
|
|
|
|
include( FindPackageHandleStandardArgs )
|
|
find_package_handle_standard_args( Ctags
|
|
REQUIRED_VARS CTAGS_EXECUTABLE
|
|
VERSION_VAR CTAGS_VERSION_STRING
|
|
)
|
|
|