haiku: add platform support

This commit is contained in:
Jessica Hamilton
2014-11-16 13:28:57 +13:00
parent 122a60c77f
commit 6038d5fd7e
3 changed files with 40 additions and 1 deletions

View File

@ -0,0 +1,34 @@
// (C) Copyright John Maddock 2001.
// 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.
// Haiku specific config options:
#define BOOST_PLATFORM "Haiku"
#define BOOST_HAS_UNISTD_H
#define GLIBC_HAVE_LONG_LONG
#define BOOST_HAS_STDINT_H
#define BOOST_HASH_NO_EXTENSIONS
#ifndef BOOST_DISABLE_THREADS
# define BOOST_HAS_THREADS
#endif
#define BOOST_NO_CXX11_HDR_TYPE_TRAITS
#define BOOST_NO_CXX11_ATOMIC_SMART_PTR
#define BOOST_NO_CXX11_STATIC_ASSERT
#define BOOST_NO_CXX11_VARIADIC_MACROS
//
// thread API's not auto detected:
//
#define BOOST_HAS_SCHED_YIELD
#define BOOST_HAS_PTHREAD_YIELD
#define BOOST_HAS_GETTIMEOFDAY
// boilerplate code:
#include <boost/config/posix_features.hpp>

View File

@ -41,6 +41,10 @@
// win32: // win32:
# define BOOST_PLATFORM_CONFIG "boost/config/platform/win32.hpp" # define BOOST_PLATFORM_CONFIG "boost/config/platform/win32.hpp"
#elif defined(__HAIKU__)
// Haiku
# define BOOST_PLATFORM_CONFIG "boost/config/platform/haiku.hpp"
#elif defined(__BEOS__) #elif defined(__BEOS__)
// BeOS // BeOS
# define BOOST_PLATFORM_CONFIG "boost/config/platform/beos.hpp" # define BOOST_PLATFORM_CONFIG "boost/config/platform/beos.hpp"

View File

@ -36,7 +36,8 @@
|| defined(_GLIBCXX__PTHREADS) \ || defined(_GLIBCXX__PTHREADS) \
|| defined(_GLIBCXX_HAS_GTHREADS) \ || defined(_GLIBCXX_HAS_GTHREADS) \
|| defined(_WIN32) \ || defined(_WIN32) \
|| defined(_AIX) || defined(_AIX) \
|| defined(__HAIKU__)
// //
// If the std lib has thread support turned on, then turn it on in Boost // If the std lib has thread support turned on, then turn it on in Boost
// as well. We do this because some gcc-3.4 std lib headers define _REENTANT // as well. We do this because some gcc-3.4 std lib headers define _REENTANT