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 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78
|
if (UNIX)
macro( FIND_LIBCLANG_OFFICIAL )
find_library(LIBCLANG_T
NAMES libclang.so
HINTS
/usr/lib
/usr/local/lib
/usr/lib/llvm-6.0/lib
/usr/lib/llvm-5.0/lib
/usr/lib/llvm-4.2/lib
/usr/lib/llvm-4.1/lib
/usr/lib/llvm-4.0/lib
/usr/lib/llvm-3.8/lib
/usr/lib/llvm-3.9/lib
/usr/lib/llvm-3.7/lib
/usr/lib/llvm-3.6/lib
/usr/lib/llvm-3.5/lib
/usr/lib/llvm-3.4/lib
/usr/lib/llvm-3.3/lib
# For fedora
/usr/lib/llvm
/usr/lib64/llvm
${CMAKE_INSTALL_LIBDIR})
find_path(LIBCLANG_INCLUDE_T NAMES clang-c/Index.h
HINTS
/usr/lib/llvm-6.0/include
/usr/lib/llvm-5.0/include
/usr/lib/llvm-4.2/include
/usr/lib/llvm-4.1/include
/usr/lib/llvm-4.0/include
/usr/lib/llvm-3.9/include
/usr/lib/llvm-3.8/include
/usr/lib/llvm-3.7/include
/usr/lib/llvm-3.6/include
/usr/lib/llvm-3.5/include
/usr/lib/llvm-3.4/include
/usr/lib/llvm-3.3/include
/usr/include/llvm-4.2
/usr/include/llvm-4.1
/usr/include/llvm-4.0
/usr/include/llvm-3.9
/usr/include/llvm-3.8
/usr/include/llvm-3.7
/usr/include/llvm-3.6
/usr/include/llvm-3.5
/usr/include/llvm-3.4
/usr/include/llvm-3.3
/usr/include/llvm
/usr/local/include
# For fedora
/usr/include
)
if ( LIBCLANG_T STREQUAL "LIBCLANG_T-NOTFOUND" OR LIBCLANG_INCLUDE_T STREQUAL "LIBCLANG_INCLUDE_T-NOTFOUND" )
set(LIBCLANG "LIBCLANG-NOTFOUND")
set(LIBCLANG_INCLUDE "LIBCLANG_INCLUDE-NOTFOUND")
set( LIBCLANG_OFFICIAL_FOUND 0 )
else()
set( LIBCLANG_OFFICIAL_FOUND 1 )
set(LIBCLANG ${LIBCLANG_T})
set(LIBCLANG_INCLUDE ${LIBCLANG_INCLUDE_T})
set(LIBCLANG_INSTALL_NEEDED 0)
## Check to see if we have a recent version of clang to include clang_getBriefComment
execute_process(COMMAND /bin/grep clang_getCompletionBriefComment ${LIBCLANG_INCLUDE_T}/clang-c/Index.h
OUTPUT_VARIABLE BRIEF_COMMENTS_OUTPUT
OUTPUT_STRIP_TRAILING_WHITESPACE)
message("-- Find libClang result: ${BRIEF_COMMENTS_OUTPUT}")
if (BRIEF_COMMENTS_OUTPUT STREQUAL "")
message("-- Could not find method clang_getCompletionBriefComment, disabling brief comments support")
add_definitions(-DHAS_LIBCLANG_BRIEFCOMMENTS=0)
else()
add_definitions(-DHAS_LIBCLANG_BRIEFCOMMENTS=1)
message("-- Found method clang_getCompletionBriefComment, enabling brief comments support")
endif()
endif()
endmacro()
endif()
|