xref: /llvm-project/lldb/source/Plugins/Platform/MacOSX/CMakeLists.txt (revision 3b6a8f823bf873aa74cdb738f517e7333e20de7a)
1lldb_tablegen(PlatformMacOSXProperties.inc -gen-lldb-property-defs
2  SOURCE PlatformMacOSXProperties.td
3  TARGET LLDBPluginPlatformMacOSXPropertiesGen)
4
5lldb_tablegen(PlatformMacOSXPropertiesEnum.inc -gen-lldb-property-enum-defs
6  SOURCE PlatformMacOSXProperties.td
7  TARGET LLDBPluginPlatformMacOSXPropertiesEnumGen)
8
9list(APPEND PLUGIN_PLATFORM_MACOSX_SOURCES
10  PlatformDarwin.cpp
11  PlatformDarwinDevice.cpp
12  PlatformDarwinKernel.cpp
13  PlatformMacOSX.cpp
14  PlatformRemoteAppleBridge.cpp
15  PlatformRemoteAppleTV.cpp
16  PlatformRemoteAppleWatch.cpp
17  PlatformRemoteAppleXR.cpp
18  PlatformRemoteDarwinDevice.cpp
19  PlatformRemoteMacOSX.cpp
20  PlatformRemoteiOS.cpp
21  )
22
23list(APPEND PLUGIN_PLATFORM_MACOSX_DARWIN_ONLY_SOURCES
24  PlatformAppleSimulator.cpp
25  )
26
27if(CMAKE_SYSTEM_NAME MATCHES "Darwin")
28  add_subdirectory(objcxx)
29  set(OBJC_LIBS "lldbPluginPlatformMacOSXObjCXX")
30  list(APPEND PLUGIN_PLATFORM_MACOSX_SOURCES
31    ${PLUGIN_PLATFORM_MACOSX_DARWIN_ONLY_SOURCES})
32else()
33  list(APPEND LLVM_OPTIONAL_SOURCES
34    ${PLUGIN_PLATFORM_MACOSX_DARWIN_ONLY_SOURCES})
35endif()
36
37add_lldb_library(lldbPluginPlatformMacOSX PLUGIN
38  ${PLUGIN_PLATFORM_MACOSX_SOURCES}
39
40  LINK_LIBS
41    lldbBreakpoint
42    lldbCore
43    lldbHost
44    lldbInterpreter
45    lldbSymbol
46    lldbTarget
47    lldbUtility
48    lldbPluginDynamicLoaderDarwinKernel
49    lldbPluginObjectContainerMachOFileset
50    lldbPluginPlatformPOSIX
51    ${OBJC_LIBS}
52  CLANG_LIBS
53    clangBasic
54  LINK_COMPONENTS
55    Support
56    TargetParser
57    )
58
59add_dependencies(lldbPluginPlatformMacOSX
60  LLDBPluginPlatformMacOSXPropertiesGen
61  LLDBPluginPlatformMacOSXPropertiesEnumGen)
62