⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 config.h

📁 ARM上的如果你对底层感兴趣
💻 H
📖 第 1 页 / 共 5 页
字号:
 *	See HAS_SIGSETJMP. *//* Siglongjmp: *	This macro is used in the same way as siglongjmp(), but will invoke *	traditional longjmp() if siglongjmp isn't available. *	See HAS_SIGSETJMP. *//*#define HAS_SIGSETJMP	/**/#ifdef HAS_SIGSETJMP#define Sigjmp_buf sigjmp_buf#define Sigsetjmp(buf,save_mask) sigsetjmp((buf),(save_mask))#define Siglongjmp(buf,retval) siglongjmp((buf),(retval))#else#define Sigjmp_buf jmp_buf#define Sigsetjmp(buf,save_mask) setjmp((buf))#define Siglongjmp(buf,retval) longjmp((buf),(retval))#endif/* USE_STDIO_PTR: *	This symbol is defined if the _ptr and _cnt fields (or similar) *	of the stdio FILE structure can be used to access the stdio buffer *	for a file handle.  If this is defined, then the FILE_ptr(fp) *	and FILE_cnt(fp) macros will also be defined and should be used *	to access these fields. *//* FILE_ptr: *	This macro is used to access the _ptr field (or equivalent) of the *	FILE structure pointed to by its argument. This macro will always be *	defined if USE_STDIO_PTR is defined. *//* STDIO_PTR_LVALUE: *	This symbol is defined if the FILE_ptr macro can be used as an *	lvalue. *//* FILE_cnt: *	This macro is used to access the _cnt field (or equivalent) of the *	FILE structure pointed to by its argument. This macro will always be *	defined if USE_STDIO_PTR is defined. *//* STDIO_CNT_LVALUE: *	This symbol is defined if the FILE_cnt macro can be used as an *	lvalue. */#define USE_STDIO_PTR 	/**/#ifdef USE_STDIO_PTR#define FILE_ptr(fp)	((fp)->_ptr)#define STDIO_PTR_LVALUE 		/**/#define FILE_cnt(fp)	((fp)->_cnt)#define STDIO_CNT_LVALUE 		/**/#endif/* USE_STDIO_BASE: *	This symbol is defined if the _base field (or similar) of the *	stdio FILE structure can be used to access the stdio buffer for *	a file handle.  If this is defined, then the FILE_base(fp) macro *	will also be defined and should be used to access this field. *	Also, the FILE_bufsiz(fp) macro will be defined and should be used *	to determine the number of bytes in the buffer.  USE_STDIO_BASE *	will never be defined unless USE_STDIO_PTR is. *//* FILE_base: *	This macro is used to access the _base field (or equivalent) of the *	FILE structure pointed to by its argument. This macro will always be *	defined if USE_STDIO_BASE is defined. *//* FILE_bufsiz: *	This macro is used to determine the number of bytes in the I/O *	buffer pointed to by _base field (or equivalent) of the FILE *	structure pointed to its argument. This macro will always be defined *	if USE_STDIO_BASE is defined. */#define USE_STDIO_BASE 	/**/#ifdef USE_STDIO_BASE#define FILE_base(fp)	((fp)->_base)#define FILE_bufsiz(fp)	((fp)->_cnt + (fp)->_ptr - (fp)->_base)#endif/* HAS_VPRINTF: *	This symbol, if defined, indicates that the vprintf routine is available *	to printf with a pointer to an argument list.  If unavailable, you *	may need to write your own, probably in terms of _doprnt(). *//* USE_CHAR_VSPRINTF: *	This symbol is defined if this system has vsprintf() returning type *	(char*).  The trend seems to be to declare it as "int vsprintf()".  It *	is up to the package author to declare vsprintf correctly based on the *	symbol. */#define HAS_VPRINTF	/**//*#define USE_CHAR_VSPRINTF 	/**//* DOUBLESIZE: *	This symbol contains the size of a double, so that the C preprocessor *	can make decisions based on it. */#define DOUBLESIZE 8		/**//* I_TIME: *	This symbol, if defined, indicates to the C program that it should *	include <time.h>. *//* I_SYS_TIME: *	This symbol, if defined, indicates to the C program that it should *	include <sys/time.h>. *//* I_SYS_TIME_KERNEL: *	This symbol, if defined, indicates to the C program that it should *	include <sys/time.h> with KERNEL defined. */#define I_TIME		/**//*#define I_SYS_TIME		/**//*#define I_SYS_TIME_KERNEL		/**//* INTSIZE: *	This symbol contains the value of sizeof(int) so that the C *	preprocessor can make decisions based on it. *//* LONGSIZE: *	This symbol contains the value of sizeof(long) so that the C *	preprocessor can make decisions based on it. *//* SHORTSIZE: *	This symbol contains the value of sizeof(short) so that the C *	preprocessor can make decisions based on it. */#define INTSIZE 4		/**/#define LONGSIZE 4		/**/#define SHORTSIZE 2		/**//* VAL_O_NONBLOCK: *	This symbol is to be used during open() or fcntl(F_SETFL) to turn on *	non-blocking I/O for the file descriptor. Note that there is no way *	back, i.e. you cannot turn it blocking again this way. If you wish to *	alternatively switch between blocking and non-blocking, use the *	ioctl(FIOSNBIO) call instead, but that is not supported by all devices. *//* VAL_EAGAIN: *	This symbol holds the errno error code set by read() when no data was *	present on the non-blocking file descriptor. *//* RD_NODATA: *	This symbol holds the return code from read() when no data is present *	on the non-blocking file descriptor. Be careful! If EOF_NONBLOCK is *	not defined, then you can't distinguish between no data and EOF by *	issuing a read(). You'll have to find another way to tell for sure! *//* EOF_NONBLOCK: *	This symbol, if defined, indicates to the C program that a read() on *	a non-blocking file descriptor will return 0 on EOF, and not the value *	held in RD_NODATA (-1 usually, in that case!). */#define VAL_O_NONBLOCK O_NONBLOCK#define VAL_EAGAIN EAGAIN#define RD_NODATA -1#define EOF_NONBLOCK/* PTRSIZE: *	This symbol contains the size of a pointer, so that the C preprocessor *	can make decisions based on it.  It will be sizeof(void *) if *	the compiler supports (void *); otherwise it will be *	sizeof(char *). */#define PTRSIZE 4		/**//* RANDBITS: *	This symbol contains the number of bits of random number the rand() *	function produces.  Usual values are 15, 16, and 31. */#define RANDBITS 15		/**//* SSize_t: *	This symbol holds the type used by functions that return *	a count of bytes or an error condition.  It must be a signed type. *	It is usually ssize_t, but may be long or int, etc. *	It may be necessary to include <sys/types.h> or <unistd.h> *	to get any typedef'ed information. *	We will pick a type such that sizeof(SSize_t) == sizeof(Size_t). */#define SSize_t int	 /* signed count of bytes *//* OSNAME: *	This symbol contains the name of the operating system, as determined *	by Configure.  You shouldn't rely on it too much; the specific *	feature tests from Configure are generally more reliable. */#define OSNAME "MSWin32"		/**//* CAT2: *	This macro catenates 2 tokens together. *//* STRINGIFY: *	This macro surrounds its token with double quotes. */#if 42 == 1#define CAT2(a,b)a/**/b#define STRINGIFY(a)"a"		/* If you can get stringification with catify, tell me how! */#endif#if 42 == 42#define CAT2(a,b)a ## b#define StGiFy(a)# a#define STRINGIFY(a)StGiFy(a)#endif#if 42 != 1 && 42 != 42#include "Bletch: How does this C preprocessor catenate tokens?"#endif/* CSH: *	This symbol, if defined, contains the full pathname of csh. *//*#define HAS_CSH		/**/#ifdef HAS_CSH#define CSH ""	/**/#endif/* HAS_ENDHOSTENT: *	This symbol, if defined, indicates that the endhostent() routine is *	available to close whatever was being used for host queries. *//*#define HAS_ENDHOSTENT		/**//* HAS_ENDNETENT: *	This symbol, if defined, indicates that the endnetent() routine is *	available to close whatever was being used for network queries. *//*#define HAS_ENDNETENT		/**//* HAS_ENDPROTOENT: *	This symbol, if defined, indicates that the endprotoent() routine is *	available to close whatever was being used for protocol queries. *//*#define HAS_ENDPROTOENT		/**//* HAS_ENDSERVENT: *	This symbol, if defined, indicates that the endservent() routine is *	available to close whatever was being used for service queries. *//*#define HAS_ENDSERVENT		/**//* HAS_GETHOSTBYADDR: *	This symbol, if defined, indicates that the gethostbyaddr() routine is *	available to look up hosts by their IP addresses. */#define HAS_GETHOSTBYADDR		/**//* HAS_GETHOSTBYNAME: *	This symbol, if defined, indicates that the gethostbyname() routine is *	available to look up host names in some data base or other. */#define HAS_GETHOSTBYNAME		/**//* HAS_GETHOSTENT: *	This symbol, if defined, indicates that the gethostent() routine is *	available to look up host names in some data base or another. *//*#define HAS_GETHOSTENT		/**//* HAS_GETNETBYADDR: *	This symbol, if defined, indicates that the getnetbyaddr() routine is *	available to look up networks by their IP addresses. *//*#define HAS_GETNETBYADDR		/**//* HAS_GETNETBYNAME: *	This symbol, if defined, indicates that the getnetbyname() routine is *	available to look up networks by their names. *//*#define HAS_GETNETBYNAME		/**//* HAS_GETNETENT: *	This symbol, if defined, indicates that the getnetent() routine is *	available to look up network names in some data base or another. *//*#define HAS_GETNETENT		/**//* HAS_GETPROTOENT: *	This symbol, if defined, indicates that the getprotoent() routine is *	available to look up protocols in some data base or another. *//*#define HAS_GETPROTOENT		/**//* HAS_GETPROTOBYNAME: *	This symbol, if defined, indicates that the getprotobyname() *	routine is available to look up protocols by their name. *//* HAS_GETPROTOBYNUMBER: *	This symbol, if defined, indicates that the getprotobynumber() *	routine is available to look up protocols by their number. */#define HAS_GETPROTOBYNAME		/**/#define HAS_GETPROTOBYNUMBER		/**//* HAS_GETSERVENT: *	This symbol, if defined, indicates that the getservent() routine is *	available to look up network services in some data base or another. *//*#define HAS_GETSERVENT		/**//* HAS_GETSERVBYNAME: *	This symbol, if defined, indicates that the getservbyname() *	routine is available to look up services by their name. *//* HAS_GETSERVBYPORT: *	This symbol, if defined, indicates that the getservbyport() *	routine is available to look up services by their port. */#define HAS_GETSERVBYNAME		/**/#define HAS_GETSERVBYPORT		/**//* HAS_LONG_DOUBLE: *	This symbol will be defined if the C compiler supports long *	doubles. *//* LONG_DOUBLESIZE: *	This symbol contains the size of a long double, so that the  *	C preprocessor can make decisions based on it.  It is only *	defined if the system supports long doubles. */#define HAS_LONG_DOUBLE		/**/#ifdef HAS_LONG_DOUBLE#define LONG_DOUBLESIZE 10		/**/#endif/* HAS_LONG_LONG: *	This symbol will be defined if the C compiler supports *	long long. *//* LONGLONGSIZE: *	This symbol contains the size of a long long, so that the  *	C preprocessor can make decisions based on it.  It is only *	defined if the system supports long long. *//*#define HAS_LONG_LONG		/**/#ifdef HAS_LONG_LONG#define LONGLONGSIZE 8		/**/#endif/* HAS_SETGROUPS: *	This symbol, if defined, indicates that the setgroups() routine is *	available to set the list of process groups.  If unavailable, multiple *	groups are probably not supported. *//*#define HAS_SETGROUPS		/**//* HAS_SETHOSTENT: *	This symbol, if defined, indicates that the sethostent() routine is *	available. *//*#define HAS_SETHOSTENT		/**//* HAS_SETNETENT: *	This symbol, if defined, indicates that the setnetent() routine is *	available. *//*#define HAS_SETNETENT		/**//* HAS_SETPROTOENT: *	This symbol, if defined, indicates that the setprotoent() routine is *	available. *//*#define HAS_SETPROTOENT		/**//* HAS_SETSERVENT: *	This symbol, if defined, indicates that the setservent() routine is *	available. *//*#define HAS_SETSERVENT		/**//* HAS_SETVBUF: *	This symbol, if defined, indicates that the setvbuf routine is *	available to change buffering on an open stdio stream. *	to a line-buffered mode. */#define HAS_SETVBUF		/**//* HAS_SOCKET: *	This symbol, if defined, indicates that the BSD socket interface is *	supported. *//* HAS_SOCKETPAIR: *	This symbol, if defined, indicates that the BSD socketpair() call is *	supported. */#define HAS_SOCKET		/**//*#define HAS_SOCKETPAIR	/**//* HAS_UNION_SEMUN: *	This symbol, if defined, indicates that the union semun is *	defined by including <sys/sem.h>.  If not, the user code *	probably needs to define it as: *	union semun { *	    int val; *	    struct semid_ds *buf; *	    unsigned short *array; *	} *//* USE_SEMCTL_SEMUN: *	This symbol, if defined, indicates that union semun is *	used for semctl IPC_STAT. *//* USE_SEMCTL_SEMID_DS: *	This symbol, if defined, indicates that struct semid_ds * is *	used for semctl IPC_STAT. */#define HAS_UNION_SEMUN	/**//*#define USE_SEMCTL_SEMUN	/**//*#define USE_SEMCTL_SEMID_DS	/**//* Signal_t: *	This symbol's value is either "void" or "int", corresponding to the *	appropriate return type of a signal handler.  Thus, you can declare *	a signal handler using "Signal_t (*handler)()", and define the *	handler using "Signal_t handler(sig)". */#define Signal_t void	/* Signal handler's return type *//* Groups_t: *	This symbol holds the type used for the second argument to *	getgroups() and setgropus().  Usually, this is the same as

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -