authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2020-04-09 22:28:53-04:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2020-04-10 00:38:19-04:00
logaaf99371b22e816a4162391d799b9d22bba21120
tree0ac7055d885643371eb2a36f6af32e21ba28984f
parent543031db35ede984b60a00c8f8a7859c6acfebdd

look for clang-cpp shared lib when it exists

See #4799

1 files changed, 61 insertions(+), 43 deletions(-)

cmake/Findclang.cmake+61-43
...@@ -8,54 +8,72 @@...@@ -8,54 +8,72 @@
8# CLANG_LIBDIRS8# CLANG_LIBDIRS
99
10find_path(CLANG_INCLUDE_DIRS NAMES clang/Frontend/ASTUnit.h10find_path(CLANG_INCLUDE_DIRS NAMES clang/Frontend/ASTUnit.h
11 PATHS
12 /usr/lib/llvm/10/include
13 /usr/lib/llvm-10/include
14 /usr/lib/llvm-10.0/include
15 /usr/local/llvm100/include
16 /usr/local/llvm10/include
17 /mingw64/include
18)
19
20if(NOT ZIG_STATIC_LLVM)
21 find_library(CLANG_CPP_DYLIB
22 NAMES
23 clang-cpp-10.0
24 clang-cpp100
25 clang-cpp
11 PATHS26 PATHS
12 /usr/lib/llvm/10/include27 ${CLANG_LIBDIRS}
13 /usr/lib/llvm-10/include28 /usr/lib/llvm-10/lib
14 /usr/lib/llvm-10.0/include29 /usr/local/llvm100/lib
15 /usr/local/llvm100/include30 /usr/local/llvm10/lib
16 /usr/local/llvm10/include31 )
17 /mingw64/include)32endif()
1833
19macro(FIND_AND_ADD_CLANG_LIB _libname_)34if(CLANG_CPP_DYLIB)
35 set(CLANG_LIBRARIES ${CLANG_CPP_DYLIB})
36else()
37 macro(FIND_AND_ADD_CLANG_LIB _libname_)
20 string(TOUPPER ${_libname_} _prettylibname_)38 string(TOUPPER ${_libname_} _prettylibname_)
21 find_library(CLANG_${_prettylibname_}_LIB NAMES ${_libname_}39 find_library(CLANG_${_prettylibname_}_LIB NAMES ${_libname_}
22 PATHS40 PATHS
23 ${CLANG_LIBDIRS}41 ${CLANG_LIBDIRS}
24 /usr/lib/llvm/10/lib42 /usr/lib/llvm/10/lib
25 /usr/lib/llvm-10/lib43 /usr/lib/llvm-10/lib
26 /usr/lib/llvm-10.0/lib44 /usr/lib/llvm-10.0/lib
27 /usr/local/llvm100/lib45 /usr/local/llvm100/lib
28 /usr/local/llvm10/lib46 /usr/local/llvm10/lib
29 /mingw64/lib47 /mingw64/lib
30 /c/msys64/mingw64/lib48 /c/msys64/mingw64/lib
31 c:\\msys64\\mingw64\\lib)49 c:\\msys64\\mingw64\\lib
32 if(CLANG_${_prettylibname_}_LIB)50 )
33 set(CLANG_LIBRARIES ${CLANG_LIBRARIES} ${CLANG_${_prettylibname_}_LIB})51 set(CLANG_LIBRARIES ${CLANG_LIBRARIES} ${CLANG_${_prettylibname_}_LIB})
34 endif()52 endmacro(FIND_AND_ADD_CLANG_LIB)
35endmacro(FIND_AND_ADD_CLANG_LIB)
3653
37FIND_AND_ADD_CLANG_LIB(clangFrontendTool)54 FIND_AND_ADD_CLANG_LIB(clangFrontendTool)
38FIND_AND_ADD_CLANG_LIB(clangCodeGen)55 FIND_AND_ADD_CLANG_LIB(clangCodeGen)
39FIND_AND_ADD_CLANG_LIB(clangFrontend)56 FIND_AND_ADD_CLANG_LIB(clangFrontend)
40FIND_AND_ADD_CLANG_LIB(clangDriver)57 FIND_AND_ADD_CLANG_LIB(clangDriver)
41FIND_AND_ADD_CLANG_LIB(clangSerialization)58 FIND_AND_ADD_CLANG_LIB(clangSerialization)
42FIND_AND_ADD_CLANG_LIB(clangSema)59 FIND_AND_ADD_CLANG_LIB(clangSema)
43FIND_AND_ADD_CLANG_LIB(clangStaticAnalyzerFrontend)60 FIND_AND_ADD_CLANG_LIB(clangStaticAnalyzerFrontend)
44FIND_AND_ADD_CLANG_LIB(clangStaticAnalyzerCheckers)61 FIND_AND_ADD_CLANG_LIB(clangStaticAnalyzerCheckers)
45FIND_AND_ADD_CLANG_LIB(clangStaticAnalyzerCore)62 FIND_AND_ADD_CLANG_LIB(clangStaticAnalyzerCore)
46FIND_AND_ADD_CLANG_LIB(clangAnalysis)63 FIND_AND_ADD_CLANG_LIB(clangAnalysis)
47FIND_AND_ADD_CLANG_LIB(clangASTMatchers)64 FIND_AND_ADD_CLANG_LIB(clangASTMatchers)
48FIND_AND_ADD_CLANG_LIB(clangAST)65 FIND_AND_ADD_CLANG_LIB(clangAST)
49FIND_AND_ADD_CLANG_LIB(clangParse)66 FIND_AND_ADD_CLANG_LIB(clangParse)
50FIND_AND_ADD_CLANG_LIB(clangSema)67 FIND_AND_ADD_CLANG_LIB(clangSema)
51FIND_AND_ADD_CLANG_LIB(clangBasic)68 FIND_AND_ADD_CLANG_LIB(clangBasic)
52FIND_AND_ADD_CLANG_LIB(clangEdit)69 FIND_AND_ADD_CLANG_LIB(clangEdit)
53FIND_AND_ADD_CLANG_LIB(clangLex)70 FIND_AND_ADD_CLANG_LIB(clangLex)
54FIND_AND_ADD_CLANG_LIB(clangARCMigrate)71 FIND_AND_ADD_CLANG_LIB(clangARCMigrate)
55FIND_AND_ADD_CLANG_LIB(clangRewriteFrontend)72 FIND_AND_ADD_CLANG_LIB(clangRewriteFrontend)
56FIND_AND_ADD_CLANG_LIB(clangRewrite)73 FIND_AND_ADD_CLANG_LIB(clangRewrite)
57FIND_AND_ADD_CLANG_LIB(clangCrossTU)74 FIND_AND_ADD_CLANG_LIB(clangCrossTU)
58FIND_AND_ADD_CLANG_LIB(clangIndex)75 FIND_AND_ADD_CLANG_LIB(clangIndex)
76endif()
5977
60include(FindPackageHandleStandardArgs)78include(FindPackageHandleStandardArgs)
61find_package_handle_standard_args(clang DEFAULT_MSG CLANG_LIBRARIES CLANG_INCLUDE_DIRS)79find_package_handle_standard_args(clang DEFAULT_MSG CLANG_LIBRARIES CLANG_INCLUDE_DIRS)