123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207 |
- // STLport configuration file
- // It is internal STLport header - DO NOT include it directly
- #define _STLP_COMPILER "Comeau"
- #include <stl/config/_native_headers.h>
- #define _STLP_UINT32_T unsigned int
- #define _STLP_HAS_NO_NEW_C_HEADERS
- // #define _STLP_VENDOR_GLOBAL_EXCEPT_STD
- #define _STLP_LONG_LONG long long
- //
- // ADDITIONS FOR COMEAU C++, made by Comeau Computing.
- // We can be reached through comeau@comeaucomputing.com
- // You shouldn't need to change anything below here for Comeau C++.
- // If you do, please tell us at comeau@comeaucomputing.com
- //
- // Changes made here, AND THROUGH ALL FILES, based upon the __COMO__ macro
- // (and SIMILAR NAMES INVOLVING COMO).... no doubt some of this will
- // change as SGI integrates the changes into their code base since
- // some changes are not really Comeau C++ specific, but required to
- // make the SGI code compliant with Standard C++).
- //
- // Testing was done with Comeau C++ 4.2.44 and 4.2.45.2. Changes were made for
- // both Comeau relaxed mode and Comeau strict mode, especially for end user code
- // (that is, some of the .cxx files cannot compile in strict mode, because they
- // contain extensions to Standard C++, however their object code forms can
- // be used once compiled in relaxed mode, even if the end user code uses
- // strict mode).
- //
- // These changes may also work for some earlier versions of Comeau C++,
- // though we have not tested them.
- //
- // Actual mods made under RedHat 6.1 LINUX, should be ok with SuSE too and
- // other LINUX's, and older Caldera LINUX, Solaris/SPARC, SunOS, SCO UNIX,
- // and NetBSD. Other platforms may be added. Comeau will also perform
- // custom ports for you.
- //
- // Check libcomo details at http://www.comeaucomputing.com/libcomo and
- // http://www.comeaucomputing.com
- //
- // History of Comeau changes (this is rough, as work was often going on in parallel):
- // BETA1 July 14, 2000, Initial port for RedHat 6.1 INTEL/ELF
- // BETA2 Aug 4, 2000, Stronger RedHat support
- // Support for Comeau strict mode for end user code
- // BETA3 Aug 22, 2000, Support for other LINUX/INTEL/ELF's, including older ones
- // BETA4 Sept 2, 2000, Initial support for SCO UNIX + other UNIX x86 SVR3's
- // Stronger support for end user Comeau strict mode
- // BETA5 Oct 5, 2000, Initial support for Solaris/SPARC
- // More SCO support (though still incomplete)
- // BETA6 Feb 5, 2001, Minor mods to accomodate Comeau C++ 4.2.45.1
- // BETA7 Mar 13, 2001, Verified with Comeau C++ 4.2.45.2
- // Minor NetBSD support
- // BETA8 Apr 1. 2001, Initial support for SunOS/SPARC
- // BETA9 Apr 7, 2001, Stronger SCO support + other UNIX x86 SVR3's
- // Mods for an fpos_t problem for some LINUXes
- // Mods since Destroy did not work in strict mode
- // BETA10 Apr 12. 2001, Stronger NetBSD support
- //
- // PLANNED:
- // BETAx TBA TBA, 2001, NetBSD, UNIXWARE, and Windows support expected
- //
- #ifdef __linux__
- # define _STLP_NO_NATIVE_MBSTATE_T 1
- # define _STLP_NO_NATIVE_WIDE_FUNCTIONS 1
- # define _STLP_NO_NATIVE_WIDE_STREAMS 1
- # define _STLP_NO_LONG_DOUBLE 1
- // Comeau C++ under LINUX/INTEL/ELF
- // Preprocess away "long long" routines for now, even in relaxed mode
- # define __wcstoull_internal_defined 1
- # define __wcstoll_internal_defined 1
- #endif /* __COMO__ under __linux__ */
- #ifdef __USING_x86SVR3x_WITH_COMO /* SCO et al */
- /* UNIX 386+ SVR3 mods made with __USING_x86SVR3x_WITH_COMO
- in other sources, not here */
- # define atan2l atan2
- # define cosl cos
- # define sinl sin
- # define sqrtl sqrt
- # include <math.h>
- inline long double expl(long double arg) { return exp(arg); }
- inline long double logl(long double arg) { return log(arg); }
- # define log10l log10
- # define sinhl sinh
- # define coshl cosh
- # define fabsl fabs
- namespace std {
- inline int min(int a, int b) { return a>b ? b : a; }
- }
- #endif
- #ifdef sun
- // Comeau C++ under Solaris/SPARC or SunOS
- #ifdef solarissparc
- #define __USING_SOLARIS_SPARC_WITH_COMO /* show this in the source when grep'ing for COMO */
- // Note comowchar.h for Solaris/SPARC wchar stuff
- #include <math.h>
- # define sinf sin
- # define sinl sin
- # define sinhf sinh
- # define sinhl sinh
- # define cosf cos
- # define cosl cos
- # define coshf cosh
- # define coshl cosh
- # define atan2l atan2
- # define atan2f atan2
- inline float logf(float arg) { return log(arg); }
- inline long double logl(long double arg) { return log(arg); }
- # define log10f log10
- # define log10l log10
- # define expf exp
- inline long double expl(long double arg) { return exp(arg); }
- # define sqrtf sqrt
- # define sqrtl sqrt
- # define fabsf fabs
- # define fabsl fabs
- #else
- #define __USING_SUNOS_WITH_COMO
- #define __unix 1
- #define __EXTENSIONS__ /* This might create undue noise somewhere */
- #endif
- #endif /* sun */
- #if defined(__NetBSD__)
- // From non-como #ifdef __GNUC__ above
- #undef _STLP_NO_FUNCTION_PTR_IN_CLASS_TEMPLATE
- #define __unix 1
- #include <sys/cdefs.h>
- // Some joker #define'd __END_DECLS as };
- #undef __END_DECLS
- #define __END_DECLS }
- // <sys/stat.h> prob
- #include <sys/cdefs.h>
- #undef __RENAME
- #define __RENAME(x)
- #define wchar_t __COMO_WCHAR_T
- #include <stddef.h>
- #undef wchar_t
- #include <math.h>
- # ifdef BORIS_DISABLED
- # define atan2l atan2
- # define cosl cos
- # define sinl sin
- # define sqrtl sqrt
- inline long double expl(long double arg) { return exp(arg); }
- inline long double logl(long double arg) { return log(arg); }
- # define log10l log10
- # define sinhl sinh
- # define coshl cosh
- # define fabsl fabs
- # endif
- #endif /* __NetBSD__ under __COMO__ */
- // Shouldn't need to change anything below here for Comeau C++
- // If so, tell us at comeau@comeaucomputing.com
- #define _STLP_NO_DRAND48
- #define _STLP_PARTIAL_SPECIALIZATION_SYNTAX
- #define _STLP_NO_USING_CLAUSE_IN_CLASS
- #if __COMO_VERSION__ < 4300
- #if __COMO_VERSION__ >= 4245
- #define _STLP_NO_EXCEPTION_HEADER /**/
- // Is this needed?
- # include <stdexcept.stdh>
- #endif
- #define _STLP_NO_BAD_ALLOC /**/
- #define _STLP_USE_AUTO_PTR_CONVERSIONS /**/
- #endif
- // this one is true only with MS
- # if defined (_MSC_VER)
- # define _STLP_WCHAR_T_IS_USHORT 1
- # if _MSC_VER <= 1200
- # define _STLP_VENDOR_GLOBAL_CSTD
- # endif
- # if _MSC_VER < 1100
- # define _STLP_NO_BAD_ALLOC 1
- # define _STLP_NO_EXCEPTION_HEADER 1
- # define _STLP_NO_NEW_NEW_HEADER 1
- # define _STLP_USE_NO_IOSTREAMS 1
- # endif
- # endif
- // # define __EDG_SWITCHES
|