Switch over to using Debugger as the primary system debugger.

- When a crash occurs that requires using consoled, use Debugger
  in CLI mode.

- Closes #1078.
This commit is contained in:
Rene Gollent
2012-12-18 23:55:49 -05:00
parent 3e441f885e
commit bbdb605224
3 changed files with 44 additions and 32 deletions
+3 -3
View File
@@ -44,8 +44,8 @@ SYSTEM_BIN = [ FFilterByBuildFeatures
SYSTEM_APPS = [ FFilterByBuildFeatures SYSTEM_APPS = [ FFilterByBuildFeatures
AboutSystem ActivityMonitor BootManager@x86 CharacterMap AboutSystem ActivityMonitor BootManager@x86 CharacterMap
CodyCam DeskCalc Devices DiskProbe DiskUsage DriveSetup CDPlayer Expander CodyCam DeskCalc Devices DiskProbe DiskUsage DriveSetup CDPlayer Debugger
GLInfo@x86 Icon-O-Matic Installer LaunchBox Magnify Mail Expander GLInfo@x86 Icon-O-Matic Installer LaunchBox Magnify Mail
MediaConverter MediaPlayer MidiPlayer NetworkStatus PackageInstaller People MediaConverter MediaPlayer MidiPlayer NetworkStatus PackageInstaller People
PoorMan PowerStatus ProcessController Screenshot ShowImage SoundRecorder PoorMan PowerStatus ProcessController Screenshot ShowImage SoundRecorder
StyledEdit Terminal TextSearch TV WebWatch Workspaces StyledEdit Terminal TextSearch TV WebWatch Workspaces
@@ -75,7 +75,7 @@ SYSTEM_LIBS = [ FFilterByBuildFeatures
PRIVATE_SYSTEM_LIBS = [ FFilterByBuildFeatures PRIVATE_SYSTEM_LIBS = [ FFilterByBuildFeatures
$(HAIKU_JPEG_CURRENT_LIB) $(HAIKU_JPEG_CURRENT_LIB)
$(HAIKU_LIBPNG_CURRENT_LIB) $(HAIKU_LIBPNG_CURRENT_LIB)
$(HAIKU_ZLIB_CURRENT_LIB) $(HAIKU_ZLIB_CURRENT_LIB)
$(HAIKU_FREETYPE_CURRENT_LIB) $(HAIKU_FREETYPE_CURRENT_LIB)
libalm.so libalm.so
libfluidsynth.so libfluidsynth.so
-1
View File
@@ -643,7 +643,6 @@ if [ IsOptionalHaikuImagePackageAdded DemoPackage_Video ] {
# Development # Development
if [ IsOptionalHaikuImagePackageAdded Development ] { if [ IsOptionalHaikuImagePackageAdded Development ] {
if $(TARGET_ARCH) = x86 { if $(TARGET_ARCH) = x86 {
AddFilesToHaikuImage system apps : Debugger ;
AddSymlinkToHaikuImage home config settings deskbar Applications AddSymlinkToHaikuImage home config settings deskbar Applications
: /boot/system/apps/Debugger : Debugger ; : /boot/system/apps/Debugger : Debugger ;
# autotools # autotools
+41 -28
View File
@@ -41,8 +41,8 @@ enum {
}; };
#define HANDOVER_USE_GDB 1 //#define HANDOVER_USE_GDB 1
//#define HANDOVER_USE_DEBUGGER 1 #define HANDOVER_USE_DEBUGGER 1
#undef B_TRANSLATION_CONTEXT #undef B_TRANSLATION_CONTEXT
#define B_TRANSLATION_CONTEXT "DebugServer" #define B_TRANSLATION_CONTEXT "DebugServer"
@@ -555,44 +555,57 @@ TeamDebugHandler::_EnterDebugger(bool saveReport)
"terminal (debugger) for team %" B_PRId32 "...\n", fTeam)); "terminal (debugger) for team %" B_PRId32 "...\n", fTeam));
#elif defined(HANDOVER_USE_DEBUGGER) #elif defined(HANDOVER_USE_DEBUGGER)
// prepare the argument vector
BPath debuggerPath;
if (debugInConsoled) { if (debugInConsoled) {
error = _SetupGDBArguments(arguments, debugInConsoled); error = find_directory(B_SYSTEM_BIN_DIRECTORY, &debuggerPath);
if (error != B_OK) { if (error != B_OK) {
debug_printf("debug_server: Failed to set up gdb arguments: %s\n", debug_printf("debug_server: can't find system-bin directory: %s\n",
strerror(error)); strerror(error));
return error; return error;
} }
} else { error = debuggerPath.Append("consoled");
// prepare the argument vector
BPath debuggerPath;
error = find_directory(B_SYSTEM_APPS_DIRECTORY, &debuggerPath);
if (error != B_OK) { if (error != B_OK) {
debug_printf("debug_server: can't find system-apps directory: %s\n", debug_printf("debug_server: can't append to system-bin path: %s\n",
strerror(error));
return error;
}
error = debuggerPath.Append("Debugger");
if (error != B_OK) {
debug_printf("debug_server: can't append to system-apps path: %s\n",
strerror(error)); strerror(error));
return error; return error;
} }
if (!arguments.Add(debuggerPath.Path())) if (!arguments.Add(debuggerPath.Path()))
return B_NO_MEMORY; return B_NO_MEMORY;
BString debuggerParam;
debuggerParam.SetToFormat("%" B_PRId32, fTeam);
if (saveReport) {
if (!arguments.Add("--save-report"))
return B_NO_MEMORY;
}
if (!arguments.Add("--team") || !arguments.Add(debuggerParam))
return B_NO_MEMORY;
// start the debugger
TRACE(("debug_server: TeamDebugHandler::_EnterDebugger(): starting "
"graphical debugger for team %" B_PRId32 "...\n", fTeam));
} }
error = find_directory(B_SYSTEM_APPS_DIRECTORY, &debuggerPath);
if (error != B_OK) {
debug_printf("debug_server: can't find system-apps directory: %s\n",
strerror(error));
return error;
}
error = debuggerPath.Append("Debugger");
if (error != B_OK) {
debug_printf("debug_server: can't append to system-apps path: %s\n",
strerror(error));
return error;
}
if (!arguments.Add(debuggerPath.Path()))
return B_NO_MEMORY;
if (debugInConsoled && !arguments.Add("--cli"))
return B_NO_MEMORY;
BString debuggerParam;
debuggerParam.SetToFormat("%" B_PRId32, fTeam);
if (saveReport) {
if (!arguments.Add("--save-report"))
return B_NO_MEMORY;
}
if (!arguments.Add("--team") || !arguments.Add(debuggerParam))
return B_NO_MEMORY;
// start the debugger
TRACE(("debug_server: TeamDebugHandler::_EnterDebugger(): starting "
"%s debugger for team %" B_PRId32 "...\n",
debugInConsoled ? "command line" : "graphical", fTeam));
#endif #endif
for (int32 i = 0; i < arguments.CountStrings(); i++) for (int32 i = 0; i < arguments.CountStrings(); i++)