diff options
Diffstat (limited to 'source/xap/xxgdb')
-rw-r--r-- | source/xap/xxgdb/xxgdb-1.08-glibc.patch | 10 | ||||
-rw-r--r-- | source/xap/xxgdb/xxgdb-1.12-debian-filemenu.patch | 10 | ||||
-rw-r--r-- | source/xap/xxgdb/xxgdb-1.12-debian-pty.patch | 76 | ||||
-rw-r--r-- | source/xap/xxgdb/xxgdb-1.12-mandriva.patch | 993 | ||||
-rw-r--r-- | source/xap/xxgdb/xxgdb-1.12-sysv.patch | 24 | ||||
-rwxr-xr-x | source/xap/xxgdb/xxgdb.SlackBuild | 29 | ||||
-rw-r--r-- | source/xap/xxgdb/xxgdb.fix_glibc_and_gcc.diff | 45 |
7 files changed, 1136 insertions, 51 deletions
diff --git a/source/xap/xxgdb/xxgdb-1.08-glibc.patch b/source/xap/xxgdb/xxgdb-1.08-glibc.patch new file mode 100644 index 00000000..6ec7032c --- /dev/null +++ b/source/xap/xxgdb/xxgdb-1.08-glibc.patch @@ -0,0 +1,10 @@ +--- xxgdb/calldbx.c.ewt Thu Aug 29 15:39:07 1996 ++++ xxgdb/calldbx.c Thu Aug 29 15:39:31 1996 +@@ -76,6 +76,7 @@ + #include "global.h" + #if !(defined(OLDSUNOS) || defined(BSD)) + #include <termio.h> ++#include <sys/ioctl.h> + #else + #include <sgtty.h> + #endif diff --git a/source/xap/xxgdb/xxgdb-1.12-debian-filemenu.patch b/source/xap/xxgdb/xxgdb-1.12-debian-filemenu.patch new file mode 100644 index 00000000..c8595731 --- /dev/null +++ b/source/xap/xxgdb/xxgdb-1.12-debian-filemenu.patch @@ -0,0 +1,10 @@ +--- xxgdb-1.12/filemenu.c.build 2009-03-29 12:26:26.000000000 +0200 ++++ xxgdb-1.12/filemenu.c 2009-03-29 12:26:26.000000000 +0200 +@@ -83,6 +83,7 @@ + + #ifdef SYSV + #include <stdio.h> ++#include <stdlib.h> + #include <sys/param.h> + #include <sys/types.h> + #include <dirent.h> diff --git a/source/xap/xxgdb/xxgdb-1.12-debian-pty.patch b/source/xap/xxgdb/xxgdb-1.12-debian-pty.patch new file mode 100644 index 00000000..7a56971f --- /dev/null +++ b/source/xap/xxgdb/xxgdb-1.12-debian-pty.patch @@ -0,0 +1,76 @@ +diff -urNad xxgdb-1.12~/calldbx.c xxgdb-1.12/calldbx.c +--- xxgdb-1.12~/calldbx.c 1996-10-02 10:59:45.000000000 +0200 ++++ xxgdb-1.12/calldbx.c 2008-05-16 17:44:05.000000000 +0200 +@@ -85,8 +85,10 @@ + #include <sys/un.h> + #endif /* CREATE_IO_WINDOW */ + +-#ifdef SVR4 ++#if defined(SVR4) || defined(UNIX98) + #define MASTER_CLONE "/dev/ptmx" ++#endif ++#ifdef SVR4 + #include <sys/types.h> + #include <sys/stat.h> + #include <sys/stropts.h> +@@ -125,13 +127,14 @@ + { + int master; + +-#ifdef SVR4 /* (MJH) Use STREAMS */ ++#if defined(SVR4) || defined(UNIX98) + + if((master = open(MASTER_CLONE, O_RDWR)) < 0) + perror(MASTER_CLONE); + else + return master; +-#else ++#endif ++#if !defined(SVR4) && !defined(UNIX98) + int i; + char c; + +@@ -150,7 +153,7 @@ + #ifndef sco + } + #endif +-#endif /* SVR4 */ ++#endif /* !defined(SVR4) && !defined(UNIX98) */ + + #ifdef GDB + fprintf(stderr, "xxgdb: all ptys in use\n"); +@@ -166,6 +169,25 @@ + { + int slave; + ++#if defined(UNIX98) ++ ++ int n; ++ int zero=0; ++ char ptsname[16]; ++ ++ if (ioctl(master, TIOCGPTN, &n) < 0) ++ exit(2); ++ snprintf(ptsname,sizeof(ptsname),"/dev/pts/%i", n); ++ if (ioctl(master, TIOCSPTLCK, &zero) < 0) ++ exit(3); ++ if ((slave = open(ptsname, O_RDWR)) < 0) { ++ perror(ptsname); ++ exit(4); ++ } ++ return slave; ++ ++#else ++ + #ifdef SVR4 /* (MJH) */ + char *slave_name = "unknown"; + extern char *ptsname(int master); +@@ -193,6 +215,8 @@ + } + return slave; + #endif /* SVR4 */ ++ ++#endif /* UNIX98 */ + } + + #ifdef CREATE_IO_WINDOW diff --git a/source/xap/xxgdb/xxgdb-1.12-mandriva.patch b/source/xap/xxgdb/xxgdb-1.12-mandriva.patch new file mode 100644 index 00000000..3d384f32 --- /dev/null +++ b/source/xap/xxgdb/xxgdb-1.12-mandriva.patch @@ -0,0 +1,993 @@ +diff -p -up xxgdb-1.12/command.c.orig xxgdb-1.12/command.c +--- xxgdb-1.12/command.c.orig 2010-05-06 21:43:37.932032547 -0300 ++++ xxgdb-1.12/command.c 2010-05-06 21:43:56.618036569 -0300 +@@ -74,7 +74,7 @@ + * + * forwardSearch() : forward string search + * reverseSearch() : reverse string search +- * Search() : call either forwardSearch() or reverseSearch() ++ * search() : call either forwardSearch() or reverseSearch() + * PopupSearch() : command callback for search button + * DoneSearch() : command callback for DONE button in search panel + * CreateSearchPopup() : create search panel +@@ -657,10 +657,8 @@ void PopupSearch(w, client_data, call_da + * If no text has been entered, the contents of the cut buffer are used + * for searching. + */ +-static void Search(w, direction, call_data) +- Widget w; +- XtPointer direction; +- XtPointer call_data; ++static void ++search(Widget w, XtPointer direction, XtPointer call_data) + { + XawTextBlock textblock; + XawTextPosition pos, left, right; +@@ -716,7 +714,7 @@ static void Activate(w, event, params, n + String *params; + Cardinal *num_params; + { +- Search(w, (XtPointer)FORWARD, NULL); ++ search(w, (XtPointer)FORWARD, NULL); + DoneSearch(w, (XtPointer)searchPopupShell, NULL); + } + +@@ -747,8 +745,8 @@ static void CreateSearchPopup() + searchPopup = XtCreateManagedWidget("searchPopup", dialogWidgetClass, + searchPopupShell, args, n); + +- AddButton(searchPopup, "<<", Search, (XtPointer) REVERSE); +- AddButton(searchPopup, ">>", Search, (XtPointer) FORWARD); ++ AddButton(searchPopup, "<<", search, (XtPointer) REVERSE); ++ AddButton(searchPopup, ">>", search, (XtPointer) FORWARD); + AddButton(searchPopup, "DONE", DoneSearch, (XtPointer)searchPopupShell); + + dialogValue = XtNameToWidget(searchPopup, "value"); +diff -p -up xxgdb-1.12/dialog.c.orig xxgdb-1.12/dialog.c +--- xxgdb-1.12/dialog.c.orig 2010-05-06 21:43:37.934032296 -0300 ++++ xxgdb-1.12/dialog.c 2010-05-06 21:44:28.258027728 -0300 +@@ -86,6 +86,12 @@ Boolean FalseSignal = FALSE; /* set to + static char DialogText[DIALOGSIZE]; /* text buffer for widget */ + static XawTextPosition StartPos; /* starting position of input text */ + ++static XawTextEditType ++BeginDelete(Widget w); ++ ++static void ++EndDelete(Widget w, XawTextEditType type); ++ + + /* This procedure prevents the user from deleting past the prompt, or + * any text appended by AppendDialogText() to the dialog window. +@@ -94,11 +100,8 @@ static XawTextPosition StartPos; + * character() can only delete the space character. + */ + /* ARGSUSED */ +-static void InsertSpace(w, event, params, num_params) +- Widget w; +- XEvent *event; +- String *params; +- Cardinal *num_params; ++void ++InsertSpace(Widget w, XEvent *event, String *params, Cardinal *num_params) + { + XawTextBlock textblock; + XawTextPosition lastPos; +@@ -115,16 +118,70 @@ static void InsertSpace(w, event, params + } + } + ++static XawTextEditType ++BeginDelete(Widget w) ++{ ++ Widget src; ++ XawTextEditType type; ++ Arg args[1]; ++ ++ src = XawTextGetSource(w); ++ XtSetArg(args[0], XtNeditType, &type); ++ XtGetValues(src, args, 1); ++ if (type != XawtextEdit) { ++ XtSetArg(args[0], XtNeditType, XawtextEdit); ++ XtSetValues(src, args, 1); ++ } ++ ++ return (type); ++} ++ ++static void ++EndDelete(Widget w, XawTextEditType type) ++{ ++ Widget src; ++ Arg args[1]; ++ ++ if (type != XawtextEdit) { ++ src = XawTextGetSource(w); ++ XtSetArg(args[0], XtNeditType, type); ++ XtSetValues(src, args, 1); ++ } ++} ++ ++/* ++ * Previous logic of calling actions: ++ * InsertSpace() delete-previous-char() ++ * is not going to work because it must create a text in append only ++ * mode, so, hack it here to actually delete a character... ++ */ ++void ++DeleteChar(Widget w, XEvent *event, String *params, Cardinal *num_params) ++{ ++ XawTextEditType type; ++ XawTextBlock block; ++ XawTextPosition point; ++ ++ if (StartPos < (point = XawTextGetInsertionPoint(w))) { ++ type = BeginDelete(w); ++ block.firstPos = 0; ++ block.length = 0; ++ block.ptr = ""; ++ block.format = 8; ++ XawTextReplace(w, point - 1, point, &block); ++ XawTextSetInsertionPoint(w, point - 1); ++ EndDelete(w, type); ++ } ++} ++ + /* Erases the preceding word. + * Simulates the action of the WERASE character (ctrl-W). + */ + /* ARGSUSED */ +-void DeleteWord(w, event, params, num_params) +- Widget w; +- XEvent *event; +- String *params; +- Cardinal *num_params; ++void ++DeleteWord(Widget w, XEvent *event, String *params, Cardinal *num_params) + { ++ XawTextEditType type; + XawTextBlock textblock; + XawTextPosition pos; + Cardinal i; +@@ -138,8 +195,10 @@ void DeleteWord(w, event, params, num_pa + pos = TextGetLastPos(w); + for (i=pos; i > StartPos && DialogText[i-1] == ' '; i--); + for (; i > StartPos && DialogText[i-1] != ' '; i--); ++ type = BeginDelete(w); + XawTextReplace(w, i, pos, &textblock); + XawTextSetInsertionPoint(w, i); ++ EndDelete(w, type); + } + + +@@ -147,12 +206,10 @@ void DeleteWord(w, event, params, num_pa + * simulates the action of the KILL character (ctrl-U). + */ + /* ARGSUSED */ +-void DeleteLine(w, event, params, num_params) +- Widget w; +- XEvent *event; +- String *params; +- Cardinal *num_params; ++void ++DeleteLine(Widget w, XEvent *event, String *params, Cardinal *num_params) + { ++ XawTextEditType type; + XawTextBlock textblock; + XawTextPosition pos, beginPos; + Cardinal i; +@@ -172,8 +229,10 @@ void DeleteLine(w, event, params, num_pa + return; + } + for (i=pos; i > beginPos && s[i-1] != '\n'; i--); ++ type = BeginDelete(w); + XawTextReplace(w, i, pos, &textblock); + XawTextSetInsertionPoint(w, i); ++ EndDelete(w, type); + } + + +@@ -183,11 +242,8 @@ void DeleteLine(w, event, params, num_pa + * it is stored in the global variable, Command. + */ + /* ARGSUSED */ +-static void Dispatch(w, event, params, num_params) +- Widget w; +- XEvent *event; +- String *params; +- Cardinal *num_params; ++void ++Dispatch(Widget w, XEvent *event, String *params, Cardinal *num_params) + { + #ifdef GDB + /* +@@ -249,22 +305,16 @@ void signal_interrupt_dbx() + * Simulates the action of the INTR character (ctrl-C). + */ + /* ARGSUSED */ +-static void SigInt(w, event, params, num_params) +- Widget w; +- XEvent *event; +- String *params; +- Cardinal *num_params; ++void ++SigInt(Widget w, XEvent *event, String *params, Cardinal *num_params) + { + signal_interrupt_dbx (); + } + + /* Sends an EOF signal to dbx. (ctrl-D) */ + /* ARGSUSED */ +-static void SigEof(w, event, params, num_params) +- Widget w; +- XEvent *event; +- String *params; +- Cardinal *num_params; ++void ++SigEof(Widget w, XEvent *event, String *params, Cardinal *num_params) + { + write_dbx("\04"); + } +@@ -274,11 +324,8 @@ static void SigEof(w, event, params, num + * Simulates the action of the QUIT character (ctrl-\) + */ + /* ARGSUSED */ +-static void SigQuit(w, event, params, num_params) +- Widget w; +- XEvent *event; +- String *params; +- Cardinal *num_params; ++void ++SigQuit(Widget w, XEvent *event, String *params, Cardinal *num_params) + { + FalseSignal = TRUE; + +@@ -301,29 +348,8 @@ Widget parent; + Arg args[MAXARGS]; + Cardinal n; + +- static XtActionsRec dialog_actions[] = { +- {"SigInt", (XtActionProc) SigInt}, +- {"SigEof", (XtActionProc) SigEof}, +- {"SigQuit", (XtActionProc) SigQuit}, +- {"InsertSpace", (XtActionProc) InsertSpace}, +- {"Dispatch", (XtActionProc) Dispatch}, +- {NULL, NULL} +- }; +- +- static String translations = "#override\n\ +- Ctrl<Key>C: SigInt()\n\ +- Ctrl<Key>D: SigEof()\n\ +- Ctrl<Key>|: SigQuit()\n\ +- Ctrl<Key>W: DeleteWord()\n\ +- Ctrl<Key>U: DeleteLine()\n\ +- Ctrl<Key>H: InsertSpace() delete-previous-character()\n\ +- <Key>Delete: InsertSpace() delete-previous-character()\n\ +- <Key>BackSpace: InsertSpace() delete-previous-character()\n\ +- <Key>Return: newline() Dispatch()\n\ +- "; +- + n = 0; +- XtSetArg(args[n], XtNuseStringInPlace, True); n++; ++ XtSetArg(args[n], XtNuseStringInPlace, True); n++; + XtSetArg(args[n], XtNstring, (XtArgVal) DialogText); n++; + XtSetArg(args[n], XtNlength, (XtArgVal) DIALOGSIZE); n++; + XtSetArg(args[n], XtNeditType, (XtArgVal) XawtextAppend); n++; +@@ -331,8 +357,6 @@ Widget parent; + XtSetArg(args[n], XtNwrap, XawtextWrapWord); n++; + dialogWindow = XtCreateManagedWidget("dialogWindow", asciiTextWidgetClass, + parent, args, n ); +- XtOverrideTranslations(dialogWindow, XtParseTranslationTable(translations)); +- XtAppAddActions(app_context, dialog_actions, XtNumber(dialog_actions)); + } + + #if 0 /* never used */ +diff -p -up xxgdb-1.12/gdb_parser.c.orig xxgdb-1.12/gdb_parser.c +--- xxgdb-1.12/gdb_parser.c.orig 2010-05-06 21:43:37.936032292 -0300 ++++ xxgdb-1.12/gdb_parser.c 2010-05-06 21:44:36.001027757 -0300 +@@ -1053,7 +1053,6 @@ FILE *f; + if(errno == EAGAIN || errno == EWOULDBLOCK) { + break; + } +- perror("read from gdb"); + exit(1); + /*NOTREACHED*/ + } +diff -p -up xxgdb-1.12/global.h.orig xxgdb-1.12/global.h +--- xxgdb-1.12/global.h.orig 2010-05-06 21:43:37.938031470 -0300 ++++ xxgdb-1.12/global.h 2010-05-06 21:44:48.480028375 -0300 +@@ -111,10 +111,34 @@ extern void read_dbx(); /* get data f + extern void write_dbx(); /* send data to dbx */ + extern void query_dbx(); /* ask dbx for info */ + ++extern void ++PopupSearch(Widget w, XtPointer client_data, XtPointer call_data); ++ + /* dialog.c */ ++extern void ++DeleteChar(Widget w, XEvent *event, String *params, Cardinal *num_params); ++ ++extern void ++DeleteLine(Widget w, XEvent *event, String *params, Cardinal *num_params); ++ ++extern void ++DeleteWord(Widget w, XEvent *event, String *params, Cardinal *num_params); ++ ++extern void ++Dispatch(Widget w, XEvent *event, String *params, Cardinal *num_params); ++ ++extern void ++InsertSpace(Widget w, XEvent *event, String *params, Cardinal *num_params); ++ ++extern void ++SigInt(Widget w, XEvent *event, String *params, Cardinal *num_params); ++ ++extern void ++SigEof(Widget w, XEvent *event, String *params, Cardinal *num_params); ++ ++extern void ++SigQuit(Widget w, XEvent *event, String *params, Cardinal *num_params); + +-extern void DeleteLine(); /* delete line action proc */ +-extern void DeleteWord(); /* delete word action proc */ + extern void CreateDialogWindow(); + extern void AppendDialogText(); /* append text to buffer */ + +@@ -163,18 +187,53 @@ extern void UpdateUpdown(); /* update + extern void UpdateBomb(); /* update position of bomb */ + + /* source.c */ ++extern void ++CreateSourceWindow(Widget parent); ++ ++extern char * ++GetPathname(char *filename); ++ ++extern int ++LoadCurrentFile(void); ++ ++extern int ++LoadFile(char *filename); ++ ++extern void ++MakeDirList(char *output); ++ ++extern void ++NotifyResize(Widget w, XEvent *event, String *params, Cardinal *num_params); ++ ++extern void ++PrintSelection(Widget w, XEvent *event, String *params, Cardinal *num_params); ++ ++extern void ++Search(Widget w, XEvent *event, String *params, Cardinal *num_params); ++ ++extern void ++SelectEnd(Widget w, XEvent *event, String *params, Cardinal *num_params); ++ ++extern void ++SelectStart(Widget w, XEvent *event, String *params, Cardinal *num_params); ++ ++extern void ++SelectWord(Widget w, XEvent *event, String *params, Cardinal *num_params); ++ ++extern void ++source_init(void); ++ ++extern void ++Update(Widget w, XEvent *event, String *params, Cardinal *num_params); ++ ++#ifdef EDIT_BUTTON ++extern void ++EdAction(Widget w, XEvent *event, String *params, Cardinal *num_params); ++ ++extern void ++StartEditor(void); ++#endif + +-extern void SelectStart(); /* modified select-start */ +-extern void SelectEnd(); /* modified select-end */ +-extern void SelectWord(); /* my select word */ +-extern void PrintSelection(); /* select variable and print */ +-extern void Update(); /* update line label */ +-extern void source_init(); /* init routine */ +-extern void CreateSourceWindow(); +-extern int LoadFile(); /* display source file */ +-extern int LoadCurrentFile(); /* display source file */ +-extern char *GetPathname(); /* get full path name of file */ +-extern void MakeDirList(); /* maintain list of dirs */ + + /* utils.c */ + +diff -p -up xxgdb-1.12/source.c.orig xxgdb-1.12/source.c +--- xxgdb-1.12/source.c.orig 2010-05-06 21:43:37.940032123 -0300 ++++ xxgdb-1.12/source.c 2010-05-06 21:43:56.626028358 -0300 +@@ -106,7 +106,8 @@ static FileRec **fileTable; /* table of + static int fileTableSize; /* size of file table */ + static char *dirList[MAXDIRS]; /* list of dirs for searching files */ + +-void source_init() ++void ++source_init(void) + { + dirList[0] = NULL; + } +@@ -116,11 +117,8 @@ void source_init() + * line label. + */ + /* ARGSUSED */ +-void Update(w, event, params, num_params) +- Widget w; +- XEvent *event; +- String *params; +- Cardinal *num_params; ++extern void ++Update(Widget w, XEvent *event, String *params, Cardinal *num_params) + { + XawTextPosition pos; + int topline; +@@ -171,11 +169,8 @@ void Update(w, event, params, num_params + * Invoked by ConfigureNotify event. + */ + /* ARGSUSED */ +-static void NotifyResize(w, event, params, num_params) +- Widget w; +- XEvent *event; +- String *params; +- Cardinal *num_params; ++void ++NotifyResize(Widget w, XEvent *event, String *params, Cardinal *num_params) + { + XawTextPosition pos; + TextWidget ctx = (TextWidget) sourceWindow; +@@ -216,11 +211,8 @@ void UpdateLine(w, event, params, num_pa + * near the bottom of an Athena text widget window. + */ + /* ARGSUSED */ +-void SelectStart(w, event, params, num_params) +- Widget w; +- XEvent *event; +- String *params; +- Cardinal *num_params; ++void ++SelectStart(Widget w, XEvent *event, String *params, Cardinal *num_params) + { + XawTextPosition topPosition; + +@@ -241,11 +233,8 @@ void SelectStart(w, event, params, num_p + * selection and cut buffer 0. + */ + /* ARGSUSED */ +-void SelectEnd(w, event, params, num_params) +- Widget w; +- XEvent *event; +- String *params; +- Cardinal *num_params; ++extern void ++SelectEnd(Widget w, XEvent *event, String *params, Cardinal *num_params) + { + XawTextPosition begin, end, start; + Widget textsrc; +@@ -274,11 +263,8 @@ void SelectEnd(w, event, params, num_par + * It selects a word delimited by DELIMITERS, not whitespace. + */ + /* ARGSUSED */ +-void SelectWord(w, event, params, num_params) +- Widget w; +- XEvent *event; +- String *params; +- Cardinal *num_params; ++void ++SelectWord(Widget w, XEvent *event, String *params, Cardinal *num_params) + { + XawTextPosition pos, left, right, start; + XawTextBlock buffer; +@@ -328,11 +314,8 @@ void SelectWord(w, event, params, num_pa + + /* Print the value of the expression in cut buffer 0. */ + /* ARGSUSED */ +-void PrintSelection(w, event, params, num_params) +- Widget w; +- XEvent *event; +- String *params; +- Cardinal *num_params; ++void ++PrintSelection(Widget w, XEvent *event, String *params, Cardinal *num_params) + { + char command[LINESIZ]; + char *string; +@@ -351,24 +334,16 @@ void PrintSelection(w, event, params, nu + + #ifdef EDIT_BUTTON + /* allow invocation of favorite editor from within interface */ +-extern void StartEditor(); +-void EdAction(w, event, params, num_params) +- Widget w; +- XEvent *event; +- String *params; +- Cardinal *num_params; ++void ++EdAction(Widget w, XEvent *event, String *params, Cardinal *num_params) + { + StartEditor(); + } + #endif /* EDIT_BUTTON */ + + /* fixes keybindings in source window */ +-extern PopupSearch(); +-void Search(w, event, params, num_params) +- Widget w; +- XEvent *event; +- String *params; +- Cardinal *num_params; ++void ++Search(Widget w, XEvent *event, String *params, Cardinal *num_params) + { + PopupSearch(w, NULL, NULL); + } +@@ -383,134 +358,12 @@ void Search(w, event, params, num_params + have operative keys in the editor window for moving around (move stop + signs and such around too) */ + +-void CreateSourceWindow(parent) +-Widget parent; ++void ++CreateSourceWindow(Widget parent) + { +- TextWidget ctx; + Arg args[MAXARGS]; + Cardinal n; + +- static XtActionsRec sbar_actions[] = { +- {"NotifyResize", NotifyResize}, +- {"Update", Update}, +- {NULL, NULL} +- }; +- +- /* fixes keybindings in source window */ +- static XtActionsRec text_actions[] = { +- {"Update", Update}, +-#ifdef EDIT_BUTTON +- {"Editor", EdAction}, +-#endif +- {"Search", Search}, +- {NULL, NULL} +- }; +- +-#ifdef EDIT_BUTTON +- +- static String eTextTranslations = "#override \n\ +- Ctrl<Key>V: next-page() Update(warp) \n\ +- Meta<Key>V: previous-page() Update(warp) \n\ +- Ctrl<Key>N: next-line() Update() \n\ +- Ctrl<Key>P: previous-line() Update() \n\ +- Ctrl<Key>Z: scroll-one-line-up() Update(warp) \n\ +- Meta<Key>Z: scroll-one-line-down() Update(warp) \n\ +- Meta<Key>]: forward-paragraph() Update(warp) \n\ +- Meta<Key>[: backward-paragraph() Update(warp) \n\ +- Meta<Key>F: forward-word() Update() \n\ +- Meta<Key>B: backward-word() Update() \n\ +- Ctrl<Key>F: forward-character() Update() \n\ +- Ctrl<Key>B: backward-character() Update() \n\ +- Meta<Key>E: Editor() \n\ +- Meta<Key><: beginning-of-file() Update(warp) \n\ +- Meta<Key>>: end-of-file() Update(warp) \n\ +- <Key>L: redraw-display() Update() \n\ +- <Key>S: Search() Update() \n\ +- <Key>R: Search() Update() \n\ +- <Btn1Down>: SelectStart() SelectWord() \n\ +- Shift<Btn1Up>: Update() SelectEnd() PrintSelection() \n\ +- <Btn1Up>: Update() SelectEnd() \n\ +- "; +- +- static String vTextTranslations = "#override \n\ +- Ctrl<Key>F: next-page() Update(warp) \n\ +- Ctrl<Key>B: previous-page() Update(warp) \n\ +- Ctrl<Key>D: next-page() Update() \n\ +- Ctrl<Key>U: previous-page() Update() \n\ +- <Key>Return: next-line() Update() \n\ +- <Key>-: previous-line() Update() \n\ +- <Key>j: next-line() Update() \n\ +- <Key>k: previous-line() Update() \n\ +- <Key>space: forward-character() Update() \n\ +- <Key>BackSpace: backward-character() Update() \n\ +- <Key>1: beginning-of-file() Update(warp) \n\ +- <Key>G: end-of-file() Update(warp) \n\ +- <Key>E: Editor() \n\ +- <Key>L: redraw-display() Update() \n\ +- <Key>/: Search() Update() \n\ +- <Key>?: Search() Update() \n\ +- <Btn1Down>: SelectStart() SelectWord() \n\ +- Shift<Btn1Up>: Update() SelectEnd() PrintSelection() \n\ +- <Btn1Up>: Update() SelectEnd() \n\ +- "; +- +-#else /* not EDIT_BUTTON */ +- +- static String eTextTranslations = "#override \n\ +- Ctrl<Key>V: next-page() Update(warp) \n\ +- Meta<Key>V: previous-page() Update(warp) \n\ +- Ctrl<Key>N: next-line() Update() \n\ +- Ctrl<Key>P: previous-line() Update() \n\ +- Ctrl<Key>Z: scroll-one-line-up() Update(warp) \n\ +- Meta<Key>Z: scroll-one-line-down() Update(warp) \n\ +- Meta<Key>]: forward-paragraph() Update(warp) \n\ +- Meta<Key>[: backward-paragraph() Update(warp) \n\ +- Meta<Key>F: forward-word() Update() \n\ +- Meta<Key>B: backward-word() Update() \n\ +- Ctrl<Key>F: forward-character() Update() \n\ +- Ctrl<Key>B: backward-character() Update() \n\ +- Meta<Key><: beginning-of-file() Update(warp) \n\ +- Meta<Key>>: end-of-file() Update(warp) \n\ +- <Key>L: redraw-display() Update() \n\ +- <Key>S: Search() Update() \n\ +- <Key>R: Search() Update() \n\ +- <Btn1Down>: SelectStart() SelectWord() \n\ +- Shift<Btn1Up>: Update() SelectEnd() PrintSelection() \n\ +- <Btn1Up>: Update() SelectEnd() \n\ +- "; +- +- static String vTextTranslations = "#override \n\ +- Ctrl<Key>F: next-page() Update(warp) \n\ +- Ctrl<Key>B: previous-page() Update(warp) \n\ +- Ctrl<Key>D: next-page() Update() \n\ +- Ctrl<Key>U: previous-page() Update() \n\ +- <Key>Return: next-line() Update() \n\ +- <Key>-: previous-line() Update() \n\ +- <Key>j: next-line() Update() \n\ +- <Key>k: previous-line() Update() \n\ +- <Key>space: forward-character() Update() \n\ +- <Key>BackSpace: backward-character() Update() \n\ +- <Key>1: beginning-of-file() Update(warp) \n\ +- <Key>G: end-of-file() Update(warp) \n\ +- <Key>L: redraw-display() Update() \n\ +- <Key>/: Search() Update() \n\ +- <Key>?: Search() Update() \n\ +- <Btn1Down>: SelectStart() SelectWord() \n\ +- Shift<Btn1Up>: Update() SelectEnd() PrintSelection() \n\ +- <Btn1Up>: Update() SelectEnd() \n\ +- "; +- +-#endif /* EDIT_BUTTON */ +- +- /* fixes keybindings in source window */ +- static String sbarTranslations = "\ +- <Configure>: NotifyResize() \n\ +- <Btn2Down>: StartScroll(Continuous) MoveThumb() NotifyThumb() \ +- Update() \n\ +- <Btn2Motion>: MoveThumb() NotifyThumb() Update() \n\ +- <BtnUp>: NotifyScroll(Proportional) EndScroll() Update() \n\ +- "; +- + n = 0; + XtSetArg(args[n], XtNdefaultDistance, 0); n++; + sourceForm = XtCreateManagedWidget("sourceForm", formWidgetClass, +@@ -523,27 +376,6 @@ Widget parent; + XtSetArg(args[n], XtNscrollVertical, (XtArgVal) XawtextScrollAlways);n++; + sourceWindow = XtCreateManagedWidget("sourceWindow", asciiTextWidgetClass, + sourceForm, args, n); +- +- ctx = (TextWidget) sourceWindow; +- if (ctx->text.vbar) +- XtOverrideTranslations(ctx->text.vbar, +- XtParseTranslationTable(sbarTranslations)); +- XtAppAddActions(app_context, sbar_actions, XtNumber(sbar_actions)); +- +- /* fixes keybindings in source window */ +- XtAppAddActions(app_context, text_actions, XtNumber(text_actions)); +- if (app_resources.bindings && strcmp(app_resources.bindings, "vi") == 0) +- XtOverrideTranslations((Widget) ctx, XtParseTranslationTable(vTextTranslations)); +- else +- XtOverrideTranslations((Widget) ctx, XtParseTranslationTable(eTextTranslations)); +- +- /* setup tabulation */ +- if (app_resources.tabstop >= 0) { +- int tab, tabs[256]; +- for (n = 0, tab = 0; n < sizeof tabs / sizeof *tabs; n++) +- tabs[n] = (tab += app_resources.tabstop); +- XawTextSinkSetTabs(ctx->text.sink, sizeof tabs / sizeof *tabs, tabs); +- } + } + + +@@ -553,8 +385,8 @@ Widget parent; + * > Starting position of line #1 is 0, and is stored in linepos[1]. + * > Search for '\n' till end of buffer. + */ +-static void BuildLinePos(file) +-FileRec *file; ++static void ++BuildLinePos(FileRec *file) + { + char *p; + int line, nlines; +@@ -587,7 +419,8 @@ FileRec *file; + * there might be another path to the same files. + */ + +-static void CheckLookUpFileTable() ++static void ++CheckLookUpFileTable(void) + { + int i; + char * newfullname; +@@ -639,7 +472,8 @@ static void CheckLookUpFileTable() + * display if necessary. + * + */ +-void CleanUpFileTable () ++void ++CleanUpFileTable(void) + { + CheckLookUpFileTable(); + if (displayedFile == NULL) +@@ -651,9 +485,8 @@ void CleanUpFileTable () + * If not found, create an entry and initialize proper fields, + * else, return pointer to entry found. + */ +-static int LookUpFileTable(pathname, filename, file) +-char *pathname, *filename; +-FileRec **file; ++static int ++LookUpFileTable(char *pathname, char *filename, FileRec **file) + { + struct stat fileinfo; + int fd; +@@ -754,7 +587,8 @@ FileRec **file; + /* + * Remember file position and current line before closing. + */ +-static void SaveDisplayedFileInfo() ++static void ++SaveDisplayedFileInfo(void) + { + XawTextPosition pos; + +@@ -771,8 +605,8 @@ static void SaveDisplayedFileInfo() + * must recalculate bottomline because the window size might be + * different. + */ +-static void DisplayFile(file) +-FileRec *file; ++static void ++DisplayFile(FileRec *file) + { + Arg args[MAXARGS]; + Cardinal n; +@@ -792,8 +626,8 @@ FileRec *file; + * the home directory of that user, or to the login home directory if user + * is not specified. + */ +-static char *expand(filename) +-char *filename; ++static char * ++expand(char *filename) + { + struct passwd *pwd; + char *string, *name, newfile[MAXNAME]; +@@ -821,8 +655,8 @@ char *filename; + * + * With fix from Dave Gagne (daveg@fs1.ee.ubc.ca) 7/30/90 + */ +-void MakeDirList(output) +-char *output; ++void ++MakeDirList(char *output) + { + /* fix bug where if text of a directories command is > 1k, crashes. Now works to 4k */ + char *s, list[LINESIZ], command[LINESIZ]; +@@ -889,8 +723,8 @@ char *output; + /* Returns the full pathname of a given file. + * It searches for the file from a list of directories. + */ +-char *GetPathname(filename) +-char *filename; ++char * ++GetPathname(char *filename) + { + char pathname[LINESIZ]; + int i; +@@ -949,8 +783,8 @@ char *filename; + * 5. update the file label and the various signs on the source window. + * LoadFile returns 0 upon successful completion, -1 otherwise. + */ +-int LoadFile(filename) +-char *filename; ++int ++LoadFile(char *filename) + { + FileRec *file; + char *pathname; +@@ -980,7 +814,8 @@ char *filename; + } + } + +-int LoadCurrentFile() ++int ++LoadCurrentFile(void) + { + #ifdef GDB + query_gdb ("info line\n", PARSE_ON | ECHO_OFF | FILTER_OFF); +@@ -991,10 +826,11 @@ int LoadCurrentFile() + } + + #ifdef EDIT_BUTTON +-/* simply add editor button that calls $XXGDBWINEDIT, $WINEDIT, xxgdbedit in that order */ ++/* simply add editor button that calls $EDITOR and xedit in that order */ + /* allow invocation of fav. editor from within interface */ + /* button and the EdAction action procedure for the source window */ +-void StartEditor () ++void ++StartEditor(void) + { + XawTextPosition pos; + char* editor; +@@ -1002,11 +838,9 @@ void StartEditor () + int result; + + if (displayedFile == NULL) return; +- editor = (char *) getenv("XXGDBWINEDIT"); +- if (editor == NULL) +- editor = (char *) getenv("WINEDIT"); ++ editor = (char *) getenv("EDITOR"); + if (editor == NULL) +- editor = "xxgdbedit"; ++ editor = "xedit"; + pos = XawTextGetInsertionPoint(sourceWindow); + displayedFile->currentline = TextPositionToLine(pos); + sprintf(string, "nohup %s +%d %s&\n", +@@ -1043,8 +877,7 @@ void StartEditor () + * + */ + char * +-GetSourcePathname (filename) +-char *filename; ++GetSourcePathname(char *filename) + { + char *srcpath; + char curr_src [MAXPATHLEN]; +diff -p -up xxgdb-1.12/XDbx.ad.orig xxgdb-1.12/XDbx.ad +--- xxgdb-1.12/XDbx.ad.orig 2010-05-06 21:43:37.942032512 -0300 ++++ xxgdb-1.12/XDbx.ad 2010-05-06 21:43:56.626028358 -0300 +@@ -19,31 +19,41 @@ + *sourceForm.preferredPaneSize: 320 + *sourceWindow.leftMargin: 35 + *sourceWindow.scrollHorizontal: whenNeeded +-*sourceWindow.translations: #override \n\ +- <Btn1Down>: SelectStart() SelectWord() \n\ +- Shift<Btn1Up>: Update(warp) SelectEnd() PrintSelection() \n\ +- <Btn1Up>: Update(warp) SelectEnd() \n\ +- <Key>Down: next-line() Update()\n\ +- <Key>Up: previous-line() Update() \n\ +- Ctrl<Key>L: redraw-display() Update() \n\ +- Ctrl<Key>N: next-line() Update() \n\ +- Ctrl<Key>P: previous-line() Update() \n\ +- Ctrl<Key>V: next-page() Update() \n\ +- Ctrl<Key>Z: scroll-one-line-up() Update() \n\ +- Meta<Key>V: previous-page() Update() \n\ +- Meta<Key>Z: scroll-one-line-down() Update() \n\ +- :Meta<Key>\>: end-of-file() Update() \n\ +- :Meta<Key>]: forward-paragraph() Update() \n\ +- :Meta<Key>[: backward-paragraph() Update() ++*sourceWindow.translations: #override \ ++ <Btn1Down>: set-keyboard-focus() SelectStart() SelectWord()\n\ ++ Shift<Btn1Up>: Update(warp) SelectEnd() PrintSelection()\n\ ++ <Btn1Up>: Update(warp) SelectEnd()\n\ ++ <Key>Down: next-line() Update()\n\ ++ <Key>Up: previous-line() Update()\n\ ++ Ctrl<Key>L: redraw-display() Update()\n\ ++ Ctrl<Key>N: next-line() Update()\n\ ++ Ctrl<Key>P: previous-line() Update()\n\ ++ Ctrl<Key>V: next-page() Update()\n\ ++ Ctrl<Key>Z: scroll-one-line-up() Update()\n\ ++ Meta<Key>V: previous-page() Update()\n\ ++ Meta<Key>Z: scroll-one-line-down() Update()\n\ ++ :Meta<Key>\>: end-of-file() Update()\n\ ++ :Meta<Key>]: forward-paragraph() Update()\n\ ++ :Meta<Key>[: backward-paragraph() Update() + *messageWindow*font: variable + *messageWindow.min: 30 + *messageWindow.max: 30 + *dialogWindow.preferredPaneSize: 200 + *dialogWindow.resizeToPreferred: True +-*dialogWindow.translations: #override \n\ +- <Btn1Down>: SelectStart() SelectWord() \n\ +- Shift<Btn1Up>: SelectEnd() PrintSelection() \n\ +- <Btn1Up>: SelectEnd() \n ++*dialogWindow.translations: #override \ ++ <Btn1Down>: set-keyboard-focus() SelectStart() SelectWord()\n\ ++ Shift<Btn1Up>: SelectEnd() PrintSelection()\n\ ++ <Btn1Up>: SelectEnd()\n\ ++ Ctrl<Key>C: SigInt()\n\ ++ Ctrl<Key>D: SigEof()\n\ ++ Ctrl<Key>|: SigQuit()\n\ ++ <Key>Tab: no-op(r)\n\ ++ Ctrl<Key>W: DeleteWord()\n\ ++ Ctrl<Key>U: DeleteLine()\n\ ++ Ctrl<Key>H: DeleteChar()\n\ ++ <Key>Delete: DeleteChar()\n\ ++ <Key>BackSpace: DeleteChar()\n\ ++ <Key>Return: newline() Dispatch() + *commandWindow.preferredPaneSize: 135 + *commandWindow.skipAdjust: True + !*commandWindow.hSpace: 14 +@@ -55,8 +65,8 @@ + *displayWindow.skipAdjust: True + *displayWindow.scrollVertical: whenNeeded + *displayWindow.scrollHorizontal: whenNeeded +-*displayWindow.translations: #override \n\ +- <Btn1Down>: SelectStart() SelectWord() \n\ +- Shift<Btn1Up>: SelectEnd() PrintSelection() \n\ +- <Btn1Up>: SelectEnd() \n ++*displayWindow.translations: #override \ ++ <Btn1Down>: set-keyboard-focus() SelectStart() SelectWord()\n\ ++ Shift<Btn1Up>: SelectEnd() PrintSelection()\n\ ++ <Btn1Up>: SelectEnd() + *popup*showGrip: False +diff -p -up xxgdb-1.12/xdbx.c.orig xxgdb-1.12/xdbx.c +--- xxgdb-1.12/xdbx.c.orig 2010-05-06 21:43:37.944031595 -0300 ++++ xxgdb-1.12/xdbx.c 2010-05-06 21:43:56.628036652 -0300 +@@ -191,19 +191,11 @@ String fallback_resources[] = { + #endif + "*sourceWindow.leftMargin: 35", + "*sourceWindow.scrollHorizontal: whenNeeded", +- "*sourceWindow.translations: #override \\n\ +- <Btn1Down>: SelectStart() SelectWord() \\n\ +- Shift<Btn1Up>: Update() SelectEnd() PrintSelection() \\n\ +- <Btn1Up>: Update() SelectEnd() \\n", + "*messageWindow*font: variable", + "*messageWindow.min: 30", + "*messageWindow.max: 30", + "*dialogWindow.preferredPaneSize: 240", + "*dialogWindow.resizeToPreferred: True", +- "*dialogWindow.translations: #override \\n\ +- <Btn1Down>: SelectStart() SelectWord() \\n\ +- Shift<Btn1Up>: SelectEnd() PrintSelection() \\n\ +- <Btn1Up>: SelectEnd() \\n", + #ifdef NEW_INTERFACE + "*commandShell.geometry: 190x370+590+0", + #else +@@ -229,10 +221,6 @@ String fallback_resources[] = { + #endif + "*displayWindow.scrollVertical: whenNeeded", + "*displayWindow.scrollHorizontal: whenNeeded", +- "*displayWindow.translations: #override \\n\ +- <Btn1Down>: SelectStart() SelectWord() \\n\ +- Shift<Btn1Up>: SelectEnd() PrintSelection() \\n\ +- <Btn1Up>: SelectEnd() \\n", + "*popup*showGrip: False", + "*bindings: emacs", + NULL, +@@ -271,14 +259,25 @@ static XrmOptionDescRec options[] = { + }; + + XtActionsRec xdbx_actions[] = { +- {"SelectStart", (XtActionProc) SelectStart}, +- {"SelectEnd", (XtActionProc) SelectEnd}, +- {"SelectWord", (XtActionProc) SelectWord}, +- {"PrintSelection", (XtActionProc) PrintSelection}, +- {"Update", (XtActionProc) Update}, +- {"DeleteWord", (XtActionProc) DeleteWord}, +- {"DeleteLine", (XtActionProc) DeleteLine}, +- {NULL, NULL} ++#ifdef EDIT_BUTTON ++ {"Editor", EdAction}, ++#endif ++ {"DeleteChar", DeleteChar}, ++ {"DeleteLine", DeleteLine}, ++ {"DeleteWord", DeleteWord}, ++ {"Dispatch", Dispatch}, ++ {"InsertSpace", InsertSpace}, ++ {"NotifyResize", NotifyResize}, ++ {"PrintSelection", PrintSelection}, ++ {"Search", Search}, ++ {"SelectEnd", SelectEnd}, ++ {"SelectStart", SelectStart}, ++ {"SelectWord", SelectWord}, ++ {"SigEof", SigEof}, ++ {"SigInt", SigInt}, ++ {"SigQuit", SigQuit}, ++ {"Update", Update}, ++ {NULL, NULL} + }; + + static void Syntax(call) diff --git a/source/xap/xxgdb/xxgdb-1.12-sysv.patch b/source/xap/xxgdb/xxgdb-1.12-sysv.patch new file mode 100644 index 00000000..e8b14b78 --- /dev/null +++ b/source/xap/xxgdb/xxgdb-1.12-sysv.patch @@ -0,0 +1,24 @@ +--- xxgdb-1.12/source.c~ Fri Apr 21 12:16:02 1995 ++++ xxgdb-1.12/source.c Mon Dec 2 17:42:39 1996 +@@ -79,7 +79,7 @@ + #endif + #include <stdlib.h> + +-#include <X11/Xos.h> ++/* #include <X11/Xos.h> */ + #include <sys/stat.h> + #include <pwd.h> + #include "global.h" +--- xxgdb-1.12/global.h~ Thu Apr 6 12:23:42 1995 ++++ xxgdb-1.12/global.h Mon Dec 2 17:38:21 1996 +@@ -62,8 +62,9 @@ + * + * Contain extern declarations of variables and functions. + */ +- ++#undef SYSV + #include "defs.h" ++#define SYSV + + + #if defined(__GNUC__) && !defined(alloca) diff --git a/source/xap/xxgdb/xxgdb.SlackBuild b/source/xap/xxgdb/xxgdb.SlackBuild index 97c130f6..a1453e05 100755 --- a/source/xap/xxgdb/xxgdb.SlackBuild +++ b/source/xap/xxgdb/xxgdb.SlackBuild @@ -1,6 +1,6 @@ #!/bin/sh -# Copyright 2008, 2009 Patrick J. Volkerding, Sebeka, MN, USA +# Copyright 2008, 2009-2011 Patrick J. Volkerding, Sebeka, MN, USA # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -19,11 +19,11 @@ # WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR # OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# PKGNAM=xxgdb VERSION=${VERSION:-1.12} -ARCH=${ARCH:-x86_64} -BUILD=${BUILD:-2} +BUILD=${BUILD:-3} CWD=$(pwd) TMP=${TMP:-/tmp} @@ -31,6 +31,17 @@ PKG=$TMP/package-${PKGNAM} rm -rf $PKG mkdir -p $TMP $PKG +# Automatically determine the architecture we're building on: +if [ -z "$ARCH" ]; then + case "$( uname -m )" in + i?86) export ARCH=i486 ;; + arm*) export ARCH=arm ;; + # Unless $ARCH is already set, use uname -m for all other archs: + *) export ARCH=$( uname -m ) ;; + esac +fi + +# Set compile flags: if [ "$ARCH" = "i486" ]; then SLKCFLAGS="-march=i486 -mtune=i686" elif [ "$ARCH" = "s390" ]; then @@ -39,12 +50,18 @@ elif [ "$ARCH" = "x86_64" ]; then SLKCFLAGS="-O2 -fPIC" fi +# Extract source: cd $TMP rm -rf ${PKGNAM}-${VERSION} -tar xvf $CWD/${PKGNAM}-$VERSION.tar.gz || exit 1 +tar xvf $CWD/${PKGNAM}-$VERSION.tar.xz || exit 1 cd ${PKGNAM}-$VERSION || exit 1 -zcat $CWD/xxgdb.fix_glibc_and_gcc.diff.gz | patch -p1 --verbose --backup --suffix=.orig +# Apply patches: +# The patches were taken from Mandriva's SRPM and address build issues +# and run-time issues on x86_64. +for pf in $CWD/*patch.xz ; do + { xz -dc $pf | patch -p1 ;} || exit 1 +done # Make sure ownerships and permissions are sane: chown -R root:root . @@ -89,7 +106,7 @@ fi # Add a documentation directory: mkdir -p ${PKG}/usr/doc/${PKGNAM}-$VERSION cp -a \ - README README.NEW_INTERFACE XDBX_README XDbx.NEW_INTERFACE XXGDB_README \ + *README* XDbx.NEW_INTERFACE \ $PKG/usr/doc/${PKGNAM}-$VERSION mkdir -p $PKG/install diff --git a/source/xap/xxgdb/xxgdb.fix_glibc_and_gcc.diff b/source/xap/xxgdb/xxgdb.fix_glibc_and_gcc.diff deleted file mode 100644 index b61d57ce..00000000 --- a/source/xap/xxgdb/xxgdb.fix_glibc_and_gcc.diff +++ /dev/null @@ -1,45 +0,0 @@ -diff -Naur xxgdb-1.12/Imakefile xxgdb-1.12.fixed/Imakefile ---- xxgdb-1.12/Imakefile 1995-06-19 19:20:55.000000000 -0300 -+++ xxgdb-1.12.fixed/Imakefile 2007-02-21 10:40:57.000000000 -0200 -@@ -59,7 +59,7 @@ - #endif - - #ifdef LinuxArchitecture --DEFINES = -DSYSV $(DEFGDB) -+DEFINES = $(DEFGDB) - #endif - - #if defined(NeXTArchitecture) || defined(NextArchitecture) -diff -Naur xxgdb-1.12/filemenu.c xxgdb-1.12.fixed/filemenu.c ---- xxgdb-1.12/filemenu.c 1994-08-29 16:38:28.000000000 -0300 -+++ xxgdb-1.12.fixed/filemenu.c 2007-02-21 10:47:47.000000000 -0200 -@@ -207,12 +207,12 @@ - return False; - if (statbuf.st_mode & S_IFDIR) { /* is directory */ - strcat(entry->d_name, "/"); -- ++(entry->d_namlen); -+ ++(entry->d_reclen); - return True; - } - if (statbuf.st_mode & S_IEXEC) { /* is executable */ - strcat(entry->d_name, "*"); -- ++(entry->d_namlen); -+ ++(entry->d_reclen); - return True; - } - return True; -diff -Naur xxgdb-1.12/gdb_handler.c xxgdb-1.12.fixed/gdb_handler.c ---- xxgdb-1.12/gdb_handler.c 1995-04-19 13:46:22.000000000 -0300 -+++ xxgdb-1.12.fixed/gdb_handler.c 2007-02-21 10:51:30.000000000 -0200 -@@ -85,10 +85,7 @@ - * query_gdb(): Send command to gdb. - */ - --#ifdef SYSV --# include <signal.h> --#endif -- -+#include <signal.h> - - /* - * Display an outlined arrow to locate the calling routine in a stack |