00001 /* 00002 Asking the system what it has (header) 00003 AUP2, Sec. 1.05.3 00004 00005 Copyright 2003 by Marc J. Rochkind. All rights reserved. 00006 May be copied only for purposes and under conditions described 00007 on the Web page www.basepath.com/aup/copyright.htm. 00008 00009 The Example Files are provided "as is," without any warranty; 00010 without even the implied warranty of merchantability or fitness 00011 for a particular purpose. The author and his publisher are not 00012 responsible for any damages, direct or incidental, resulting 00013 from the use or non-use of these Example Files. 00014 00015 The Example Files may contain defects, and some contain deliberate 00016 coding mistakes that were included for educational reasons. 00017 You are responsible for determining if and how the Example Files 00018 are to be used. 00019 00020 */ 00021 #ifndef _SUVREQ_H_ 00022 #define _SUVREQ_H_ 00023 /*[suvreq-h]*/ 00024 /* 00025 Header to request specific standard support. Before including it, one 00026 of the following symbols must be defined (1003.1-1988 isn't supported): 00027 00028 SUV_POSIX1990 for 1003.1-1990 00029 SUV_POSIX1993 for 1003.1b-1993 - real-time 00030 SUV_POSIX1996 for 1003.1-1996 00031 SUV_SUS1 for Single UNIX Specification, v. 1 (UNIX 95) 00032 SUV_SUS2 for Single UNIX Specification, v. 2 (UNIX 98) 00033 SUV_SUS3 for Single UNIX Specification, v. 3 00034 */ 00035 00036 #ifdef _POSIX_SOURCE /* tmp */ 00037 #error 00038 #endif 00039 00040 #if defined(SUV_POSIX1990) 00041 #define _POSIX_SOURCE 00042 #define _POSIX_C_SOURCE 1 00043 00044 #elif defined(SUV_POSIX1993) 00045 #define _POSIX_SOURCE 00046 #define _POSIX_C_SOURCE 199309L 00047 00048 #elif defined(SUV_POSIX1996) 00049 #define _POSIX_SOURCE 00050 #define _POSIX_C_SOURCE 199506L 00051 00052 #elif defined(SUV_SUS1) 00053 #define _POSIX_SOURCE 00054 #define _POSIX_C_SOURCE 2 00055 #define _XOPEN_SOURCE 00056 #define _XOPEN_SOURCE_EXTENDED 1 00057 00058 #elif defined(SUV_SUS2) 00059 #define _POSIX_SOURCE 00060 #define _POSIX_C_SOURCE 199506L 00061 #define _XOPEN_SOURCE 500 00062 #define _XOPEN_SOURCE_EXTENDED 1 00063 00064 #elif defined(SUV_SUS3) 00065 #define _POSIX_SOURCE 00066 #define _POSIX_C_SOURCE 200112L 00067 #define _XOPEN_SOURCE 600 00068 #define _XOPEN_SOURCE_EXTENDED 1 00069 #endif 00070 /*[]*/ 00071 00072 #endif /* _SUVREQ_H_ */