X-Git-Url: http://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=progs%2Fprogs.priv.h;h=3ead89f85d200a7eef41b49d0683733352efc6d6;hp=fb5a84760733940511a27d3f02e32e7467e3ea2c;hb=ff4cca6e1dfc932e229643403cdd59a6dd4b1abb;hpb=661078ddbde3ce0f3b06e95642fbb9b5fef7dca1 diff --git a/progs/progs.priv.h b/progs/progs.priv.h index fb5a8476..3ead89f8 100644 --- a/progs/progs.priv.h +++ b/progs/progs.priv.h @@ -1,5 +1,5 @@ /**************************************************************************** - * Copyright (c) 1998 Free Software Foundation, Inc. * + * Copyright (c) 1998-2011,2012 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,10 +27,10 @@ ****************************************************************************/ /**************************************************************************** - * Author: Thomas E. Dickey 1997,1998 * + * Author: Thomas E. Dickey 1997-on * ****************************************************************************/ /* - * $Id: progs.priv.h,v 1.17 1998/02/11 12:14:03 tom Exp $ + * $Id: progs.priv.h,v 1.39 2012/02/22 22:11:27 tom Exp $ * * progs.priv.h * @@ -39,10 +39,10 @@ #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,10 +52,6 @@ #if HAVE_UNISTD_H #include -#else -# if HAVE_LIBC_H -# include -# endif #endif #if HAVE_SYS_BSDTYPES_H @@ -68,21 +64,20 @@ # include #endif -#ifndef PATH_MAX -# if defined(_POSIX_PATH_MAX) -# define PATH_MAX _POSIX_PATH_MAX -# elif defined(MAXPATHLEN) -# define PATH_MAX MAXPATHLEN -# else -# define PATH_MAX 255 /* the Posix minimum pathsize */ -# endif -#endif - #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 @@ -95,6 +90,15 @@ # endif #endif +#if HAVE_INTTYPES_H +# include +#else +# if HAVE_STDINT_H +# include +# endif +#endif + +#include #include #if DECL_ERRNO @@ -103,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. */ @@ -112,9 +116,21 @@ extern int optind; #endif /* HAVE_GETOPT_H */ #include -#include +#include +#include #include +#include + +#include #include +#if HAVE_NC_FREEALL +#undef ExitProgram +#ifdef USE_LIBTINFO +#define ExitProgram(code) _nc_free_tinfo(code) +#else +#define ExitProgram(code) _nc_free_tic(code) +#endif +#endif /* usually in */ #ifndef STDOUT_FILENO @@ -133,6 +149,18 @@ extern int optind; #define EXIT_FAILURE 1 #endif +#ifndef R_OK +#define R_OK 4 /* Test for readable. */ +#endif + +#ifndef W_OK +#define W_OK 2 /* Test for writable. */ +#endif + +#ifndef X_OK +#define X_OK 1 /* Test for executable. */ +#endif + #ifndef F_OK #define F_OK 0 /* Test for existence. */ #endif @@ -146,14 +174,29 @@ extern int optind; #define STDERR_FILENO 2 #endif +/* may be in limits.h, included from various places */ +#ifndef PATH_MAX +# if defined(_POSIX_PATH_MAX) +# define PATH_MAX _POSIX_PATH_MAX +# elif defined(MAXPATHLEN) +# define PATH_MAX MAXPATHLEN +# else +# 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]))