forked from boostorg/config
94
include/boost/config/platform/symbian.hpp
Normal file
94
include/boost/config/platform/symbian.hpp
Normal file
@ -0,0 +1,94 @@
|
|||||||
|
// (C) Copyright Yuriy Krasnoschek 2009.
|
||||||
|
// (C) Copyright John Maddock 2001 - 2003.
|
||||||
|
// (C) Copyright Jens Maurer 2001 - 2003.
|
||||||
|
// Use, modification and distribution are subject to the
|
||||||
|
// Boost Software License, Version 1.0. (See accompanying file
|
||||||
|
// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
|
||||||
|
|
||||||
|
// See http://www.boost.org for most recent version.
|
||||||
|
|
||||||
|
// symbian specific config options:
|
||||||
|
|
||||||
|
|
||||||
|
#define BOOST_PLATFORM "Symbian"
|
||||||
|
#define BOOST_SYMBIAN 1
|
||||||
|
|
||||||
|
|
||||||
|
#if defined(__S60_3X__)
|
||||||
|
// Open C / C++ plugin was introdused in this SDK, earlier versions don't have CRT / STL
|
||||||
|
# define BOOST_S60_3rd_EDITION_FP2_OR_LATER_SDK
|
||||||
|
// make sure we have __GLIBC_PREREQ if available at all
|
||||||
|
# include <cstdlib>
|
||||||
|
// boilerplate code:
|
||||||
|
# define BOOST_HAS_UNISTD_H
|
||||||
|
# include <boost/config/posix_features.hpp>
|
||||||
|
// S60 SDK defines _POSIX_VERSION as POSIX.1
|
||||||
|
# ifndef BOOST_HAS_STDINT_H
|
||||||
|
# define BOOST_HAS_STDINT_H
|
||||||
|
# endif
|
||||||
|
# ifndef BOOST_HAS_GETTIMEOFDAY
|
||||||
|
# define BOOST_HAS_GETTIMEOFDAY
|
||||||
|
# endif
|
||||||
|
# ifndef BOOST_HAS_DIRENT_H
|
||||||
|
# define BOOST_HAS_DIRENT_H
|
||||||
|
# endif
|
||||||
|
# ifndef BOOST_HAS_SIGACTION
|
||||||
|
# define BOOST_HAS_SIGACTION
|
||||||
|
# endif
|
||||||
|
# ifndef BOOST_HAS_PTHREADS
|
||||||
|
# define BOOST_HAS_PTHREADS
|
||||||
|
# endif
|
||||||
|
# ifndef BOOST_HAS_NANOSLEEP
|
||||||
|
# define BOOST_HAS_NANOSLEEP
|
||||||
|
# endif
|
||||||
|
# ifndef BOOST_HAS_SCHED_YIELD
|
||||||
|
# define BOOST_HAS_SCHED_YIELD
|
||||||
|
# endif
|
||||||
|
# ifndef BOOST_HAS_PTHREAD_MUTEXATTR_SETTYPE
|
||||||
|
# define BOOST_HAS_PTHREAD_MUTEXATTR_SETTYPE
|
||||||
|
# endif
|
||||||
|
# ifndef BOOST_HAS_LOG1P
|
||||||
|
# define BOOST_HAS_LOG1P
|
||||||
|
# endif
|
||||||
|
# ifndef BOOST_HAS_EXPM1
|
||||||
|
# define BOOST_HAS_EXPM1
|
||||||
|
# endif
|
||||||
|
# ifndef BOOST_POSIX_API
|
||||||
|
# define BOOST_POSIX_API
|
||||||
|
# endif
|
||||||
|
// endianess support
|
||||||
|
# include <sys/endian.h>
|
||||||
|
// Symbian SDK provides _BYTE_ORDER instead of __BYTE_ORDER
|
||||||
|
# ifndef __LITTLE_ENDIAN
|
||||||
|
# ifdef _LITTLE_ENDIAN
|
||||||
|
# define __LITTLE_ENDIAN _LITTLE_ENDIAN
|
||||||
|
# else
|
||||||
|
# define __LITTLE_ENDIAN 1234
|
||||||
|
# endif
|
||||||
|
# endif
|
||||||
|
# ifndef __BIG_ENDIAN
|
||||||
|
# ifdef _BIG_ENDIAN
|
||||||
|
# define __BIG_ENDIAN _BIG_ENDIAN
|
||||||
|
# else
|
||||||
|
# define __BIG_ENDIAN 4321
|
||||||
|
# endif
|
||||||
|
# endif
|
||||||
|
# ifndef __BYTE_ORDER
|
||||||
|
# define __BYTE_ORDER __LITTLE_ENDIAN // Symbian is LE
|
||||||
|
# endif
|
||||||
|
// Known limitations
|
||||||
|
# define BOOST_ASIO_DISABLE_SERIAL_PORT
|
||||||
|
# define BOOST_DATE_TIME_NO_LOCALE
|
||||||
|
# define BOOST_NO_STD_WSTRING
|
||||||
|
# define BOOST_EXCEPTION_DISABLE
|
||||||
|
# define BOOST_NO_EXCEPTIONS
|
||||||
|
|
||||||
|
#else // TODO: More platform support e.g. UIQ
|
||||||
|
# error "Unsuppoted Symbian SDK"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if defined(__WINSCW__) && !defined(BOOST_DISABLE_WIN32)
|
||||||
|
# define BOOST_DISABLE_WIN32 // winscw defines WIN32 macro
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
@ -65,6 +65,10 @@
|
|||||||
// vxWorks:
|
// vxWorks:
|
||||||
# define BOOST_PLATFORM_CONFIG "boost/config/platform/vxworks.hpp"
|
# define BOOST_PLATFORM_CONFIG "boost/config/platform/vxworks.hpp"
|
||||||
|
|
||||||
|
#elif defined(__SYMBIAN32__)
|
||||||
|
// Symbian:
|
||||||
|
# define BOOST_PLATFORM_CONFIG "boost/config/platform/symbian.hpp"
|
||||||
|
|
||||||
#else
|
#else
|
||||||
|
|
||||||
# if defined(unix) \
|
# if defined(unix) \
|
||||||
|
Reference in New Issue
Block a user