lldb::SBTarget SBDebugger::CreateTarget (const char *filename, const char *target_triple, const char *platform_name, bool add_dependent_modules, lldb::SBError& sb_error) { SBTarget sb_target; TargetSP target_sp; if (m_opaque_sp) { sb_error.Clear(); FileSpec filename_spec (filename, true); OptionGroupPlatform platform_options (false); platform_options.SetPlatformName (platform_name); sb_error.ref() = m_opaque_sp->GetTargetList().CreateTarget (*m_opaque_sp, filename_spec, target_triple, add_dependent_modules, &platform_options, target_sp); if (sb_error.Success()) sb_target.SetSP (target_sp); } else { sb_error.SetErrorString("invalid target"); } LogSP log(GetLogIfAllCategoriesSet (LIBLLDB_LOG_API)); if (log) { log->Printf ("SBDebugger(%p)::CreateTarget (filename=\"%s\", triple=%s, platform_name=%s, add_dependent_modules=%u, error=%s) => SBTarget(%p)", m_opaque_sp.get(), filename, target_triple, platform_name, add_dependent_modules, sb_error.GetCString(), target_sp.get()); } return sb_target; }