tstellar created this revision.
tstellar added reviewers: beanz, smeenai, clayborg, zturner.
Herald added subscribers: lldb-commits, mgorny.
Herald added a project: LLDB.
Repository:
rG LLVM Github Monorepo
https://reviews.llvm.org/D68071
Files:
lldb/cmake/modules/AddLLDB.cmake
Index: lldb/cmake/modules/AddLLDB.cmake
===================================================================
--- lldb/cmake/modules/AddLLDB.cmake
+++ lldb/cmake/modules/AddLLDB.cmake
@@ -27,6 +27,22 @@
endif()
endfunction(lldb_tablegen)
+# Filter out clang libraries and add clang_shared when
CLANG_LINK_CLANG_DYLIB=ON
+function(lldb_filter_link_libs link_libs)
+
+ set(link_libs_list ${${link_libs}})
+ list(LENGTH link_libs_list lib_count)
+ if (CLANG_LINK_CLANG_DYLIB AND lib_count GREATER 0)
+ list(FILTER link_libs_list EXCLUDE REGEX "^clang")
+ list(LENGTH link_libs_list filtered_lib_count)
+ if (filtered_lib_count LESS lib_count)
+ list(APPEND link_libs_list clang-cpp)
+ endif()
+ endif()
+ set(${link_libs} ${link_libs_list} PARENT_SCOPE)
+
+endfunction(lldb_filter_link_libs)
+
function(add_lldb_library name)
include_directories(BEFORE
${CMAKE_CURRENT_BINARY_DIR}
@@ -85,6 +101,8 @@
set(pass_NO_INSTALL_RPATH NO_INSTALL_RPATH)
endif()
+ lldb_filter_link_libs(PARAM_LINK_LIBS)
+
llvm_add_library(${name} ${libkind} ${srcs}
LINK_LIBS ${PARAM_LINK_LIBS}
DEPENDS ${PARAM_DEPENDS}
@@ -155,6 +173,8 @@
${ARG_UNPARSED_ARGUMENTS}
)
+ lldb_filter_link_libs(ARG_LINK_LIBS)
+
target_link_libraries(${name} PRIVATE ${ARG_LINK_LIBS})
set_target_properties(${name} PROPERTIES FOLDER "lldb executables")
Index: lldb/cmake/modules/AddLLDB.cmake
===================================================================
--- lldb/cmake/modules/AddLLDB.cmake
+++ lldb/cmake/modules/AddLLDB.cmake
@@ -27,6 +27,22 @@
endif()
endfunction(lldb_tablegen)
+# Filter out clang libraries and add clang_shared when CLANG_LINK_CLANG_DYLIB=ON
+function(lldb_filter_link_libs link_libs)
+
+ set(link_libs_list ${${link_libs}})
+ list(LENGTH link_libs_list lib_count)
+ if (CLANG_LINK_CLANG_DYLIB AND lib_count GREATER 0)
+ list(FILTER link_libs_list EXCLUDE REGEX "^clang")
+ list(LENGTH link_libs_list filtered_lib_count)
+ if (filtered_lib_count LESS lib_count)
+ list(APPEND link_libs_list clang-cpp)
+ endif()
+ endif()
+ set(${link_libs} ${link_libs_list} PARENT_SCOPE)
+
+endfunction(lldb_filter_link_libs)
+
function(add_lldb_library name)
include_directories(BEFORE
${CMAKE_CURRENT_BINARY_DIR}
@@ -85,6 +101,8 @@
set(pass_NO_INSTALL_RPATH NO_INSTALL_RPATH)
endif()
+ lldb_filter_link_libs(PARAM_LINK_LIBS)
+
llvm_add_library(${name} ${libkind} ${srcs}
LINK_LIBS ${PARAM_LINK_LIBS}
DEPENDS ${PARAM_DEPENDS}
@@ -155,6 +173,8 @@
${ARG_UNPARSED_ARGUMENTS}
)
+ lldb_filter_link_libs(ARG_LINK_LIBS)
+
target_link_libraries(${name} PRIVATE ${ARG_LINK_LIBS})
set_target_properties(${name} PROPERTIES FOLDER "lldb executables")
_______________________________________________
lldb-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits