X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=gdb%2Fgdb_curses.h;h=1020aaa3c5562fbd312a432567f0e3dcffb186ba;hb=d16c467a501547e37b111f775396e28f8bf27c1e;hp=ff1c5f5cb4f80109bb15e41ca0cfadf8c7ccf155;hpb=31b060a20f9c8b39d8b16c3c6e44b20d17d60c27;p=deliverable%2Fbinutils-gdb.git diff --git a/gdb/gdb_curses.h b/gdb/gdb_curses.h index ff1c5f5cb4..1020aaa3c5 100644 --- a/gdb/gdb_curses.h +++ b/gdb/gdb_curses.h @@ -1,6 +1,6 @@ /* Portable . - Copyright (C) 2004, 2006, 2007, 2008, 2009 Free Software Foundation, Inc. + Copyright (C) 2004-2020 Free Software Foundation, Inc. This file is part of GDB. @@ -20,7 +20,28 @@ #ifndef GDB_CURSES_H #define GDB_CURSES_H 1 -#if defined (HAVE_NCURSES_NCURSES_H) +#ifdef __MINGW32__ +/* Windows API headers, included e.g. by serial.h, define MOUSE_MOVED, + and so does PDCurses's curses.h, but for an entirely different + purpose. Since we don't use the Windows semantics of MOUSE_MOVED + anywhere, avoid compiler warnings by undefining MOUSE_MOVED before + including curses.h. */ +#undef MOUSE_MOVED +/* Likewise, KEY_EVENT is defined by ncurses.h, but also by Windows + API headers. */ +#undef KEY_EVENT +#endif + +/* On Solaris and probably other SysVr4 derived systems, we need to define + NOMACROS so the native doesn't define clear which interferes + with the clear member of class string_file. ncurses potentially has a + similar problem and fix. */ +#define NOMACROS +#define NCURSES_NOMACROS + +#if defined (HAVE_NCURSESW_NCURSES_H) +#include +#elif defined (HAVE_NCURSES_NCURSES_H) #include #elif defined (HAVE_NCURSES_H) #include @@ -36,10 +57,18 @@ #include #else /* On MinGW, a real termcap library is usually not present. Stub versions - of the termcap functions will be built from windows-termcap.c. Readline + of the termcap functions will be built from stub-termcap.c. Readline provides its own extern declarations when there's no termcap.h; do the same here for the termcap functions used in GDB. */ -extern int tgetnum (const char *); +EXTERN_C int tgetnum (const char *); +#endif + +/* SunOS's curses.h has a '#define reg register' in it. Thank you Sun. */ +/* Ditto for: + -bash-4.2$ uname -a + AIX power-aix 1 7 00F84C0C4C00 */ +#ifdef reg +#undef reg #endif #endif /* gdb_curses.h */