1
0
This repository has been archived on 2025-03-06. You can view files and clone it, but cannot push or open issues or pull requests.
Jip J. Dekker 3e72b0e857 Squashed 'software/gecode_on_record/' content from commit 37ed9bda4
git-subtree-dir: software/gecode_on_record
git-subtree-split: 37ed9bda495ea87e63217c19a374b5a93bb0078e
2021-06-16 14:03:52 +10:00

98 lines
2.8 KiB
C++

// (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 GECODE_BOOST_PLATFORM "Symbian"
#define GECODE_BOOST_SYMBIAN 1
#if defined(__S60_3X__)
// Open C / C++ plugin was introdused in this SDK, earlier versions don't have CRT / STL
# define GECODE_BOOST_S60_3rd_EDITION_FP2_OR_LATER_SDK
// make sure we have __GLIBC_PREREQ if available at all
#ifdef __cplusplus
#include <cstdlib>
#else
#include <stdlib.h>
#endif// boilerplate code:
# define GECODE_BOOST_HAS_UNISTD_H
# include <gecode/third-party/boost/config/posix_features.hpp>
// S60 SDK defines _POSIX_VERSION as POSIX.1
# ifndef GECODE_BOOST_HAS_STDINT_H
# define GECODE_BOOST_HAS_STDINT_H
# endif
# ifndef GECODE_BOOST_HAS_GETTIMEOFDAY
# define GECODE_BOOST_HAS_GETTIMEOFDAY
# endif
# ifndef GECODE_BOOST_HAS_DIRENT_H
# define GECODE_BOOST_HAS_DIRENT_H
# endif
# ifndef GECODE_BOOST_HAS_SIGACTION
# define GECODE_BOOST_HAS_SIGACTION
# endif
# ifndef GECODE_BOOST_HAS_PTHREADS
# define GECODE_BOOST_HAS_PTHREADS
# endif
# ifndef GECODE_BOOST_HAS_NANOSLEEP
# define GECODE_BOOST_HAS_NANOSLEEP
# endif
# ifndef GECODE_BOOST_HAS_SCHED_YIELD
# define GECODE_BOOST_HAS_SCHED_YIELD
# endif
# ifndef GECODE_BOOST_HAS_PTHREAD_MUTEXATTR_SETTYPE
# define GECODE_BOOST_HAS_PTHREAD_MUTEXATTR_SETTYPE
# endif
# ifndef GECODE_BOOST_HAS_LOG1P
# define GECODE_BOOST_HAS_LOG1P
# endif
# ifndef GECODE_BOOST_HAS_EXPM1
# define GECODE_BOOST_HAS_EXPM1
# endif
# ifndef GECODE_BOOST_POSIX_API
# define GECODE_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 GECODE_BOOST_ASIO_DISABLE_SERIAL_PORT
# define GECODE_BOOST_DATE_TIME_NO_LOCALE
# define GECODE_BOOST_NO_STD_WSTRING
# define GECODE_BOOST_EXCEPTION_DISABLE
# define GECODE_BOOST_NO_EXCEPTIONS
#else // TODO: More platform support e.g. UIQ
# error "Unsuppoted Symbian SDK"
#endif
#if defined(__WINSCW__) && !defined(GECODE_BOOST_DISABLE_WIN32)
# define GECODE_BOOST_DISABLE_WIN32 // winscw defines WIN32 macro
#endif