_android.h revision 9720d5f59b9c1f5d1b9ecbc9173dbcb71bd557be
19720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#ifndef __stl_config__android_h
29720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#define __stl_config__android_h
39720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block
49720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#define _STLP_PLATFORM "Android"
59720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block
69720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block// The Android C library is mostly glibc-like
79720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#define _STLP_USE_GLIBC 1
89720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block
99720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block// ...and Unix-like.
109720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#define _STLP_UNIX 1
119720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block
129720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block// Have pthreads support.
139720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#define _PTHREADS
149720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block
159720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block// Don't have native <cplusplus> headers
169720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#define _STLP_HAS_NO_NEW_C_HEADERS 1
179720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block
189720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block// Don't use wchar.h etc
199720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#define _STLP_NO_WCHAR_T 1
209720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block
219720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block// Don't have (working) native wide character support.
229720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#define _STLP_NO_NATIVE_WIDE_FUNCTIONS 1
239720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block
249720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block// Don't use mbstate_t, define our own.
259720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#define _STLP_NO_NATIVE_MBSTATE_T 1
269720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block
279720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block// No (proper) wide stream support in Android
289720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#define _STLP_NO_NATIVE_WIDE_STREAMS 1
299720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block
309720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block// C library is in the global namespace.
319720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#define _STLP_VENDOR_GLOBAL_CSTD 1
329720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block
339720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block// Don't have underlying local support.
349720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#undef _STLP_REAL_LOCALE_IMPLEMENTED
359720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block
369720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block// No pthread_spinlock_t in Android
379720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#define _STLP_DONT_USE_PTHREAD_SPINLOCK 1
389720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block
399720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block// Do not enable thread support
409720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#define _NOTHREADS 1
419720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block
429720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block// Little endian platform.
439720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#define _STLP_LITTLE_ENDIAN 1
449720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block
459720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block// No <exception> headers
469720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#define _STLP_NO_EXCEPTION_HEADER 1
479720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block
489720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block// No throwing exceptions
499720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#define _STLP_NO_EXCEPTIONS 1
509720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block
519720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block// Disable all iostreams
529720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#define _STLP_NO_IOSTREAMS 1
539720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block
549720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block// No need to define our own namespace
559720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#define _STLP_NO_OWN_NAMESPACE 1
569720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block
579720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block// Need this to define STLport's own bad_alloc class (which won't be
589720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block// thrown in any case)
599720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#define _STLP_NEW_DONT_THROW_BAD_ALLOC 1
609720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block
619720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block// Use __new_alloc instead of __node_alloc, so we don't need static functions.
629720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#define _STLP_USE_SIMPLE_NODE_ALLOC 1
639720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block
649720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block// Don't use extern versions of range errors, so we don't need to
659720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block// compile as a library.
669720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#define _STLP_USE_NO_EXTERN_RANGE_ERRORS 1
679720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block
689720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block// The system math library doesn't have long double variants, e.g
699720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block// sinl, cosl, etc
709720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#define _STLP_NO_VENDOR_MATH_L 1
719720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block
729720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block// Define how to include our native headers.
739720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#define _STLP_NATIVE_HEADER(header) <libstdc++/include/header>
749720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#define _STLP_NATIVE_C_HEADER(header) <../include/header>
759720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#define _STLP_NATIVE_CPP_C_HEADER(header) <libstdc++/include/header>
769720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#define _STLP_NATIVE_OLD_STREAMS_HEADER(header) <libstdc++/include/header>
779720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#define _STLP_NATIVE_CPP_RUNTIME_HEADER(header) <libstdc++/include/header>
789720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block
799720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#endif /* __stl_config__android_h */
80