import("//llvm/utils/TableGen/tablegen.gni") import("//llvm/utils/gn/build/write_cmake_config.gni") import("//llvm/version.gni") tablegen("Options") { visibility = [ ":lldb-vscode" ] args = [ "-gen-opt-parser-defs" ] } if (host_os == "mac") { write_cmake_config("write_info_plist") { input = "lldb-vscode-Info.plist.in" output = "$target_gen_dir/lldb-vscode-Info.plist" values = [ "LLDB_VERSION=$llvm_version" ] } } executable("lldb-vscode") { configs += [ "//llvm/utils/gn/build:lldb_code" ] deps = [ ":Options", "//lldb/source/API:liblldb", "//llvm/lib/Option", "//llvm/lib/Support", ] if (host_os == "mac") { deps += [ ":write_info_plist" ] plist = get_target_outputs(":write_info_plist") ldflags = [ "-Wl,-sectcreate,__TEXT,__info_plist," + rebase_path(plist[0], root_out_dir) ] } if (current_os == "win") { libs = [ "ws2_32.lib" ] } # FIXME: link in //lldb/source/Host on Win (and netbsd) # FIXME: link in pthread # FIXME: rpath/install_name stuff on macOS for framework on macOS sources = [ "BreakpointBase.cpp", "ExceptionBreakpoint.cpp", "FifoFiles.cpp", "FunctionBreakpoint.cpp", "IOStream.cpp", "JSONUtils.cpp", "LLDBUtils.cpp", "OutputRedirector.cpp", "ProgressEvent.cpp", "RunInTerminal.cpp", "SourceBreakpoint.cpp", "VSCode.cpp", "lldb-vscode.cpp", ] }