X-Git-Url: https://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=progs%2Fprogs.priv.h;h=3dc177d0a86698dd6d1e35c07ef969bb1df15a01;hp=2d22c9ad1a8af375c26e3770e4be30688c633df8;hb=2b7c2fd2f9d58719770902ce4d0d0aeb87b284f7;hpb=b1f61d9f3aa244512045a6b02e759825d7049d34 diff --git a/progs/progs.priv.h b/progs/progs.priv.h index 2d22c9ad..3dc177d0 100644 --- a/progs/progs.priv.h +++ b/progs/progs.priv.h @@ -1,5 +1,6 @@ /**************************************************************************** - * Copyright (c) 1998-2000 Free Software Foundation, Inc. * + * Copyright 2019,2020 Thomas E. Dickey * + * Copyright 1998-2015,2017 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 * @@ -27,22 +28,25 @@ ****************************************************************************/ /**************************************************************************** - * Author: Thomas E. Dickey 1997,1998 * + * Author: Thomas E. Dickey 1997-on * ****************************************************************************/ /* - * $Id: progs.priv.h,v 1.22 2000/04/08 23:47:39 tom Exp $ + * $Id: progs.priv.h,v 1.52 2020/09/05 19:35:06 tom Exp $ * * progs.priv.h * * Header file for curses utility programs */ +#ifndef PROGS_PRIV_H +#define PROGS_PRIV_H 1 + #include -#ifdef USE_RCS_IDS +#if USE_RCS_IDS #define MODULE_ID(id) static const char Ident[] = id; #else -#define MODULE_ID(id) /*nothing*/ +#define MODULE_ID(id) /*nothing */ #endif #include @@ -52,14 +56,6 @@ #if HAVE_UNISTD_H #include -#else -# if HAVE_LIBC_H -# include -# endif -#endif - -#if HAVE_SYS_BSDTYPES_H -#include /* needed for ISC */ #endif #if HAVE_LIMITS_H @@ -71,8 +67,17 @@ #if HAVE_DIRENT_H # include # define NAMLEN(dirent) strlen((dirent)->d_name) +# if defined(_FILE_OFFSET_BITS) && defined(HAVE_STRUCT_DIRENT64) +# if !defined(_LP64) && (_FILE_OFFSET_BITS == 64) +# define DIRENT struct dirent64 +# else +# define DIRENT struct dirent +# endif +# else +# define DIRENT struct dirent +# endif #else -# define dirent direct +# define DIRENT struct direct # define NAMLEN(dirent) (dirent)->d_namlen # if HAVE_SYS_NDIR_H # include @@ -85,6 +90,15 @@ # endif #endif +#if HAVE_INTTYPES_H +# include +#else +# if HAVE_STDINT_H +# include +# endif +#endif + +#include #include #if DECL_ERRNO @@ -93,7 +107,7 @@ extern int errno; #if HAVE_GETOPT_H #include -#else +#elif !defined(HAVE_GETOPT_HEADER) /* 'getopt()' may be prototyped in , but declaring its * variables doesn't hurt. */ @@ -101,12 +115,56 @@ extern char *optarg; extern int optind; #endif /* HAVE_GETOPT_H */ +#undef _NC_WINDOWS +#if (defined(_WIN32) || defined(_WIN64)) +#define _NC_WINDOWS 1 +#endif + +#define NCURSES_INTERNALS 1 +#define NCURSES_OPAQUE 0 + #include + +#if !(defined(NCURSES_WGETCH_EVENTS) && defined(NEED_KEY_EVENT)) +#undef KEY_EVENT /* reduce compiler-warnings with Visual C++ */ +#endif + #include +#include #include +#include + +#include #include +#if HAVE_NC_FREEALL +#undef ExitProgram +#ifdef USE_LIBTINFO +#define ExitProgram(code) exit_terminfo(code) +#else +#define ExitProgram(code) _nc_free_tic(code) +#endif +#endif + +#define VtoTrace(opt) (unsigned) ((opt > 0) ? opt : (opt == 0)) + +/* error-returns for tput */ +#define ErrUsage 2 +#define ErrTermType 3 +#define ErrCapName 4 +#define ErrSystem(n) (4 + (n)) + +#if defined(__GNUC__) && defined(_FORTIFY_SOURCE) +#define IGNORE_RC(func) errno = (int) func +#else +#define IGNORE_RC(func) (void) func +#endif /* gcc workarounds */ + /* usually in */ +#ifndef STDIN_FILENO +#define STDIN_FILENO 0 +#endif + #ifndef STDOUT_FILENO #define STDOUT_FILENO 1 #endif @@ -155,18 +213,32 @@ extern int optind; # elif defined(MAXPATHLEN) # define PATH_MAX MAXPATHLEN # else -# define PATH_MAX 255 /* the Posix minimum pathsize */ +# define PATH_MAX 255 /* the Posix minimum pathsize */ # endif #endif /* We use isascii only to guard against use of 7-bit ctype tables in the * isprint test in infocmp. */ -#ifndef HAVE_ISASCII +#if !HAVE_ISASCII # undef isascii # if ('z'-'a' == 25) && ('z' < 127) && ('Z'-'A' == 25) && ('Z' < 127) && ('9' < 127) -# define isascii(c) (((c) & 0xff) <= 127) +# define isascii(c) (UChar(c) <= 127) # else -# define isascii(c) 1 /* not really ascii anyway */ +# define isascii(c) 1 /* not really ascii anyway */ # endif #endif + +#define UChar(c) ((unsigned char)(c)) + +#define SIZEOF(v) (sizeof(v)/sizeof(v[0])) + +#define NCURSES_EXT_NUMBERS (NCURSES_EXT_COLORS && HAVE_INIT_EXTENDED_COLOR) + +#if NCURSES_EXT_NUMBERS +#else +#define _nc_free_termtype2(t) _nc_free_termtype(t) +#define _nc_read_entry2(n,f,t) _nc_read_entry(n,f,t) +#endif + +#endif /* PROGS_PRIV_H */