Blob Blame History Raw
diff --git Sourcetrail-2020.2.43.orig/CMakeLists.txt Sourcetrail-2020.2.43/CMakeLists.txt
index 2b3735e..d13eb4b 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -359,38 +359,46 @@ if (BUILD_CXX_LANGUAGE_PACKAGE)
 
 	link_directories(${LLVM_LIBRARY_DIRS} ${CLANG_LIBRARY_DIRS} ${Boost_LIBRARY_DIRS})
 
-	llvm_map_components_to_libnames(REQ_LLVM_LIBS
-		support core libdriver passes option
-	)
-	foreach(LLVM_TARGET ${LLVM_TARGETS_TO_BUILD})
-		get_property(lib_deps GLOBAL PROPERTY "LLVMBUILD_LIB_DEPS_LLVM${LLVM_TARGET}CodeGen")
-		list(APPEND REQ_LLVM_LIBS "LLVM${LLVM_TARGET}CodeGen")
-		list(APPEND REQ_LLVM_LIBS "${lib_deps}")
-		get_property(lib_deps GLOBAL PROPERTY "LLVMBUILD_LIB_DEPS_LLVM${LLVM_TARGET}AsmParser")
-		if (NOT "${lib_deps}" STREQUAL "")
-			list(APPEND REQ_LLVM_LIBS "LLVM${LLVM_TARGET}AsmParser")
-			list(APPEND REQ_LLVM_LIBS "${lib_deps}")
-		endif()
-	endforeach()
-
-	set(CLANG_LIBRARIES
-		clangASTMatchers
-		clangFrontend
-		clangSerialization
-		clangDriver
-		clangTooling
-		clangParse
-		clangSema
-		clangStaticAnalyzerFrontend
-		clangStaticAnalyzerCheckers
-		clangStaticAnalyzerCore
-		clangAnalysis
-		clangRewriteFrontend
-		clangEdit
-		clangAST
-		clangLex
-		clangBasic
-	)
+    if(LLVM_LINK_LLVM_DYLIB)
+        set(REQ_LLVM_LIBS LLVM)
+    else()
+        llvm_map_components_to_libnames(REQ_LLVM_LIBS
+            support core libdriver passes option
+        )
+        foreach(LLVM_TARGET ${LLVM_TARGETS_TO_BUILD})
+            get_property(lib_deps GLOBAL PROPERTY "LLVMBUILD_LIB_DEPS_LLVM${LLVM_TARGET}CodeGen")
+            list(APPEND REQ_LLVM_LIBS "LLVM${LLVM_TARGET}CodeGen")
+            list(APPEND REQ_LLVM_LIBS "${lib_deps}")
+            get_property(lib_deps GLOBAL PROPERTY "LLVMBUILD_LIB_DEPS_LLVM${LLVM_TARGET}AsmParser")
+            if (NOT "${lib_deps}" STREQUAL "")
+                list(APPEND REQ_LLVM_LIBS "LLVM${LLVM_TARGET}AsmParser")
+                list(APPEND REQ_LLVM_LIBS "${lib_deps}")
+            endif()
+        endforeach()
+    endif()
+
+    if(LLVM_LINK_LLVM_DYLIB)  # Should be CLANG_LINK_CLANG_DYLIB in a future LLVM release
+        set(CLANG_LIBRARIES clang-cpp)
+    else()
+        set(CLANG_LIBRARIES
+            clangASTMatchers
+            clangFrontend
+            clangSerialization
+            clangDriver
+            clangTooling
+            clangParse
+            clangSema
+            clangStaticAnalyzerFrontend
+            clangStaticAnalyzerCheckers
+            clangStaticAnalyzerCore
+            clangAnalysis
+            clangRewriteFrontend
+            clangEdit
+            clangAST
+            clangLex
+            clangBasic
+        )
+    endif()
 
 	target_link_libraries(${LIB_CXX_PROJECT_NAME} ${LIB_UTILITY_PROJECT_NAME} ${CLANG_LIBRARIES} ${REQ_LLVM_LIBS})