X-Git-Url: http://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=test%2Ftest.priv.h;h=b9c5dc651b0905cab2d8c8b48cc3ae0b4af70723;hp=053ab38505db69ab8d18f78f37645d97383e9bdf;hb=d76c9bfec68e0efa6e1b8e95b32b66caf25cfc12;hpb=d60228973b72d3b457e3ec2653ea5b2cb38fc0c9 diff --git a/test/test.priv.h b/test/test.priv.h index 053ab385..b9c5dc65 100644 --- a/test/test.priv.h +++ b/test/test.priv.h @@ -1,5 +1,5 @@ /**************************************************************************** - * Copyright (c) 1998-2017,2018 Free Software Foundation, Inc. * + * Copyright (c) 1998-2018,2019 Free Software Foundation, Inc. * * * * Permission is hereby granted, free of charge, to any person obtaining a * * copy of this software and associated documentation files (the * @@ -29,7 +29,7 @@ /**************************************************************************** * Author: Thomas E. Dickey 1996-on * ****************************************************************************/ -/* $Id: test.priv.h,v 1.166 2018/06/17 01:17:47 tom Exp $ */ +/* $Id: test.priv.h,v 1.182 2019/04/20 20:15:39 tom Exp $ */ #ifndef __TEST_PRIV_H #define __TEST_PRIV_H 1 @@ -242,6 +242,10 @@ #define HAVE_STDINT_H 0 #endif +#ifndef HAVE_STRSTR +#define HAVE_STRSTR 0 +#endif + #ifndef HAVE_SYS_IOCTL_H #define HAVE_SYS_IOCTL_H 0 #endif @@ -250,10 +254,6 @@ #define HAVE_SYS_SELECT_H 0 #endif -#ifndef HAVE_TDESTROY -#define HAVE_TDESTROY 0 -#endif - #ifndef HAVE_TERMATTRS #define HAVE_TERMATTRS 0 #endif @@ -453,6 +453,12 @@ extern int optind; #define getnstr(s,n) getstr(s) #endif +#if HAVE_INIT_EXTENDED_COLOR +#define USE_EXTENDED_COLOR 1 +#else +#define USE_EXTENDED_COLOR 0 +#endif + #ifndef USE_SOFTKEYS #if HAVE_SLK_INIT #define USE_SOFTKEYS 1 @@ -467,6 +473,24 @@ extern int optind; #define slk_clear() /* nothing */ #endif +#ifndef HAVE_CURSES_DATA_TABSIZE +#define HAVE_CURSES_DATA_TABSIZE 0 +#endif + +#if !NCURSES_EXT_FUNCS +#if HAVE_CURSES_DATA_TABSIZE +#define set_tabsize(n) TABSIZE = (n) +#else +#define set_tabsize(n) /* nothing */ +#endif +#endif + +#if HAVE_TPUTS_SP +#define USE_SP_FUNCS 1 +#else +#define USE_SP_FUNCS 0 +#endif + #ifndef HAVE_WSYNCDOWN #define wsyncdown(win) /* nothing */ #endif @@ -502,9 +526,9 @@ extern int optind; /* workaround, to build against NetBSD's variant of the form library */ #ifdef HAVE_NETBSD_FORM_H -#define form_getyx(form, y, x) y = current_field(form)->cursor_ypos, x = current_field(form)->cursor_xpos +#define form_getyx(form, y, x) y = (int)current_field(form)->cursor_ypos, x = (int)current_field(form)->cursor_xpos #else -#define form_getyx(form, y, x) y = (form)->currow, x = (form)->curcol +#define form_getyx(form, y, x) y = (int)(form)->currow, x = (int)(form)->curcol #endif /* workaround, to build against NetBSD's variant of the form library */ @@ -676,6 +700,15 @@ extern int optind; #define USE_STRING_HACKS 0 #endif +#ifndef NCURSES_CAST +#ifdef __cplusplus +extern "C" { +#define NCURSES_CAST(type,value) static_cast(value) +#else +#define NCURSES_CAST(type,value) (type)(value) +#endif +#endif + #if USE_STRING_HACKS && HAVE_STRLCAT #define _nc_STRCAT(d,s,n) NCURSES_VOID strlcat((d),(s),NCURSES_CAST(size_t,n)) #define _nc_STRNCAT(d,s,m,n) NCURSES_VOID strlcat((d),(s),NCURSES_CAST(size_t,m)) @@ -700,12 +733,37 @@ extern int optind; #define _nc_SLIMIT(n) /* nothing */ #endif +/* + * X/Open Curses does not define the arrays of terminfo/termcap names as SVr4 + * curses did, and some implementations provide them anyway, but undeclared. + */ #ifdef DECL_CURSES_DATA_BOOLNAMES extern char *boolnames[], *boolcodes[], *boolfnames[]; extern char *numnames[], *numcodes[], *numfnames[]; extern char *strnames[], *strcodes[], *strfnames[]; #endif +/* + * Again, an SVr4 curses feature latent in the libraries but not in headers. + */ +#ifndef DECL_CURSES_DATA_TABSIZE +#define DECL_CURSES_DATA_TABSIZE 0 +#endif + +#if DECL_CURSES_DATA_TABSIZE +extern int TABSIZE; +#undef HAVE_CURSES_DATA_TABSIZE +#define HAVE_CURSES_DATA_TABSIZE 1 +#endif + +#ifndef HAVE_CURSES_DATA_TABSIZE +#define HAVE_CURSES_DATA_TABSIZE 0 +#endif + +/* + * X/Open Curses provides termname(), whose return value is analogous to the + * SVr4 curses variable ttytype[]. + */ #ifndef HAVE_CURSES_DATA_TTYTYPE #define HAVE_CURSES_DATA_TTYTYPE 0 #endif @@ -865,7 +923,7 @@ extern char *strnames[], *strcodes[], *strfnames[]; #define EXIT_FAILURE 1 #endif -#if defined(__MINGW32__) || defined(USE_WIN32CON_DRIVER) +#if defined(_WIN32) || defined(USE_WIN32CON_DRIVER) #if defined(PDCURSES) #ifdef WINVER @@ -897,6 +955,31 @@ extern char *strnames[], *strcodes[], *strfnames[]; #endif +#ifdef NEED_TIME_H +#if TIME_WITH_SYS_TIME +# include +# include +#else +# if HAVE_SYS_TIME_H +# include +# else +# include +# endif +#endif +#endif + +/* + * Ultrix 3.1 + */ +#ifndef STDOUT_FILENO +#define STDOUT_FILENO 1 +#endif + +#if !HAVE_STRSTR +extern char * _nc_strstr (const char *, const char *); +#define strstr(a,b) _nc_strstr((a),(b)) +#endif /* !HAVE_STRSTR */ + /* Use this to quiet gcc's -Wwrite-strings warnings, but accommodate SVr4 * curses which doesn't have const parameters declared (so far) in the places * that XSI shows. @@ -990,10 +1073,26 @@ extern char *tgoto(char *, int, int); /* available, but not prototyped */ #endif #endif +/* + * ncurses provides a termcap interface; a few packagers replace or displace + * its header file with an incompatible one. The demo_termcap program uses + * the ncurses file, if available. + */ +#ifdef NCURSES_VERSION +#ifndef HAVE_NCURSES_TERMCAP_H +#define HAVE_NCURSES_TERMCAP_H 0 +#endif +#ifndef HAVE_TERMCAP_H +#define HAVE_TERMCAP_H 0 +#endif +#endif + /* * ncurses uses const in some places where X/Open does (or did) not allow. */ -#if defined(NCURSES_VERSION) || defined(PDCURSES) +#if defined(NCURSES_CONST) +#define CONST_MENUS NCURSES_CONST +#elif defined(PDCURSES) #define CONST_MENUS const #else #define CONST_MENUS /* nothing */ @@ -1009,7 +1108,7 @@ extern char *tgoto(char *, int, int); /* available, but not prototyped */ #define USING_WINDOW2(w,func,data) use_window(w, (NCURSES_WINDOW_CB) func, data) #define WANT_USE_WINDOW() extern void _nc_want_use_window(void) #else -#define USING_WINDOW(w,func) func(w) +#define USING_WINDOW(w,func) func(w, NULL) #define USING_WINDOW1(w,func,safe) func(w) #define USING_WINDOW2(w,func,data) func(w,data) #define WANT_USE_WINDOW() extern void _nc_want_use_window(void)