From 4d63d8cf75148e8316712c9d5dd0d1d192aa7b27 Mon Sep 17 00:00:00 2001 From: Jonas Devlieghere Date: Fri, 29 Mar 2019 17:47:26 +0000 Subject: [PATCH] [CMake] Move link dependencies where they are used. The utility library shouldn't depend on curses, libedit or python. Move curses to core, libedit to host and python to the python plugin. Differential revision: https://reviews.llvm.org/D59970 llvm-svn: 357287 --- lldb/source/Core/CMakeLists.txt | 4 +++ lldb/source/Host/CMakeLists.txt | 10 +++++- .../ScriptInterpreter/Python/CMakeLists.txt | 2 ++ lldb/source/Utility/CMakeLists.txt | 39 +++------------------- 4 files changed, 19 insertions(+), 36 deletions(-) diff --git a/lldb/source/Core/CMakeLists.txt b/lldb/source/Core/CMakeLists.txt index 15f2dcf..e33506e 100644 --- a/lldb/source/Core/CMakeLists.txt +++ b/lldb/source/Core/CMakeLists.txt @@ -1,10 +1,14 @@ set(LLDB_CURSES_LIBS) +set(LLDB_LIBEDIT_LIBS) if (NOT LLDB_DISABLE_CURSES) list(APPEND LLDB_CURSES_LIBS ${CURSES_LIBRARIES}) if(LLVM_ENABLE_TERMINFO AND HAVE_TERMINFO) list(APPEND LLDB_CURSES_LIBS ${TERMINFO_LIBS}) endif() + if (LLVM_BUILD_STATIC) + list(APPEND LLDB_CURSES_LIBS gpm) + endif() endif() add_lldb_library(lldbCore diff --git a/lldb/source/Host/CMakeLists.txt b/lldb/source/Host/CMakeLists.txt index 6ce74c1..4bb8d36 100644 --- a/lldb/source/Host/CMakeLists.txt +++ b/lldb/source/Host/CMakeLists.txt @@ -101,7 +101,7 @@ else() macosx/cfcpp/CFCString.cpp ) if(IOS) - set_property(SOURCE macosx/Host.mm APPEND PROPERTY + set_property(SOURCE macosx/Host.mm APPEND PROPERTY COMPILE_DEFINITIONS "NO_XPC_SERVICES=1") endif() @@ -158,6 +158,13 @@ if (NOT LLDB_DISABLE_LIBEDIT) list(APPEND EXTRA_LIBS ${libedit_LIBRARIES}) endif() +if (NOT LLDB_DISABLE_LIBEDIT) + list(APPEND LLDB_LIBEDIT_LIBS ${libedit_LIBRARIES}) + if (LLVM_BUILD_STATIC) + list(APPEND LLDB_SYSTEM_LIBS gpm) + endif() +endif() + add_lldb_library(lldbHost ${HOST_SOURCES} @@ -165,6 +172,7 @@ add_lldb_library(lldbHost lldbUtility ${EXTRA_LIBS} ${LLDBObjCLibs} + ${LLDB_LIBEDIT_LIBS} LINK_COMPONENTS Object diff --git a/lldb/source/Plugins/ScriptInterpreter/Python/CMakeLists.txt b/lldb/source/Plugins/ScriptInterpreter/Python/CMakeLists.txt index 56eacc94..f7360d7 100644 --- a/lldb/source/Plugins/ScriptInterpreter/Python/CMakeLists.txt +++ b/lldb/source/Plugins/ScriptInterpreter/Python/CMakeLists.txt @@ -23,6 +23,8 @@ add_lldb_library(lldbPluginScriptInterpreterPython PLUGIN lldbHost lldbInterpreter lldbTarget + ${PYTHON_LIBRARY} + LINK_COMPONENTS Support ) diff --git a/lldb/source/Utility/CMakeLists.txt b/lldb/source/Utility/CMakeLists.txt index 280ed3c..03254c3 100644 --- a/lldb/source/Utility/CMakeLists.txt +++ b/lldb/source/Utility/CMakeLists.txt @@ -1,46 +1,15 @@ set(LLDB_SYSTEM_LIBS) -# Windows-only libraries -if ( CMAKE_SYSTEM_NAME MATCHES "Windows" ) - list(APPEND LLDB_SYSTEM_LIBS - ws2_32 - rpcrt4 - ) -endif () +list(APPEND LLDB_SYSTEM_LIBS ${system_libs}) -if (NOT LLDB_DISABLE_LIBEDIT) - list(APPEND LLDB_SYSTEM_LIBS ${libedit_LIBRARIES}) -endif() -if (NOT LLDB_DISABLE_CURSES) - list(APPEND LLDB_SYSTEM_LIBS ${CURSES_LIBRARIES}) - if(LLVM_ENABLE_TERMINFO AND HAVE_TERMINFO) - list(APPEND LLDB_SYSTEM_LIBS ${TERMINFO_LIBS}) - endif() -endif() +if (CMAKE_SYSTEM_NAME MATCHES "Windows") + list(APPEND LLDB_SYSTEM_LIBS ws2_32 rpcrt4) +endif () if (NOT HAVE_CXX_ATOMICS64_WITHOUT_LIB ) list(APPEND LLDB_SYSTEM_LIBS atomic) endif() -if(Backtrace_FOUND) - list(APPEND LLDB_SYSTEM_LIBS ${Backtrace_LIBRARY}) -endif() - -if (NOT LLDB_DISABLE_PYTHON AND NOT LLVM_BUILD_STATIC) - list(APPEND LLDB_SYSTEM_LIBS ${PYTHON_LIBRARY}) -endif() - -list(APPEND LLDB_SYSTEM_LIBS ${system_libs}) - -if (LLVM_BUILD_STATIC) - if (NOT LLDB_DISABLE_PYTHON) - list(APPEND LLDB_SYSTEM_LIBS python2.7 util) - endif() - if (NOT LLDB_DISABLE_CURSES) - list(APPEND LLDB_SYSTEM_LIBS gpm) - endif() -endif() - add_lldb_library(lldbUtility ArchSpec.cpp Args.cpp -- 2.7.4