+++ /dev/null
-/* $NetBSD: featuretest.h,v 1.8 2005/12/11 12:25:20 christos Exp $ */\r
-\r
-/*\r
- * Written by Klaus Klein <kleink@NetBSD.org>, February 2, 1998.\r
- * Public domain.\r
- *\r
- * NOTE: Do not protect this header against multiple inclusion. Doing\r
- * so can have subtle side-effects due to header file inclusion order\r
- * and testing of e.g. _POSIX_SOURCE vs. _POSIX_C_SOURCE. Instead,\r
- * protect each CPP macro that we want to supply.\r
- */\r
-\r
-/*\r
- * Feature-test macros are defined by several standards, and allow an\r
- * application to specify what symbols they want the system headers to\r
- * expose, and hence what standard they want them to conform to.\r
- * There are two classes of feature-test macros. The first class\r
- * specify complete standards, and if one of these is defined, header\r
- * files will try to conform to the relevant standard. They are:\r
- *\r
- * ANSI macros:\r
- * _ANSI_SOURCE ANSI C89\r
- *\r
- * POSIX macros:\r
- * _POSIX_SOURCE == 1 IEEE Std 1003.1 (version?)\r
- * _POSIX_C_SOURCE == 1 IEEE Std 1003.1-1990\r
- * _POSIX_C_SOURCE == 2 IEEE Std 1003.2-1992\r
- * _POSIX_C_SOURCE == 199309L IEEE Std 1003.1b-1993\r
- * _POSIX_C_SOURCE == 199506L ISO/IEC 9945-1:1996\r
- * _POSIX_C_SOURCE == 200112L IEEE Std 1003.1-2001\r
- *\r
- * X/Open macros:\r
- * _XOPEN_SOURCE System Interfaces and Headers, Issue 4, Ver 2\r
- * _XOPEN_SOURCE_EXTENDED == 1 XSH4.2 UNIX extensions\r
- * _XOPEN_SOURCE == 500 System Interfaces and Headers, Issue 5\r
- * _XOPEN_SOURCE == 520 Networking Services (XNS), Issue 5.2\r
- * _XOPEN_SOURCE == 600 IEEE Std 1003.1-2001, XSI option\r
- *\r
- * NetBSD macros:\r
- * _NETBSD_SOURCE == 1 Make all NetBSD features available.\r
- *\r
- * If more than one of these "major" feature-test macros is defined,\r
- * then the set of facilities provided (and namespace used) is the\r
- * union of that specified by the relevant standards, and in case of\r
- * conflict, the earlier standard in the above list has precedence (so\r
- * if both _POSIX_C_SOURCE and _NETBSD_SOURCE are defined, the version\r
- * of rename() that's used is the POSIX one). If none of the "major"\r
- * feature-test macros is defined, _NETBSD_SOURCE is assumed.\r
- *\r
- * There are also "minor" feature-test macros, which enable extra\r
- * functionality in addition to some base standard. They should be\r
- * defined along with one of the "major" macros. The "minor" macros\r
- * are:\r
- *\r
- * _REENTRANT\r
- * _ISOC99_SOURCE\r
- * _LARGEFILE_SOURCE Large File Support\r
- * <http://ftp.sas.com/standards/large.file/x_open.20Mar96.html>\r
- */\r
-\r
-#if defined(_POSIX_SOURCE) && !defined(_POSIX_C_SOURCE)\r
-#define _POSIX_C_SOURCE 1L\r
-#endif\r
-\r
-#if !defined(_ANSI_SOURCE) && !defined(_POSIX_C_SOURCE) && \\r
- !defined(_XOPEN_SOURCE) && !defined(_NETBSD_SOURCE)\r
-#define _NETBSD_SOURCE 1\r
-#endif\r
-\r
-#if ((_POSIX_C_SOURCE - 0) >= 199506L || (_XOPEN_SOURCE - 0) >= 500) && \\r
- !defined(_REENTRANT)\r
-#define _REENTRANT\r
-#endif\r