From: borutr Date: Thu, 23 Aug 2007 20:03:39 +0000 (+0000) Subject: * debugger/mcs51/sdcdb.c: fixed compilation with older readline X-Git-Url: https://git.gag.com/?a=commitdiff_plain;ds=sidebyside;h=8b79afd35a754205036073f9cc568a3ab65dfa17;p=fw%2Fsdcc * debugger/mcs51/sdcdb.c: fixed compilation with older readline library versions without the completition functionality git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@4904 4a8a32a2-be11-0410-ad9d-d568d2c75423 --- diff --git a/ChangeLog b/ChangeLog index e1be99ab..960fb7c1 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2007-08-23 Borut Razem + + * debugger/mcs51/sdcdb.c: fixed compilation with older readline + library versions without the completition functionality + 2007-08-22 Raphael Neider * device/include/pic16/pic18f1220.h, diff --git a/debugger/mcs51/sdcdb.c b/debugger/mcs51/sdcdb.c index f2fddbe5..fc132d8c 100644 --- a/debugger/mcs51/sdcdb.c +++ b/debugger/mcs51/sdcdb.c @@ -27,6 +27,9 @@ #include "break.h" #include "cmd.h" #include "newalloc.h" +#if defined HAVE_LIBREADLINE && HAVE_LIBREADLINE != -1 +#define HAVE_READLINE_COMPLETITION 1 +#endif #ifdef HAVE_LIBREADLINE #include #include @@ -62,7 +65,7 @@ int lineno = 0; int fatalError = 0; static void commandLoop(FILE *cmdfile); -#ifdef HAVE_LIBREADLINE +#ifdef HAVE_READLINE_COMPLETITION char *completionCmdSource(const char *text, int state); char *completionCmdFile(const char *text, int state); char *completionCmdInfo(const char *text, int state); @@ -86,18 +89,18 @@ char *completionCmdSetOption(const char *text, int state); #define completionCmdUnDisplay NULL #define completionCmdSetUserBp NULL #define completionCmdSetOption NULL -#endif /* HAVE_LIBREADLINE */ +#endif /* HAVE_READLINE_COMPLETITION */ /* command table */ struct cmdtab { char *cmd ; /* command the user will enter */ int (*cmdfunc)(char *,context *); /* function to execute when command is entered */ -#ifdef HAVE_LIBREADLINE +#ifdef HAVE_READLINE_COMPLETITION rl_compentry_func_t *completion_func; #else void *dummy; -#endif /* HAVE_LIBREADLINE */ +#endif /* HAVE_READLINE_COMPLETITION */ char *htxt ; /* short help text */ } cmdTab[] = { @@ -958,7 +961,7 @@ void stopCommandList() stopcmdlist = 1; } -#ifdef HAVE_LIBREADLINE +#ifdef HAVE_READLINE_COMPLETITION // helper function for doing readline completion. // input: toknum=index of token to find (0=first token) // output: *start=first character index of the token, @@ -1419,7 +1422,7 @@ char *completionMain(const char *text, int state) return (*compl_func)(text,state); } -#endif /* HAVE_LIBREADLINE */ +#endif /* HAVE_READLINE_COMPLETITION */ /*-----------------------------------------------------------------*/ /* commandLoop - the main command loop or loop over command file */ @@ -1433,7 +1436,9 @@ static void commandLoop(FILE *cmdfile) FILE *old_rl_instream, *old_rl_outstream; actualcmdfile = cmdfile; +#ifdef HAVE_READLINE_COMPLETITION rl_completion_entry_function = completionMain; +#endif /* HAVE_READLINE_COMPLETITION */ rl_readline_name = "sdcdb"; // Allow conditional parsing of the ~/.inputrc file. // save readline's input/output streams