williamr@4: /* williamr@4: * Copyright (c) 1999 williamr@4: * Boris Fomitchev williamr@4: * williamr@4: * This material is provided "as is", with absolutely no warranty expressed williamr@4: * or implied. Any use is at your own risk. williamr@4: * williamr@4: * Permission to use or copy this software for any purpose is hereby granted williamr@4: * without fee, provided the above notices are retained on all copies. williamr@4: * Permission to modify the code and to distribute modified code is granted, williamr@4: * provided the above notices are retained, and a notice that the code was williamr@4: * modified is included with the above copyright notice. williamr@4: * williamr@4: */ williamr@4: williamr@4: #if !defined (_STLP_OUTERMOST_HEADER_ID) williamr@4: # define _STLP_OUTERMOST_HEADER_ID 0x205 williamr@4: # include williamr@4: #elif (_STLP_OUTERMOST_HEADER_ID == 0x205) && !defined (_STLP_DONT_POP_HEADER_ID) williamr@4: # define _STLP_DONT_POP_HEADER_ID williamr@4: #endif williamr@4: williamr@4: #ifdef _STLP_WCE williamr@4: // only show message when directly including this file in a non-library build williamr@4: # if !defined(__BUILDING_STLPORT) && (_STLP_OUTERMOST_HEADER_ID == 0x205) williamr@4: # pragma message("eMbedded Visual C++ 3 and .NET don't have a errno.h header; STLport won't include native errno.h here") williamr@4: # endif williamr@4: #else williamr@4: # ifndef errno williamr@4: /* We define the following macro first to guaranty the header reentrancy: */ williamr@4: # define _STLP_NATIVE_ERRNO_H_INCLUDED williamr@4: # include _STLP_NATIVE_C_HEADER(errno.h) williamr@4: # endif /* errno */ williamr@4: williamr@4: # if !defined (_STLP_NATIVE_ERRNO_H_INCLUDED) williamr@4: /* If errno has been defined before inclusion of native errno.h including it from STLport errno.h williamr@4: * becomes impossible because if: williamr@4: * #define errno foo williamr@4: * then williamr@4: * #include _STLP_NATIVE_C_HEADER(errno.h) williamr@4: * becomes: williamr@4: * #include _STLP_NATIVE_C_HEADER(foo.h) williamr@4: * williamr@4: * To fix this problem you have to find where this definition comes from and include errno.h before it. williamr@4: */ williamr@4: # error errno has been defined before inclusion of errno.h header. williamr@4: # endif williamr@4: williamr@4: # ifdef __cplusplus williamr@4: # ifndef errno /* errno still not defined */ williamr@4: _STLP_BEGIN_NAMESPACE williamr@4: # if !defined (__BORLANDC__) williamr@4: using ::errno; williamr@4: # else williamr@4: using _STLP_VENDOR_CSTD::errno; williamr@4: # endif williamr@4: _STLP_END_NAMESPACE williamr@4: # endif /* errno */ williamr@4: # endif /* __cplusplus */ williamr@4: williamr@4: #endif williamr@4: williamr@4: #if (_STLP_OUTERMOST_HEADER_ID == 0x205) williamr@4: # if ! defined (_STLP_DONT_POP_HEADER_ID) williamr@4: # include williamr@4: # undef _STLP_OUTERMOST_HEADER_ID williamr@4: # endif williamr@4: # undef _STLP_DONT_POP_HEADER_ID williamr@4: #endif williamr@4: williamr@4: /* Local Variables: williamr@4: * mode:C++ williamr@4: * End: williamr@4: */