Thu Dec 31 12:08:32 1998 David Taylor The following changes were made by Jim Blandy , Edith Epstein , Elena Zannoni Stan Shebs , and David Taylor , as part of the project to merge in changes originally made by HP; HP did not create ChangeLog entries. * Makefile.in: New file; we're merging HP's changes into GDB, and we've moved the TUI files into a subdirectory, so we need a new Makefile. * tui.c: #include , if we have it, to get declarations for the termcap functions on Solaris. (tgoto): Add external K&R declaration for this; Solaris doesn't bother to actually declare it in their header files. (_tuiReset): Ignore the #definition of TIOCGETC if USG is defined; we'd rather use the USG mechanisms than the Berkeley mechanisms (TIOCGETC is one of the Berkeley terminal control ioctls). Apologies if this causes trouble later; this should all be handled by autoconf... (strcat_to_buf, strcat_to_buf_with_fmt): New functions, moved here from ../utils.h. (tuiFree): replace safe_free with free. (strcat_to_buf): new function, copied from utils.c. (tuiInit): Add ignored `argv0' argument, to match the type that init_ui_hook expects; updated declaration. Call the initialize_tui_files function constructed above. Initialize flush_hook to NULL. (tuiInitWindows): Call tuiSetLocatorContent, to get the first element of the locator window's content allocated. This seems wrong, because it must have been initialized somehow in HP's sources, and we should do it the same way now. But we do get further before it segfaults. [Postscript: HP didn't bother to initialize it; they compile (va_catch_errors, vcatch_errors): Functions moved here from ../utils.c in HP's sources. They're not used anywhere else. (xdb_style): Delete this variable, and remove all references to it. It's always true. (tuiInit, _tui_vDo): References removed. * tui.h: Add prototypes. Don't #include "gendefs.h"; it's only used in the TUI. Integrate its contents into this file: #include here. (Opaque, OpaqueFuncPtr): Typedefs moved to here. * tuiCommand.c: #include "defs.h", so we get the appropriate definition of GDB_FILE. * tuiData.c (freeWindow): replace safe_free with free. (tui_version): don't define it here; it's defined in main.c now. * tuiDisassem.c (tuiSetDisassemContent): Call strcat_address_numeric instead of strcat_address. Simplify the control structure. Use predefined GDB function to print asm inst address. Use GDB_FILE to collect output into buffers. * tuiIO.c (tgoto): Add external K&R declaration for this here too. (tuiGetc, tuiTermSetup, tuiTermUnsetup): Same. (tuiPuts_unfiltered): change FILE to GDB_FILE. (tui_tputs): fix prototype for 3rd argument. * tuiIO.h (tuiPuts_unfiltered): change declaration. * tuiLayout.c (_tuiSetLayoutTo): for displaying registers, hook up the HP code that decides which registers to display (i.e. single precision float, double precision float, general, special). Previously, only handled TUI_GENERAL_REGS. Now that the code is hooked up, compiling with -z poses a problem. When the first layout command is 'layout regs', dataWin->detail is a NULL pointer, and gdb core dumps. * tuiLayout.c (_tuiSetLayoutTo): replace safe_free with free. * tuiRegs.c #include "defs.h" earlier, to avoid problems in . No idea exactly what's conflicting with what, but the errors went away... (_tuiRegisterFormat): Change so that function creates a GDB_FILE object, calls pa_do_strcat_registers_info, copies the register info into a buffer, and deallocates the GDB_FILE object. Remove some code that is not executed. Also, call to pa_do_strcat_registers_info has an additional parameter, precision. This code requires some new per-target functions that we don't want to merge. Dyke it out, with #ifdef TUI_EXTENDED_FORMATTERS. (_tuiSetSpecialRegsContent): this function was ifdefed out. Hooked this up. (_tuiSetGeneralAndSpecialRegsContent): this function was ifdefed out. Hooked it up. (IS_64BIT): Just define this to be zero; we're not merging in the 64-bit support. (tuiShowRegisters): Comment out all references to the "special" regs; we don't have a distinction between the "special" and "non-special" regs in most of our machine descriptions. This code is PA-specific in other ways as well, and needs to be redesigned to be portable to other processors. * tuiWin.c: #include , to get a declaration for strchr. * tui.c, tuiCommand.c, tuiData.c, tuiDataWin.c, tuiDisassem.c, tuiGeneralWin.c, tuiIO.c, tuiLayout.c, tuiRegs.c, tuiSource.c, tuiSourceWin.c, tuiStack.c, tuiWin.c: New files (from HP). Changed bool to int throughout. Re-indented, GNU style. * tui.h, tuiCommand.h, tuiData.h, tuiDataWin.h, tuiDisassem.h, tuiGeneralWin.h, tuiIO.h, tuiLayout.h, tuiRegs.h, tuiSource.h, tuiSourceWin.h, tuiStack.h, tuiWin.h: new files (from HP). Changed bool to int throughout.