1 /* 2 * Copyright (c) 1999 3 * Boris Fomitchev 4 * 5 * This material is provided "as is", with absolutely no warranty expressed 6 * or implied. Any use is at your own risk. 7 * 8 * Permission to use or copy this software for any purpose is hereby granted 9 * without fee, provided the above notices are retained on all copies. 10 * Permission to modify the code and to distribute modified code is granted, 11 * provided the above notices are retained, and a notice that the code was 12 * modified is included with the above copyright notice. 13 * 14 */ 15 16 #if !defined (_STLP_OUTERMOST_HEADER_ID) 17 # define _STLP_OUTERMOST_HEADER_ID 0x205 18 # include <stl/_cprolog.h> 19 #elif (_STLP_OUTERMOST_HEADER_ID == 0x205) && !defined (_STLP_DONT_POP_HEADER_ID) 20 # define _STLP_DONT_POP_HEADER_ID 21 #endif 22 23 #ifdef _STLP_WCE 24 /* only show message when directly including this file in a non-library build */ 25 # if !defined(__BUILDING_STLPORT) && (_STLP_OUTERMOST_HEADER_ID == 0x205) 26 # pragma message("eMbedded Visual C++ 3 and .NET don't have a errno.h header; STLport won't include native errno.h here") 27 # endif 28 #else 29 # ifndef errno 30 /* We define the following macro first to guaranty the header reentrancy: */ 31 # define _STLP_NATIVE_ERRNO_H_INCLUDED 32 # if defined (_STLP_HAS_INCLUDE_NEXT) 33 # include_next <errno.h> 34 # else 35 # include _STLP_NATIVE_C_HEADER(errno.h) 36 # endif 37 # if defined (__BORLANDC__) && (__BORLANDC__ >= 0x590) && defined (__cplusplus) 38 _STLP_BEGIN_NAMESPACE 39 using _STLP_VENDOR_CSTD::__errno; 40 _STLP_END_NAMESPACE 41 # endif 42 # endif /* errno */ 43 44 # if !defined (_STLP_NATIVE_ERRNO_H_INCLUDED) 45 /* If errno has been defined before inclusion of native errno.h including it from STLport errno.h 46 * becomes impossible because if: 47 * #define errno foo 48 * then 49 * #include _STLP_NATIVE_C_HEADER(errno.h) 50 * becomes: 51 * #include _STLP_NATIVE_C_HEADER(foo.h) 52 * 53 * To fix this problem you have to find where this definition comes from and include errno.h before it. 54 */ 55 # define errno foo 56 # error errno has been defined before inclusion of errno.h header. 57 # endif 58 #endif 59 60 #if (_STLP_OUTERMOST_HEADER_ID == 0x205) 61 # if ! defined (_STLP_DONT_POP_HEADER_ID) 62 # include <stl/_epilog.h> 63 # undef _STLP_OUTERMOST_HEADER_ID 64 # endif 65 # undef _STLP_DONT_POP_HEADER_ID 66 #endif 67 68 /* Local Variables: 69 * mode: C 70 * End: 71 */ 72