diff options
Diffstat (limited to 'boost/predef')
-rw-r--r-- | boost/predef/compiler/visualc.h | 21 | ||||
-rw-r--r-- | boost/predef/make.h | 2 | ||||
-rw-r--r-- | boost/predef/os.h | 1 | ||||
-rw-r--r-- | boost/predef/os/haiku.h | 47 | ||||
-rw-r--r-- | boost/predef/other/endian.h | 15 | ||||
-rw-r--r-- | boost/predef/version.h | 2 |
6 files changed, 76 insertions, 12 deletions
diff --git a/boost/predef/compiler/visualc.h b/boost/predef/compiler/visualc.h index 66d060107c..959d38f267 100644 --- a/boost/predef/compiler/visualc.h +++ b/boost/predef/compiler/visualc.h @@ -48,10 +48,23 @@ Version number available as major, minor, and patch. # error "Cannot determine build number from _MSC_FULL_VER" # endif # endif -# define BOOST_COMP_MSVC_DETECTION BOOST_VERSION_NUMBER(\ - _MSC_VER/100-6,\ - _MSC_VER%100,\ - BOOST_COMP_MSVC_BUILD) + /* + VS2014 was skipped in the release sequence for MS. Which + means that the compiler and VS product versions are no longer + in sync. Hence we need to use different formulas for + mapping from MSC version to VS product version. + */ +# if (_MSC_VER >= 1900) +# define BOOST_COMP_MSVC_DETECTION BOOST_VERSION_NUMBER(\ + _MSC_VER/100-5,\ + _MSC_VER%100,\ + BOOST_COMP_MSVC_BUILD) +# else +# define BOOST_COMP_MSVC_DETECTION BOOST_VERSION_NUMBER(\ + _MSC_VER/100-6,\ + _MSC_VER%100,\ + BOOST_COMP_MSVC_BUILD) +# endif #endif #ifdef BOOST_COMP_MSVC_DETECTION diff --git a/boost/predef/make.h b/boost/predef/make.h index d327906f2f..f8c28d19d7 100644 --- a/boost/predef/make.h +++ b/boost/predef/make.h @@ -42,6 +42,8 @@ Macros are: #define BOOST_PREDEF_MAKE_0X_VVRRP(V) BOOST_VERSION_NUMBER((V&0xFF000)>>12,(V&0xFF0)>>4,(V&0xF)) /*` `BOOST_PREDEF_MAKE_0X_VRRPP000(V)` */ #define BOOST_PREDEF_MAKE_0X_VRRPP000(V) BOOST_VERSION_NUMBER((V&0xF0000000)>>28,(V&0xFF00000)>>20,(V&0xFF000)>>12) +/*` `BOOST_PREDEF_MAKE_0X_VVRRPP(V)` */ +#define BOOST_PREDEF_MAKE_0X_VVRRPP(V) BOOST_VERSION_NUMBER((V&0xFF0000)>>16,(V&0xFF00)>>8,(V&0xFF)) /*` `BOOST_PREDEF_MAKE_10_VPPP(V)` */ #define BOOST_PREDEF_MAKE_10_VPPP(V) BOOST_VERSION_NUMBER(((V)/1000)%10,0,(V)%1000) /*` `BOOST_PREDEF_MAKE_10_VRP(V)` */ diff --git a/boost/predef/os.h b/boost/predef/os.h index 628eb4f444..abd66661eb 100644 --- a/boost/predef/os.h +++ b/boost/predef/os.h @@ -15,6 +15,7 @@ http://www.boost.org/LICENSE_1_0.txt) #include <boost/predef/os/beos.h> #include <boost/predef/os/bsd.h> #include <boost/predef/os/cygwin.h> +#include <boost/predef/os/haiku.h> #include <boost/predef/os/hpux.h> #include <boost/predef/os/irix.h> #include <boost/predef/os/ios.h> diff --git a/boost/predef/os/haiku.h b/boost/predef/os/haiku.h new file mode 100644 index 0000000000..4d741cf5ce --- /dev/null +++ b/boost/predef/os/haiku.h @@ -0,0 +1,47 @@ +/* +Copyright Jessica Hamilton 2014 +Copyright Rene Rivera 2014 +Distributed under 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) +*/ + +#ifndef BOOST_PREDEF_OS_HAIKU_H +#define BOOST_PREDEF_OS_HAIKU_H + +#include <boost/predef/version_number.h> +#include <boost/predef/make.h> + +/*` +[heading `BOOST_OS_HAIKU`] + +[@http://en.wikipedia.org/wiki/Haiku_(operating_system) Haiku] operating system. + +[table + [[__predef_symbol__] [__predef_version__]] + + [[`__HAIKU__`] [__predef_detection__]] + ] + */ + +#define BOOST_OS_HAIKU BOOST_VERSION_NUMBER_NOT_AVAILABLE + +#if !defined(BOOST_PREDEF_DETAIL_OS_DETECTED) && ( \ + defined(__HAIKU__) \ + ) +# undef BOOST_OS_HAIKU +# define BOOST_OS_HAIKU BOOST_VERSION_NUMBER_AVAILABLE +#endif + +#if BOOST_OS_HAIKU +# define BOOST_OS_HAIKU_AVAILABLE +# include <boost/predef/detail/os_detected.h> +#endif + +#define BOOST_OS_HAIKU_NAME "Haiku" + +#include <boost/predef/detail/test.h> +BOOST_PREDEF_DECLARE_TEST(BOOST_OS_HAIKU,BOOST_OS_HAIKU_NAME) + + +#endif diff --git a/boost/predef/other/endian.h b/boost/predef/other/endian.h index fd73364743..85a028dff9 100644 --- a/boost/predef/other/endian.h +++ b/boost/predef/other/endian.h @@ -13,6 +13,7 @@ http://www.boost.org/LICENSE_1_0.txt) #include <boost/predef/library/c/gnu.h> #include <boost/predef/os/macos.h> #include <boost/predef/os/bsd.h> +#include <boost/predef/os/android.h> /*` [heading `BOOST_ENDIAN_*`] @@ -53,7 +54,7 @@ information and acquired knowledge: */ #if !BOOST_ENDIAN_BIG_BYTE && !BOOST_ENDIAN_BIG_WORD && \ !BOOST_ENDIAN_LITTLE_BYTE && !BOOST_ENDIAN_LITTLE_WORD -# if BOOST_LIB_C_GNU +# if BOOST_LIB_C_GNU || BOOST_OS_ANDROID # include <endian.h> # else # if BOOST_OS_MACOS @@ -69,29 +70,29 @@ information and acquired knowledge: # endif # endif # if defined(__BYTE_ORDER) -# if (__BYTE_ORDER == __BIG_ENDIAN) +# if defined(__BIG_ENDIAN) && (__BYTE_ORDER == __BIG_ENDIAN) # undef BOOST_ENDIAN_BIG_BYTE # define BOOST_ENDIAN_BIG_BYTE BOOST_VERSION_NUMBER_AVAILABLE # endif -# if (__BYTE_ORDER == __LITTLE_ENDIAN) +# if defined(__LITTLE_ENDIAN) && (__BYTE_ORDER == __LITTLE_ENDIAN) # undef BOOST_ENDIAN_LITTLE_BYTE # define BOOST_ENDIAN_LITTLE_BYTE BOOST_VERSION_NUMBER_AVAILABLE # endif -# if (__BYTE_ORDER == __PDP_ENDIAN) +# if defined(__PDP_ENDIAN) && (__BYTE_ORDER == __PDP_ENDIAN) # undef BOOST_ENDIAN_LITTLE_WORD # define BOOST_ENDIAN_LITTLE_WORD BOOST_VERSION_NUMBER_AVAILABLE # endif # endif # if !defined(__BYTE_ORDER) && defined(_BYTE_ORDER) -# if (_BYTE_ORDER == _BIG_ENDIAN) +# if defined(_BIG_ENDIAN) && (_BYTE_ORDER == _BIG_ENDIAN) # undef BOOST_ENDIAN_BIG_BYTE # define BOOST_ENDIAN_BIG_BYTE BOOST_VERSION_NUMBER_AVAILABLE # endif -# if (_BYTE_ORDER == _LITTLE_ENDIAN) +# if defined(_LITTLE_ENDIAN) && (_BYTE_ORDER == _LITTLE_ENDIAN) # undef BOOST_ENDIAN_LITTLE_BYTE # define BOOST_ENDIAN_LITTLE_BYTE BOOST_VERSION_NUMBER_AVAILABLE # endif -# if (_BYTE_ORDER == _PDP_ENDIAN) +# if defined(_PDP_ENDIAN) && (_BYTE_ORDER == _PDP_ENDIAN) # undef BOOST_ENDIAN_LITTLE_WORD # define BOOST_ENDIAN_LITTLE_WORD BOOST_VERSION_NUMBER_AVAILABLE # endif diff --git a/boost/predef/version.h b/boost/predef/version.h index 1e85df74f6..0439b2c519 100644 --- a/boost/predef/version.h +++ b/boost/predef/version.h @@ -10,6 +10,6 @@ http://www.boost.org/LICENSE_1_0.txt) #include <boost/predef/version_number.h> -#define BOOST_PREDEF_VERSION BOOST_VERSION_NUMBER(1,1,0) +#define BOOST_PREDEF_VERSION BOOST_VERSION_NUMBER(1,2,0) #endif |