]> git.buserror.net Git - polintos/scott/priv.git/blobdiff - include/c++/stl/stl/config/_como.h
Add STLport 5.1.4
[polintos/scott/priv.git] / include / c++ / stl / stl / config / _como.h
diff --git a/include/c++/stl/stl/config/_como.h b/include/c++/stl/stl/config/_como.h
new file mode 100644 (file)
index 0000000..6076f88
--- /dev/null
@@ -0,0 +1,207 @@
+
+// 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
+
+