1import("//lldb/include/lldb/Host/libedit.gni") 2 3static_library("Host") { 4 output_name = "lldbHost" 5 configs += [ "//llvm/utils/gn/build:lldb_code" ] 6 deps = [ 7 "//lldb/include/lldb/Host:Config", 8 "//lldb/source/Utility", 9 "//llvm/lib/Object", 10 "//llvm/lib/Support", 11 12 # FIXME: 13 # LINK_LIBS 14 # ${EXTRA_LIBS} 15 # ${LLDBObjCLibs} 16 ] 17 public_deps = [ "//llvm/utils/gn/build/libs/xml" ] 18 sources = [ 19 "aix/HostInfoAIX.cpp", 20 "common/Alarm.cpp", 21 "common/File.cpp", 22 "common/FileAction.cpp", 23 "common/FileCache.cpp", 24 "common/FileSystem.cpp", 25 "common/GetOptInc.cpp", 26 "common/Host.cpp", 27 "common/HostInfoBase.cpp", 28 "common/HostNativeThreadBase.cpp", 29 "common/HostProcess.cpp", 30 "common/HostThread.cpp", 31 "common/LZMA.cpp", 32 "common/LockFileBase.cpp", 33 "common/MainLoopBase.cpp", 34 "common/MonitoringProcessLauncher.cpp", 35 "common/NativeProcessProtocol.cpp", 36 "common/NativeRegisterContext.cpp", 37 "common/NativeThreadProtocol.cpp", 38 "common/NativeWatchpointList.cpp", 39 "common/OptionParser.cpp", 40 "common/PipeBase.cpp", 41 "common/ProcessLaunchInfo.cpp", 42 "common/ProcessRunLock.cpp", 43 "common/PseudoTerminal.cpp", 44 "common/Socket.cpp", 45 "common/SocketAddress.cpp", 46 "common/StreamFile.cpp", 47 "common/TCPSocket.cpp", 48 "common/Terminal.cpp", 49 "common/ThreadLauncher.cpp", 50 "common/UDPSocket.cpp", 51 "common/XML.cpp", 52 "common/ZipFileResolver.cpp", 53 ] 54 55 if (lldb_enable_libedit) { 56 libs = [ "edit" ] 57 sources += [ "common/Editline.cpp" ] 58 if (host_os == "mac") { 59 libs += [ "curses" ] # For USE_SETUPTERM_WORKAROUND :/ 60 } 61 } 62 63 sources += [ "posix/ConnectionFileDescriptorPosix.cpp" ] 64 65 if (current_os == "win") { 66 sources += [ 67 "windows/ConnectionGenericFileWindows.cpp", 68 "windows/FileSystem.cpp", 69 "windows/Host.cpp", 70 "windows/HostInfoWindows.cpp", 71 "windows/HostProcessWindows.cpp", 72 "windows/HostThreadWindows.cpp", 73 "windows/LockFileWindows.cpp", 74 "windows/MainLoopWindows.cpp", 75 "windows/PipeWindows.cpp", 76 "windows/ProcessLauncherWindows.cpp", 77 "windows/ProcessRunLock.cpp", 78 ] 79 } else { 80 sources += [ 81 "posix/DomainSocket.cpp", 82 "posix/FileSystemPosix.cpp", 83 "posix/HostInfoPosix.cpp", 84 "posix/HostProcessPosix.cpp", 85 "posix/HostThreadPosix.cpp", 86 "posix/LockFilePosix.cpp", 87 "posix/MainLoopPosix.cpp", 88 "posix/PipePosix.cpp", 89 "posix/ProcessLauncherPosixFork.cpp", 90 ] 91 } 92 93 if (current_os == "mac") { 94 sources += [ 95 "macosx/cfcpp/CFCBundle.cpp", 96 "macosx/cfcpp/CFCData.cpp", 97 "macosx/cfcpp/CFCMutableArray.cpp", 98 "macosx/cfcpp/CFCMutableDictionary.cpp", 99 "macosx/cfcpp/CFCMutableSet.cpp", 100 "macosx/cfcpp/CFCString.cpp", 101 ] 102 deps += [ "macosx/objcxx" ] 103 104 # FIXME: Maybe define NO_XPC_SERVICES 105 } 106 107 if (current_os == "linux" || current_os == "android") { 108 sources += [ 109 "linux/AbstractSocket.cpp", 110 "linux/Host.cpp", 111 "linux/HostInfoLinux.cpp", 112 "linux/LibcGlue.cpp", 113 "linux/Support.cpp", 114 ] 115 } 116 if (current_os == "android") { 117 sources += [ "android/HostInfoAndroid.cpp" ] 118 } 119 120 if (current_os == "freebsd") { 121 sources += [ 122 "freebsd/Host.cpp", 123 "freebsd/HostInfoFreeBSD.cpp", 124 ] 125 } 126 if (current_os == "netbsd") { 127 sources += [ 128 "netbsd/HostInfoNetBSD.cpp", 129 "netbsd/HostNetBSD.cpp", 130 ] 131 } 132 if (current_os == "openbsd") { 133 sources += [ 134 "openbsd/Host.cpp", 135 "openbsd/HostInfoOpenBSD.cpp", 136 ] 137 } 138 139 # FIXME: 140 # set(EXTRA_LIBS) 141 # if (CMAKE_SYSTEM_NAME MATCHES "NetBSD") 142 # list(APPEND EXTRA_LIBS kvm) 143 # endif() 144 # if (HAVE_LIBDL) 145 # list(APPEND EXTRA_LIBS ${CMAKE_DL_LIBS}) 146 # endif() 147 # if (LLDB_ENABLE_LIBEDIT) 148 # list(APPEND EXTRA_LIBS LibEdit::LibEdit) 149 # endif() 150 # if (LLDB_ENABLE_LZMA) 151 # list(APPEND EXTRA_LIBS ${LIBLZMA_LIBRARIES}) 152 # endif() 153 # if (WIN32) 154 # list(APPEND LLDB_SYSTEM_LIBS psapi) 155 # endif() 156} 157