/// LLDB C API Test Driver #include #include #include #include #include #if !defined(_MSC_VER) #include #endif %include_SB_APIs% #include "common.h" using namespace std; using namespace lldb; void test(SBDebugger &dbg, std::vector args); int main(int argc, char** argv) { // Ignore SIGPIPE. The lldb driver does this as well, // because we seem to get spurious SIGPIPES on some // Unixen that take the driver down. #if !defined(_MSC_VER) signal(SIGPIPE, SIG_IGN); #endif int code = 0; SBDebugger::Initialize(); SBDebugger dbg = SBDebugger::Create(); dbg.HandleCommand("settings set symbols.enable-external-lookup false"); dbg.HandleCommand( "settings set plugin.process.gdb-remote.packet-timeout 60"); try { if (!dbg.IsValid()) throw Exception("invalid debugger"); vector args(argv + 1, argv + argc); test(dbg, args); } catch (Exception &e) { cout << "ERROR: " << e.what() << endl; code = 1; } SBDebugger::Destroy(dbg); return code; }