updated boost on windows

This commit is contained in:
Bassem Girgis
2019-08-13 21:48:48 -05:00
parent 7d77d485fd
commit b40a3bee82
5162 changed files with 473027 additions and 116452 deletions

View File

@@ -19,6 +19,7 @@ http://www.boost.org/LICENSE_1_0.txt)
#include <boost/predef/architecture/mips.h>
#include <boost/predef/architecture/parisc.h>
#include <boost/predef/architecture/ppc.h>
#include <boost/predef/architecture/ptx.h>
#include <boost/predef/architecture/pyramid.h>
#include <boost/predef/architecture/rs6k.h>
#include <boost/predef/architecture/sparc.h>

View File

@@ -1,5 +1,5 @@
/*
Copyright Rene Rivera 2008-2015
Copyright Rene Rivera 2008-2019
Copyright Franz Detro 2014
Copyright (c) Microsoft Corporation 2014
Distributed under the Boost Software License, Version 1.0.
@@ -21,28 +21,68 @@ http://www.boost.org/LICENSE_1_0.txt)
[table
[[__predef_symbol__] [__predef_version__]]
[[`__arm__`] [__predef_detection__]]
[[`__arm64`] [__predef_detection__]]
[[`__thumb__`] [__predef_detection__]]
[[`__ARM_ARCH`] [__predef_detection__]]
[[`__TARGET_ARCH_ARM`] [__predef_detection__]]
[[`__TARGET_ARCH_THUMB`] [__predef_detection__]]
[[`_M_ARM`] [__predef_detection__]]
[[`__arm__`] [__predef_detection__]]
[[`__arm64`] [__predef_detection__]]
[[`__thumb__`] [__predef_detection__]]
[[`_M_ARM64`] [__predef_detection__]]
[[`__aarch64__`] [__predef_detection__]]
[[`__AARCH64EL__`] [__predef_detection__]]
[[`__ARM_ARCH_7__`] [__predef_detection__]]
[[`__ARM_ARCH_7A__`] [__predef_detection__]]
[[`__ARM_ARCH_7R__`] [__predef_detection__]]
[[`__ARM_ARCH_7M__`] [__predef_detection__]]
[[`__ARM_ARCH_6K__`] [__predef_detection__]]
[[`__ARM_ARCH_6Z__`] [__predef_detection__]]
[[`__ARM_ARCH_6KZ__`] [__predef_detection__]]
[[`__ARM_ARCH_6T2__`] [__predef_detection__]]
[[`__ARM_ARCH_5TE__`] [__predef_detection__]]
[[`__ARM_ARCH_5TEJ__`] [__predef_detection__]]
[[`__ARM_ARCH_4T__`] [__predef_detection__]]
[[`__ARM_ARCH_4__`] [__predef_detection__]]
[[`__arm64`] [8.0.0]]
[[`__ARM_ARCH`] [V.0.0]]
[[`__TARGET_ARCH_ARM`] [V.0.0]]
[[`__TARGET_ARCH_THUMB`] [V.0.0]]
[[`_M_ARM`] [V.0.0]]
[[`__arm64`] [8.0.0]]
[[`_M_ARM64`] [8.0.0]]
[[`__aarch64__`] [8.0.0]]
[[`__AARCH64EL__`] [8.0.0]]
[[`__ARM_ARCH_7__`] [7.0.0]]
[[`__ARM_ARCH_7A__`] [7.0.0]]
[[`__ARM_ARCH_7R__`] [7.0.0]]
[[`__ARM_ARCH_7M__`] [7.0.0]]
[[`__ARM_ARCH_6K__`] [6.0.0]]
[[`__ARM_ARCH_6Z__`] [6.0.0]]
[[`__ARM_ARCH_6KZ__`] [6.0.0]]
[[`__ARM_ARCH_6T2__`] [6.0.0]]
[[`__ARM_ARCH_5TE__`] [5.0.0]]
[[`__ARM_ARCH_5TEJ__`] [5.0.0]]
[[`__ARM_ARCH_4T__`] [4.0.0]]
[[`__ARM_ARCH_4__`] [4.0.0]]
]
*/
#define BOOST_ARCH_ARM BOOST_VERSION_NUMBER_NOT_AVAILABLE
#if defined(__arm__) || defined(__arm64) || defined(__thumb__) || \
defined(__TARGET_ARCH_ARM) || defined(__TARGET_ARCH_THUMB) || \
defined(_M_ARM)
#if \
defined(__ARM_ARCH) || defined(__TARGET_ARCH_ARM) || \
defined(__TARGET_ARCH_THUMB) || defined(_M_ARM) || \
defined(__arm__) || defined(__arm64) || defined(__thumb__) || \
defined(_M_ARM64) || defined(__aarch64__) || defined(__AARCH64EL__) || \
defined(__ARM_ARCH_7__) || defined(__ARM_ARCH_7A__) || \
defined(__ARM_ARCH_7R__) || defined(__ARM_ARCH_7M__) || \
defined(__ARM_ARCH_6K__) || defined(__ARM_ARCH_6Z__) || \
defined(__ARM_ARCH_6KZ__) || defined(__ARM_ARCH_6T2__) || \
defined(__ARM_ARCH_5TE__) || defined(__ARM_ARCH_5TEJ__) || \
defined(__ARM_ARCH_4T__) || defined(__ARM_ARCH_4__)
# undef BOOST_ARCH_ARM
# if !defined(BOOST_ARCH_ARM) && defined(__arm64)
# define BOOST_ARCH_ARM BOOST_VERSION_NUMBER(8,0,0)
# if !defined(BOOST_ARCH_ARM) && defined(__ARM_ARCH)
# define BOOST_ARCH_ARM BOOST_VERSION_NUMBER(__ARM_ARCH,0,0)
# endif
# if !defined(BOOST_ARCH_ARM) && defined(__TARGET_ARCH_ARM)
# define BOOST_ARCH_ARM BOOST_VERSION_NUMBER(__TARGET_ARCH_ARM,0,0)
@@ -53,6 +93,29 @@ http://www.boost.org/LICENSE_1_0.txt)
# if !defined(BOOST_ARCH_ARM) && defined(_M_ARM)
# define BOOST_ARCH_ARM BOOST_VERSION_NUMBER(_M_ARM,0,0)
# endif
# if !defined(BOOST_ARCH_ARM) && ( \
defined(__arm64) || defined(_M_ARM64) || defined(__aarch64__) || \
defined(__AARCH64EL__) )
# define BOOST_ARCH_ARM BOOST_VERSION_NUMBER(8,0,0)
# endif
# if !defined(BOOST_ARCH_ARM) && ( \
defined(__ARM_ARCH_7__) || defined(__ARM_ARCH_7A__) || \
defined(__ARM_ARCH_7R__) || defined(__ARM_ARCH_7M__) )
# define BOOST_ARCH_ARM BOOST_VERSION_NUMBER(7,0,0)
# endif
# if !defined(BOOST_ARCH_ARM) && ( \
defined(__ARM_ARCH_6K__) || defined(__ARM_ARCH_6Z__) || \
defined(__ARM_ARCH_6KZ__) || defined(__ARM_ARCH_6T2__) )
# define BOOST_ARCH_ARM BOOST_VERSION_NUMBER(6,0,0)
# endif
# if !defined(BOOST_ARCH_ARM) && ( \
defined(__ARM_ARCH_5TE__) || defined(__ARM_ARCH_5TEJ__) )
# define BOOST_ARCH_ARM BOOST_VERSION_NUMBER(5,0,0)
# endif
# if !defined(BOOST_ARCH_ARM) && ( \
defined(__ARM_ARCH_4T__) || defined(__ARM_ARCH_4__) )
# define BOOST_ARCH_ARM BOOST_VERSION_NUMBER(4,0,0)
# endif
# if !defined(BOOST_ARCH_ARM)
# define BOOST_ARCH_ARM BOOST_VERSION_NUMBER_AVAILABLE
# endif

View File

@@ -12,7 +12,7 @@ http://www.boost.org/LICENSE_1_0.txt)
#include <boost/predef/make.h>
/*`
[heading `BOOST_ARCH_PARISK`]
[heading `BOOST_ARCH_PARISC`]
[@http://en.wikipedia.org/wiki/PA-RISC_family HP/PA RISC] architecture.

View File

@@ -0,0 +1,44 @@
/*
Copyright Benjamin Worpitz 2018
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_ARCHITECTURE_PTX_H
#define BOOST_PREDEF_ARCHITECTURE_PTX_H
#include <boost/predef/version_number.h>
#include <boost/predef/make.h>
/*`
[heading `BOOST_ARCH_PTX`]
[@https://en.wikipedia.org/wiki/Parallel_Thread_Execution PTX] architecture.
[table
[[__predef_symbol__] [__predef_version__]]
[[`__CUDA_ARCH__`] [__predef_detection__]]
[[`__CUDA_ARCH__`] [V.R.0]]
]
*/
#define BOOST_ARCH_PTX BOOST_VERSION_NUMBER_NOT_AVAILABLE
#if defined(__CUDA_ARCH__)
# undef BOOST_ARCH_PTX
# define BOOST_ARCH_PTX BOOST_PREDEF_MAKE_10_VR0(__CUDA_ARCH__)
#endif
#if BOOST_ARCH_PTX
# define BOOST_ARCH_PTX_AVAILABLE
#endif
#define BOOST_ARCH_PTX_NAME "PTX"
#endif
#include <boost/predef/detail/test.h>
BOOST_PREDEF_DECLARE_TEST(BOOST_ARCH_PTX,BOOST_ARCH_PTX_NAME)

View File

@@ -32,6 +32,7 @@ http://www.boost.org/LICENSE_1_0.txt)
#include <boost/predef/compiler/metrowerks.h>
#include <boost/predef/compiler/microtec.h>
#include <boost/predef/compiler/mpw.h>
#include <boost/predef/compiler/nvcc.h>
#include <boost/predef/compiler/palm.h>
#include <boost/predef/compiler/pgi.h>
#include <boost/predef/compiler/sgi_mipspro.h>

View File

@@ -38,7 +38,7 @@ Version number available as major, minor, and patch.
# define BOOST_COMP_DEC_DETECTION BOOST_PREDEF_MAKE_10_VVRR0PP00(__DECC_VER)
# endif
# if !defined(BOOST_COMP_DEC_DETECTION)
# define BOOST_COM_DEC_DETECTION BOOST_VERSION_NUMBER_AVAILABLE
# define BOOST_COMP_DEC_DETECTION BOOST_VERSION_NUMBER_AVAILABLE
# endif
#endif

View File

@@ -1,5 +1,5 @@
/*
Copyright Rene Rivera 2008-2015
Copyright Rene Rivera 2008-2017
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)
@@ -34,6 +34,13 @@ Version number available as major, minor, and patch.
#if defined(__INTEL_COMPILER) || defined(__ICL) || defined(__ICC) || \
defined(__ECC)
/*`
[note Because of an Intel mistake in the release version numbering when
`__INTEL_COMPILER` is `9999` it is detected as version 12.1.0.]
*/
# if !defined(BOOST_COMP_INTEL_DETECTION) && defined(__INTEL_COMPILER) && (__INTEL_COMPILER == 9999)
# define BOOST_COMP_INTEL_DETECTION BOOST_VERSION_NUMBER(12,1,0)
# endif
# if !defined(BOOST_COMP_INTEL_DETECTION) && defined(__INTEL_COMPILER) && defined(__INTEL_COMPILER_UPDATE)
# define BOOST_COMP_INTEL_DETECTION BOOST_VERSION_NUMBER( \
BOOST_VERSION_NUMBER_MAJOR(BOOST_PREDEF_MAKE_10_VVRR(__INTEL_COMPILER)), \

View File

@@ -0,0 +1,73 @@
/*
Copyright Benjamin Worpitz 2018
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_COMPILER_NVCC_H
#define BOOST_PREDEF_COMPILER_NVCC_H
#include <boost/predef/version_number.h>
#include <boost/predef/make.h>
/*`
[heading `BOOST_COMP_NVCC`]
[@https://en.wikipedia.org/wiki/NVIDIA_CUDA_Compiler NVCC] compiler.
Version number available as major, minor, and patch beginning with version 7.5.
[table
[[__predef_symbol__] [__predef_version__]]
[[`__NVCC__`] [__predef_detection__]]
[[`__CUDACC_VER_MAJOR__`, `__CUDACC_VER_MINOR__`, `__CUDACC_VER_BUILD__`] [V.R.P]]
]
*/
#define BOOST_COMP_NVCC BOOST_VERSION_NUMBER_NOT_AVAILABLE
#if defined(__NVCC__)
# if !defined(__CUDACC_VER_MAJOR__) || !defined(__CUDACC_VER_MINOR__) || !defined(__CUDACC_VER_BUILD__)
# define BOOST_COMP_NVCC_DETECTION BOOST_VERSION_NUMBER_AVAILABLE
# else
# define BOOST_COMP_NVCC_DETECTION BOOST_VERSION_NUMBER(__CUDACC_VER_MAJOR__, __CUDACC_VER_MINOR__, __CUDACC_VER_BUILD__)
# endif
#endif
#ifdef BOOST_COMP_NVCC_DETECTION
/*
Always define BOOST_COMP_NVCC instead of BOOST_COMP_NVCC_EMULATED
The nvcc compilation process is somewhat special as can be read here:
https://docs.nvidia.com/cuda/cuda-compiler-driver-nvcc/index.html#cuda-compilation-trajectory
The nvcc compiler precompiles the input two times. Once for the device code
being compiled by the cicc device compiler and once for the host code
compiled by the real host compiler. NVCC uses gcc/clang/msvc/...
depending on the host compiler being set on the command line.
Predef (as a preprocessor only lib) detects the one doing the preprocessing
as compiler and expects it to be the one doing the real compilation.
This is not true for NVCC which is only doing the preprocessing and which
is using another compiler for parts of its work. So for NVCC it should be
allowed to set BOOST_COMP_NVCC additionally to the already detected host
compiler because both is true: It is gcc/clang/... compiling the code, but it
is also NVCC doing the preprocessing and adding some other quirks you may
want to detect.
This behavior is similar to what boost config is doing in `select_compiler_config.hpp`.
There the NVCC detection is not handled as a real compiler (part of the
#if-#elif) but as additional option before the real compiler.
*/
# undef BOOST_COMP_NVCC
# define BOOST_COMP_NVCC BOOST_COMP_NVCC_DETECTION
# define BOOST_COMP_NVCC_AVAILABLE
# include <boost/predef/detail/comp_detected.h>
#endif
#define BOOST_COMP_NVCC_NAME "NVCC"
#endif
#include <boost/predef/detail/test.h>
BOOST_PREDEF_DECLARE_TEST(BOOST_COMP_NVCC,BOOST_COMP_NVCC_NAME)

View File

@@ -1,5 +1,5 @@
/*
Copyright Rene Rivera 2013
Copyright Rene Rivera 2013-2018
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)
@@ -8,6 +8,8 @@ http://www.boost.org/LICENSE_1_0.txt)
#ifndef BOOST_PREDEF_DETAIL_ENDIAN_COMPAT_H
#define BOOST_PREDEF_DETAIL_ENDIAN_COMPAT_H
#pragma message("The use of BOOST_*_ENDIAN and BOOST_BYTE_ORDER is deprecated. Please include <boost/predef/other/endian.h> and use BOOST_ENDIAN_*_BYTE instead")
#include <boost/predef/other/endian.h>
#if BOOST_ENDIAN_BIG_BYTE

View File

@@ -24,6 +24,7 @@ http://www.boost.org/LICENSE_1_0.txt)
[[`__ARM_NEON__`] [__predef_detection__]]
[[`__aarch64__`] [__predef_detection__]]
[[`_M_ARM`] [__predef_detection__]]
[[`_M_ARM64`] [__predef_detection__]]
]
[table
@@ -32,6 +33,7 @@ http://www.boost.org/LICENSE_1_0.txt)
[[`__ARM_NEON__`] [BOOST_HW_SIMD_ARM_NEON_VERSION]]
[[`__aarch64__`] [BOOST_HW_SIMD_ARM_NEON_VERSION]]
[[`_M_ARM`] [BOOST_HW_SIMD_ARM_NEON_VERSION]]
[[`_M_ARM64`] [BOOST_HW_SIMD_ARM_NEON_VERSION]]
]
*/
@@ -39,7 +41,7 @@ http://www.boost.org/LICENSE_1_0.txt)
#define BOOST_HW_SIMD_ARM BOOST_VERSION_NUMBER_NOT_AVAILABLE
#undef BOOST_HW_SIMD_ARM
#if !defined(BOOST_HW_SIMD_ARM) && (defined(__ARM_NEON__) || defined(__aarch64__) || defined (_M_ARM))
#if !defined(BOOST_HW_SIMD_ARM) && (defined(__ARM_NEON__) || defined(__aarch64__) || defined (_M_ARM) || defined (_M_ARM64))
# define BOOST_HW_SIMD_ARM BOOST_HW_SIMD_ARM_NEON_VERSION
#endif

View File

@@ -13,5 +13,6 @@ http://www.boost.org/LICENSE_1_0.txt)
#include <boost/predef/language/stdc.h>
#include <boost/predef/language/stdcpp.h>
#include <boost/predef/language/objc.h>
#include <boost/predef/language/cuda.h>
#endif

View File

@@ -0,0 +1,52 @@
/*
Copyright Benjamin Worpitz 2018
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_LANGUAGE_CUDA_H
#define BOOST_PREDEF_LANGUAGE_CUDA_H
#include <boost/predef/version_number.h>
#include <boost/predef/make.h>
/*`
[heading `BOOST_LANG_CUDA`]
[@https://en.wikipedia.org/wiki/CUDA CUDA C/C++] language.
If available, the version is detected as VV.RR.P.
[table
[[__predef_symbol__] [__predef_version__]]
[[`__CUDACC__`] [__predef_detection__]]
[[`__CUDA__`] [__predef_detection__]]
[[`CUDA_VERSION`] [VV.RR.P]]
]
*/
#define BOOST_LANG_CUDA BOOST_VERSION_NUMBER_NOT_AVAILABLE
#if defined(__CUDACC__) || defined(__CUDA__)
# undef BOOST_LANG_CUDA
# include <cuda.h>
# if defined(CUDA_VERSION)
# define BOOST_LANG_CUDA BOOST_PREDEF_MAKE_10_VVRRP(CUDA_VERSION)
# else
# define BOOST_LANG_CUDA BOOST_VERSION_NUMBER_AVAILABLE
# endif
#endif
#if BOOST_LANG_CUDA
# define BOOST_LANG_CUDA_AVAILABLE
#endif
#define BOOST_LANG_CUDA_NAME "CUDA C/C++"
#endif
#include <boost/predef/detail/test.h>
BOOST_PREDEF_DECLARE_TEST(BOOST_LANG_CUDA,BOOST_LANG_CUDA_NAME)

View File

@@ -12,6 +12,7 @@ http://www.boost.org/LICENSE_1_0.txt)
#include <boost/predef/library/c/_prefix.h>
#include <boost/predef/library/c/cloudabi.h>
#include <boost/predef/library/c/gnu.h>
#include <boost/predef/library/c/uc.h>
#include <boost/predef/library/c/vms.h>

View File

@@ -0,0 +1,53 @@
/*
* Copyright (C) 2017 James E. King III
*
* 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_LIBRARY_C_CLOUDABI_H
#define BOOST_PREDEF_LIBRARY_C_CLOUDABI_H
#include <boost/predef/version_number.h>
#include <boost/predef/make.h>
#include <boost/predef/library/c/_prefix.h>
#if defined(__CloudABI__)
#include <stddef.h>
#endif
/*`
[heading `BOOST_LIB_C_CLOUDABI`]
[@https://github.com/NuxiNL/cloudlibc cloudlibc] - CloudABI's standard C library.
Version number available as major, and minor.
[table
[[__predef_symbol__] [__predef_version__]]
[[`__cloudlibc__`] [__predef_detection__]]
[[`__cloudlibc_major__`, `__cloudlibc_minor__`] [V.R.0]]
]
*/
#define BOOST_LIB_C_CLOUDABI BOOST_VERSION_NUMBER_NOT_AVAILABLE
#if defined(__cloudlibc__)
# undef BOOST_LIB_C_CLOUDABI
# define BOOST_LIB_C_CLOUDABI \
BOOST_VERSION_NUMBER(__cloudlibc_major__,__cloudlibc_minor__,0)
#endif
#if BOOST_LIB_C_CLOUDABI
# define BOOST_LIB_C_CLOUDABI_AVAILABLE
#endif
#define BOOST_LIB_C_CLOUDABI_NAME "cloudlibc"
#endif
#include <boost/predef/detail/test.h>
BOOST_PREDEF_DECLARE_TEST(BOOST_LIB_C_CLOUDABI,BOOST_LIB_C_CLOUDABI_NAME)

View File

@@ -46,10 +46,14 @@ Macros are:
#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_VR0(V)` */
#define BOOST_PREDEF_MAKE_10_VR0(V) BOOST_VERSION_NUMBER(((V)/100)%10,((V)/10)%10,0)
/*` `BOOST_PREDEF_MAKE_10_VRP(V)` */
#define BOOST_PREDEF_MAKE_10_VRP(V) BOOST_VERSION_NUMBER(((V)/100)%10,((V)/10)%10,(V)%10)
/*` `BOOST_PREDEF_MAKE_10_VRP000(V)` */
#define BOOST_PREDEF_MAKE_10_VRP000(V) BOOST_VERSION_NUMBER(((V)/100000)%10,((V)/10000)%10,((V)/1000)%10)
/*` `BOOST_PREDEF_MAKE_10_VRPPPP(V)` */
#define BOOST_PREDEF_MAKE_10_VRPPPP(V) BOOST_VERSION_NUMBER(((V)/100000)%10,((V)/10000)%10,(V)%10000)
/*` `BOOST_PREDEF_MAKE_10_VRPP(V)` */
#define BOOST_PREDEF_MAKE_10_VRPP(V) BOOST_VERSION_NUMBER(((V)/1000)%10,((V)/100)%10,(V)%100)
/*` `BOOST_PREDEF_MAKE_10_VRR(V)` */
@@ -62,8 +66,12 @@ Macros are:
#define BOOST_PREDEF_MAKE_10_VV00(V) BOOST_VERSION_NUMBER(((V)/100)%100,0,0)
/*` `BOOST_PREDEF_MAKE_10_VVRR(V)` */
#define BOOST_PREDEF_MAKE_10_VVRR(V) BOOST_VERSION_NUMBER(((V)/100)%100,(V)%100,0)
/*` `BOOST_PREDEF_MAKE_10_VVRRP(V)` */
#define BOOST_PREDEF_MAKE_10_VVRRP(V) BOOST_VERSION_NUMBER(((V)/1000)%100,((V)/10)%100,(V)%10)
/*` `BOOST_PREDEF_MAKE_10_VVRRPP(V)` */
#define BOOST_PREDEF_MAKE_10_VVRRPP(V) BOOST_VERSION_NUMBER(((V)/10000)%100,((V)/100)%100,(V)%100)
/*` `BOOST_PREDEF_MAKE_10_VVRRPPP(V)` */
#define BOOST_PREDEF_MAKE_10_VVRRPPP(V) BOOST_VERSION_NUMBER(((V)/100000)%100,((V)/1000)%100,(V)%1000)
/*` `BOOST_PREDEF_MAKE_10_VVRR0PP00(V)` */
#define BOOST_PREDEF_MAKE_10_VVRR0PP00(V) BOOST_VERSION_NUMBER(((V)/10000000)%100,((V)/100000)%100,((V)/100)%100)
/*` `BOOST_PREDEF_MAKE_10_VVRR0PPPP(V)` */

View File

@@ -13,7 +13,6 @@ http://www.boost.org/LICENSE_1_0.txt)
#include <boost/predef/os/aix.h>
#include <boost/predef/os/amigaos.h>
#include <boost/predef/os/android.h>
#include <boost/predef/os/beos.h>
#include <boost/predef/os/bsd.h>
#include <boost/predef/os/cygwin.h>
@@ -30,4 +29,6 @@ http://www.boost.org/LICENSE_1_0.txt)
#include <boost/predef/os/vms.h>
#include <boost/predef/os/windows.h>
#include <boost/predef/os/android.h>
#endif

View File

@@ -5,8 +5,8 @@ Distributed under the Boost Software License, Version 1.0.
http://www.boost.org/LICENSE_1_0.txt)
*/
#ifndef BOOST_PREDEF_OS_ADROID_H
#define BOOST_PREDEF_OS_ADROID_H
#ifndef BOOST_PREDEF_OS_ANDROID_H
#define BOOST_PREDEF_OS_ANDROID_H
#include <boost/predef/version_number.h>
#include <boost/predef/make.h>
@@ -14,6 +14,9 @@ http://www.boost.org/LICENSE_1_0.txt)
/*`
[heading `BOOST_OS_ANDROID`]
NOTE: `BOOST_OS_ANDROID` is deprecated, and will be removed in a following release.
Please use `BOOST_PLAT_ANDROID` instead.
[@http://en.wikipedia.org/wiki/Android_%28operating_system%29 Android] operating system.
[table

View File

@@ -89,7 +89,7 @@ of BSD. If the above variants is detected the corresponding macro is also set.]
#define BOOST_OS_BSD_NAME "BSD"
#else
#endif
#include <boost/predef/os/bsd/bsdi.h>
#include <boost/predef/os/bsd/dragonfly.h>
@@ -97,7 +97,5 @@ of BSD. If the above variants is detected the corresponding macro is also set.]
#include <boost/predef/os/bsd/open.h>
#include <boost/predef/os/bsd/net.h>
#endif
#include <boost/predef/detail/test.h>
BOOST_PREDEF_DECLARE_TEST(BOOST_OS_BSD,BOOST_OS_BSD_NAME)

View File

@@ -34,13 +34,20 @@ http://www.boost.org/LICENSE_1_0.txt)
# define BOOST_OS_BSD_AVAILABLE
# endif
# undef BOOST_OS_BSD_FREE
# include <sys/param.h>
# if defined(__FreeBSD_version)
# if __FreeBSD_version < 500000
# if __FreeBSD_version == 491000
# define BOOST_OS_BSD_FREE \
BOOST_PREDEF_MAKE_10_VRP000(__FreeBSD_version)
BOOST_VERSION_NUMBER(4, 10, 0)
# elif __FreeBSD_version == 492000
# define BOOST_OS_BSD_FREE \
BOOST_VERSION_NUMBER(4, 11, 0)
# elif __FreeBSD_version < 500000
# define BOOST_OS_BSD_FREE \
BOOST_PREDEF_MAKE_10_VRPPPP(__FreeBSD_version)
# else
# define BOOST_OS_BSD_FREE \
BOOST_PREDEF_MAKE_10_VRR000(__FreeBSD_version)
BOOST_PREDEF_MAKE_10_VVRRPPP(__FreeBSD_version)
# endif
# else
# define BOOST_OS_BSD_FREE BOOST_VERSION_NUMBER_AVAILABLE

View File

@@ -76,7 +76,7 @@ http://www.boost.org/LICENSE_1_0.txt)
# include <boost/predef/detail/os_detected.h>
#endif
#define BOOST_OS_BSD_NET_NAME "DragonFly BSD"
#define BOOST_OS_BSD_NET_NAME "NetBSD"
#endif

View File

@@ -50,6 +50,26 @@ http://www.boost.org/LICENSE_1_0.txt)
[[`OpenBSD4_7`] [4.7.0]]
[[`OpenBSD4_8`] [4.8.0]]
[[`OpenBSD4_9`] [4.9.0]]
[[`OpenBSD5_0`] [5.0.0]]
[[`OpenBSD5_1`] [5.1.0]]
[[`OpenBSD5_2`] [5.2.0]]
[[`OpenBSD5_3`] [5.3.0]]
[[`OpenBSD5_4`] [5.4.0]]
[[`OpenBSD5_5`] [5.5.0]]
[[`OpenBSD5_6`] [5.6.0]]
[[`OpenBSD5_7`] [5.7.0]]
[[`OpenBSD5_8`] [5.8.0]]
[[`OpenBSD5_9`] [5.9.0]]
[[`OpenBSD6_0`] [6.0.0]]
[[`OpenBSD6_1`] [6.1.0]]
[[`OpenBSD6_2`] [6.2.0]]
[[`OpenBSD6_3`] [6.3.0]]
[[`OpenBSD6_4`] [6.4.0]]
[[`OpenBSD6_5`] [6.5.0]]
[[`OpenBSD6_6`] [6.6.0]]
[[`OpenBSD6_7`] [6.7.0]]
[[`OpenBSD6_8`] [6.8.0]]
[[`OpenBSD6_9`] [6.9.0]]
]
*/
@@ -153,6 +173,66 @@ http://www.boost.org/LICENSE_1_0.txt)
# if !defined(BOOST_OS_BSD_OPEN) && defined(OpenBSD4_9)
# define BOOST_OS_BSD_OPEN BOOST_VERSION_NUMBER(4,9,0)
# endif
# if !defined(BOOST_OS_BSD_OPEN) && defined(OpenBSD5_0)
# define BOOST_OS_BSD_OPEN BOOST_VERSION_NUMBER(5,0,0)
# endif
# if !defined(BOOST_OS_BSD_OPEN) && defined(OpenBSD5_1)
# define BOOST_OS_BSD_OPEN BOOST_VERSION_NUMBER(5,1,0)
# endif
# if !defined(BOOST_OS_BSD_OPEN) && defined(OpenBSD5_2)
# define BOOST_OS_BSD_OPEN BOOST_VERSION_NUMBER(5,2,0)
# endif
# if !defined(BOOST_OS_BSD_OPEN) && defined(OpenBSD5_3)
# define BOOST_OS_BSD_OPEN BOOST_VERSION_NUMBER(5,3,0)
# endif
# if !defined(BOOST_OS_BSD_OPEN) && defined(OpenBSD5_4)
# define BOOST_OS_BSD_OPEN BOOST_VERSION_NUMBER(5,4,0)
# endif
# if !defined(BOOST_OS_BSD_OPEN) && defined(OpenBSD5_5)
# define BOOST_OS_BSD_OPEN BOOST_VERSION_NUMBER(5,5,0)
# endif
# if !defined(BOOST_OS_BSD_OPEN) && defined(OpenBSD5_6)
# define BOOST_OS_BSD_OPEN BOOST_VERSION_NUMBER(5,6,0)
# endif
# if !defined(BOOST_OS_BSD_OPEN) && defined(OpenBSD5_7)
# define BOOST_OS_BSD_OPEN BOOST_VERSION_NUMBER(5,7,0)
# endif
# if !defined(BOOST_OS_BSD_OPEN) && defined(OpenBSD5_8)
# define BOOST_OS_BSD_OPEN BOOST_VERSION_NUMBER(5,8,0)
# endif
# if !defined(BOOST_OS_BSD_OPEN) && defined(OpenBSD5_9)
# define BOOST_OS_BSD_OPEN BOOST_VERSION_NUMBER(5,9,0)
# endif
# if !defined(BOOST_OS_BSD_OPEN) && defined(OpenBSD6_0)
# define BOOST_OS_BSD_OPEN BOOST_VERSION_NUMBER(6,0,0)
# endif
# if !defined(BOOST_OS_BSD_OPEN) && defined(OpenBSD6_1)
# define BOOST_OS_BSD_OPEN BOOST_VERSION_NUMBER(6,1,0)
# endif
# if !defined(BOOST_OS_BSD_OPEN) && defined(OpenBSD6_2)
# define BOOST_OS_BSD_OPEN BOOST_VERSION_NUMBER(6,2,0)
# endif
# if !defined(BOOST_OS_BSD_OPEN) && defined(OpenBSD6_3)
# define BOOST_OS_BSD_OPEN BOOST_VERSION_NUMBER(6,3,0)
# endif
# if !defined(BOOST_OS_BSD_OPEN) && defined(OpenBSD6_4)
# define BOOST_OS_BSD_OPEN BOOST_VERSION_NUMBER(6,4,0)
# endif
# if !defined(BOOST_OS_BSD_OPEN) && defined(OpenBSD6_5)
# define BOOST_OS_BSD_OPEN BOOST_VERSION_NUMBER(6,5,0)
# endif
# if !defined(BOOST_OS_BSD_OPEN) && defined(OpenBSD6_6)
# define BOOST_OS_BSD_OPEN BOOST_VERSION_NUMBER(6,6,0)
# endif
# if !defined(BOOST_OS_BSD_OPEN) && defined(OpenBSD6_7)
# define BOOST_OS_BSD_OPEN BOOST_VERSION_NUMBER(6,7,0)
# endif
# if !defined(BOOST_OS_BSD_OPEN) && defined(OpenBSD6_8)
# define BOOST_OS_BSD_OPEN BOOST_VERSION_NUMBER(6,8,0)
# endif
# if !defined(BOOST_OS_BSD_OPEN) && defined(OpenBSD6_9)
# define BOOST_OS_BSD_OPEN BOOST_VERSION_NUMBER(6,9,0)
# endif
# if !defined(BOOST_OS_BSD_OPEN)
# define BOOST_OS_BSD_OPEN BOOST_VERSION_NUMBER_AVAILABLE
# endif

View File

@@ -20,6 +20,8 @@ http://www.boost.org/LICENSE_1_0.txt)
[[__predef_symbol__] [__predef_version__]]
[[`__CYGWIN__`] [__predef_detection__]]
[[`CYGWIN_VERSION_API_MAJOR`, `CYGWIN_VERSION_API_MINOR`] [V.R.0]]
]
*/
@@ -28,8 +30,11 @@ http://www.boost.org/LICENSE_1_0.txt)
#if !defined(BOOST_PREDEF_DETAIL_OS_DETECTED) && ( \
defined(__CYGWIN__) \
)
# include <cygwin/version.h>
# undef BOOST_OS_CYGWIN
# define BOOST_OS_CYGWIN BOOST_VERSION_NUMBER_AVAILABLE
# define BOOST_OS_CYGWIN \
BOOST_VERSION_NUMBER(CYGWIN_VERSION_API_MAJOR,\
CYGWIN_VERSION_API_MINOR, 0)
#endif
#if BOOST_OS_CYGWIN

View File

@@ -21,13 +21,16 @@ http://www.boost.org/LICENSE_1_0.txt)
[[`linux`] [__predef_detection__]]
[[`__linux`] [__predef_detection__]]
[[`__linux__`] [__predef_detection__]]
[[`__gnu_linux__`] [__predef_detection__]]
]
*/
#define BOOST_OS_LINUX BOOST_VERSION_NUMBER_NOT_AVAILABLE
#if !defined(BOOST_PREDEF_DETAIL_OS_DETECTED) && ( \
defined(linux) || defined(__linux) \
defined(linux) || defined(__linux) || \
defined(__linux__) || defined(__gnu_linux__) \
)
# undef BOOST_OS_LINUX
# define BOOST_OS_LINUX BOOST_VERSION_NUMBER_AVAILABLE

View File

@@ -148,8 +148,7 @@ information and acquired knowledge:
# undef BOOST_ENDIAN_BIG_BYTE
# define BOOST_ENDIAN_BIG_BYTE BOOST_VERSION_NUMBER_AVAILABLE
# endif
# if BOOST_ARCH_AMD64 || \
BOOST_ARCH_IA64 || \
# if BOOST_ARCH_IA64 || \
BOOST_ARCH_X86 || \
BOOST_ARCH_BLACKFIN
# undef BOOST_ENDIAN_LITTLE_BYTE

View File

@@ -0,0 +1,87 @@
/*
Copyright Rene Rivera 2017
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_WORKAROUND_H
#define BOOST_PREDEF_WORKAROUND_H
/*`
[heading `BOOST_PREDEF_WORKAROUND`]
``
BOOST_PREDEF_WORKAROUND(symbol,comp,major,minor,patch)
``
Usage:
``
#if BOOST_PREDEF_WORKAROUND(BOOST_COMP_CLANG,<,3,0,0)
// Workaround for old clang compilers..
#endif
``
Defines a comparison against two version numbers that depends on the definion
of `BOOST_STRICT_CONFIG`. When `BOOST_STRICT_CONFIG` is defined this will expand
to a value convertible to `false`. Which has the effect of disabling all code
conditionally guarded by `BOOST_PREDEF_WORKAROUND`. When `BOOST_STRICT_CONFIG`
is undefine this expand to test the given `symbol` version value with the
`comp` comparison against `BOOST_VERSION_NUMBER(major,minor,patch)`.
*/
#ifdef BOOST_STRICT_CONFIG
# define BOOST_PREDEF_WORKAROUND(symbol, comp, major, minor, patch) (0)
#else
# include <boost/predef/version_number.h>
# define BOOST_PREDEF_WORKAROUND(symbol, comp, major, minor, patch) \
( (symbol) != (0) ) && \
( (symbol) comp (BOOST_VERSION_NUMBER( (major) , (minor) , (patch) )) )
#endif
/*`
[heading `BOOST_PREDEF_TESTED_AT`]
``
BOOST_PREDEF_TESTED_AT(symbol,major,minor,patch)
``
Usage:
``
#if BOOST_PREDEF_TESTED_AT(BOOST_COMP_CLANG,3,5,0)
// Needed for clang, and last checked for 3.5.0.
#endif
``
Defines a comparison against two version numbers that depends on the definion
of `BOOST_STRICT_CONFIG` and `BOOST_DETECT_OUTDATED_WORKAROUNDS`.
When `BOOST_STRICT_CONFIG` is defined this will expand to a value convertible
to `false`. Which has the effect of disabling all code
conditionally guarded by `BOOST_PREDEF_TESTED_AT`. When `BOOST_STRICT_CONFIG`
is undefined this expand to either:
* A value convertible to `true` when `BOOST_DETECT_OUTDATED_WORKAROUNDS` is not
defined.
* A value convertible `true` when the expansion of
`BOOST_PREDEF_WORKAROUND(symbol, <=, major, minor, patch)` is `true` and
`BOOST_DETECT_OUTDATED_WORKAROUNDS` is defined.
* A compile error when the expansion of
`BOOST_PREDEF_WORKAROUND(symbol, >, major, minor, patch)` is true and
`BOOST_DETECT_OUTDATED_WORKAROUNDS` is defined.
*/
#ifdef BOOST_STRICT_CONFIG
# define BOOST_PREDEF_TESTED_AT(symbol, major, minor, patch) (0)
#else
# ifdef BOOST_DETECT_OUTDATED_WORKAROUNDS
# define BOOST_PREDEF_TESTED_AT(symbol, major, minor, patch) ( \
BOOST_PREDEF_WORKAROUND(symbol, <=, major, minor, patch) \
? 1 \
: (1%0) )
# else
# define BOOST_PREDEF_TESTED_AT(symbol, major, minor, patch) \
( (symbol) >= BOOST_VERSION_NUMBER_AVAILABLE )
# endif
#endif
#endif

View File

@@ -11,11 +11,19 @@ http://www.boost.org/LICENSE_1_0.txt)
#define BOOST_PREDEF_PLATFORM_H
#endif
#include <boost/predef/platform/android.h>
#include <boost/predef/platform/cloudabi.h>
#include <boost/predef/platform/mingw.h>
#include <boost/predef/platform/mingw32.h>
#include <boost/predef/platform/mingw64.h>
#include <boost/predef/platform/windows_uwp.h>
#include <boost/predef/platform/windows_desktop.h>
#include <boost/predef/platform/windows_store.h>
#include <boost/predef/platform/windows_phone.h>
#include <boost/predef/platform/windows_runtime.h>
#include <boost/predef/platform/windows_server.h>
#include <boost/predef/platform/windows_store.h>
#include <boost/predef/platform/windows_system.h>
#include <boost/predef/platform/windows_runtime.h> // deprecated
#include <boost/predef/platform/ios.h>
/*#include <boost/predef/platform/.h>*/
#endif

View File

@@ -0,0 +1,43 @@
/*
Copyright Rene Rivera 2015-2019
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_PLAT_ANDROID_H
#define BOOST_PREDEF_PLAT_ANDROID_H
#include <boost/predef/version_number.h>
#include <boost/predef/make.h>
/*`
[heading `BOOST_PLAT_ANDROID`]
[@http://en.wikipedia.org/wiki/Android_%28operating_system%29 Android] platform.
[table
[[__predef_symbol__] [__predef_version__]]
[[`__ANDROID__`] [__predef_detection__]]
]
*/
#define BOOST_PLAT_ANDROID BOOST_VERSION_NUMBER_NOT_AVAILABLE
#if defined(__ANDROID__)
# undef BOOST_PLAT_ANDROID
# define BOOST_PLAT_ANDROID BOOST_VERSION_NUMBER_AVAILABLE
#endif
#if BOOST_PLAT_ANDROID
# define BOOST_PLAT_ANDROID_AVAILABLE
# include <boost/predef/detail/platform_detected.h>
#endif
#define BOOST_PLAT_ANDROID_NAME "Android"
#endif
#include <boost/predef/detail/test.h>
BOOST_PREDEF_DECLARE_TEST(BOOST_PLAT_ANDROID,BOOST_PLAT_ANDROID_NAME)

View File

@@ -0,0 +1,43 @@
/*
Copyright 2017 James E. King, III
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_PLAT_CLOUDABI_H
#define BOOST_PREDEF_PLAT_CLOUDABI_H
#include <boost/predef/version_number.h>
#include <boost/predef/make.h>
/*`
[heading `BOOST_PLAT_CLOUDABI`]
[@https://github.com/NuxiNL/cloudabi CloudABI] platform.
[table
[[__predef_symbol__] [__predef_version__]]
[[`__CloudABI__`] [__predef_detection__]]
]
*/
#define BOOST_PLAT_CLOUDABI BOOST_VERSION_NUMBER_NOT_AVAILABLE
#if defined(__CloudABI__)
# undef BOOST_PLAT_CLOUDABI
# define BOOST_PLAT_CLOUDABI BOOST_VERSION_NUMBER_AVAILABLE
#endif
#if BOOST_PLAT_CLOUDABI
# define BOOST_PLAT_CLOUDABI_AVAILABLE
# include <boost/predef/detail/platform_detected.h>
#endif
#define BOOST_PLAT_CLOUDABI_NAME "CloudABI"
#endif
#include <boost/predef/detail/test.h>
BOOST_PREDEF_DECLARE_TEST(BOOST_PLAT_CLOUDABI,BOOST_PLAT_CLOUDABI_NAME)

View File

@@ -0,0 +1,62 @@
/*
Copyright Ruslan Baratov 2017
Copyright Rene Rivera 2017
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_PLAT_IOS_H
#define BOOST_PREDEF_PLAT_IOS_H
#include <boost/predef/os/ios.h> // BOOST_OS_IOS
#include <boost/predef/version_number.h> // BOOST_VERSION_NUMBER_NOT_AVAILABLE
/*`
[heading `BOOST_PLAT_IOS_DEVICE`]
[heading `BOOST_PLAT_IOS_SIMULATOR`]
[table
[[__predef_symbol__] [__predef_version__]]
[[`TARGET_IPHONE_SIMULATOR`] [__predef_detection__]]
[[`TARGET_OS_SIMULATOR`] [__predef_detection__]]
]
*/
#define BOOST_PLAT_IOS_DEVICE BOOST_VERSION_NUMBER_NOT_AVAILABLE
#define BOOST_PLAT_IOS_SIMULATOR BOOST_VERSION_NUMBER_NOT_AVAILABLE
// https://opensource.apple.com/source/CarbonHeaders/CarbonHeaders-18.1/TargetConditionals.h
#if BOOST_OS_IOS
# include <TargetConditionals.h>
# if defined(TARGET_OS_SIMULATOR) && (TARGET_OS_SIMULATOR == 1)
# undef BOOST_PLAT_IOS_SIMULATOR
# define BOOST_PLAT_IOS_SIMULATOR BOOST_VERSION_NUMBER_AVAILABLE
# elif defined(TARGET_IPHONE_SIMULATOR) && (TARGET_IPHONE_SIMULATOR == 1)
# undef BOOST_PLAT_IOS_SIMULATOR
# define BOOST_PLAT_IOS_SIMULATOR BOOST_VERSION_NUMBER_AVAILABLE
# else
# undef BOOST_PLAT_IOS_DEVICE
# define BOOST_PLAT_IOS_DEVICE BOOST_VERSION_NUMBER_AVAILABLE
# endif
#endif
#if BOOST_PLAT_IOS_SIMULATOR
# define BOOST_PLAT_IOS_SIMULATOR_AVAILABLE
# include <boost/predef/detail/platform_detected.h>
#endif
#if BOOST_PLAT_IOS_DEVICE
# define BOOST_PLAT_IOS_DEVICE_AVAILABLE
# include <boost/predef/detail/platform_detected.h>
#endif
#define BOOST_PLAT_IOS_SIMULATOR_NAME "iOS Simulator"
#define BOOST_PLAT_IOS_DEVICE_NAME "iOS Device"
#endif // BOOST_PREDEF_PLAT_IOS_H
#include <boost/predef/detail/test.h>
BOOST_PREDEF_DECLARE_TEST(BOOST_PLAT_IOS_SIMULATOR,BOOST_PLAT_IOS_SIMULATOR_NAME)
BOOST_PREDEF_DECLARE_TEST(BOOST_PLAT_IOS_DEVICE,BOOST_PLAT_IOS_DEVICE_NAME)

View File

@@ -5,8 +5,8 @@ Distributed under the Boost Software License, Version 1.0.
http://www.boost.org/LICENSE_1_0.txt)
*/
#ifndef BOOST_PREDEF_COMPILER_MINGW_H
#define BOOST_PREDEF_COMPILER_MINGW_H
#ifndef BOOST_PREDEF_PLAT_MINGW_H
#define BOOST_PREDEF_PLAT_MINGW_H
#include <boost/predef/version_number.h>
#include <boost/predef/make.h>
@@ -14,7 +14,7 @@ http://www.boost.org/LICENSE_1_0.txt)
/*`
[heading `BOOST_PLAT_MINGW`]
[@http://en.wikipedia.org/wiki/MinGW MinGW] platform.
[@http://en.wikipedia.org/wiki/MinGW MinGW] platform, either variety.
Version number available as major, minor, and patch.
[table
@@ -56,7 +56,7 @@ Version number available as major, minor, and patch.
# include <boost/predef/detail/platform_detected.h>
#endif
#define BOOST_PLAT_MINGW_NAME "MinGW"
#define BOOST_PLAT_MINGW_NAME "MinGW (any variety)"
#endif

View File

@@ -0,0 +1,63 @@
/*
Copyright Rene Rivera 2008-2015
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_PLAT_MINGW32_H
#define BOOST_PREDEF_PLAT_MINGW32_H
#include <boost/predef/version_number.h>
#include <boost/predef/make.h>
/*`
[heading `BOOST_PLAT_MINGW32`]
[@http://www.mingw.org/ MinGW] platform.
Version number available as major, minor, and patch.
[table
[[__predef_symbol__] [__predef_version__]]
[[`__MINGW32__`] [__predef_detection__]]
[[`__MINGW32_VERSION_MAJOR`, `__MINGW32_VERSION_MINOR`] [V.R.0]]
]
*/
#define BOOST_PLAT_MINGW32 BOOST_VERSION_NUMBER_NOT_AVAILABLE
#if defined(__MINGW32__)
# include <_mingw.h>
# if !defined(BOOST_PLAT_MINGW32_DETECTION) && (defined(__MINGW32_VERSION_MAJOR) && defined(__MINGW32_VERSION_MINOR))
# define BOOST_PLAT_MINGW32_DETECTION \
BOOST_VERSION_NUMBER(__MINGW32_VERSION_MAJOR,__MINGW32_VERSION_MINOR,0)
# endif
# if !defined(BOOST_PLAT_MINGW32_DETECTION)
# define BOOST_PLAT_MINGW32_DETECTION BOOST_VERSION_NUMBER_AVAILABLE
# endif
#endif
#ifdef BOOST_PLAT_MINGW32_DETECTION
# define BOOST_PLAT_MINGW32_AVAILABLE
# if defined(BOOST_PREDEF_DETAIL_PLAT_DETECTED)
# define BOOST_PLAT_MINGW32_EMULATED BOOST_PLAT_MINGW32_DETECTION
# else
# undef BOOST_PLAT_MINGW32
# define BOOST_PLAT_MINGW32 BOOST_PLAT_MINGW32_DETECTION
# endif
# include <boost/predef/detail/platform_detected.h>
#endif
#define BOOST_PLAT_MINGW32_NAME "MinGW"
#endif
#include <boost/predef/detail/test.h>
BOOST_PREDEF_DECLARE_TEST(BOOST_PLAT_MINGW32,BOOST_PLAT_MINGW32_NAME)
#ifdef BOOST_PLAT_MINGW32_EMULATED
#include <boost/predef/detail/test.h>
BOOST_PREDEF_DECLARE_TEST(BOOST_PLAT_MINGW32_EMULATED,BOOST_PLAT_MINGW32_NAME)
#endif

View File

@@ -0,0 +1,63 @@
/*
Copyright Rene Rivera 2008-2015
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_PLAT_MINGW64_H
#define BOOST_PREDEF_PLAT_MINGW64_H
#include <boost/predef/version_number.h>
#include <boost/predef/make.h>
/*`
[heading `BOOST_PLAT_MINGW64`]
[@https://mingw-w64.org/ MinGW-w64] platform.
Version number available as major, minor, and patch.
[table
[[__predef_symbol__] [__predef_version__]]
[[`__MINGW64__`] [__predef_detection__]]
[[`__MINGW64_VERSION_MAJOR`, `__MINGW64_VERSION_MINOR`] [V.R.0]]
]
*/
#define BOOST_PLAT_MINGW64 BOOST_VERSION_NUMBER_NOT_AVAILABLE
#if defined(__MINGW64__)
# include <_mingw.h>
# if !defined(BOOST_PLAT_MINGW64_DETECTION) && (defined(__MINGW64_VERSION_MAJOR) && defined(__MINGW64_VERSION_MINOR))
# define BOOST_PLAT_MINGW64_DETECTION \
BOOST_VERSION_NUMBER(__MINGW64_VERSION_MAJOR,__MINGW64_VERSION_MINOR,0)
# endif
# if !defined(BOOST_PLAT_MINGW64_DETECTION)
# define BOOST_PLAT_MINGW64_DETECTION BOOST_VERSION_NUMBER_AVAILABLE
# endif
#endif
#ifdef BOOST_PLAT_MINGW64_DETECTION
# define BOOST_PLAT_MINGW64_AVAILABLE
# if defined(BOOST_PREDEF_DETAIL_PLAT_DETECTED)
# define BOOST_PLAT_MINGW64_EMULATED BOOST_PLAT_MINGW64_DETECTION
# else
# undef BOOST_PLAT_MINGW64
# define BOOST_PLAT_MINGW64 BOOST_PLAT_MINGW64_DETECTION
# endif
# include <boost/predef/detail/platform_detected.h>
#endif
#define BOOST_PLAT_MINGW64_NAME "MinGW-w64"
#endif
#include <boost/predef/detail/test.h>
BOOST_PREDEF_DECLARE_TEST(BOOST_PLAT_MINGW64,BOOST_PLAT_MINGW64_NAME)
#ifdef BOOST_PLAT_MINGW64_EMULATED
#include <boost/predef/detail/test.h>
BOOST_PREDEF_DECLARE_TEST(BOOST_PLAT_MINGW64_EMULATED,BOOST_PLAT_MINGW64_NAME)
#endif

View File

@@ -9,25 +9,31 @@ http://www.boost.org/LICENSE_1_0.txt)
#ifndef BOOST_PREDEF_PLAT_WINDOWS_DESKTOP_H
#define BOOST_PREDEF_PLAT_WINDOWS_DESKTOP_H
#include <boost/predef/version_number.h>
#include <boost/predef/make.h>
#include <boost/predef/os/windows.h>
#include <boost/predef/platform/windows_uwp.h>
#include <boost/predef/version_number.h>
/*`
[heading `BOOST_PLAT_WINDOWS_DESKTOP`]
[@https://docs.microsoft.com/en-us/windows/uwp/get-started/universal-application-platform-guide UWP]
for Windows Desktop development. Also available if the Platform SDK is too
old to support UWP.
[table
[[__predef_symbol__] [__predef_version__]]
[[`!WINAPI_FAMILY`] [__predef_detection__]]
[[`WINAPI_FAMILY == WINAPI_FAMILY_DESKTOP_APP`] [__predef_detection__]]
[[`!BOOST_PLAT_WINDOWS_UWP`] [__predef_detection__]]
]
*/
#define BOOST_PLAT_WINDOWS_DESKTOP BOOST_VERSION_NUMBER_NOT_AVAILABLE
#if BOOST_OS_WINDOWS && \
( !defined(WINAPI_FAMILY) || (WINAPI_FAMILY == WINAPI_FAMILY_DESKTOP_APP) )
((defined(WINAPI_FAMILY_DESKTOP_APP) && WINAPI_FAMILY == WINAPI_FAMILY_DESKTOP_APP) || \
!BOOST_PLAT_WINDOWS_UWP)
# undef BOOST_PLAT_WINDOWS_DESKTOP
# define BOOST_PLAT_WINDOWS_DESKTOP BOOST_VERSION_NUMBER_AVAILABLE
#endif

View File

@@ -9,13 +9,17 @@ http://www.boost.org/LICENSE_1_0.txt)
#ifndef BOOST_PREDEF_PLAT_WINDOWS_PHONE_H
#define BOOST_PREDEF_PLAT_WINDOWS_PHONE_H
#include <boost/predef/version_number.h>
#include <boost/predef/make.h>
#include <boost/predef/os/windows.h>
#include <boost/predef/platform/windows_uwp.h>
#include <boost/predef/version_number.h>
/*`
[heading `BOOST_PLAT_WINDOWS_PHONE`]
[@https://docs.microsoft.com/en-us/windows/uwp/get-started/universal-application-platform-guide UWP]
for Windows Phone development.
[table
[[__predef_symbol__] [__predef_version__]]
@@ -25,7 +29,8 @@ http://www.boost.org/LICENSE_1_0.txt)
#define BOOST_PLAT_WINDOWS_PHONE BOOST_VERSION_NUMBER_NOT_AVAILABLE
#if BOOST_OS_WINDOWS && defined(WINAPI_FAMILY) && WINAPI_FAMILY == WINAPI_FAMILY_PHONE_APP
#if BOOST_OS_WINDOWS && \
defined(WINAPI_FAMILY_PHONE_APP) && WINAPI_FAMILY == WINAPI_FAMILY_PHONE_APP
# undef BOOST_PLAT_WINDOWS_PHONE
# define BOOST_PLAT_WINDOWS_PHONE BOOST_VERSION_NUMBER_AVAILABLE
#endif

View File

@@ -9,25 +9,33 @@ http://www.boost.org/LICENSE_1_0.txt)
#ifndef BOOST_PREDEF_PLAT_WINDOWS_RUNTIME_H
#define BOOST_PREDEF_PLAT_WINDOWS_RUNTIME_H
#include <boost/predef/version_number.h>
#include <boost/predef/make.h>
#include <boost/predef/os/windows.h>
#include <boost/predef/platform/windows_phone.h>
#include <boost/predef/platform/windows_store.h>
#include <boost/predef/version_number.h>
/*`
[heading `BOOST_PLAT_WINDOWS_RUNTIME`]
Deprecated.
[@https://docs.microsoft.com/en-us/windows/uwp/get-started/universal-application-platform-guide UWP]
for Windows Phone or Store development. This does not align to the existing development model for
UWP and is deprecated. Use one of the other `BOOST_PLAT_WINDOWS_*`definitions instead.
[table
[[__predef_symbol__] [__predef_version__]]
[[`WINAPI_FAMILY == WINAPI_FAMILY_APP`] [__predef_detection__]]
[[`WINAPI_FAMILY == WINAPI_FAMILY_PHONE_APP`] [__predef_detection__]]
[[`BOOST_PLAT_WINDOWS_PHONE`] [__predef_detection__]]
[[`BOOST_PLAT_WINDOWS_STORE`] [__predef_detection__]]
]
*/
#define BOOST_PLAT_WINDOWS_RUNTIME BOOST_VERSION_NUMBER_NOT_AVAILABLE
#if BOOST_OS_WINDOWS && defined(WINAPI_FAMILY) && \
( WINAPI_FAMILY == WINAPI_FAMILY_APP || WINAPI_FAMILY == WINAPI_FAMILY_PHONE_APP )
#if BOOST_OS_WINDOWS && \
(BOOST_PLAT_WINDOWS_STORE || BOOST_PLAT_WINDOWS_PHONE)
# undef BOOST_PLAT_WINDOWS_RUNTIME
# define BOOST_PLAT_WINDOWS_RUNTIME BOOST_VERSION_NUMBER_AVAILABLE
#endif

View File

@@ -0,0 +1,47 @@
/*
Copyright James E. King III, 2017
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_PLAT_WINDOWS_SERVER_H
#define BOOST_PREDEF_PLAT_WINDOWS_SERVER_H
#include <boost/predef/make.h>
#include <boost/predef/os/windows.h>
#include <boost/predef/platform/windows_uwp.h>
#include <boost/predef/version_number.h>
/*`
[heading `BOOST_PLAT_WINDOWS_SERVER`]
[@https://docs.microsoft.com/en-us/windows/uwp/get-started/universal-application-platform-guide UWP]
for Windows Server development.
[table
[[__predef_symbol__] [__predef_version__]]
[[`WINAPI_FAMILY == WINAPI_FAMILY_SERVER`] [__predef_detection__]]
]
*/
#define BOOST_PLAT_WINDOWS_SERVER BOOST_VERSION_NUMBER_NOT_AVAILABLE
#if BOOST_OS_WINDOWS && \
defined(WINAPI_FAMILY_SERVER) && WINAPI_FAMILY == WINAPI_FAMILY_SERVER
# undef BOOST_PLAT_WINDOWS_SERVER
# define BOOST_PLAT_WINDOWS_SERVER BOOST_VERSION_NUMBER_AVAILABLE
#endif
#if BOOST_PLAT_WINDOWS_SERVER
# define BOOST_PLAT_WINDOWS_SERVER_AVAILABLE
# include <boost/predef/detail/platform_detected.h>
#endif
#define BOOST_PLAT_WINDOWS_SERVER_NAME "Windows Server"
#endif
#include <boost/predef/detail/test.h>
BOOST_PREDEF_DECLARE_TEST(BOOST_PLAT_WINDOWS_SERVER,BOOST_PLAT_WINDOWS_SERVER_NAME)

View File

@@ -9,23 +9,30 @@ http://www.boost.org/LICENSE_1_0.txt)
#ifndef BOOST_PREDEF_PLAT_WINDOWS_STORE_H
#define BOOST_PREDEF_PLAT_WINDOWS_STORE_H
#include <boost/predef/version_number.h>
#include <boost/predef/make.h>
#include <boost/predef/os/windows.h>
#include <boost/predef/platform/windows_uwp.h>
#include <boost/predef/version_number.h>
/*`
[heading `BOOST_PLAT_WINDOWS_STORE`]
[@https://docs.microsoft.com/en-us/windows/uwp/get-started/universal-application-platform-guide UWP]
for Windows Store development.
[table
[[__predef_symbol__] [__predef_version__]]
[[`WINAPI_FAMILY == WINAPI_FAMILY_APP`] [__predef_detection__]]
]
[[`WINAPI_FAMILY == WINAPI_FAMILY_PC_APP`] [__predef_detection__]]
[[`WINAPI_FAMILY == WINAPI_FAMILY_APP` (deprecated)] [__predef_detection__]]
]
*/
#define BOOST_PLAT_WINDOWS_STORE BOOST_VERSION_NUMBER_NOT_AVAILABLE
#if BOOST_OS_WINDOWS && defined(WINAPI_FAMILY) && WINAPI_FAMILY == WINAPI_FAMILY_APP
#if BOOST_OS_WINDOWS && \
((defined(WINAPI_FAMILY_PC_APP) && WINAPI_FAMILY == WINAPI_FAMILY_PC_APP) || \
(defined(WINAPI_FAMILY_APP) && WINAPI_FAMILY == WINAPI_FAMILY_APP))
# undef BOOST_PLAT_WINDOWS_STORE
# define BOOST_PLAT_WINDOWS_STORE BOOST_VERSION_NUMBER_AVAILABLE
#endif

View File

@@ -0,0 +1,47 @@
/*
Copyright James E. King III, 2017
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_PLAT_WINDOWS_SYSTEM_H
#define BOOST_PREDEF_PLAT_WINDOWS_SYSTEM_H
#include <boost/predef/make.h>
#include <boost/predef/os/windows.h>
#include <boost/predef/platform/windows_uwp.h>
#include <boost/predef/version_number.h>
/*`
[heading `BOOST_PLAT_WINDOWS_SYSTEM`]
[@https://docs.microsoft.com/en-us/windows/uwp/get-started/universal-application-platform-guide UWP]
for Windows System development.
[table
[[__predef_symbol__] [__predef_version__]]
[[`WINAPI_FAMILY == WINAPI_FAMILY_SYSTEM`] [__predef_detection__]]
]
*/
#define BOOST_PLAT_WINDOWS_SYSTEM BOOST_VERSION_NUMBER_NOT_AVAILABLE
#if BOOST_OS_WINDOWS && \
defined(WINAPI_FAMILY_SYSTEM) && WINAPI_FAMILY == WINAPI_FAMILY_SYSTEM
# undef BOOST_PLAT_WINDOWS_SYSTEM
# define BOOST_PLAT_WINDOWS_SYSTEM BOOST_VERSION_NUMBER_AVAILABLE
#endif
#if BOOST_PLAT_WINDOWS_SYSTEM
# define BOOST_PLAT_WINDOWS_SYSTEM_AVAILABLE
# include <boost/predef/detail/platform_detected.h>
#endif
#define BOOST_PLAT_WINDOWS_SYSTEM_NAME "Windows Drivers and Tools"
#endif
#include <boost/predef/detail/test.h>
BOOST_PREDEF_DECLARE_TEST(BOOST_PLAT_WINDOWS_SYSTEM,BOOST_PLAT_WINDOWS_SYSTEM_NAME)

View File

@@ -0,0 +1,60 @@
/*
Copyright James E. King III, 2017
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_PLAT_WINDOWS_UWP_H
#define BOOST_PREDEF_PLAT_WINDOWS_UWP_H
#include <boost/predef/make.h>
#include <boost/predef/os/windows.h>
#include <boost/predef/version_number.h>
/*`
[heading `BOOST_PLAT_WINDOWS_UWP`]
[@http://docs.microsoft.com/windows/uwp/ Universal Windows Platform]
is available if the current development environment is capable of targeting
UWP development.
[table
[[__predef_symbol__] [__predef_version__]]
[[`__MINGW64_VERSION_MAJOR` from `_mingw.h`] [`>= 3`]]
[[`VER_PRODUCTBUILD` from `ntverp.h`] [`>= 9200`]]
]
*/
#define BOOST_PLAT_WINDOWS_UWP BOOST_VERSION_NUMBER_NOT_AVAILABLE
#define BOOST_PLAT_WINDOWS_SDK_VERSION BOOST_VERSION_NUMBER_NOT_AVAILABLE
#if BOOST_OS_WINDOWS
// MinGW (32-bit) has no ntverp.h header
#if !defined(__MINGW32__)
# include <ntverp.h>
# undef BOOST_PLAT_WINDOWS_SDK_VERSION
# define BOOST_PLAT_WINDOWS_SDK_VERSION BOOST_VERSION_NUMBER(0, 0, VER_PRODUCTBUILD)
#endif
// 9200 is Windows SDK 8.0 from ntverp.h which introduced family support
#if ((BOOST_PLAT_WINDOWS_SDK_VERSION >= BOOST_VERSION_NUMBER(0, 0, 9200)) || \
(defined(__MINGW64__) && __MINGW64_VERSION_MAJOR >= 3))
# undef BOOST_PLAT_WINDOWS_UWP
# define BOOST_PLAT_WINDOWS_UWP BOOST_VERSION_NUMBER_AVAILABLE
#endif
#endif
#if BOOST_PLAT_WINDOWS_UWP
# define BOOST_PLAT_WINDOWS_UWP_AVAILABLE
# include <boost/predef/detail/platform_detected.h>
# include <winapifamily.h> // Windows SDK
#endif
#define BOOST_PLAT_WINDOWS_UWP_NAME "Universal Windows Platform"
#endif
#include <boost/predef/detail/test.h>
BOOST_PREDEF_DECLARE_TEST(BOOST_PLAT_WINDOWS_UWP, BOOST_PLAT_WINDOWS_UWP_NAME)

View File

@@ -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,5,0)
#define BOOST_PREDEF_VERSION BOOST_VERSION_NUMBER(1,10,0)
#endif