mirror of
https://github.com/boostorg/predef.git
synced 2025-07-29 11:37:13 +02:00
Major cleanup and update, although still in progress. Now contains tests for all predefs and utility macros. And added language predefs.
git-svn-id: http://svn.boost.org/svn/boost/sandbox/predef@75548 b8fc166d-592f-0410-95f2-cb63ce0dd405
This commit is contained in:
@ -1,5 +1,5 @@
|
||||
/*
|
||||
Copyright Redshift Software, Inc. 2008-2010
|
||||
Copyright Redshift Software, Inc. 2008-2011
|
||||
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,8 +8,10 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#ifndef BOOST_PREDEF_H
|
||||
#define BOOST_PREDEF_H
|
||||
|
||||
#include <boost/predef/language.h>
|
||||
#include <boost/predef/architecture.h>
|
||||
#include <boost/predef/compiler.h>
|
||||
#include <boost/predef/library.h>
|
||||
#include <boost/predef/platform.h>
|
||||
#include <boost/predef/os.h>
|
||||
|
||||
#endif
|
||||
|
@ -8,6 +8,23 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#ifndef BOOST_PREDEF_ARCHITECTURE_H
|
||||
#define BOOST_PREDEF_ARCHITECTURE_H
|
||||
|
||||
#include <boost/predef/architecture/.h>
|
||||
#include <boost/predef/architecture/alpha.h>
|
||||
#include <boost/predef/architecture/amd64.h>
|
||||
#include <boost/predef/architecture/arm.h>
|
||||
#include <boost/predef/architecture/convex.h>
|
||||
#include <boost/predef/architecture/ia64.h>
|
||||
#include <boost/predef/architecture/m68k.h>
|
||||
#include <boost/predef/architecture/mips.h>
|
||||
#include <boost/predef/architecture/parisc.h>
|
||||
#include <boost/predef/architecture/ppc.h>
|
||||
#include <boost/predef/architecture/pyramid.h>
|
||||
#include <boost/predef/architecture/rs6k.h>
|
||||
#include <boost/predef/architecture/sparc.h>
|
||||
#include <boost/predef/architecture/superh.h>
|
||||
#include <boost/predef/architecture/sys370.h>
|
||||
#include <boost/predef/architecture/sys390.h>
|
||||
#include <boost/predef/architecture/x86.h>
|
||||
#include <boost/predef/architecture/z.h>
|
||||
//#include <boost/predef/architecture/.h>
|
||||
|
||||
#endif
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
Copyright Redshift Software, Inc. 2008-2010
|
||||
Copyright Redshift Software, Inc. 2008-2011
|
||||
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)
|
||||
@ -9,7 +9,14 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_ARCHITECTURE_ALPHA_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_ARCHITECTURE_ALPHA`]
|
||||
|
||||
[@http://en.wikipedia.org/wiki/DEC_Alpha DEC Alpha] architecture:
|
||||
If available versions [4-6] are specifically detected.
|
||||
*/
|
||||
|
||||
#define BOOST_ARCHITECTURE_ALPHA BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
@ -27,4 +34,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_ARCHITECTURE_ALPHA,"DEC Alpha")
|
||||
|
||||
#endif
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
Copyright Redshift Software, Inc. 2008-2010
|
||||
Copyright Redshift Software, Inc. 2008-2011
|
||||
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)
|
||||
@ -9,7 +9,13 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_ARCHITECTURE_AMD64_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_ARCHITECTURE_AMD64`]
|
||||
|
||||
[@http://en.wikipedia.org/wiki/Amd64 American Micro Devices AMD 64] architecture.
|
||||
*/
|
||||
|
||||
#define BOOST_ARCHITECTURE_AMD64 BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
@ -20,4 +26,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_ARCHITECTURE_AMD64 BOOST_VERSION_NUMBER(0,0,1)
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_ARCHITECTURE_AMD64,"American Micro Devices AMD 64")
|
||||
|
||||
#endif
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
Copyright Redshift Software, Inc. 2008-2010
|
||||
Copyright Redshift Software, Inc. 2008-2011
|
||||
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)
|
||||
@ -9,7 +9,13 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_ARCHITECTURE_ARM_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_ARCHITECTURE_ARM`]
|
||||
|
||||
[@http://en.wikipedia.org/wiki/ARM_architecture ARM] architecture.
|
||||
*/
|
||||
|
||||
#define BOOST_ARCHITECTURE_ARM BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
@ -25,4 +31,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_ARCHITECTURE_ARM,"ARM")
|
||||
|
||||
#endif
|
||||
|
43
boost/predef/architecture/convex.h
Normal file
43
boost/predef/architecture/convex.h
Normal file
@ -0,0 +1,43 @@
|
||||
/*
|
||||
Copyright Redshift Software Inc 2011
|
||||
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_CONVEX_H
|
||||
#define BOOST_PREDEF_ARCHITECTURE_CONVEX_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_ARCHITECTURE_CONVEX`]
|
||||
|
||||
[@http://en.wikipedia.org/wiki/Convex_Computer Convex Computer] architecture.
|
||||
*/
|
||||
|
||||
#define BOOST_ARCHITECTURE_CONVEX BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
#if defined(__convex__)
|
||||
#undef BOOST_ARCHITECTURE_CONVEX
|
||||
#if defined(__convex_c1__)
|
||||
#define BOOST_ARCHITECTURE_CONVEX BOOST_VERSION_NUMBER(1,0,0)
|
||||
#elif defined(__convex_c2__)
|
||||
#define BOOST_ARCHITECTURE_CONVEX BOOST_VERSION_NUMBER(2,0,0)
|
||||
#elif defined(__convex_c32__)
|
||||
#define BOOST_ARCHITECTURE_CONVEX BOOST_VERSION_NUMBER(3,2,0)
|
||||
#elif defined(__convex_c34__)
|
||||
#define BOOST_ARCHITECTURE_CONVEX BOOST_VERSION_NUMBER(3,4,0)
|
||||
#elif defined(__convex_c38__)
|
||||
#define BOOST_ARCHITECTURE_CONVEX BOOST_VERSION_NUMBER(3,8,0)
|
||||
#else
|
||||
#define BOOST_ARCHITECTURE_CONVEX BOOST_VERSION_NUMBER(0,0,1)
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_ARCHITECTURE_CONVEX,"Convex Computer")
|
||||
|
||||
|
||||
#endif
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
Copyright Redshift Software, Inc. 2008-2010
|
||||
Copyright Redshift Software, Inc. 2008-2011
|
||||
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)
|
||||
@ -9,15 +9,25 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_ARCHITECTURE_IA64_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_ARCHITECTURE_IA64`]
|
||||
|
||||
[@http://en.wikipedia.org/wiki/Ia64 Intel IA-64] architecture.
|
||||
*/
|
||||
|
||||
#define BOOST_ARCHITECTURE_IA64 BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
#if defined(__ia64__) || defined(_IA64) || \
|
||||
defined(__IA64__) || defined(__ia64) || \
|
||||
defined(_M_IA64)
|
||||
defined(_M_IA64) || defined(__itanium__) || \
|
||||
defined(__x86_64) || defined(__x86_64__)
|
||||
#undef BOOST_ARCHITECTURE_IA64
|
||||
#define BOOST_ARCHITECTURE_IA64 BOOST_VERSION_NUMBER(0,0,1)
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_ARCHITECTURE_IA64,"Intel IA-64")
|
||||
|
||||
#endif
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
Copyright Redshift Software, Inc. 2008-2010
|
||||
Copyright Redshift Software, Inc. 2008-2011
|
||||
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)
|
||||
@ -9,27 +9,36 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_ARCHITECTURE_M68K_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_ARCHITECTURE_M68K`]
|
||||
|
||||
[@http://en.wikipedia.org/wiki/M68k Motorola 68k] architecture.
|
||||
*/
|
||||
|
||||
#define BOOST_ARCHITECTURE_M68K BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
#if defined(__m68k__) || defined(M68000)
|
||||
#undef BOOST_ARCHITECTURE_M68K
|
||||
#if defined(__mc68000__)
|
||||
#define BOOST_ARCHITECTURE_M68K BOOST_VERSION_NUMBER(0,0,1)
|
||||
#elif defined(__mc68010__)
|
||||
#define BOOST_ARCHITECTURE_M68K BOOST_VERSION_NUMBER(1,0,0)
|
||||
#elif defined(__mc68020__)
|
||||
#define BOOST_ARCHITECTURE_M68K BOOST_VERSION_NUMBER(2,0,0)
|
||||
#elif defined(__mc68030__)
|
||||
#define BOOST_ARCHITECTURE_M68K BOOST_VERSION_NUMBER(3,0,0)
|
||||
#elif defined(__mc68040__)
|
||||
#define BOOST_ARCHITECTURE_M68K BOOST_VERSION_NUMBER(4,0,0)
|
||||
#elif defined(__mc68060__)
|
||||
#if defined(__mc68060__) || defined(mc68060) || defined(__mc68060)
|
||||
#define BOOST_ARCHITECTURE_M68K BOOST_VERSION_NUMBER(6,0,0)
|
||||
#elif defined(__mc68040__) || defined(mc68040) || defined(__mc68040)
|
||||
#define BOOST_ARCHITECTURE_M68K BOOST_VERSION_NUMBER(4,0,0)
|
||||
#elif defined(__mc68030__) || defined(mc68030) || defined(__mc68030)
|
||||
#define BOOST_ARCHITECTURE_M68K BOOST_VERSION_NUMBER(3,0,0)
|
||||
#elif defined(__mc68020__) || defined(mc68020) || defined(__mc68020)
|
||||
#define BOOST_ARCHITECTURE_M68K BOOST_VERSION_NUMBER(2,0,0)
|
||||
#elif defined(__mc68010__) || defined(mc68010) || defined(__mc68010)
|
||||
#define BOOST_ARCHITECTURE_M68K BOOST_VERSION_NUMBER(1,0,0)
|
||||
#elif defined(__mc68000__) || defined(mc68000) || defined(__mc68000)
|
||||
#define BOOST_ARCHITECTURE_M68K BOOST_VERSION_NUMBER(0,0,1)
|
||||
#else
|
||||
#define BOOST_ARCHITECTURE_M68K BOOST_VERSION_NUMBER(0,0,1)
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_ARCHITECTURE_M68K,"Motorola 68k")
|
||||
|
||||
#endif
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
Copyright Redshift Software, Inc. 2008-2010
|
||||
Copyright Redshift Software, Inc. 2008-2011
|
||||
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)
|
||||
@ -9,7 +9,13 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_ARCHITECTURE_MIPS_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_ARCHITECTURE_MIPS`]
|
||||
|
||||
[@http://en.wikipedia.org/wiki/MIPS_architecture MIPS] architecture.
|
||||
*/
|
||||
|
||||
#define BOOST_ARCHITECTURE_MIPS BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
@ -31,4 +37,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_ARCHITECTURE_MIPS,"MIPS")
|
||||
|
||||
#endif
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
Copyright Redshift Software, Inc. 2008-2010
|
||||
Copyright Redshift Software, Inc. 2008-2011
|
||||
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)
|
||||
@ -9,21 +9,30 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_ARCHITECTURE_PARISC_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_ARCHITECTURE_PARISK`]
|
||||
|
||||
[@http://en.wikipedia.org/wiki/PA-RISC_family HP/PA RISC] architecture.
|
||||
*/
|
||||
|
||||
#define BOOST_ARCHITECTURE_PARISC BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
#if defined(__hppa__) || defined(__hppa)
|
||||
#if defined(__hppa__) || defined(__hppa) || defined(__HPPA__)
|
||||
#undef BOOST_ARCHITECTURE_PARISC
|
||||
#if defined(_PA_RISC1_0)
|
||||
#define BOOST_ARCHITECTURE_PARISC BOOST_VERSION_NUMBER(1,0,0)
|
||||
#elif defined(_PA_RISC1_1)
|
||||
#elif defined(_PA_RISC1_1) || defined(__HPPA11__) || defined(__PA7100__)
|
||||
#define BOOST_ARCHITECTURE_PARISC BOOST_VERSION_NUMBER(1,1,0)
|
||||
#elif defined(_PA_RISC2_0)
|
||||
#elif defined(_PA_RISC2_0) || defined(__RISC2_0__) || defined(__HPPA20__) || defined(__PA8000__)
|
||||
#define BOOST_ARCHITECTURE_PARISC BOOST_VERSION_NUMBER(2,0,0)
|
||||
#else
|
||||
#define BOOST_ARCHITECTURE_PARISC BOOST_VERSION_NUMBER(0,0,1)
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_ARCHITECTURE_PARISC,"HP/PA RISC")
|
||||
|
||||
#endif
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
Copyright Redshift Software, Inc. 2008-2010
|
||||
Copyright Redshift Software, Inc. 2008-2011
|
||||
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)
|
||||
@ -9,13 +9,21 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_ARCHITECTURE_PPC_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_ARCHITECTURE_PPC`]
|
||||
|
||||
[@http://en.wikipedia.org/wiki/PowerPC PowerPC] architecture.
|
||||
*/
|
||||
|
||||
#define BOOST_ARCHITECTURE_PPC BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
#if defined(__powerpc) || defined(__powerpc__) || \
|
||||
defined(__POWERPC__) || defined(__ppc__) || \
|
||||
defined(_M_PPC) || defined(_ARCH_PPC)
|
||||
defined(_M_PPC) || defined(_ARCH_PPC) || \
|
||||
defined(__PPCGECKO__) || defined(__PPCBROADWAY__) || \
|
||||
defined(_XENON)
|
||||
#undef BOOST_ARCHITECTURE_PPC
|
||||
#if defined(__ppc601__) || defined(_ARCH_601)
|
||||
#define BOOST_ARCHITECTURE_PPC BOOST_VERSION_NUMBER(6,1,0)
|
||||
@ -28,4 +36,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_ARCHITECTURE_PPC,"PowerPC")
|
||||
|
||||
#endif
|
||||
|
30
boost/predef/architecture/pyramid.h
Normal file
30
boost/predef/architecture/pyramid.h
Normal file
@ -0,0 +1,30 @@
|
||||
/*
|
||||
Copyright Redshift Software Inc 2011
|
||||
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_PYRAMID_H
|
||||
#define BOOST_PREDEF_ARCHITECTURE_PYRAMID_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_ARCHITECTURE_PYRAMID`]
|
||||
|
||||
Pyramid 9810 architecture.
|
||||
*/
|
||||
|
||||
#define BOOST_ARCHITECTURE_PYRAMID BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
#if defined(pyr)
|
||||
#undef BOOST_ARCHITECTURE_PYRAMID
|
||||
#define BOOST_ARCHITECTURE_PYRAMID BOOST_VERSION_NUMBER(0,0,1)
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_ARCHITECTURE_PYRAMID,"Pyramid 9810")
|
||||
|
||||
#endif
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
Copyright Redshift Software, Inc. 2008-2010
|
||||
Copyright Redshift Software, Inc. 2008-2011
|
||||
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)
|
||||
@ -9,7 +9,13 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_ARCHITECTURE_RS6K_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_ARCHITECTURE_RS6000`]
|
||||
|
||||
[@http://en.wikipedia.org/wiki/RS/6000 RS/6000] architecture.
|
||||
*/
|
||||
|
||||
#define BOOST_ARCHITECTURE_RS6000 BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
@ -22,4 +28,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
|
||||
#define BOOST_ARCHITECTURE_PWR BOOST_ARCHITECTURE_RS6000
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_ARCHITECTURE_RS6000,"RS/6000")
|
||||
|
||||
#endif
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
Copyright Redshift Software, Inc. 2008-2010
|
||||
Copyright Redshift Software, Inc. 2008-2011
|
||||
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)
|
||||
@ -9,19 +9,28 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_ARCHITECTURE_SPARC_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_ARCHITECTURE_SPARC`]
|
||||
|
||||
[@http://en.wikipedia.org/wiki/SPARC SPARC] architecture.
|
||||
*/
|
||||
|
||||
#define BOOST_ARCHITECTURE_SPARC BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
#if defined(__sparc__) || defined(__sparc)
|
||||
#undef BOOST_ARCHITECTURE_SPARC
|
||||
#if defined(__sparcv8)
|
||||
#define BOOST_ARCHITECTURE_SPARC BOOST_VERSION_NUMBER(8,0,0)
|
||||
#elif defined(__sparcv9)
|
||||
#if defined(__sparcv9)
|
||||
#define BOOST_ARCHITECTURE_SPARC BOOST_VERSION_NUMBER(9,0,0)
|
||||
#elif defined(__sparcv8)
|
||||
#define BOOST_ARCHITECTURE_SPARC BOOST_VERSION_NUMBER(8,0,0)
|
||||
#else
|
||||
#define BOOST_ARCHITECTURE_SPARC BOOST_VERSION_NUMBER(0,0,1)
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_ARCHITECTURE_SPARC,"SPARC")
|
||||
|
||||
#endif
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
Copyright Redshift Software, Inc. 2008-2010
|
||||
Copyright Redshift Software, Inc. 2008-2011
|
||||
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)
|
||||
@ -9,25 +9,35 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_ARCHITECTURE_SUPERH_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_ARCHITECTURE_SH`]
|
||||
|
||||
[@http://en.wikipedia.org/wiki/SuperH SuperH] architecture:
|
||||
If available versions [1-5] are specifically detected.
|
||||
*/
|
||||
|
||||
#define BOOST_ARCHITECTURE_SH BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
#if defined(__sh__)
|
||||
#undef BOOST_ARCHITECTURE_SH
|
||||
#if defined(__sh1__)
|
||||
#define BOOST_ARCHITECTURE_SH BOOST_VERSION_NUMBER(1,0,0)
|
||||
#elif defined(__sh2__)
|
||||
#define BOOST_ARCHITECTURE_SH BOOST_VERSION_NUMBER(2,0,0)
|
||||
#elif defined(__sh3__) || defined(__SH3__)
|
||||
#define BOOST_ARCHITECTURE_SH BOOST_VERSION_NUMBER(3,0,0)
|
||||
#if defined(__SH5__)
|
||||
#define BOOST_ARCHITECTURE_SH BOOST_VERSION_NUMBER(5,0,0)
|
||||
#elif defined(__SH4__)
|
||||
#define BOOST_ARCHITECTURE_SH BOOST_VERSION_NUMBER(4,0,0)
|
||||
#elif defined(__SH5__)
|
||||
#define BOOST_ARCHITECTURE_SH BOOST_VERSION_NUMBER(5,0,0)
|
||||
#elif defined(__sh3__) || defined(__SH3__)
|
||||
#define BOOST_ARCHITECTURE_SH BOOST_VERSION_NUMBER(3,0,0)
|
||||
#elif defined(__sh2__)
|
||||
#define BOOST_ARCHITECTURE_SH BOOST_VERSION_NUMBER(2,0,0)
|
||||
#elif defined(__sh1__)
|
||||
#define BOOST_ARCHITECTURE_SH BOOST_VERSION_NUMBER(1,0,0)
|
||||
#else
|
||||
#define BOOST_ARCHITECTURE_SH BOOST_VERSION_NUMBER(0,0,1)
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_ARCHITECTURE_SH,"SuperH")
|
||||
|
||||
#endif
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
Copyright Redshift Software, Inc. 2008-2010
|
||||
Copyright Redshift Software, Inc. 2008-2011
|
||||
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)
|
||||
@ -9,7 +9,13 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_ARCHITECTURE_SYS370_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_ARCHITECTURE_SYS370`]
|
||||
|
||||
[@http://en.wikipedia.org/wiki/System/370 System/370] architecture.
|
||||
*/
|
||||
|
||||
#define BOOST_ARCHITECTURE_SYS370 BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
@ -18,4 +24,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_ARCHITECTURE_SYS370 BOOST_VERSION_NUMBER(0,0,1)
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_ARCHITECTURE_SYS370,"System/370")
|
||||
|
||||
#endif
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
Copyright Redshift Software, Inc. 2008-2010
|
||||
Copyright Redshift Software, Inc. 2008-2011
|
||||
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)
|
||||
@ -9,7 +9,13 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_ARCHITECTURE_SYS390_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_ARCHITECTURE_SYS390`]
|
||||
|
||||
[@http://en.wikipedia.org/wiki/System/390 System/390] architecture.
|
||||
*/
|
||||
|
||||
#define BOOST_ARCHITECTURE_SYS390 BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
@ -18,4 +24,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_ARCHITECTURE_SYS390 BOOST_VERSION_NUMBER(0,0,1)
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_ARCHITECTURE_SYS390,"System/390")
|
||||
|
||||
#endif
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
Copyright Redshift Software, Inc. 2008-2010
|
||||
Copyright Redshift Software, Inc. 2008-2011
|
||||
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)
|
||||
@ -9,24 +9,42 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_ARCHITECTURE_X86_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_ARCHITECTURE_X86 BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
/*`
|
||||
[heading `BOOST_ARCHITECTURE_X86`]
|
||||
|
||||
[@http://en.wikipedia.org/wiki/X86 Intel x86] architecture:
|
||||
If available versions [3-6] are specifically detected.
|
||||
*/
|
||||
|
||||
#if defined(i386) || defined(__i386__) || \
|
||||
defeind(__i486__) || defined(__i586__) || \
|
||||
defeind(__i686__) || defined(__i386) || \
|
||||
defeind(_M_IX86) || defined(_X86_) || \
|
||||
defeind(__THW_INTEL__) || defined(__I86__) || \
|
||||
defeind(__INTEL__)
|
||||
defined(__i486__) || defined(__i586__) || \
|
||||
defined(__i686__) || defined(__i386) || \
|
||||
defined(_M_IX86) || defined(_X86_) || \
|
||||
defined(__THW_INTEL__) || defined(__I86__) || \
|
||||
defined(__INTEL__)
|
||||
#undef BOOST_ARCHITECTURE_X86
|
||||
#if defined(__I86__)
|
||||
#define BOOST_ARCHITECTURE_X86 BOOST_VERSION_NUMBER(__I86__,0,0)
|
||||
#elif defined(_M_IX86)
|
||||
#define BOOST_ARCHITECTURE_X86 BOOST_PREDEF_VRP_N_N_N(_M_IX86)
|
||||
#define BOOST_ARCHITECTURE_X86 BOOST_PREDEF_MAKE_NN_00(_M_IX86)
|
||||
#elif defined(__i686__)
|
||||
#define BOOST_ARCHITECTURE_X86 BOOST_VERSION_NUMBER(6,0,0)
|
||||
#elif defined(__i586__)
|
||||
#define BOOST_ARCHITECTURE_X86 BOOST_VERSION_NUMBER(5,0,0)
|
||||
#elif defined(__i486__)
|
||||
#define BOOST_ARCHITECTURE_X86 BOOST_VERSION_NUMBER(4,0,0)
|
||||
#elif defined(__i386__)
|
||||
#define BOOST_ARCHITECTURE_X86 BOOST_VERSION_NUMBER(3,0,0)
|
||||
#else
|
||||
#define BOOST_ARCHITECTURE_X86 BOOST_VERSION_NUMBER(0,0,1)
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_ARCHITECTURE_X86,"Intel x86")
|
||||
|
||||
#endif
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
Copyright Redshift Software, Inc. 2008-2010
|
||||
Copyright Redshift Software, Inc. 2008-2011
|
||||
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)
|
||||
@ -9,7 +9,12 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_ARCHITECTURE_Z_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_ARCHITECTURE_Z`]
|
||||
|
||||
[@http://en.wikipedia.org/wiki/Z/Architecture z/Architecture] architecture. */
|
||||
|
||||
#define BOOST_ARCHITECTURE_Z BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
@ -18,4 +23,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_ARCHITECTURE_Z BOOST_VERSION_NUMBER(0,0,1)
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_ARCHITECTURE_Z,"z/Architecture")
|
||||
|
||||
#endif
|
||||
|
@ -17,8 +17,8 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#include <boost/predef/compiler/dignus.h>
|
||||
#include <boost/predef/compiler/edg.h>
|
||||
#include <boost/predef/compiler/ekopath.h>
|
||||
#include <boost/predef/compiler/gcc.h>
|
||||
#include <boost/predef/compiler/gcc_xml.h>
|
||||
#include <boost/predef/compiler/gcc.h>
|
||||
#include <boost/predef/compiler/greenhills.h>
|
||||
#include <boost/predef/compiler/hp_acc.h>
|
||||
#include <boost/predef/compiler/iar.h>
|
||||
|
@ -9,13 +9,16 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_COMPILER_BORLAND_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_CXX_BORLAND BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
#if defined(__BORLANDC__)
|
||||
#undef BOOST_CXX_BORLAND
|
||||
#define BOOST_CXX_BORLAND BOOST_PREDEF_VRP_FF_F_F(__BORLANDC__)
|
||||
#define BOOST_CXX_BORLAND BOOST_PREDEF_MAKE_FF_F_F(__BORLANDC__)
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_CXX_BORLAND,"Borland")
|
||||
|
||||
#endif
|
||||
|
@ -9,13 +9,16 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_COMPILER_COMEAU_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_CXX_COMO BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
#if defined(__COMO__)
|
||||
#undef BOOST_CXX_COMO
|
||||
#define BOOST_CXX_COMO BOOST_PREDEF_VRP_F_F_FF(__COMO_VERSION__)
|
||||
#define BOOST_CXX_COMO BOOST_PREDEF_MAKE_F_F_FF(__COMO_VERSION__)
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_CXX_COMO,"Comeau")
|
||||
|
||||
#endif
|
||||
|
@ -9,7 +9,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_COMPILER_COMPAQ_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_CXX_DEC BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
@ -21,4 +21,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
(__DECC_VER%10000))
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_CXX_DEC,"Compaq")
|
||||
|
||||
#endif
|
||||
|
@ -9,7 +9,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_COMPILER_CYGWIN_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_CXX_CYGWIN BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
@ -18,4 +18,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_CXX_CYGWIN BOOST_VERSION_NUMBER(0,0,1)
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_CXX_CYGWIN,"Cygwin")
|
||||
|
||||
#endif
|
||||
|
@ -6,16 +6,19 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
*/
|
||||
|
||||
#ifndef BOOST_PREDEF_COMPILER_DIAB_H
|
||||
#define BOOST_PREDEF_COMPILER_BORLAND_H
|
||||
#define BOOST_PREDEF_COMPILER_DIAB_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_CXX_DIAB BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
#if defined(__DCC__)
|
||||
#undef BOOST_CXX_DIAB
|
||||
#define BOOST_CXX_DIAB BOOST_PREDEF_VRP_N_N_NN(__VERSION_NUMBER__)
|
||||
#define BOOST_CXX_DIAB BOOST_PREDEF_MAKE_N_N_NN(__VERSION_NUMBER__)
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_CXX_DIAB,"Diab")
|
||||
|
||||
#endif
|
||||
|
@ -9,13 +9,16 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_COMPILER_DIGITALMARS_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_CXX_DMC BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
#if defined(__DMC__)
|
||||
#undef BOOST_CXX_DMC
|
||||
#define BOOST_CXX_DMC BOOST_PREDEF_VRP_F_F_F(__DMC__)
|
||||
#define BOOST_CXX_DMC BOOST_PREDEF_MAKE_F_F_F(__DMC__)
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_CXX_DMC,"Digital Mars")
|
||||
|
||||
#endif
|
||||
|
@ -9,13 +9,16 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_COMPILER_DIGNUS_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_CXX_SYSC BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
#if defined(__SYSC__)
|
||||
#undef BOOST_CXX_SYSC
|
||||
#define BOOST_CXX_SYSC BOOST_PREDEF_VRP_N_NN_NN(__SYSC_VER__)
|
||||
#define BOOST_CXX_SYSC BOOST_PREDEF_MAKE_N_NN_NN(__SYSC_VER__)
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_CXX_SYSC,"SysC")
|
||||
|
||||
#endif
|
||||
|
@ -9,13 +9,16 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_COMPILER_EDG_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_CXX_EDG BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
#if defined(__EDG__)
|
||||
#undef BOOST_CXX_EDG
|
||||
#define BOOST_CXX_EDG BOOST_PREDEF_VRP_N_N_N(__EDG_VERSION__)
|
||||
#define BOOST_CXX_EDG BOOST_PREDEF_MAKE_N_N_N(__EDG_VERSION__)
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_CXX_EDG,"EDG")
|
||||
|
||||
#endif
|
||||
|
@ -9,7 +9,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_COMPILER_EKOPATH_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_CXX_PATH BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
@ -19,4 +19,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
BOOST_VERSION_NUMBER(__PATHCC__,__PATHCC_MINOR__,__PATHCC_PATCHLEVEL__)
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_CXX_PATH,"Ekopath")
|
||||
|
||||
#endif
|
||||
|
@ -9,7 +9,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_COMPILER_GCC_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_CXX_GNUC BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
@ -24,4 +24,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_CXX_GNUC,"GNUC")
|
||||
|
||||
#endif
|
||||
|
@ -9,7 +9,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_COMPILER_GCC_XML_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_CXX_GCCXML BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
@ -18,4 +18,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_CXX_GCCXML BOOST_VERSION_NUMBER(0,0,1)
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_CXX_GCCXML,"GCC XML")
|
||||
|
||||
#endif
|
||||
|
@ -9,13 +9,16 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_COMPILER_GREENHILLS_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_CXX_GHS BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
#if defined(__ghs)
|
||||
#undef BOOST_CXX_GHS
|
||||
#define BOOST_CXX_GHS BOOST_PREDEF_VRP_N_N_N(__ghs)
|
||||
#define BOOST_CXX_GHS BOOST_PREDEF_MAKE_N_N_N(__ghs)
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_CXX_GHS,"Green Hills")
|
||||
|
||||
#endif
|
||||
|
@ -9,13 +9,16 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_COMPILER_HP_ACC_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_CXX_HPACC BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
#if defined(__HP_aCC)
|
||||
#undef BOOST_CXX_HPACC
|
||||
#define BOOST_CXX_HPACC BOOST_PREDEF_VRP_NN_NN_NN(__HP_aCC)
|
||||
#define BOOST_CXX_HPACC BOOST_PREDEF_MAKE_NN_NN_NN(__HP_aCC)
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_CXX_HPACC,"HP ACC")
|
||||
|
||||
#endif
|
||||
|
@ -9,13 +9,16 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_COMPILER_IAR_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_CXX_IAR BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
#if defined(__IAR_SYSTEMS_ICC__)
|
||||
#undef BOOST_CXX_IAR
|
||||
#define BOOST_CXX_IAR BOOST_PREDEF_VRP_NN_NN(__VER__)
|
||||
#define BOOST_CXX_IAR BOOST_PREDEF_MAKE_NN_NN(__VER__)
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_CXX_IAR,"IAR")
|
||||
|
||||
#endif
|
||||
|
@ -9,19 +9,22 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_COMPILER_IBM_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_CXX_IBM BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
#if defined(__IBMCPP__) || defined(__xlC__)
|
||||
#undef BOOST_CXX_IBM
|
||||
#if defined(__COMPILER_VER__)
|
||||
#define BOOST_CXX_IBM BOOST_PREDEF_VRP_F_FF_FFFF(__COMPILER_VER__)
|
||||
#define BOOST_CXX_IBM BOOST_PREDEF_MAKE_F_FF_FFFF(__COMPILER_VER__)
|
||||
#elif defined(__xlC__)
|
||||
#define BOOST_CXX_IBM BOOST_PREDEF_VRP_FF_FF(__xlC__)
|
||||
#define BOOST_CXX_IBM BOOST_PREDEF_MAKE_FF_FF(__xlC__)
|
||||
#else
|
||||
#define BOOST_CXX_IBM BOOST_PREDEF_VRP_N_N_N(__IBMCPP__)
|
||||
#define BOOST_CXX_IBM BOOST_PREDEF_MAKE_N_N_N(__IBMCPP__)
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_CXX_IBM,"IBM")
|
||||
|
||||
#endif
|
||||
|
@ -9,14 +9,17 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_COMPILER_INTEL_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_CXX_INTEL BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
#if defined(__INTEL_COMPILER) || defined(__ICL) || defined(__ICC) || \
|
||||
defined(__ECC)
|
||||
#undef BOOST_CXX_INTEL
|
||||
#define BOOST_CXX_INTEL BOOST_PREDEF_VRP_N_N_N(__INTEL_COMPILER)
|
||||
#define BOOST_CXX_INTEL BOOST_PREDEF_MAKE_N_N_N(__INTEL_COMPILER)
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_CXX_INTEL,"Intel")
|
||||
|
||||
#endif
|
||||
|
@ -9,13 +9,16 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_COMPILER_KAI_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_CXX_KCC BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
#if defined(__KCC)
|
||||
#undef BOOST_CXX_KCC
|
||||
#define BOOST_CXX_KCC BOOST_PREDEF_VRP_F_F_FF(__KCC_VERSION)
|
||||
#define BOOST_CXX_KCC BOOST_PREDEF_MAKE_F_F_FF(__KCC_VERSION)
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_CXX_KCC,"Kai")
|
||||
|
||||
#endif
|
||||
|
@ -9,7 +9,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_COMPILER_LLVM_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_CXX_LLVM BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
@ -18,4 +18,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_CXX_LLVM BOOST_VERSION_NUMBER(0,0,1)
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_CXX_LLVM,"LLVM")
|
||||
|
||||
#endif
|
||||
|
@ -9,7 +9,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_COMPILER_METAWARE_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_CXX_HIGHC BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
@ -18,4 +18,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_CXX_HIGHC BOOST_VERSION_NUMBER(0,0,1)
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_CXX_HIGHC,"Metaware HighC")
|
||||
|
||||
#endif
|
||||
|
@ -9,7 +9,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_COMPILER_METROWERKS_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_CXX_MWERKS BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
@ -36,8 +36,11 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#elif __MWERKS__ == 0x3206
|
||||
#define BOOST_CXX_MWERKS BOOST_VERSION_NUMBER(9,5,0)
|
||||
#else
|
||||
#define BOOST_CXX_MWERKS BOOST_PREDEF_VRP_F_F_FF(__MWERKS__)
|
||||
#define BOOST_CXX_MWERKS BOOST_PREDEF_MAKE_F_F_FF(__MWERKS__)
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_CXX_MWERKS,"Metrowerks")
|
||||
|
||||
#endif
|
||||
|
@ -9,7 +9,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_COMPILER_MICROTEC_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_CXX_MRI BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
@ -18,4 +18,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_CXX_MRI BOOST_VERSION_NUMBER(0,0,1)
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_CXX_MRI,"Microtec")
|
||||
|
||||
#endif
|
||||
|
@ -9,7 +9,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_COMPILER_MINGW_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_CXX_MINGW BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
@ -20,4 +20,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
BOOST_VERSION_NUMBER(__MINGW32_MAJOR_VERSION,__MINGW32_MINOR_VERSION,0)
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_CXX_MINGW,"MinGW")
|
||||
|
||||
#endif
|
||||
|
@ -9,13 +9,16 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_COMPILER_MPW_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_CXX_MPW BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
#if defined(__MRC__)
|
||||
#undef BOOST_CXX_MPW
|
||||
#define BOOST_CXX_MPW BOOST_PREDEF_VRP_FF_FF(__MRC__)
|
||||
#define BOOST_CXX_MPW BOOST_PREDEF_MAKE_FF_FF(__MRC__)
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_CXX_MPW,"MPW")
|
||||
|
||||
#endif
|
||||
|
@ -9,13 +9,16 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_COMPILER_PALM_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_CXX_PALM BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
#if defined(_PACC_VER)
|
||||
#undef BOOST_CXX_PALM
|
||||
#define BOOST_CXX_PALM BOOST_PREDEF_VRP_F_FF_FF_000(_PACC_VER)
|
||||
#define BOOST_CXX_PALM BOOST_PREDEF_MAKE_F_FF_FF_000(_PACC_VER)
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_CXX_PALM,"Palm")
|
||||
|
||||
#endif
|
||||
|
@ -9,7 +9,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_COMPILER_PGI_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_CXX_PGI BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
@ -18,4 +18,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_CXX_PGI BOOST_VERSION_NUMBER(0,0,1)
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_CXX_PGI,"PGI")
|
||||
|
||||
#endif
|
||||
|
@ -9,17 +9,20 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_COMPILER_SGI_MIPSPRO_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_CXX_SGI BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
#if defined(__sgi)
|
||||
#undef BOOST_CXX_SGI
|
||||
#if defined(_SGI_COMPILER_VERSION)
|
||||
#define BOOST_CXX_SGI BOOST_PREDEF_VRP_N_N_N(_SGI_COMPILER_VERSION)
|
||||
#define BOOST_CXX_SGI BOOST_PREDEF_MAKE_N_N_N(_SGI_COMPILER_VERSION)
|
||||
#else
|
||||
#define BOOST_CXX_SGI BOOST_PREDEF_VRP_N_N_N(_COMPILER_VERSION)
|
||||
#define BOOST_CXX_SGI BOOST_PREDEF_MAKE_N_N_N(_COMPILER_VERSION)
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_CXX_SGI,"SGI Mips-pro")
|
||||
|
||||
#endif
|
||||
|
@ -9,13 +9,16 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_COMPILER_SUNPRO_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_CXX_SUNPRO BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
#if defined(__SUNPRO_CC)
|
||||
#undef BOOST_CXX_SUNPRO
|
||||
#define BOOST_CXX_SUNPRO BOOST_PREDEF_VRP_F_F_F(__SUNPRO_CC)
|
||||
#define BOOST_CXX_SUNPRO BOOST_PREDEF_MAKE_F_F_F(__SUNPRO_CC)
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_CXX_SUNPRO,"Sun Pro")
|
||||
|
||||
#endif
|
||||
|
@ -9,7 +9,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_COMPILER_TENDRA_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_CXX_TENDRA BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
@ -18,4 +18,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_CXX_TENDRA BOOST_VERSION_NUMBER(0,0,1)
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_CXX_TENDRA,"Tendra")
|
||||
|
||||
#endif
|
||||
|
@ -9,7 +9,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_COMPILER_VISUALC_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_CXX_MSVC BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
@ -35,4 +35,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
BOOST_CXX_MSVC_BUILD)
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_CXX_MSVC,"Microsoft Visual C/C++")
|
||||
|
||||
#endif
|
||||
|
@ -9,13 +9,16 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_COMPILER_WATCOM_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_CXX_WATCOM BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
#if defined(__WATCOMC__)
|
||||
#undef BOOST_CXX_WATCOM
|
||||
#define BOOST_CXX_WATCOM BOOST_PREDEF_VRP_NN_NN(__WATCOMC__)
|
||||
#define BOOST_CXX_WATCOM BOOST_PREDEF_MAKE_NN_NN(__WATCOMC__)
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_CXX_WATCOM,"Watcom")
|
||||
|
||||
#endif
|
||||
|
17
boost/predef/detail/_cassert.h
Normal file
17
boost/predef/detail/_cassert.h
Normal file
@ -0,0 +1,17 @@
|
||||
/*
|
||||
Copyright Redshift Software, Inc. 2011
|
||||
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_DETAIL__CASSERT_H
|
||||
#define BOOST_PREDEF_DETAIL__CASSERT_H
|
||||
|
||||
#if defined(__cpluplus)
|
||||
#include <cassert>
|
||||
#else
|
||||
#include <assert.h>
|
||||
#endif
|
||||
|
||||
#endif
|
15
boost/predef/detail/_exception.h
Normal file
15
boost/predef/detail/_exception.h
Normal file
@ -0,0 +1,15 @@
|
||||
/*
|
||||
Copyright Redshift Software, Inc. 2011
|
||||
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_DETAIL__EXCEPTION_H
|
||||
#define BOOST_PREDEF_DETAIL__EXCEPTION_H
|
||||
|
||||
#if defined(__cpluplus)
|
||||
#include <exception>
|
||||
#endif
|
||||
|
||||
#endif
|
17
boost/predef/detail/test.h
Normal file
17
boost/predef/detail/test.h
Normal file
@ -0,0 +1,17 @@
|
||||
/*
|
||||
Copyright Redshift Software Inc. 2011
|
||||
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_DETAIL_TEST_H
|
||||
#define BOOST_PREDEF_DETAIL_TEST_H
|
||||
|
||||
#if !defined(BOOST_PREDEF_INTERNAL_GENERATE_TESTS)
|
||||
|
||||
#define BOOST_PREDEF_DECLARE_TEST(x,s)
|
||||
|
||||
#endif
|
||||
|
||||
#endif
|
@ -1,32 +0,0 @@
|
||||
/*
|
||||
Copyright Redshift Software, Inc. 2008-2010
|
||||
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_DETAIL_VRP_H
|
||||
#define BOOST_PREDEF_DETAIL_VRP_H
|
||||
|
||||
/* Shorthands for the common version number formats used by vendors... */
|
||||
|
||||
/* Hexadecimal... */
|
||||
#define BOOST_PREDEF_VRP_F_F_F(V) BOOST_VERSION_NUMBER((V&0xF00)>>8,(V&0xF0)>>4,(V&0xF))
|
||||
#define BOOST_PREDEF_VRP_FF_F_F(V) BOOST_VERSION_NUMBER((V&0xFF00)>>8,(V&0xF0)>>4,(V&0xF))
|
||||
#define BOOST_PREDEF_VRP_F_F_FF(V) BOOST_VERSION_NUMBER((V&0xF000)>>12,(V&0xF00)>>8,(V&0xFF))
|
||||
#define BOOST_PREDEF_VRP_FF_FF(V) BOOST_VERSION_NUMBER((V&0xFF00)>>8,(V&0xFF),0)
|
||||
#define BOOST_PREDEF_VRP_F_FF_FFFF(V) BOOST_VERSION_NUMBER((V&0xF000000)>>24,(V&0xFF0000)>>16,(V&0xFFFF))
|
||||
#define BOOST_PREDEF_VRP_FF_FF_F(V) BOOST_VERSION_NUMBER((V&0xFF000)>>12,(V&0xFF0)>>4,(V&0xF))
|
||||
#define BOOST_PREDEF_VRP_F_FF_FF_000(V) BOOST_VERSION_NUMBER((V&0xF0000000)>>28,(V&0xFF00000)>>20,(V&0xFF000)>>12)
|
||||
|
||||
/* Decimal... */
|
||||
#define BOOST_PREDEF_VRP_N_N_N(V) BOOST_VERSION_NUMBER((V)/100,(V%100)/10,(V%10))
|
||||
#define BOOST_PREDEF_VRP_NN_NN_NN(V) BOOST_VERSION_NUMBER((V)/10000,(V%10000)/100,(V%100))
|
||||
#define BOOST_PREDEF_VRP_NN_NN(V) BOOST_VERSION_NUMBER((V%10000)/100,(V%100),0)
|
||||
#define BOOST_PREDEF_VRP_N_N_NN(V) BOOST_VERSION_NUMBER((V)/1000,(V%1000)/100,(V%100))
|
||||
#define BOOST_PREDEF_VRP_N_NN_NN(V) BOOST_VERSION_NUMBER((V)/10000,(V%10000)/100,(V%100))
|
||||
#define BOOST_PREDEF_VRP_N_N_N_000(V) BOOST_VERSION_NUMBER((V%100000)/100000,(V%10000)/10000,(V%1000)/1000)
|
||||
#define BOOST_PREDEF_VRP_N_NN_000(V) BOOST_VERSION_NUMBER((V%100000)/100000,(V%10000)/1000,0)
|
||||
#define BOOST_PREDEF_VRP_NN_NN_00_NN_00(V) BOOST_VERSION_NUMBER((V)/100000000,(V%100000000)/1000000,(V%10000)/100)
|
||||
|
||||
#endif
|
15
boost/predef/language.h
Normal file
15
boost/predef/language.h
Normal file
@ -0,0 +1,15 @@
|
||||
/*
|
||||
Copyright Redshift Software Inc. 2011
|
||||
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_H
|
||||
#define BOOST_PREDEF_LANGUAGE_H
|
||||
|
||||
#include <boost/predef/language/stdc.h>
|
||||
#include <boost/predef/language/stdcpp.h>
|
||||
#include <boost/predef/language/objc.h>
|
||||
|
||||
#endif
|
30
boost/predef/language/objc.h
Normal file
30
boost/predef/language/objc.h
Normal file
@ -0,0 +1,30 @@
|
||||
/*
|
||||
Copyright Redshift Software Inc. 2011
|
||||
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_OBJC_H
|
||||
#define BOOST_PREDEF_LANGUAGE_OBJC_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_LANGUAGE_OBJC`]
|
||||
|
||||
Objective C language.
|
||||
*/
|
||||
|
||||
#define BOOST_LANGUAGE_OBJC BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
#if defined(__OBJC__)
|
||||
#undef BOOST_LANGUAGE_OBJC
|
||||
#define BOOST_LANGUAGE_OBJC BOOST_VERSION_NUMBER(0,0,1)
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_LANGUAGE_OBJC,"Objective C")
|
||||
|
||||
#endif
|
39
boost/predef/language/stdc.h
Normal file
39
boost/predef/language/stdc.h
Normal file
@ -0,0 +1,39 @@
|
||||
/*
|
||||
Copyright Redshift Software Inc. 2011
|
||||
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_STDC_H
|
||||
#define BOOST_PREDEF_LANGUAGE_STDC_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_LANGUAGE_STDC`]
|
||||
|
||||
Standard C language. If available, the year of the standard
|
||||
is detected as 0.0.YYYY.
|
||||
*/
|
||||
|
||||
#define BOOST_LANGUAGE_STDC BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
#if defined(__STDC__)
|
||||
#undef BOOST_LANGUAGE_STDC
|
||||
#if defined(__STDC_VERSION__)
|
||||
#if (__STDC_VERSION__ > 100)
|
||||
#define BOOST_LANGUAGE_STDC BOOST_VERSION_NUMBER(0,0,__STDC_VERSION__/100)
|
||||
#else
|
||||
#define BOOST_LANGUAGE_STDC BOOST_VERSION_NUMBER(0,0,1)
|
||||
#endif
|
||||
#else
|
||||
#define BOOST_LANGUAGE_STDC BOOST_VERSION_NUMBER(0,0,1)
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_LANGUAGE_STDC,"Standard C")
|
||||
|
||||
#endif
|
72
boost/predef/language/stdcpp.h
Normal file
72
boost/predef/language/stdcpp.h
Normal file
@ -0,0 +1,72 @@
|
||||
/*
|
||||
Copyright Redshift Software Inc. 2011
|
||||
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_STDCPP_H
|
||||
#define BOOST_PREDEF_LANGUAGE_STDCPP_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
/*`
|
||||
[heading `BOOST_LANGUAGE_STDCPP`]
|
||||
|
||||
Standard C++ language. If available, the year of the standard
|
||||
is detected as 0.0.YYYY.
|
||||
*/
|
||||
|
||||
#define BOOST_LANGUAGE_STDCPP BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
#if defined(__cplusplus)
|
||||
#undef BOOST_LANGUAGE_STDCPP
|
||||
#if (__cplusplus > 100)
|
||||
#define BOOST_LANGUAGE_STDCPP BOOST_VERSION_NUMBER(0,0,__cplusplus/100)
|
||||
#else
|
||||
#define BOOST_LANGUAGE_STDCPP BOOST_VERSION_NUMBER(0,0,1)
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_LANGUAGE_STDCPP,"Standard C++")
|
||||
|
||||
/*`
|
||||
[heading `BOOST_LANGUAGE_STDCPPCLI`]
|
||||
|
||||
Standard C++/CLI language. If available, the year of the standard
|
||||
is detected as 0.0.YYYY.
|
||||
*/
|
||||
|
||||
#define BOOST_LANGUAGE_STDCPPCLI BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
#if defined(__cplusplus_cli)
|
||||
#undef BOOST_LANGUAGE_STDCPPCLI
|
||||
#if (__cplusplus_cli > 100)
|
||||
#define BOOST_LANGUAGE_STDCPPCLI BOOST_VERSION_NUMBER(0,0,__cplusplus_cli/100)
|
||||
#else
|
||||
#define BOOST_LANGUAGE_STDCPPCLI BOOST_VERSION_NUMBER(0,0,1)
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_LANGUAGE_STDCPPCLI,"Standard C++/CLI")
|
||||
|
||||
/*`
|
||||
[heading `BOOST_LANGUAGE_STDECPP`]
|
||||
|
||||
Standard Embedded C++ language.
|
||||
*/
|
||||
|
||||
#define BOOST_LANGUAGE_STDECPP BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
#if defined(__embedded_cplusplus)
|
||||
#undef BOOST_LANGUAGE_STDECPP
|
||||
#define BOOST_LANGUAGE_STDECPP BOOST_VERSION_NUMBER(0,0,1)
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_LANGUAGE_STDECPP,"Standard Embedded C++")
|
||||
|
||||
#endif
|
@ -8,7 +8,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#ifndef BOOST_PREDEF_LIBRARY_C_H
|
||||
#define BOOST_PREDEF_LIBRARY_C_H
|
||||
|
||||
#include <cassert>
|
||||
#include <boost/predef/detail/_cassert.h>
|
||||
|
||||
#include <boost/predef/library/c/gnu.h>
|
||||
#include <boost/predef/library/c/uc.h>
|
||||
|
@ -9,7 +9,13 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_LIBRARY_C_GNU_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#if defined(__STDC__)
|
||||
#include <stddef.h>
|
||||
#elif defined(__cplusplus)
|
||||
#include <cstddef>
|
||||
#endif
|
||||
|
||||
#define BOOST_LIBC_GNU BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
@ -21,6 +27,10 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#else
|
||||
#define BOOST_LIBC_GNU \
|
||||
BOOST_VERSION_NUMBER(__GNU_LIBRARY__,__GNU_LIBRARY_MINOR__,0)
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_LIBC_GNU,"GNU")
|
||||
|
||||
#endif
|
||||
|
@ -9,7 +9,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_LIBRARY_C_UC_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_LIBC_UC BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
@ -19,4 +19,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
__UCLIBC_MAJOR__,__UCLIBC_MINOR__,__UCLIBC_SUBLEVEL__)
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_LIBC_UC,"uC")
|
||||
|
||||
#endif
|
||||
|
@ -9,7 +9,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_LIBRARY_C_VMS_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_LIBC_VMS BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
@ -21,4 +21,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
(__CRTL_VER%10000)/100)
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_LIBC_VMS,"VMS")
|
||||
|
||||
#endif
|
||||
|
@ -9,13 +9,16 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_LIBRARY_C_ZOS_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_LIBC_ZOS BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
#if defined(__LIBREL__)
|
||||
#undef BOOST_LIBC_ZOS
|
||||
#define BOOST_LIBC_ZOS BOOST_PREDEF_VRP_F_FF_FFFF(__LIBREL__)
|
||||
#define BOOST_LIBC_ZOS BOOST_PREDEF_MAKE_F_FF_FFFF(__LIBREL__)
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_LIBC_ZOS,"zOS")
|
||||
|
||||
#endif
|
||||
|
@ -16,11 +16,11 @@ seems to be <exception>. Boost uses <utility> but as far
|
||||
as I can tell (RR) it's not a standalone header in most
|
||||
implementations. Using <exception> also has the benefit of
|
||||
being available in EC++, so we get a chance to make this work
|
||||
for embeded users. And since it's not a header impacted by TR1
|
||||
for embedded users. And since it's not a header impacted by TR1
|
||||
there's no magic needed for inclusion in the face of the
|
||||
Boost.TR1 library.
|
||||
*/
|
||||
#include <exception>
|
||||
#include <boost/predef/detail/_exception.h>
|
||||
|
||||
/*
|
||||
STLPort library; this _must_ come first, otherwise since
|
||||
@ -30,7 +30,7 @@ can end up detecting that first rather than STLport:
|
||||
#include <boost/predef/library/std/stlport.h>
|
||||
|
||||
/*
|
||||
The rest in apha order, except for Dinkumware.
|
||||
The rest in alpha order, except for Dinkumware.
|
||||
*/
|
||||
#include <boost/predef/library/std/libcomo.h>
|
||||
#include <boost/predef/library/std/modena.h>
|
||||
|
@ -9,17 +9,20 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_LIBRARY_STD_DINKUMWARE_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_LIBSTD_DINKUMWARE BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
#if (defined(_YVALS) && !defined(__IBMCPP__)) || defined(_CPPLIB_VER)
|
||||
#undef BOOST_LIBSTD_DINKUMWARE
|
||||
#if defined(_CPPLIB_VER)
|
||||
#define BOOST_LIBSTD_DINKUMWARE BOOST_PREDEF_VRP_NN_NN(__CPPLIB_VER)
|
||||
#define BOOST_LIBSTD_DINKUMWARE BOOST_PREDEF_MAKE_NN_NN(__CPPLIB_VER)
|
||||
#else
|
||||
#define BOOST_LIBSTD_DINKUMWARE BOOST_VERSION_NUMBER(0,0,1)
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_LIBSTD_DINKUMWARE,"Dinkumware")
|
||||
|
||||
#endif
|
||||
|
@ -9,7 +9,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_LIBRARY_STD_LIBCOMO_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_LIBSTD_COMO BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
@ -18,4 +18,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_LIBSTD_COMO BOOST_VERSION_NUMBER(__LIBCOMO_VERSION__,0,0)
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_LIBSTD_COMO,"Como")
|
||||
|
||||
#endif
|
||||
|
@ -9,7 +9,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_LIBRARY_STD_MODENA_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_LIBSTD_MSIPL BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
@ -18,4 +18,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_LIBSTD_MSIPL BOOST_VERSION_NUMBER(0,0,1)
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_LIBSTD_MSIPL,"Modena MSIPL")
|
||||
|
||||
#endif
|
||||
|
@ -9,17 +9,20 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_LIBRARY_STD_MSL_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_LIBSTD_MSL BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
#if defined(__MSL_CPP__) || defined(__MSL__)
|
||||
#undef BOOST_LIBSTD_MSL
|
||||
#if defined(__MSL_CPP__)
|
||||
#define BOOST_LIBSTD_MSL BOOST_PREDEF_VRP_F_F_FF(__MSL_CPP__)
|
||||
#define BOOST_LIBSTD_MSL BOOST_PREDEF_MAKE_F_F_FF(__MSL_CPP__)
|
||||
#else
|
||||
#define BOOST_LIBSTD_MSL BOOST_PREDEF_VRP_F_F_FF(__MSL__)
|
||||
#define BOOST_LIBSTD_MSL BOOST_PREDEF_MAKE_F_F_FF(__MSL__)
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_LIBSTD_MSL,"Metrowerks")
|
||||
|
||||
#endif
|
||||
|
@ -9,7 +9,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_LIBRARY_STD_ROGUEWAVE_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_LIBSTD_RW BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
@ -17,13 +17,16 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#undef BOOST_LIBSTD_RW
|
||||
#if defined(_RWSTD_VER)
|
||||
#if _RWSTD_VER < 0x010000
|
||||
#define BOOST_LIBSTD_RW BOOST_PREDEF_VRP_FF_FF_F(_RWSTD_VER)
|
||||
#define BOOST_LIBSTD_RW BOOST_PREDEF_MAKE_FF_FF_F(_RWSTD_VER)
|
||||
#else
|
||||
#define BOOST_LIBSTD_RW BOOST_PREDEF_VRP_FF_FF_FF(_RWSTD_VER)
|
||||
#define BOOST_LIBSTD_RW BOOST_PREDEF_MAKE_FF_FF_FF(_RWSTD_VER)
|
||||
#endif
|
||||
#else
|
||||
#define BOOST_LIBSTD_RW BOOST_VERSION_NUMBER(0,0,1)
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_LIBSTD_RW,"Roguewave")
|
||||
|
||||
#endif
|
||||
|
@ -9,17 +9,20 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_LIBRARY_STD_SGI_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_LIBSTD_SGI BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
#if defined(__STL_CONFIG_H)
|
||||
#undef BOOST_LIBSTD_SGI
|
||||
#if defined(__SGI_STL)
|
||||
#define BOOST_LIBSTD_SGI BOOST_PREDEF_VRP_F_F_F(__SGI_STL)
|
||||
#define BOOST_LIBSTD_SGI BOOST_PREDEF_MAKE_F_F_F(__SGI_STL)
|
||||
#else
|
||||
#define BOOST_LIBSTD_SGI BOOST_VERSION_NUMBER(0,0,1)
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_LIBSTD_SGI,"SGI")
|
||||
|
||||
#endif
|
||||
|
@ -9,17 +9,22 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_LIBRARY_STD_STDCPP3_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_LIBSTD_GNU BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
#if defined(__GLIBCPP__) || defined(__GLIBCXX__)
|
||||
#undef BOOST_LIBSTD_GNU
|
||||
#if defined(__GLIBCXX__)
|
||||
#define BOOST_LIBSTD_GNU BOOST_PREDEF_VRP_NN_NN_NN(__GLIBCXX__)
|
||||
#define BOOST_LIBSTD_GNU BOOST_PREDEF_MAKE_YYYY_MM_DD(__GLIBCXX__)
|
||||
#elif
|
||||
#define BOOST_LIBSTD_GNU BOOST_PREDEF_MAKE_YYYY_MM_DD(__GLIBCPP__)
|
||||
#else
|
||||
#define BOOST_LIBSTD_GNU BOOST_PREDEF_VRP_NN_NN_NN(__GLIBCPP__)
|
||||
#define BOOST_LIBSTD_GNU BOOST_VERSION_NUMBER(0,0,1)
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_LIBSTD_GNU,"GNU")
|
||||
|
||||
#endif
|
||||
|
@ -9,7 +9,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_LIBRARY_STD_STLPORT_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_LIBSTD_STLPORT BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
@ -19,10 +19,13 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_LIBSTD_STLPORT \
|
||||
BOOST_VERSION_NUMBER(_STLPORT_MAJOR,_STLPORT_MINOR,_STLPORT_PATCHLEVEL)
|
||||
#elif defined(_STLPORT_VERSION)
|
||||
#define BOOST_LIBSTD_STLPORT BOOST_PREDEF_VRP_F_F_F(_STLPORT_VERSION)
|
||||
#define BOOST_LIBSTD_STLPORT BOOST_PREDEF_MAKE_F_F_F(_STLPORT_VERSION)
|
||||
#else
|
||||
#define BOOST_LIBSTD_STLPORT BOOST_PREDEF_VRP_F_F_F(__SGI_STL_PORT)
|
||||
#define BOOST_LIBSTD_STLPORT BOOST_PREDEF_MAKE_F_F_F(__SGI_STL_PORT)
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_LIBSTD_STLPORT,"STLport")
|
||||
|
||||
#endif
|
||||
|
@ -9,7 +9,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_PREDEF_LIBRARY_STD_VACPP_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_LIBSTD_IBM BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
@ -18,4 +18,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_LIBSTD_IBM BOOST_VERSION_NUMBER(0,0,1)
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_LIBSTD_IBM,"IBM VACPP")
|
||||
|
||||
#endif
|
||||
|
72
boost/predef/make.h
Normal file
72
boost/predef/make.h
Normal file
@ -0,0 +1,72 @@
|
||||
/*
|
||||
Copyright Redshift Software, Inc. 2008-2010
|
||||
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)
|
||||
*/
|
||||
#include <boost/predef/detail/test.h>
|
||||
|
||||
#ifndef BOOST_PREDEF_MAKE_H
|
||||
#define BOOST_PREDEF_MAKE_H
|
||||
|
||||
/*
|
||||
Shorthands for the common version number formats used by vendors...
|
||||
*/
|
||||
|
||||
/*`
|
||||
[heading `BOOST_PREDEF_MAKE_F..` macros]
|
||||
|
||||
These set of macros decompose common vendor version number
|
||||
macros which are composed of hexadecimal digits. The naming
|
||||
convention indicates what the format of the vendor version
|
||||
number. Where "`F`" indicates a hexadecimal digit, "`_`"
|
||||
separates the major/minor/patch parts of the version number,
|
||||
and "`0`" indicates an ignored hexadecimal digit. Macros are:
|
||||
*/
|
||||
/*` `BOOST_PREDER_MAKE_F_F_F(V)` */
|
||||
#define BOOST_PREDEF_MAKE_F_F_F(V) BOOST_VERSION_NUMBER((V&0xF00)>>8,(V&0xF0)>>4,(V&0xF))
|
||||
/*` `BOOST_PREDEF_MAKE_FF_F_F(V)` */
|
||||
#define BOOST_PREDEF_MAKE_FF_F_F(V) BOOST_VERSION_NUMBER((V&0xFF00)>>8,(V&0xF0)>>4,(V&0xF))
|
||||
/*` `BOOST_PREDEF_MAKE_F_F_FF(V)` */
|
||||
#define BOOST_PREDEF_MAKE_F_F_FF(V) BOOST_VERSION_NUMBER((V&0xF000)>>12,(V&0xF00)>>8,(V&0xFF))
|
||||
/*` `BOOST_PREDEF_MAKE_FF_FF(V)` */
|
||||
#define BOOST_PREDEF_MAKE_FF_FF(V) BOOST_VERSION_NUMBER((V&0xFF00)>>8,(V&0xFF),0)
|
||||
/*` `BOOST_PREDEF_MAKE_F_FF_FFFF(V)` */
|
||||
#define BOOST_PREDEF_MAKE_F_FF_FFFF(V) BOOST_VERSION_NUMBER((V&0xF000000)>>24,(V&0xFF0000)>>16,(V&0xFFFF))
|
||||
/*` `BOOST_PREDEF_MAKE_FF_FF_F(V)` */
|
||||
#define BOOST_PREDEF_MAKE_FF_FF_F(V) BOOST_VERSION_NUMBER((V&0xFF000)>>12,(V&0xFF0)>>4,(V&0xF))
|
||||
/*` `BOOST_PREDEF_MAKE_F_FF_FF_000(V)` */
|
||||
#define BOOST_PREDEF_MAKE_F_FF_FF_000(V) BOOST_VERSION_NUMBER((V&0xF0000000)>>28,(V&0xFF00000)>>20,(V&0xFF000)>>12)
|
||||
|
||||
/*`
|
||||
[heading `BOOST_PREDEF_MAKE_N..` macros]
|
||||
|
||||
These set of macros decompose common vendor version number
|
||||
macros which are composed of decimal digits. The naming
|
||||
convention indicates what the format of the vendor version
|
||||
number. Where "`N`" indicates a decimal digit, "`_`"
|
||||
separates the major/minor/patch parts of the version number,
|
||||
and "`0`" indicates an ignored decimal digit. Macros are:
|
||||
*/
|
||||
/*` `BOOST_PREDEF_MAKE_N_N_N(V)` */
|
||||
#define BOOST_PREDEF_MAKE_N_N_N(V) BOOST_VERSION_NUMBER((V)/100,(V%100)/10,(V%10))
|
||||
/*` `BOOST_PREDEF_MAKE_NN_NN_NN(V)` */
|
||||
#define BOOST_PREDEF_MAKE_NN_NN_NN(V) BOOST_VERSION_NUMBER((V)/10000,(V%10000)/100,(V%100))
|
||||
/*` `BOOST_PREDEF_MAKE_NN_NN(V)` */
|
||||
#define BOOST_PREDEF_MAKE_NN_NN(V) BOOST_VERSION_NUMBER((V%10000)/100,(V%100),0)
|
||||
/*` `BOOST_PREDEF_MAKE_N_N_NN(V)` */
|
||||
#define BOOST_PREDEF_MAKE_N_N_NN(V) BOOST_VERSION_NUMBER((V)/1000,(V%1000)/100,(V%100))
|
||||
/*` `BOOST_PREDEF_MAKE_N_NN_NN(V)` */
|
||||
#define BOOST_PREDEF_MAKE_N_NN_NN(V) BOOST_VERSION_NUMBER((V)/10000,(V%10000)/100,(V%100))
|
||||
/*` `BOOST_PREDEF_MAKE_N_N_N_000(V)` */
|
||||
#define BOOST_PREDEF_MAKE_N_N_N_000(V) BOOST_VERSION_NUMBER((V%1000000)/100000,(V%100000)/10000,(V%10000)/1000)
|
||||
/*` `BOOST_PREDEF_MAKE_N_NN_000(V)` */
|
||||
#define BOOST_PREDEF_MAKE_N_NN_000(V) BOOST_VERSION_NUMBER((V%1000000)/100000,(V%100000)/1000,0)
|
||||
/*` `BOOST_PREDEF_MAKE_NN_NN_00_NN_00(V)` */
|
||||
#define BOOST_PREDEF_MAKE_NN_NN_00_NN_00(V) BOOST_VERSION_NUMBER((V)/100000000,(V%100000000)/1000000,(V%10000)/100)
|
||||
/*` `BOOST_PREDEF_MAKE_NN_00(V)` */
|
||||
#define BOOST_PREDEF_MAKE_NN_00(V) BOOST_VERSION_NUMBER((V)/100,0,0)
|
||||
/*` `BOOST_PREDEF_MAKE_YYYY_MM_DD(V)` */
|
||||
#define BOOST_PREDEF_MAKE_YYYY_MM_DD(V) BOOST_VERSION_NUMBER((V)/10000-1970,(V%10000)/100,(V%100))
|
||||
|
||||
#endif
|
@ -5,11 +5,11 @@ Distributed under the Boost Software License, Version 1.0.
|
||||
http://www.boost.org/LICENSE_1_0.txt)
|
||||
*/
|
||||
|
||||
#ifndef BOOST_PREDEF_COMPILER_AIX_H
|
||||
#define BOOST_PREDEF_COMPILER_AIX_H
|
||||
#ifndef BOOST_PREDEF_OS_AIX_H
|
||||
#define BOOST_PREDEF_OS_AIX_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_OS_AIX BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
@ -28,4 +28,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_OS_AIX,"AIX")
|
||||
|
||||
#endif
|
||||
|
@ -5,11 +5,11 @@ Distributed under the Boost Software License, Version 1.0.
|
||||
http://www.boost.org/LICENSE_1_0.txt)
|
||||
*/
|
||||
|
||||
#ifndef BOOST_PREDEF_COMPILER_AMIGAOS_H
|
||||
#define BOOST_PREDEF_COMPILER_AMIGAOS_H
|
||||
#ifndef BOOST_PREDEF_OS_AMIGAOS_H
|
||||
#define BOOST_PREDEF_OS_AMIGAOS_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_OS_AMIGAOS BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
@ -18,4 +18,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_OS_AMIGAOS BOOST_VERSION_NUMBER(0,0,1)
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_OS_AMIGAOS,"Amiga OS")
|
||||
|
||||
#endif
|
||||
|
@ -5,11 +5,11 @@ Distributed under the Boost Software License, Version 1.0.
|
||||
http://www.boost.org/LICENSE_1_0.txt)
|
||||
*/
|
||||
|
||||
#ifndef BOOST_PREDEF_COMPILER_BEOS_H
|
||||
#define BOOST_PREDEF_COMPILER_BEOS_H
|
||||
#ifndef BOOST_PREDEF_OS_BEOS_H
|
||||
#define BOOST_PREDEF_OS_BEOS_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_OS_BEOS BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
@ -18,4 +18,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_OS_BEOS BOOST_VERSION_NUMBER(0,0,1)
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_OS_BEOS,"Be OS")
|
||||
|
||||
#endif
|
||||
|
@ -5,11 +5,11 @@ Distributed under the Boost Software License, Version 1.0.
|
||||
http://www.boost.org/LICENSE_1_0.txt)
|
||||
*/
|
||||
|
||||
#ifndef BOOST_PREDEF_COMPILER_BSD_H
|
||||
#define BOOST_PREDEF_COMPILER_BSD_H
|
||||
#ifndef BOOST_PREDEF_OS_BSD_H
|
||||
#define BOOST_PREDEF_OS_BSD_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_OS_BSD BOOST_VERSION_NUMBER(0,0,0)
|
||||
#define BOOST_OS_DRAGONFLY_BSD BOOST_VERSION_NUMBER(0,0,0)
|
||||
@ -35,7 +35,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#elif defined(BSD4_4)
|
||||
#define BOOST_OS_BSD BOOST_VERSION_NUMBER(4,4,0)
|
||||
#elif defined(BSD)
|
||||
#define BOOST_OS_BSD BOOST_PREDEF_VRP_NN_NN(BSD)
|
||||
#define BOOST_OS_BSD BOOST_PREDEF_MAKE_NN_NN(BSD)
|
||||
#else
|
||||
#define BOOST_OS_BSD BOOST_VERSION_NUMBER(0,0,1)
|
||||
#endif
|
||||
@ -68,6 +68,9 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#elif defined(__NetBSD_Version)
|
||||
#define BOOST_OS_NET_BSD \
|
||||
BOOST_PREDEF_VRP_NN_NN_00_NN_00(__NetBSD_Version)
|
||||
#else
|
||||
#define BOOST_OS_NET_BSD BOOST_VERSION_NUMBER(0,0,1)
|
||||
#endif
|
||||
#endif
|
||||
#if defined(__OpenBSD__)
|
||||
#if defined(OpenBSD2_0)
|
||||
@ -124,4 +127,12 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_OS_BSD,"BSD")
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_OS_DRAGONFLY_BSD,"Dragonfly BSD")
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_OS_FREE_BSD,"Free BSD")
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_OS_BSDI_BSD,"BSDI BSD")
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_OS_NET_BSD,"Net BSD")
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_OS_OPEN_BSD,"Open BSD")
|
||||
|
||||
#endif
|
||||
|
@ -5,11 +5,11 @@ Distributed under the Boost Software License, Version 1.0.
|
||||
http://www.boost.org/LICENSE_1_0.txt)
|
||||
*/
|
||||
|
||||
#ifndef BOOST_PREDEF_COMPILER_CYGWIN_H
|
||||
#define BOOST_PREDEF_COMPILER_CYGWIN_H
|
||||
#ifndef BOOST_PREDEF_OS_CYGWIN_H
|
||||
#define BOOST_PREDEF_OS_CYGWIN_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_OS_CYGWIN BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
@ -18,4 +18,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_OS_CGYWIN BOOST_VERSION_NUMBER(0,0,1)
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_OS_CYGWIN,"Cygwin")
|
||||
|
||||
#endif
|
||||
|
@ -5,11 +5,11 @@ Distributed under the Boost Software License, Version 1.0.
|
||||
http://www.boost.org/LICENSE_1_0.txt)
|
||||
*/
|
||||
|
||||
#ifndef BOOST_PREDEF_COMPILER_HPUX_H
|
||||
#define BOOST_PREDEF_COMPILER_HPUX_H
|
||||
#ifndef BOOST_PREDEF_OS_HPUX_H
|
||||
#define BOOST_PREDEF_OS_HPUX_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_OS_HPUX BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
@ -18,4 +18,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_OS_HPUX BOOST_VERSION_NUMBER(0,0,1)
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_OS_HPUX,"HP-UX")
|
||||
|
||||
#endif
|
||||
|
@ -5,11 +5,11 @@ Distributed under the Boost Software License, Version 1.0.
|
||||
http://www.boost.org/LICENSE_1_0.txt)
|
||||
*/
|
||||
|
||||
#ifndef BOOST_PREDEF_COMPILER_IRIX_H
|
||||
#define BOOST_PREDEF_COMPILER_IRIX_H
|
||||
#ifndef BOOST_PREDEF_OS_IRIX_H
|
||||
#define BOOST_PREDEF_OS_IRIX_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_OS_IRIX BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
@ -18,4 +18,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_OS_IRIX BOOST_VERSION_NUMBER(0,0,1)
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_OS_IRIX,"Irix")
|
||||
|
||||
#endif
|
||||
|
@ -5,11 +5,11 @@ Distributed under the Boost Software License, Version 1.0.
|
||||
http://www.boost.org/LICENSE_1_0.txt)
|
||||
*/
|
||||
|
||||
#ifndef BOOST_PREDEF_COMPILER_H
|
||||
#define BOOST_PREDEF_COMPILER_H
|
||||
#ifndef BOOST_PREDEF_OS_LINUX_H
|
||||
#define BOOST_PREDEF_OS_LINUX_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_OS_LINUX BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
@ -18,4 +18,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_OS_LINUX BOOST_VERSION_NUMBER(0,0,1)
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_OS_LINUX,"Linux")
|
||||
|
||||
#endif
|
||||
|
@ -5,11 +5,11 @@ Distributed under the Boost Software License, Version 1.0.
|
||||
http://www.boost.org/LICENSE_1_0.txt)
|
||||
*/
|
||||
|
||||
#ifndef BOOST_PREDEF_COMPILER_H
|
||||
#define BOOST_PREDEF_COMPILER_H
|
||||
#ifndef BOOST_PREDEF_OS_MACOS_H
|
||||
#define BOOST_PREDEF_OS_MACOS_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_OS_MACOS BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
@ -23,4 +23,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_OS_MACOS,"MacOS")
|
||||
|
||||
#endif
|
||||
|
@ -5,18 +5,18 @@ Distributed under the Boost Software License, Version 1.0.
|
||||
http://www.boost.org/LICENSE_1_0.txt)
|
||||
*/
|
||||
|
||||
#ifndef BOOST_PREDEF_COMPILER_H
|
||||
#define BOOST_PREDEF_COMPILER_H
|
||||
#ifndef BOOST_PREDEF_OS_QNXNTO_H
|
||||
#define BOOST_PREDEF_OS_QNXNTO_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_OS_QNX BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
#if defined(__QNX__) || defined(__QNXNTO__)
|
||||
#undef BOOST_OS_QNX
|
||||
#if defined(_NTO_VERSION)
|
||||
#define BOOST_OS_QNX BOOST_PREDEF_VRP_NN_NN(_NTO_VERSION)
|
||||
#define BOOST_OS_QNX BOOST_PREDEF_MAKE_NN_NN(_NTO_VERSION)
|
||||
#elif defined(__QNX__)
|
||||
#define BOOST_OS_QNX BOOST_VERSION_NUMBER(4,0,0)
|
||||
#else
|
||||
@ -24,4 +24,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_OS_QNX,"QNX-NTO")
|
||||
|
||||
#endif
|
||||
|
@ -5,11 +5,11 @@ Distributed under the Boost Software License, Version 1.0.
|
||||
http://www.boost.org/LICENSE_1_0.txt)
|
||||
*/
|
||||
|
||||
#ifndef BOOST_PREDEF_COMPILER_H
|
||||
#define BOOST_PREDEF_COMPILER_H
|
||||
#ifndef BOOST_PREDEF_OS_SOLARIS_H
|
||||
#define BOOST_PREDEF_OS_SOLARIS_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_OS_SOLARIS BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
@ -18,4 +18,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_OS_SOLARIS BOOST_VERSION_NUMBER(0,0,1)
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_OS_SOLARIS,"Solaris")
|
||||
|
||||
#endif
|
||||
|
@ -5,11 +5,11 @@ Distributed under the Boost Software License, Version 1.0.
|
||||
http://www.boost.org/LICENSE_1_0.txt)
|
||||
*/
|
||||
|
||||
#ifndef BOOST_PREDEF_COMPILER_H
|
||||
#define BOOST_PREDEF_COMPILER_H
|
||||
#ifndef BOOST_PREDEF_OS_UNIX_H
|
||||
#define BOOST_PREDEF_OS_UNIX_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_OS_UNIX BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
@ -19,4 +19,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_OS_UNIX BOOST_VERSION_NUMBER(0,0,1)
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_OS_UNIX,"Unix")
|
||||
|
||||
#endif
|
||||
|
@ -5,11 +5,11 @@ Distributed under the Boost Software License, Version 1.0.
|
||||
http://www.boost.org/LICENSE_1_0.txt)
|
||||
*/
|
||||
|
||||
#ifndef BOOST_PREDEF_COMPILER_H
|
||||
#define BOOST_PREDEF_COMPILER_H
|
||||
#ifndef BOOST_PREDEF_OS_WINDOWS_H
|
||||
#define BOOST_PREDEF_OS_WINDOWS_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/detail/vrp.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_OS_WINDOWS BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
@ -19,4 +19,7 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#define BOOST_OS_WINDOWS BOOST_VERSION_NUMBER(0,0,1)
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_OS_WINDOWS,"Windows")
|
||||
|
||||
#endif
|
||||
|
@ -1,6 +1,6 @@
|
||||
/*
|
||||
Copyright Rene Rivera 2005
|
||||
Copyright Redshift Software, Inc. 2008-2010
|
||||
Copyright Redshift Software, Inc. 2008-2011
|
||||
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)
|
||||
@ -9,14 +9,31 @@ http://www.boost.org/LICENSE_1_0.txt)
|
||||
#ifndef BOOST_PREDEF_VERSION_NUMBER_H
|
||||
#define BOOST_PREDEF_VERSION_NUMBER_H
|
||||
|
||||
/*
|
||||
/// Defines standard version numbers, with these properties:
|
||||
/// * Decimal base whole numbers in the range [0,major*10000000]
|
||||
/// * The number range is designed to allow for a (2,2,5) triplet.
|
||||
/// Which fits within a 32 bit value.
|
||||
/// * Values can be specified in any base.
|
||||
/*`
|
||||
[heading BOOST_VERSION_NUMBER]
|
||||
|
||||
``
|
||||
BOOST_VERSION_NUMBER(major,minor,patch)
|
||||
``
|
||||
|
||||
Defines standard version numbers, with these properties:
|
||||
|
||||
* Decimal base whole numbers in the range [0,major*10000000].
|
||||
The number range is designed to allow for a (2,2,5) triplet.
|
||||
Which fits within a 32 bit value.
|
||||
* The `major` number can be in the [0,99] range.
|
||||
* The `minor` number can be in the [0,99] range.
|
||||
* The `patch` number can be in the [0,99999] range.
|
||||
* Values can be specified in any base. As the defined value
|
||||
is an constant expression.
|
||||
* Value can be directly used in both preprocessor and compiler
|
||||
expressions for comparison to other similarly defined values.
|
||||
* The implementation enforces the individual ranges for the
|
||||
major, minor, and patch numbers. And values over the ranges
|
||||
are truncated (modulo).
|
||||
|
||||
*/
|
||||
#define BOOST_VERSION_NUMBER(major,minor,patch) \
|
||||
( ((major)*10000000) + ((minor)*100000) + (patch) )
|
||||
( (((major)%100)*10000000) + (((minor)%100)*100000) + ((patch)%100000) )
|
||||
|
||||
#endif
|
||||
|
10
jamroot.jam
Normal file
10
jamroot.jam
Normal file
@ -0,0 +1,10 @@
|
||||
# Copyright Redshift Software Inc. 2011
|
||||
# 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)
|
||||
|
||||
project predef
|
||||
: build-dir bin
|
||||
;
|
||||
|
||||
path-constant BOOST_PREDEF_ROOT : . ;
|
38
libs/predef/doc/build.jam
Normal file
38
libs/predef/doc/build.jam
Normal file
@ -0,0 +1,38 @@
|
||||
# Copyright Redshift Software, Inc. 2011
|
||||
# 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)
|
||||
|
||||
using quickbook ;
|
||||
|
||||
if ! $(BOOST_ROOT)
|
||||
{
|
||||
BOOST_ROOT = [ modules.peek : BOOST_ROOT ] ;
|
||||
}
|
||||
|
||||
xml predef
|
||||
:
|
||||
predef.qbk
|
||||
;
|
||||
explicit predef ;
|
||||
|
||||
boostbook standalone
|
||||
:
|
||||
predef
|
||||
:
|
||||
<xsl:param>boost.root=../../..
|
||||
<xsl:param>generate.section.toc.level=3
|
||||
<xsl:param>chunk.section.depth=1
|
||||
<xsl:param>chunk.first.sections=1
|
||||
|
||||
<dependency>images
|
||||
<dependency>callouts
|
||||
<dependency>css
|
||||
;
|
||||
|
||||
install images : [ glob $(BOOST_ROOT)/doc/src/images/*.png ] : <location>html/images ;
|
||||
explicit images ;
|
||||
install callouts : [ glob $(BOOST_ROOT)/doc/src/images/callouts/*.png ] : <location>html/images/callouts ;
|
||||
explicit callouts ;
|
||||
install css : [ glob $(BOOST_ROOT)/doc/src/*.css ] : <location>html ;
|
||||
explicit css ;
|
236
libs/predef/doc/predef.qbk
Normal file
236
libs/predef/doc/predef.qbk
Normal file
@ -0,0 +1,236 @@
|
||||
[article Predef
|
||||
[quickbook 1.6]
|
||||
[version 1.0]
|
||||
[authors [Rivera, Rene]]
|
||||
[copyright 2005 Rene Rivera, 2008-2011 Redshift Software Inc]
|
||||
[purpose Identification and specification of predefined macros.]
|
||||
[license
|
||||
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])
|
||||
]
|
||||
[source-mode teletype]
|
||||
]
|
||||
|
||||
[section Introduction]
|
||||
|
||||
This library defines a set of compiler, architecture, operating system,
|
||||
and library version numbers from the information it can gather of C++
|
||||
predefined macros or those defined in generally available headers. The
|
||||
idea for this library grew out of a proposal to extend the Boost Config
|
||||
library to provide more, and consistent, information than the feature
|
||||
definitions it supports. What follows is an edited version of that brief
|
||||
proposal.
|
||||
|
||||
[heading Proposal]
|
||||
|
||||
The idea is to define a set of macros to identify compilers and
|
||||
consistently represent their version. This includes:
|
||||
|
||||
* A unique BOOST_VERSION_NUMBER(major,minor,patch) macro to specify version
|
||||
numbers (unfortunately, the name BOOST_VERSION is already taken to designate
|
||||
the version number of boost itself).
|
||||
* A compiler identification macro, suitable for use in #if/#elif directives,
|
||||
for each of the supported compilers. All macros would be defined, regardless
|
||||
of the compiler. The one macro corresponding to the compiler being used would
|
||||
be defined, in terms of BOOST_VERSION_NUMBER, to carry the exact compiler
|
||||
version. All other macros would expand to an expression evaluating to false
|
||||
(for instance, the token 0) to indicate that the corresponding compiler is not
|
||||
present.
|
||||
* "Null values" could be set, for all macros, in
|
||||
boost/config/select_compiler.hpp; then, for each compiler the corresponding
|
||||
identification macro would be #undef and re-#defined in the corresponding
|
||||
boost/compiler/(cc).hpp; however in the context of the Boost.Config
|
||||
infrastructure using a "prefix" header (to be introduced) or
|
||||
boost/config/suffix.hpp is a better solution. This point is further
|
||||
clarified later.
|
||||
|
||||
[heading Current Library]
|
||||
|
||||
The current Predef library is now, both an independent library, and expanded
|
||||
in scope. It includes detection and definition of architectures, compilers,
|
||||
libraries, and operating systems. The key benefits are:
|
||||
|
||||
* Version numbers that are always defined so that one doesn't have to guard
|
||||
with `#ifdef`.
|
||||
* All possible definitions are included with the single `#include <boost/predef.h>`
|
||||
so that it's friendly to precompiled header usage.
|
||||
* Predefs can be directly used in both preprocessor and compiler expressions
|
||||
for comparison to other similarly defined values.
|
||||
* The headers are usable from multiple languages, that support the C preprocessor.
|
||||
In particular C++, C, Objective C, and Objective C++.
|
||||
|
||||
[heading Design choices]
|
||||
|
||||
An important design choice concerns how to represent compiler versions by means
|
||||
of a single integer number suitable for use in preprocessing directives. Let's
|
||||
do some calculation. The "basic" signed type for preprocessing
|
||||
constant-expressions is long in C90 (and C++, as of 2006) and intmax_t in C99.
|
||||
The type long shall at least be able to represent the number [^+2 147 483 647].
|
||||
This means the most significant digit can only be 0, 1 or 2; and if we want all
|
||||
decimal digits to be able to vary between 0 and 9, the largest range we can
|
||||
consider is [^\[0, 999 999 999\]]. Distributing evenly, this means 3 decimal
|
||||
digits for each version number part.
|
||||
|
||||
So we can:
|
||||
|
||||
# use an uneven distribution or
|
||||
# use more bits (a larger type) or
|
||||
# use 3/3/3 and have the particular compiler/platform/stdlib deal with setting
|
||||
the numbers within the 3-digit range.
|
||||
|
||||
It appears relatively safe to go for the first option and set it at 2/2/5. That
|
||||
covers CodeWarrior and others, which are up to and past 10 for the major number.
|
||||
Some compilers use the build number in lieu of the patch one; five digits
|
||||
(which is already reached by VC++ 8) seems a reasonable limit even in this case.
|
||||
|
||||
[note A 2/2/6 scheme would allow for bigger patch/build numbers at the cost,
|
||||
for instance, of limiting the major version number to 20 (or, with further
|
||||
constraints, to 21).]
|
||||
|
||||
It might reassure the reader that this decision is actually encoded in one place
|
||||
in the code; the definition of BOOST_VERSION_NUMBER.
|
||||
|
||||
[heading Future work]
|
||||
|
||||
Even though the basics of this library are done, there is much work that can be
|
||||
done:
|
||||
|
||||
* Right now we limit the detection of libraries to known built-in predefined
|
||||
macros, and to guaranteed to exist system and library headers. It might be
|
||||
interesting to add something like auto-configuration predefs. This way we can
|
||||
add definitions for user specific libraries and features.
|
||||
* Along with the above, it might be good to add some user control as to which
|
||||
headers are included with the top-level header.
|
||||
* Additionally, even if there is no auto-configure style option.. It would be
|
||||
good to add optionally included headers so that user can get consistent
|
||||
version number definitions for libraries they use.
|
||||
* Having a consistent set of version number definitions opens the door to
|
||||
improving the user level syntax of libraries that do checks against version
|
||||
numbers. Specifically Boost Config's `BOOST_WORKAROUND` macro would benefit
|
||||
from a more readable syntax. As would the `BOOST_TESTED_AT` detail macro.
|
||||
* And obviously there's lots of work to do in reformulating the existing
|
||||
Boost libraries to use the Predef library once it's accepted.
|
||||
* And there's the continuing work of adding definitions for present and
|
||||
future compilers, platforms, architectures, and libraries.
|
||||
|
||||
[endsect] [/Introduction]
|
||||
|
||||
[section Using the predefs]
|
||||
|
||||
To use the automatically defined predefs one needs to only include the
|
||||
single top-level header:
|
||||
|
||||
``
|
||||
#include <boost/predef.h>
|
||||
``
|
||||
|
||||
This defines [*all] the version macros known to the library. For each
|
||||
macro it will be defined to either a /zero/ valued expression for when
|
||||
the particular item is not detected, and to a /positive/ value if it
|
||||
is detected. The predef macros fall onto the four categories each with
|
||||
macros of a particular prefix:
|
||||
|
||||
* `BOOST_ARCHITECTURE_`for system/CPU architecture one is compiling for.
|
||||
* `BOOST_CXX_` for the compiler one is using.
|
||||
* `BOOST_LIBC_` and `BOOST_LIBSTD_` for the C and C++ standard library
|
||||
in use.
|
||||
* `BOOST_OS_` for the operating system we are compiling to.
|
||||
|
||||
[note The detected definitions are for the configuration one is targeting
|
||||
during the compile. In particular in a cross-compile this means the target
|
||||
system, and not the host system.]
|
||||
|
||||
``
|
||||
#include <boost/predef.h>
|
||||
#include <iostream>
|
||||
|
||||
#if (APPLICATION_VERSION >= BOOST_VERSION_NUMBER(1,0,0))
|
||||
bool application_is_at_least_version_1 = true;
|
||||
#else
|
||||
bool application_is_at_least_version_1 = false;
|
||||
#endif
|
||||
|
||||
int main()
|
||||
{
|
||||
if (application_is_at_least_version_1)
|
||||
std::cout << "Application is at least version 1.0.0" << std::endl;
|
||||
if (APPLICATION_VERSION >= BOOST_VERSION_NUMBER(2,0,0))
|
||||
std::cout << "Application is at least version 2.0.0" << std::endl;
|
||||
return 0;
|
||||
}
|
||||
``
|
||||
|
||||
[heading Using existing version predefs]
|
||||
|
||||
[heading Using the `BOOST_VERSION_NUMBER` macro]
|
||||
|
||||
[endsect]
|
||||
|
||||
[section Adding new predefs]
|
||||
|
||||
[heading Requirements of the header]
|
||||
|
||||
[heading Structure of the header]
|
||||
|
||||
``
|
||||
/*
|
||||
Copyright Jane Doe 20xx
|
||||
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_category_tag_H
|
||||
#define BOOST_PREDEF_category_tag_H
|
||||
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
|
||||
#define BOOST_category_tag BOOST_VERSION_NUMBER(0,0,0)
|
||||
|
||||
#if defined(condition)
|
||||
#undef BOOST_category_tag
|
||||
#if defined(condition)
|
||||
#define BOOST_category_tag BOOST_VERSION_NUMBER(1,0,0)
|
||||
#elif defined(__alpha_ev5__)
|
||||
#define BOOST_category_tag BOOST_VERSION_NUMBER(2,0,0)
|
||||
#else
|
||||
#define BOOST_category_tag BOOST_VERSION_NUMBER(0,0,1)
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#include <boost/predef/detail/test.h>
|
||||
BOOST_PREDEF_DECLARE_TEST(BOOST_categiry_tag,"Name")
|
||||
|
||||
#endif
|
||||
``
|
||||
|
||||
[heading Using utility pattern macros]
|
||||
|
||||
[endsect]
|
||||
|
||||
[section Reference]
|
||||
|
||||
[section `BOOST_ARCHITECTURE_` architecture macros]
|
||||
[/import ../../../boost/predef/architecture/.*\.h]
|
||||
[endsect]
|
||||
|
||||
[section `BOOST_CXX_` compiler macros]
|
||||
[/import ../../../boost/predef/compiler/.*\.h]
|
||||
[endsect]
|
||||
|
||||
[section `BOOST_LIBC_` and `BOOST_LIBSTD_` library macros]
|
||||
[/import ../../../boost/predef/library/.*/.*\.h]
|
||||
[endsect]
|
||||
|
||||
[section `BOOST_OS_` operating system macros]
|
||||
[/import ../../../boost/predef/os/.*\.h]
|
||||
[endsect]
|
||||
|
||||
[section Version definition macros]
|
||||
[include ../../../boost/predef/version_number.h]
|
||||
[include ../../../boost/predef/make.h]
|
||||
[endsect]
|
||||
|
||||
[endsect]
|
19
libs/predef/test/build.jam
Normal file
19
libs/predef/test/build.jam
Normal file
@ -0,0 +1,19 @@
|
||||
# Copyright Redshift Software, Inc. 2011
|
||||
# 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)
|
||||
|
||||
project test
|
||||
: requirements
|
||||
<include>$(BOOST_PREDEF_ROOT)
|
||||
<dependency>$(BOOST_PREDEF_ROOT)/boost/predef.h
|
||||
;
|
||||
|
||||
using testing ;
|
||||
|
||||
run info_as_cpp.cpp ;
|
||||
run info_as_c.c ;
|
||||
run info_as_objcpp.mm ;
|
||||
run info_as_objc.m ;
|
||||
run version.cpp ;
|
||||
run make.cpp ;
|
76
libs/predef/test/info_as_c.c
Normal file
76
libs/predef/test/info_as_c.c
Normal file
@ -0,0 +1,76 @@
|
||||
/*
|
||||
Copyright Redshift Software Inc. 2011
|
||||
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)
|
||||
*/
|
||||
#include <string.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#define BOOST_PREDEF_INTERNAL_GENERATE_TESTS
|
||||
|
||||
typedef struct predef_info
|
||||
{
|
||||
unsigned tag;
|
||||
char * name;
|
||||
char * description;
|
||||
unsigned value;
|
||||
} predef_info;
|
||||
|
||||
predef_info first_predef_info = { 0x43210DEF , "-" , "-" , 0xFFFFFFFF };
|
||||
|
||||
#define BOOST_PREDEF_DECLARE_TEST(x,s) \
|
||||
predef_info x##_predef_info = { 0x67890DEF , #x , s , x };
|
||||
#include <boost/predef.h>
|
||||
|
||||
predef_info last_predef_info = { 0xFFFFFFFF , "-" , "-" , 0x43210DEF };
|
||||
|
||||
int predef_info_compare(const void * a, const void * b)
|
||||
{
|
||||
const predef_info ** i = (const predef_info **)a;
|
||||
const predef_info ** j = (const predef_info **)b;
|
||||
return strcmp((*i)->name,(*j)->name);
|
||||
}
|
||||
|
||||
int main()
|
||||
{
|
||||
predef_info ** predefs = 0;
|
||||
unsigned predef_count = 0;
|
||||
unsigned * i = &first_predef_info.tag;
|
||||
unsigned * e = &last_predef_info.tag;
|
||||
while (i < e)
|
||||
{
|
||||
i += 1;
|
||||
if (*i == 0x67890DEF)
|
||||
{
|
||||
predef_count += 1;
|
||||
predefs = realloc(predefs,predef_count*sizeof(predef_info*));
|
||||
predefs[predef_count-1] = (predef_info*)i;
|
||||
}
|
||||
}
|
||||
qsort(predefs,predef_count,sizeof(predef_info*),predef_info_compare);
|
||||
int x = 0;
|
||||
puts("** Detected **");
|
||||
for (x = 0; x < predef_count; ++x)
|
||||
{
|
||||
if (predefs[x]->value > 0)
|
||||
printf("%s = %u (%u,%u,%u) | %s\n",
|
||||
predefs[x]->name,
|
||||
predefs[x]->value,
|
||||
(predefs[x]->value/10000000)%100,
|
||||
(predefs[x]->value/100000)%100,
|
||||
(predefs[x]->value)%100000,
|
||||
predefs[x]->description);
|
||||
}
|
||||
puts("** Not Detected **");
|
||||
for (x = 0; x < predef_count; ++x)
|
||||
{
|
||||
if (predefs[x]->value == 0)
|
||||
printf("%s = %u | %s\n",
|
||||
predefs[x]->name,
|
||||
predefs[x]->value,
|
||||
predefs[x]->description);
|
||||
}
|
||||
return 0;
|
||||
}
|
90
libs/predef/test/info_as_cpp.cpp
Normal file
90
libs/predef/test/info_as_cpp.cpp
Normal file
@ -0,0 +1,90 @@
|
||||
/*
|
||||
Copyright Redshift Software Inc. 2011
|
||||
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)
|
||||
*/
|
||||
#include <string>
|
||||
#include <iostream>
|
||||
#include <set>
|
||||
|
||||
#define BOOST_PREDEF_INTERNAL_GENERATE_TESTS
|
||||
|
||||
namespace
|
||||
{
|
||||
struct predef_info
|
||||
{
|
||||
std::string name;
|
||||
std::string description;
|
||||
unsigned value;
|
||||
|
||||
predef_info(
|
||||
std::string const & n,
|
||||
std::string const & d,
|
||||
unsigned v);
|
||||
|
||||
predef_info(
|
||||
predef_info const & other)
|
||||
: name(other.name)
|
||||
, description(other.description)
|
||||
, value(other.value)
|
||||
{
|
||||
}
|
||||
|
||||
bool operator < (predef_info const & other) const
|
||||
{
|
||||
return name < other.name;
|
||||
}
|
||||
};
|
||||
|
||||
std::set<predef_info> * predefs = 0;
|
||||
|
||||
predef_info::predef_info(
|
||||
std::string const & n,
|
||||
std::string const & d,
|
||||
unsigned v)
|
||||
: name(n)
|
||||
, description(d)
|
||||
, value(v)
|
||||
{
|
||||
if (!predefs)
|
||||
{
|
||||
predefs = new std::set<predef_info>();
|
||||
}
|
||||
predefs->insert(*this);
|
||||
}
|
||||
}
|
||||
|
||||
#define BOOST_PREDEF_DECLARE_TEST(x,s) \
|
||||
namespace { \
|
||||
predef_info x##_predef_init(#x,s,x); \
|
||||
}
|
||||
#include <boost/predef.h>
|
||||
|
||||
int main()
|
||||
{
|
||||
std::set<predef_info>::iterator i;
|
||||
std::set<predef_info>::iterator e = predefs->end();
|
||||
std::cout << "** Detected **" << std::endl;
|
||||
for (i = predefs->begin(); i != e; ++i)
|
||||
{
|
||||
if (i->value > 0)
|
||||
std::cout
|
||||
<< i->name << " = "
|
||||
<< i->value
|
||||
<< " (" << (i->value/10000000)%100 << "," << (i->value/100000)%100 << "," << (i->value)%100000 << ") | "
|
||||
<< i->description
|
||||
<< std::endl;
|
||||
}
|
||||
std::cout << "** Not Detected **" << std::endl;
|
||||
for (i = predefs->begin(); i != e; ++i)
|
||||
{
|
||||
if (i->value == 0)
|
||||
std::cout
|
||||
<< i->name << " = "
|
||||
<< i->value << " | "
|
||||
<< i->description
|
||||
<< std::endl;
|
||||
}
|
||||
return 0;
|
||||
}
|
7
libs/predef/test/info_as_objc.m
Normal file
7
libs/predef/test/info_as_objc.m
Normal file
@ -0,0 +1,7 @@
|
||||
/*
|
||||
Copyright Redshift Software Inc. 2011
|
||||
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)
|
||||
*/
|
||||
#include "info_as_c.c"
|
7
libs/predef/test/info_as_objcpp.mm
Normal file
7
libs/predef/test/info_as_objcpp.mm
Normal file
@ -0,0 +1,7 @@
|
||||
/*
|
||||
Copyright Redshift Software Inc. 2011
|
||||
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)
|
||||
*/
|
||||
#include "info_as_cpp.cpp"
|
78
libs/predef/test/make.cpp
Normal file
78
libs/predef/test/make.cpp
Normal file
@ -0,0 +1,78 @@
|
||||
/*
|
||||
Copyright Redshift Software Inc 2011
|
||||
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)
|
||||
*/
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <boost/predef/make.h>
|
||||
#include <exception>
|
||||
#include <vector>
|
||||
#include <string>
|
||||
#include <iostream>
|
||||
|
||||
namespace
|
||||
{
|
||||
struct test_info
|
||||
{
|
||||
std::string value;
|
||||
bool passed;
|
||||
|
||||
test_info(std::string const & v, bool p) : value(v), passed(p) {}
|
||||
test_info(test_info const & o) : value(o.value), passed(o.passed) {}
|
||||
};
|
||||
|
||||
std::vector<test_info> test_results;
|
||||
}
|
||||
|
||||
#define PREDEF_CHECK(X) test_results.push_back(test_info(#X,(X)))
|
||||
|
||||
void test_BOOST_VERSION_NUMBER()
|
||||
{
|
||||
PREDEF_CHECK(BOOST_PREDEF_MAKE_F_F_F(0xFFF) == BOOST_VERSION_NUMBER(0xF,0xF,0xF));
|
||||
PREDEF_CHECK(BOOST_PREDEF_MAKE_FF_F_F(0xFFFF) == BOOST_VERSION_NUMBER(0xFF,0xF,0xF));
|
||||
PREDEF_CHECK(BOOST_PREDEF_MAKE_F_F_FF(0xFFFF) == BOOST_VERSION_NUMBER(0xF,0xF,0xFF));
|
||||
PREDEF_CHECK(BOOST_PREDEF_MAKE_FF_FF(0xFFFF) == BOOST_VERSION_NUMBER(0xFF,0xFF,0x0));
|
||||
PREDEF_CHECK(BOOST_PREDEF_MAKE_F_FF_FFFF(0xFFFFFFF) == BOOST_VERSION_NUMBER(0xF,0xFF,0xFFFF));
|
||||
PREDEF_CHECK(BOOST_PREDEF_MAKE_FF_FF_F(0xFFFFF) == BOOST_VERSION_NUMBER(0xFF,0xFF,0xF));
|
||||
PREDEF_CHECK(BOOST_PREDEF_MAKE_F_FF_FF_000(0xFFFFF000) == BOOST_VERSION_NUMBER(0xF,0xFF,0xFF));
|
||||
|
||||
PREDEF_CHECK(BOOST_PREDEF_MAKE_N_N_N(999) == BOOST_VERSION_NUMBER(9,9,9));
|
||||
PREDEF_CHECK(BOOST_PREDEF_MAKE_NN_NN_NN(999999) == BOOST_VERSION_NUMBER(99,99,99));
|
||||
PREDEF_CHECK(BOOST_PREDEF_MAKE_NN_NN(9999) == BOOST_VERSION_NUMBER(99,99,0));
|
||||
PREDEF_CHECK(BOOST_PREDEF_MAKE_N_N_NN(9999) == BOOST_VERSION_NUMBER(9,9,99));
|
||||
PREDEF_CHECK(BOOST_PREDEF_MAKE_N_NN_NN(99999) == BOOST_VERSION_NUMBER(9,99,99));
|
||||
PREDEF_CHECK(BOOST_PREDEF_MAKE_N_N_N_000(999000) == BOOST_VERSION_NUMBER(9,9,9));
|
||||
PREDEF_CHECK(BOOST_PREDEF_MAKE_N_NN_000(999000) == BOOST_VERSION_NUMBER(9,99,0));
|
||||
PREDEF_CHECK(BOOST_PREDEF_MAKE_NN_NN_00_NN_00(9999009900) == BOOST_VERSION_NUMBER(99,99,99));
|
||||
PREDEF_CHECK(BOOST_PREDEF_MAKE_NN_00(9900) == BOOST_VERSION_NUMBER(99,00,00));
|
||||
|
||||
PREDEF_CHECK(BOOST_PREDEF_MAKE_YYYY_MM_DD(19700101) == BOOST_VERSION_NUMBER(0,1,1));
|
||||
PREDEF_CHECK(BOOST_PREDEF_MAKE_YYYY_MM_DD(19710101) == BOOST_VERSION_NUMBER(1,1,1));
|
||||
PREDEF_CHECK(BOOST_PREDEF_MAKE_YYYY_MM_DD(20691231) == BOOST_VERSION_NUMBER(99,12,31));
|
||||
}
|
||||
|
||||
int main()
|
||||
{
|
||||
test_BOOST_VERSION_NUMBER();
|
||||
|
||||
unsigned fail_count = 0;
|
||||
std::vector<test_info>::iterator i = test_results.begin();
|
||||
std::vector<test_info>::iterator e = test_results.end();
|
||||
for (; i != e; ++i)
|
||||
{
|
||||
std::cout
|
||||
<< (i->passed ? "[passed]" : "[failed]")
|
||||
<< " " << i->value
|
||||
<< std::endl;
|
||||
fail_count += i->passed ? 0 : 1;
|
||||
}
|
||||
std::cout
|
||||
<< std::endl
|
||||
<< "TOTAL: "
|
||||
<< "passed " << (test_results.size()-fail_count) << ", "
|
||||
<< "failed " << (fail_count) << ", "
|
||||
<< "of " << (test_results.size())
|
||||
<< std::endl;
|
||||
return fail_count;
|
||||
}
|
62
libs/predef/test/version.cpp
Normal file
62
libs/predef/test/version.cpp
Normal file
@ -0,0 +1,62 @@
|
||||
/*
|
||||
Copyright Redshift Software Inc 2011
|
||||
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)
|
||||
*/
|
||||
#include <boost/predef/version_number.h>
|
||||
#include <exception>
|
||||
#include <vector>
|
||||
#include <string>
|
||||
#include <iostream>
|
||||
|
||||
namespace
|
||||
{
|
||||
struct test_info
|
||||
{
|
||||
std::string value;
|
||||
bool passed;
|
||||
|
||||
test_info(std::string const & v, bool p) : value(v), passed(p) {}
|
||||
test_info(test_info const & o) : value(o.value), passed(o.passed) {}
|
||||
};
|
||||
|
||||
std::vector<test_info> test_results;
|
||||
}
|
||||
|
||||
#define PREDEF_CHECK(X) test_results.push_back(test_info(#X,(X)))
|
||||
|
||||
void test_BOOST_VERSION_NUMBER()
|
||||
{
|
||||
PREDEF_CHECK(BOOST_VERSION_NUMBER(0,0,1) == 1L);
|
||||
PREDEF_CHECK(BOOST_VERSION_NUMBER(99,99,99999) == 999999999L);
|
||||
PREDEF_CHECK(BOOST_VERSION_NUMBER(299,99,99999) != 2999999999L);
|
||||
PREDEF_CHECK(BOOST_VERSION_NUMBER(100,99,99999) != 1009999999L);
|
||||
PREDEF_CHECK(BOOST_VERSION_NUMBER(100,99,99999) == 9999999L);
|
||||
PREDEF_CHECK(BOOST_VERSION_NUMBER(100,100,100000) == 0L);
|
||||
}
|
||||
|
||||
int main()
|
||||
{
|
||||
test_BOOST_VERSION_NUMBER();
|
||||
|
||||
unsigned fail_count = 0;
|
||||
std::vector<test_info>::iterator i = test_results.begin();
|
||||
std::vector<test_info>::iterator e = test_results.end();
|
||||
for (; i != e; ++i)
|
||||
{
|
||||
std::cout
|
||||
<< (i->passed ? "[passed]" : "[failed]")
|
||||
<< " " << i->value
|
||||
<< std::endl;
|
||||
fail_count += i->passed ? 0 : 1;
|
||||
}
|
||||
std::cout
|
||||
<< std::endl
|
||||
<< "TOTAL: "
|
||||
<< "passed " << (test_results.size()-fail_count) << ", "
|
||||
<< "failed " << (fail_count) << ", "
|
||||
<< "of " << (test_results.size())
|
||||
<< std::endl;
|
||||
return fail_count;
|
||||
}
|
Reference in New Issue
Block a user