1 | // (C) Copyright Yuriy Krasnoschek 2009. |
---|
2 | // (C) Copyright John Maddock 2001 - 2003. |
---|
3 | // (C) Copyright Jens Maurer 2001 - 2003. |
---|
4 | // Use, modification and distribution are subject to the |
---|
5 | // Boost Software License, Version 1.0. (See accompanying file |
---|
6 | // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) |
---|
7 | |
---|
8 | // See http://www.boost.org for most recent version. |
---|
9 | |
---|
10 | // symbian specific config options: |
---|
11 | |
---|
12 | |
---|
13 | #define BOOST_PLATFORM "Symbian" |
---|
14 | #define BOOST_SYMBIAN 1 |
---|
15 | |
---|
16 | |
---|
17 | #if defined(__S60_3X__) |
---|
18 | // Open C / C++ plugin was introdused in this SDK, earlier versions don't have CRT / STL |
---|
19 | # define BOOST_S60_3rd_EDITION_FP2_OR_LATER_SDK |
---|
20 | // make sure we have __GLIBC_PREREQ if available at all |
---|
21 | # include <cstdlib> |
---|
22 | // boilerplate code: |
---|
23 | # define BOOST_HAS_UNISTD_H |
---|
24 | # include <boost/config/posix_features.hpp> |
---|
25 | // S60 SDK defines _POSIX_VERSION as POSIX.1 |
---|
26 | # ifndef BOOST_HAS_STDINT_H |
---|
27 | # define BOOST_HAS_STDINT_H |
---|
28 | # endif |
---|
29 | # ifndef BOOST_HAS_GETTIMEOFDAY |
---|
30 | # define BOOST_HAS_GETTIMEOFDAY |
---|
31 | # endif |
---|
32 | # ifndef BOOST_HAS_DIRENT_H |
---|
33 | # define BOOST_HAS_DIRENT_H |
---|
34 | # endif |
---|
35 | # ifndef BOOST_HAS_SIGACTION |
---|
36 | # define BOOST_HAS_SIGACTION |
---|
37 | # endif |
---|
38 | # ifndef BOOST_HAS_PTHREADS |
---|
39 | # define BOOST_HAS_PTHREADS |
---|
40 | # endif |
---|
41 | # ifndef BOOST_HAS_NANOSLEEP |
---|
42 | # define BOOST_HAS_NANOSLEEP |
---|
43 | # endif |
---|
44 | # ifndef BOOST_HAS_SCHED_YIELD |
---|
45 | # define BOOST_HAS_SCHED_YIELD |
---|
46 | # endif |
---|
47 | # ifndef BOOST_HAS_PTHREAD_MUTEXATTR_SETTYPE |
---|
48 | # define BOOST_HAS_PTHREAD_MUTEXATTR_SETTYPE |
---|
49 | # endif |
---|
50 | # ifndef BOOST_HAS_LOG1P |
---|
51 | # define BOOST_HAS_LOG1P |
---|
52 | # endif |
---|
53 | # ifndef BOOST_HAS_EXPM1 |
---|
54 | # define BOOST_HAS_EXPM1 |
---|
55 | # endif |
---|
56 | # ifndef BOOST_POSIX_API |
---|
57 | # define BOOST_POSIX_API |
---|
58 | # endif |
---|
59 | // endianess support |
---|
60 | # include <sys/endian.h> |
---|
61 | // Symbian SDK provides _BYTE_ORDER instead of __BYTE_ORDER |
---|
62 | # ifndef __LITTLE_ENDIAN |
---|
63 | # ifdef _LITTLE_ENDIAN |
---|
64 | # define __LITTLE_ENDIAN _LITTLE_ENDIAN |
---|
65 | # else |
---|
66 | # define __LITTLE_ENDIAN 1234 |
---|
67 | # endif |
---|
68 | # endif |
---|
69 | # ifndef __BIG_ENDIAN |
---|
70 | # ifdef _BIG_ENDIAN |
---|
71 | # define __BIG_ENDIAN _BIG_ENDIAN |
---|
72 | # else |
---|
73 | # define __BIG_ENDIAN 4321 |
---|
74 | # endif |
---|
75 | # endif |
---|
76 | # ifndef __BYTE_ORDER |
---|
77 | # define __BYTE_ORDER __LITTLE_ENDIAN // Symbian is LE |
---|
78 | # endif |
---|
79 | // Known limitations |
---|
80 | # define BOOST_ASIO_DISABLE_SERIAL_PORT |
---|
81 | # define BOOST_DATE_TIME_NO_LOCALE |
---|
82 | # define BOOST_NO_STD_WSTRING |
---|
83 | # define BOOST_EXCEPTION_DISABLE |
---|
84 | # define BOOST_NO_EXCEPTIONS |
---|
85 | |
---|
86 | #else // TODO: More platform support e.g. UIQ |
---|
87 | # error "Unsuppoted Symbian SDK" |
---|
88 | #endif |
---|
89 | |
---|
90 | #if defined(__WINSCW__) && !defined(BOOST_DISABLE_WIN32) |
---|
91 | # define BOOST_DISABLE_WIN32 // winscw defines WIN32 macro |
---|
92 | #endif |
---|
93 | |
---|
94 | |
---|