Author: cbieneman Date: Tue Jan 31 16:12:59 2017 New Revision: 293696 URL: http://llvm.org/viewvc/llvm-project?rev=293696&view=rev Log: [CMake] Add explicit dependencies to plugins
Summary: This patch does two things. First it updates all the ABI plugins with accurate dependencies, and second it adds a tracking mechanism for add_lldb_library to denote plugin libraries, allowing us to build up a list of all the configured plugins. This list of generated plugins will be used during generating liblldb so that we can link all the plugins into the library. If this patch looks good I will update all the other plugins in subsequent patches. Reviewers: labath, zturner Subscribers: nemanjai, mgorny, lldb-commits, jgosnell Differential Revision: https://reviews.llvm.org/D29348 Modified: lldb/trunk/cmake/modules/AddLLDB.cmake lldb/trunk/source/Plugins/ABI/MacOSX-arm/CMakeLists.txt lldb/trunk/source/Plugins/ABI/MacOSX-arm64/CMakeLists.txt lldb/trunk/source/Plugins/ABI/MacOSX-i386/CMakeLists.txt lldb/trunk/source/Plugins/ABI/SysV-arm/CMakeLists.txt lldb/trunk/source/Plugins/ABI/SysV-arm64/CMakeLists.txt lldb/trunk/source/Plugins/ABI/SysV-hexagon/CMakeLists.txt lldb/trunk/source/Plugins/ABI/SysV-i386/CMakeLists.txt lldb/trunk/source/Plugins/ABI/SysV-mips/CMakeLists.txt lldb/trunk/source/Plugins/ABI/SysV-mips64/CMakeLists.txt lldb/trunk/source/Plugins/ABI/SysV-ppc/CMakeLists.txt lldb/trunk/source/Plugins/ABI/SysV-ppc64/CMakeLists.txt lldb/trunk/source/Plugins/ABI/SysV-s390x/CMakeLists.txt lldb/trunk/source/Plugins/ABI/SysV-x86_64/CMakeLists.txt Modified: lldb/trunk/cmake/modules/AddLLDB.cmake URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/cmake/modules/AddLLDB.cmake?rev=293696&r1=293695&r2=293696&view=diff ============================================================================== --- lldb/trunk/cmake/modules/AddLLDB.cmake (original) +++ lldb/trunk/cmake/modules/AddLLDB.cmake Tue Jan 31 16:12:59 2017 @@ -21,13 +21,17 @@ function(add_lldb_library name) # only supported parameters to this macro are the optional # MODULE;SHARED;STATIC library type and source files cmake_parse_arguments(PARAM - "MODULE;SHARED;STATIC;OBJECT" + "MODULE;SHARED;STATIC;OBJECT;PLUGIN" "" "DEPENDS;LINK_LIBS;LINK_COMPONENTS" ${ARGN}) llvm_process_sources(srcs ${PARAM_UNPARSED_ARGUMENTS}) list(APPEND LLVM_LINK_COMPONENTS ${PARAM_LINK_COMPONENTS}) + if(PARAM_PLUGIN) + set_property(GLOBAL APPEND PROPERTY LLDB_PLUGINS ${name}) + endif() + if (MSVC_IDE OR XCODE) string(REGEX MATCHALL "/[^/]+" split_path ${CMAKE_CURRENT_SOURCE_DIR}) list(GET split_path -1 dir) Modified: lldb/trunk/source/Plugins/ABI/MacOSX-arm/CMakeLists.txt URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/ABI/MacOSX-arm/CMakeLists.txt?rev=293696&r1=293695&r2=293696&view=diff ============================================================================== --- lldb/trunk/source/Plugins/ABI/MacOSX-arm/CMakeLists.txt (original) +++ lldb/trunk/source/Plugins/ABI/MacOSX-arm/CMakeLists.txt Tue Jan 31 16:12:59 2017 @@ -1,3 +1,11 @@ -add_lldb_library(lldbPluginABIMacOSX_arm +add_lldb_library(lldbPluginABIMacOSX_arm PLUGIN ABIMacOSX_arm.cpp + + LINK_LIBS + lldbCore + lldbSymbol + lldbTarget + lldbPluginProcessUtility + LINK_COMPONENTS + Support ) Modified: lldb/trunk/source/Plugins/ABI/MacOSX-arm64/CMakeLists.txt URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/ABI/MacOSX-arm64/CMakeLists.txt?rev=293696&r1=293695&r2=293696&view=diff ============================================================================== --- lldb/trunk/source/Plugins/ABI/MacOSX-arm64/CMakeLists.txt (original) +++ lldb/trunk/source/Plugins/ABI/MacOSX-arm64/CMakeLists.txt Tue Jan 31 16:12:59 2017 @@ -1,3 +1,10 @@ -add_lldb_library(lldbPluginABIMacOSX_arm64 +add_lldb_library(lldbPluginABIMacOSX_arm64 PLUGIN ABIMacOSX_arm64.cpp + + LINK_LIBS + lldbCore + lldbSymbol + lldbTarget + LINK_COMPONENTS + Support ) Modified: lldb/trunk/source/Plugins/ABI/MacOSX-i386/CMakeLists.txt URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/ABI/MacOSX-i386/CMakeLists.txt?rev=293696&r1=293695&r2=293696&view=diff ============================================================================== --- lldb/trunk/source/Plugins/ABI/MacOSX-i386/CMakeLists.txt (original) +++ lldb/trunk/source/Plugins/ABI/MacOSX-i386/CMakeLists.txt Tue Jan 31 16:12:59 2017 @@ -1,3 +1,10 @@ -add_lldb_library(lldbPluginABIMacOSX_i386 +add_lldb_library(lldbPluginABIMacOSX_i386 PLUGIN ABIMacOSX_i386.cpp + + LINK_LIBS + lldbCore + lldbSymbol + lldbTarget + LINK_COMPONENTS + Support ) Modified: lldb/trunk/source/Plugins/ABI/SysV-arm/CMakeLists.txt URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/ABI/SysV-arm/CMakeLists.txt?rev=293696&r1=293695&r2=293696&view=diff ============================================================================== --- lldb/trunk/source/Plugins/ABI/SysV-arm/CMakeLists.txt (original) +++ lldb/trunk/source/Plugins/ABI/SysV-arm/CMakeLists.txt Tue Jan 31 16:12:59 2017 @@ -1,3 +1,11 @@ -add_lldb_library(lldbPluginABISysV_arm +add_lldb_library(lldbPluginABISysV_arm PLUGIN ABISysV_arm.cpp + + LINK_LIBS + lldbCore + lldbSymbol + lldbTarget + lldbPluginProcessUtility + LINK_COMPONENTS + Support ) Modified: lldb/trunk/source/Plugins/ABI/SysV-arm64/CMakeLists.txt URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/ABI/SysV-arm64/CMakeLists.txt?rev=293696&r1=293695&r2=293696&view=diff ============================================================================== --- lldb/trunk/source/Plugins/ABI/SysV-arm64/CMakeLists.txt (original) +++ lldb/trunk/source/Plugins/ABI/SysV-arm64/CMakeLists.txt Tue Jan 31 16:12:59 2017 @@ -1,3 +1,10 @@ -add_lldb_library(lldbPluginABISysV_arm64 +add_lldb_library(lldbPluginABISysV_arm64 PLUGIN ABISysV_arm64.cpp + + LINK_LIBS + lldbCore + lldbSymbol + lldbTarget + LINK_COMPONENTS + Support ) Modified: lldb/trunk/source/Plugins/ABI/SysV-hexagon/CMakeLists.txt URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/ABI/SysV-hexagon/CMakeLists.txt?rev=293696&r1=293695&r2=293696&view=diff ============================================================================== --- lldb/trunk/source/Plugins/ABI/SysV-hexagon/CMakeLists.txt (original) +++ lldb/trunk/source/Plugins/ABI/SysV-hexagon/CMakeLists.txt Tue Jan 31 16:12:59 2017 @@ -1,3 +1,10 @@ -add_lldb_library(lldbPluginABISysV_hexagon +add_lldb_library(lldbPluginABISysV_hexagon PLUGIN ABISysV_hexagon.cpp + + LINK_LIBS + lldbCore + lldbSymbol + lldbTarget + LINK_COMPONENTS + Support ) Modified: lldb/trunk/source/Plugins/ABI/SysV-i386/CMakeLists.txt URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/ABI/SysV-i386/CMakeLists.txt?rev=293696&r1=293695&r2=293696&view=diff ============================================================================== --- lldb/trunk/source/Plugins/ABI/SysV-i386/CMakeLists.txt (original) +++ lldb/trunk/source/Plugins/ABI/SysV-i386/CMakeLists.txt Tue Jan 31 16:12:59 2017 @@ -1,3 +1,10 @@ -add_lldb_library(lldbPluginABISysV_i386 +add_lldb_library(lldbPluginABISysV_i386 PLUGIN ABISysV_i386.cpp + + LINK_LIBS + lldbCore + lldbSymbol + lldbTarget + LINK_COMPONENTS + Support ) Modified: lldb/trunk/source/Plugins/ABI/SysV-mips/CMakeLists.txt URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/ABI/SysV-mips/CMakeLists.txt?rev=293696&r1=293695&r2=293696&view=diff ============================================================================== --- lldb/trunk/source/Plugins/ABI/SysV-mips/CMakeLists.txt (original) +++ lldb/trunk/source/Plugins/ABI/SysV-mips/CMakeLists.txt Tue Jan 31 16:12:59 2017 @@ -1,3 +1,10 @@ -add_lldb_library(lldbPluginABISysV_mips +add_lldb_library(lldbPluginABISysV_mips PLUGIN ABISysV_mips.cpp + + LINK_LIBS + lldbCore + lldbSymbol + lldbTarget + LINK_COMPONENTS + Support ) Modified: lldb/trunk/source/Plugins/ABI/SysV-mips64/CMakeLists.txt URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/ABI/SysV-mips64/CMakeLists.txt?rev=293696&r1=293695&r2=293696&view=diff ============================================================================== --- lldb/trunk/source/Plugins/ABI/SysV-mips64/CMakeLists.txt (original) +++ lldb/trunk/source/Plugins/ABI/SysV-mips64/CMakeLists.txt Tue Jan 31 16:12:59 2017 @@ -1,3 +1,10 @@ -add_lldb_library(lldbPluginABISysV_mips64 +add_lldb_library(lldbPluginABISysV_mips64 PLUGIN ABISysV_mips64.cpp + + LINK_LIBS + lldbCore + lldbSymbol + lldbTarget + LINK_COMPONENTS + Support ) Modified: lldb/trunk/source/Plugins/ABI/SysV-ppc/CMakeLists.txt URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/ABI/SysV-ppc/CMakeLists.txt?rev=293696&r1=293695&r2=293696&view=diff ============================================================================== --- lldb/trunk/source/Plugins/ABI/SysV-ppc/CMakeLists.txt (original) +++ lldb/trunk/source/Plugins/ABI/SysV-ppc/CMakeLists.txt Tue Jan 31 16:12:59 2017 @@ -1,3 +1,10 @@ -add_lldb_library(lldbPluginABISysV_ppc +add_lldb_library(lldbPluginABISysV_ppc PLUGIN ABISysV_ppc.cpp + + LINK_LIBS + lldbCore + lldbSymbol + lldbTarget + LINK_COMPONENTS + Support ) Modified: lldb/trunk/source/Plugins/ABI/SysV-ppc64/CMakeLists.txt URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/ABI/SysV-ppc64/CMakeLists.txt?rev=293696&r1=293695&r2=293696&view=diff ============================================================================== --- lldb/trunk/source/Plugins/ABI/SysV-ppc64/CMakeLists.txt (original) +++ lldb/trunk/source/Plugins/ABI/SysV-ppc64/CMakeLists.txt Tue Jan 31 16:12:59 2017 @@ -1,3 +1,10 @@ -add_lldb_library(lldbPluginABISysV_ppc64 +add_lldb_library(lldbPluginABISysV_ppc64 PLUGIN ABISysV_ppc64.cpp + + LINK_LIBS + lldbCore + lldbSymbol + lldbTarget + LINK_COMPONENTS + Support ) Modified: lldb/trunk/source/Plugins/ABI/SysV-s390x/CMakeLists.txt URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/ABI/SysV-s390x/CMakeLists.txt?rev=293696&r1=293695&r2=293696&view=diff ============================================================================== --- lldb/trunk/source/Plugins/ABI/SysV-s390x/CMakeLists.txt (original) +++ lldb/trunk/source/Plugins/ABI/SysV-s390x/CMakeLists.txt Tue Jan 31 16:12:59 2017 @@ -1,3 +1,10 @@ -add_lldb_library(lldbPluginABISysV_s390x +add_lldb_library(lldbPluginABISysV_s390x PLUGIN ABISysV_s390x.cpp + + LINK_LIBS + lldbCore + lldbSymbol + lldbTarget + LINK_COMPONENTS + Support ) Modified: lldb/trunk/source/Plugins/ABI/SysV-x86_64/CMakeLists.txt URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/ABI/SysV-x86_64/CMakeLists.txt?rev=293696&r1=293695&r2=293696&view=diff ============================================================================== --- lldb/trunk/source/Plugins/ABI/SysV-x86_64/CMakeLists.txt (original) +++ lldb/trunk/source/Plugins/ABI/SysV-x86_64/CMakeLists.txt Tue Jan 31 16:12:59 2017 @@ -1,3 +1,10 @@ -add_lldb_library(lldbPluginABISysV_x86_64 +add_lldb_library(lldbPluginABISysV_x86_64 PLUGIN ABISysV_x86_64.cpp + + LINK_LIBS + lldbCore + lldbSymbol + lldbTarget + LINK_COMPONENTS + Support ) _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits