1import("//llvm/lib/Target/targets.gni") 2import("//llvm/utils/TableGen/tablegen.gni") 3import("//llvm/utils/gn/build/toolchain/compiler.gni") 4import("//llvm/utils/gn/build/write_cmake_config.gni") 5import("//llvm/version.gni") 6 7tablegen("Options") { 8 visibility = [ ":lldb" ] 9 args = [ "-gen-opt-parser-defs" ] 10} 11 12if (current_os == "mac") { 13 write_cmake_config("write_info_plist") { 14 input = "lldb-Info.plist.in" 15 output = "$target_gen_dir/lldb-Info.plist" 16 values = [ "LLDB_VERSION=$llvm_version" ] 17 } 18} 19 20supported_toolchains = supported_android_toolchains 21 22executable("lldb") { 23 configs += [ "//llvm/utils/gn/build:lldb_code" ] 24 deps = [ 25 ":Options", 26 "//lldb/include/lldb/Host:Config", 27 "//lldb/source/API:liblldb", 28 "//llvm/lib/Option", 29 "//llvm/lib/Support", 30 "//llvm/utils/gn/build/libs/xar", 31 ] 32 if (current_os == "mac") { 33 deps += [ ":write_info_plist" ] 34 plist = get_target_outputs(":write_info_plist") 35 ldflags = [ "-Wl,-sectcreate,__TEXT,__info_plist," + 36 rebase_path(plist[0], root_out_dir) ] 37 } 38 if (current_os == "linux") { 39 deps += [ "//lldb/tools/lldb-server" ] 40 } 41 foreach(toolchain, supported_toolchains) { 42 deps += [ "//lldb/tools/lldb-server($toolchain)" ] 43 } 44 45 sources = [ 46 "Driver.cpp", 47 "Platform.cpp", 48 ] 49 50 # XXX LLDB_BUILD_FRAMEWORK rpath stuff 51} 52