diff --git a/doc/html/boost_config/boost_macro_reference.html b/doc/html/boost_config/boost_macro_reference.html
index 3a8c72aa..28e23950 100644
--- a/doc/html/boost_config/boost_macro_reference.html
+++ b/doc/html/boost_config/boost_macro_reference.html
@@ -3402,6 +3402,96 @@
BOOST_DINKUMWARE_STDLIB
diff --git a/doc/html/index.html b/doc/html/index.html
index 40732291..7799a1e1 100644
--- a/doc/html/index.html
+++ b/doc/html/index.html
@@ -28,7 +28,7 @@
Copyright © 2001 -2007 Beman Dawes, Vesa Karvonen, John Maddock
-Last revised: November 23, 2010 at 03:21:20 GMT |
+Last revised: November 23, 2010 at 05:40:40 GMT |
|
diff --git a/doc/macro_reference.qbk b/doc/macro_reference.qbk
index 338c5e39..c731b09f 100644
--- a/doc/macro_reference.qbk
+++ b/doc/macro_reference.qbk
@@ -850,6 +850,26 @@ Defined to 1 if the compiler is the Clang compiler.
[[`BOOST_WINDOWS`][``][
Defined if the Windows platfrom API is available.
]]
+[[`BOOST_LINUX`][``][
+Defined if the system kernel is Linux
+]]
+[[`BOOST_NIX`][``][
+Defined if the system is POSIX compliant
+]]
+[[`BOOST_GENETIC_NIX`][``][
+Defined if the system can trace its ancestry to the original AT&T codebase or
+designs, but is not certified by the Open Group. This is the case for modern
+open-source BSD systems.
+]]
+[[`BOOST_TRADEMARK_NIX`][``][
+Systems certified as POSIX compliant by the Open Group. These systems can use
+the UNIX trademark. Most commercially developed *nix systems fall into this
+category.
+]]
+[[`BOOST_FUNCTIONAL_NIX`][``][
+Systems which behave in a manner roughly consistent with POSIX standards. Linux
+and Minix fall into this category.
+]]
[[`BOOST_DINKUMWARE_STDLIB`][``][
Defined if the dinkumware standard library is in use, takes the same value
as the Dinkumware library version macro `_CPPLIB_VER` if defined, otherwise 1.
diff --git a/include/boost/config/compiler/borland.hpp b/include/boost/config/compiler/borland.hpp
index a989fd63..2816ab88 100644
--- a/include/boost/config/compiler/borland.hpp
+++ b/include/boost/config/compiler/borland.hpp
@@ -12,6 +12,9 @@
//
// versions check:
// we don't support Borland prior to version 5.4:
+
+#define BOOST_BORLAND __BORLANDC__
+
#if __BORLANDC__ < 0x540
# error "Compiler not supported or configured - please reconfigure"
#endif
diff --git a/include/boost/config/compiler/comeau.hpp b/include/boost/config/compiler/comeau.hpp
index 278222dc..c2cedb17 100644
--- a/include/boost/config/compiler/comeau.hpp
+++ b/include/boost/config/compiler/comeau.hpp
@@ -14,6 +14,8 @@
#include "boost/config/compiler/common_edg.hpp"
+#define BOOST_COMO __COMO_VERSION__
+
#if (__COMO_VERSION__ <= 4245)
# if defined(_MSC_VER) && _MSC_VER <= 1300
diff --git a/include/boost/config/compiler/gcc.hpp b/include/boost/config/compiler/gcc.hpp
index f633647d..962be754 100644
--- a/include/boost/config/compiler/gcc.hpp
+++ b/include/boost/config/compiler/gcc.hpp
@@ -89,6 +89,12 @@
# define BOOST_NO_EXCEPTIONS
#endif
+//
+// Identify cygwin environments
+//
+#if __CYGWIN__
+# define BOOST_CYGWIN
+#endif
//
// Threading support: Turn this on unconditionally here (except for
diff --git a/include/boost/config/compiler/metrowerks.hpp b/include/boost/config/compiler/metrowerks.hpp
index 21083b7a..81854a0f 100644
--- a/include/boost/config/compiler/metrowerks.hpp
+++ b/include/boost/config/compiler/metrowerks.hpp
@@ -12,6 +12,8 @@
// Metrowerks C++ compiler setup:
+#define BOOST_MWERKS __MWERKS__
+
// locale support is disabled when linking with the dynamic runtime
# ifdef _MSL_NO_LOCALE
# define BOOST_NO_STD_LOCALE
diff --git a/include/boost/config/compiler/sunpro_cc.hpp b/include/boost/config/compiler/sunpro_cc.hpp
index 85fa4625..e718dbb6 100644
--- a/include/boost/config/compiler/sunpro_cc.hpp
+++ b/include/boost/config/compiler/sunpro_cc.hpp
@@ -11,6 +11,10 @@
// Sun C++ compiler setup:
+// Macro identifying the Sun compiler
+
+#define BOOST_SUNCC __SUNPRO_CC
+
# if __SUNPRO_CC <= 0x500
# define BOOST_NO_MEMBER_TEMPLATES
# define BOOST_NO_FUNCTION_TEMPLATE_ORDERING
diff --git a/include/boost/config/platform/aix.hpp b/include/boost/config/platform/aix.hpp
index 894ef42c..ec22a42f 100644
--- a/include/boost/config/platform/aix.hpp
+++ b/include/boost/config/platform/aix.hpp
@@ -1,4 +1,5 @@
// (C) Copyright John Maddock 2001 - 2002.
+// (C) Copyright Bryce Lelbach 2010
// Use, modification and distribution are subject to the
// Boost Software License, Version 1.0. (See accompanying file
// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -9,6 +10,13 @@
#define BOOST_PLATFORM "IBM Aix"
+#define BOOST_NIX 1
+//#define BOOST_GENETIC_NIX 1
+#define BOOST_TRADEMARK_NIX 1
+//#define BOOST_FUNCTIONAL_NIX 1
+
+#define BOOST_AIX 1
+
#define BOOST_HAS_UNISTD_H
#define BOOST_HAS_NL_TYPES_H
#define BOOST_HAS_NANOSLEEP
diff --git a/include/boost/config/platform/amigaos.hpp b/include/boost/config/platform/amigaos.hpp
index 34bcf412..a1f12f6d 100644
--- a/include/boost/config/platform/amigaos.hpp
+++ b/include/boost/config/platform/amigaos.hpp
@@ -1,4 +1,5 @@
// (C) Copyright John Maddock 2002.
+// (C) Copyright Bryce Lelbach 2010
// Use, modification and distribution are subject to the
// Boost Software License, Version 1.0. (See accompanying file
// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -7,6 +8,8 @@
#define BOOST_PLATFORM "AmigaOS"
+#define BOOST_AMIGA 1
+
#define BOOST_DISABLE_THREADS
#define BOOST_NO_CWCHAR
#define BOOST_NO_STD_WSTRING
diff --git a/include/boost/config/platform/beos.hpp b/include/boost/config/platform/beos.hpp
index 48c3d8dc..cda00164 100644
--- a/include/boost/config/platform/beos.hpp
+++ b/include/boost/config/platform/beos.hpp
@@ -1,4 +1,5 @@
// (C) Copyright John Maddock 2001.
+// (C) Copyright Bryce Lelbach 2010
// Use, modification and distribution are subject to the
// Boost Software License, Version 1.0. (See accompanying file
// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -9,6 +10,13 @@
#define BOOST_PLATFORM "BeOS"
+#define BOOST_BEOS 1
+
+#define BOOST_NIX 1
+//#define BOOST_GENETIC_NIX 1
+//#define BOOST_TRADEMARK_NIX 1
+#define BOOST_FUNCTIONAL_NIX 1
+
#define BOOST_NO_CWCHAR
#define BOOST_NO_CWCTYPE
#define BOOST_HAS_UNISTD_H
diff --git a/include/boost/config/platform/bsd.hpp b/include/boost/config/platform/bsd.hpp
index a0142978..9720c777 100644
--- a/include/boost/config/platform/bsd.hpp
+++ b/include/boost/config/platform/bsd.hpp
@@ -1,6 +1,7 @@
// (C) Copyright John Maddock 2001 - 2003.
// (C) Copyright Darin Adler 2001.
// (C) Copyright Douglas Gregor 2002.
+// (C) Copyright Bryce Lelbach 2010
// Use, modification and distribution are subject to the
// Boost Software License, Version 1.0. (See accompanying file
// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -9,18 +10,30 @@
// generic BSD config options:
-#if !defined(__FreeBSD__) && !defined(__NetBSD__) && !defined(__OpenBSD__) && !defined(__DragonFly__)
-#error "This platform is not BSD"
+#if !defined(__FreeBSD__) && \
+ !defined(__NetBSD__) && \
+ !defined(__OpenBSD__) && \
+ !defined(__DragonFly__)
+ #error "This platform is not BSD"
#endif
+#define BOOST_NIX 1
+#define BOOST_GENETIC_NIX 1
+//#define BOOST_TRADEMARK_NIX 1
+//#define BOOST_FUNCTIONAL_NIX 1
+
#ifdef __FreeBSD__
-#define BOOST_PLATFORM "FreeBSD " BOOST_STRINGIZE(__FreeBSD__)
+ #define BOOST_PLATFORM "FreeBSD " BOOST_STRINGIZE(__FreeBSD__)
+ #define BOOST_FREEBSD __FreeBSD__
#elif defined(__NetBSD__)
-#define BOOST_PLATFORM "NetBSD " BOOST_STRINGIZE(__NetBSD__)
+ #define BOOST_PLATFORM "NetBSD " BOOST_STRINGIZE(__NetBSD__)
+ #define BOOST_NETBSD __NetBSD__
#elif defined(__OpenBSD__)
-#define BOOST_PLATFORM "OpenBSD " BOOST_STRINGIZE(__OpenBSD__)
+ #define BOOST_PLATFORM "OpenBSD " BOOST_STRINGIZE(__OpenBSD__)
+ #define BOOST_OPENBSD __OpenBSD__
#elif defined(__DragonFly__)
-#define BOOST_PLATFORM "DragonFly " BOOST_STRINGIZE(__DragonFly__)
+ #define BOOST_PLATFORM "DragonFly " BOOST_STRINGIZE(__DragonFly__)
+ #define BOOST_DFBSD __DragonFly__
#endif
//
diff --git a/include/boost/config/platform/cygwin.hpp b/include/boost/config/platform/cygwin.hpp
index 8e1bcb01..e183772f 100644
--- a/include/boost/config/platform/cygwin.hpp
+++ b/include/boost/config/platform/cygwin.hpp
@@ -1,52 +1,53 @@
-// (C) Copyright John Maddock 2001 - 2003.
-// Use, modification and distribution are subject to the
-// Boost Software License, Version 1.0. (See accompanying file
-// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+// (C) Copyright John Maddock 2001 - 2003
+// (C) Copyright Bryce Lelbach 2010
+//
+// Use, modification and distribution are subject to the
+// Boost Software License, Version 1.0. (See accompanying file
+// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+// See http://www.boost.org for most recent version.
-// See http://www.boost.org for most recent version.
+#define BOOST_PLATFORM "Cygwin" // Platform name.
+#define BOOST_CYGWIN __CYGWIN__ // Boost platform ID macros.
-// cygwin specific config options:
-
-#define BOOST_PLATFORM "Cygwin"
#define BOOST_HAS_DIRENT_H
#define BOOST_HAS_LOG1P
#define BOOST_HAS_EXPM1
-//
-// Threading API:
-// See if we have POSIX threads, if we do use them, otherwise
-// revert to native Win threads.
+#define BOOST_NIX 1
+//#define BOOST_GENETIC_NIX 1
+//#define BOOST_TRADEMARK_NIX 1
+#define BOOST_FUNCTIONAL_NIX 1
+
+// See if we have POSIX threads, otherwise revert to native Win threads.
#define BOOST_HAS_UNISTD_H
#include
-#if defined(_POSIX_THREADS) && (_POSIX_THREADS+0 >= 0) && !defined(BOOST_HAS_WINTHREADS)
-# define BOOST_HAS_PTHREADS
-# define BOOST_HAS_SCHED_YIELD
-# define BOOST_HAS_GETTIMEOFDAY
-# define BOOST_HAS_PTHREAD_MUTEXATTR_SETTYPE
-# define BOOST_HAS_SIGACTION
+
+#if defined(_POSIX_THREADS) && (_POSIX_THREADS + 0 >= 0) && \
+ !defined(BOOST_HAS_WINTHREADS)
+ #define BOOST_HAS_PTHREADS
+ #define BOOST_HAS_SCHED_YIELD
+ #define BOOST_HAS_GETTIMEOFDAY
+ #define BOOST_HAS_PTHREAD_MUTEXATTR_SETTYPE
+ #define BOOST_HAS_SIGACTION
#else
-# if !defined(BOOST_HAS_WINTHREADS)
-# define BOOST_HAS_WINTHREADS
-# endif
-# define BOOST_HAS_FTIME
+ #if !defined(BOOST_HAS_WINTHREADS)
+ #define BOOST_HAS_WINTHREADS
+ #endif
+ #define BOOST_HAS_FTIME
#endif
-//
-// find out if we have a stdint.h, there should be a better way to do this:
-//
+// Find out if we have a stdint.h, there should be a better way to do this.
#include
+
#ifdef _STDINT_H
-#define BOOST_HAS_STDINT_H
+ #define BOOST_HAS_STDINT_H
#endif
-// boilerplate code:
#include
-//
-// Cygwin lies about XSI conformance, there is no nl_types.h:
-//
+// Cygwin lies about XSI conformance, there is no nl_types.h.
#ifdef BOOST_HAS_NL_TYPES_H
-# undef BOOST_HAS_NL_TYPES_H
+ #undef BOOST_HAS_NL_TYPES_H
#endif
diff --git a/include/boost/config/platform/hpux.hpp b/include/boost/config/platform/hpux.hpp
index 19ce68e5..2aefb2d2 100644
--- a/include/boost/config/platform/hpux.hpp
+++ b/include/boost/config/platform/hpux.hpp
@@ -3,6 +3,7 @@
// (C) Copyright David Abrahams 2002.
// (C) Copyright Toon Knapen 2003.
// (C) Copyright Boris Gubenko 2006 - 2007.
+// (C) Copyright Bryce Lelbach 2010
// Use, modification and distribution are subject to the
// Boost Software License, Version 1.0. (See accompanying file
// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -13,6 +14,13 @@
#define BOOST_PLATFORM "HP-UX"
+#define BOOST_HPUX 1 // platform ID macro
+
+#define BOOST_NIX 1
+//#define BOOST_GENETIC_NIX 1
+#define BOOST_TRADEMARK_NIX 1
+//#define BOOST_FUNCTIONAL_NIX 1
+
// In principle, HP-UX has a nice under the name
// However, it has the following problem:
// Use of UINT32_C(0) results in "0u l" for the preprocessed source
diff --git a/include/boost/config/platform/irix.hpp b/include/boost/config/platform/irix.hpp
index aeae49c8..4915d813 100644
--- a/include/boost/config/platform/irix.hpp
+++ b/include/boost/config/platform/irix.hpp
@@ -1,5 +1,6 @@
// (C) Copyright John Maddock 2001 - 2003.
// (C) Copyright Jens Maurer 2003.
+// (C) Copyright Bryce Lelbach 2010
// Use, modification and distribution are subject to the
// Boost Software License, Version 1.0. (See accompanying file
// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -11,6 +12,11 @@
#define BOOST_PLATFORM "SGI Irix"
+#define BOOST_NIX 1
+//#define BOOST_GENETIC_NIX 1
+#define BOOST_TRADEMARK_NIX 1
+//#define BOOST_FUNCTIONAL_NIX 1
+
#define BOOST_NO_SWPRINTF
//
// these are not auto detected by POSIX feature tests:
diff --git a/include/boost/config/platform/linux.hpp b/include/boost/config/platform/linux.hpp
index 51ae1334..3e7f02c7 100644
--- a/include/boost/config/platform/linux.hpp
+++ b/include/boost/config/platform/linux.hpp
@@ -1,5 +1,6 @@
// (C) Copyright John Maddock 2001 - 2003.
// (C) Copyright Jens Maurer 2001 - 2003.
+// (C) Copyright Bryce Lelbach 2010
// Use, modification and distribution are subject to the
// Boost Software License, Version 1.0. (See accompanying file
// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -13,6 +14,13 @@
// make sure we have __GLIBC_PREREQ if available at all
#include
+#define BOOST_NIX 1
+//#define BOOST_GENETIC_NIX 1
+//#define BOOST_TRADEMARK_NIX 1
+#define BOOST_FUNCTIONAL_NIX 1
+
+#define BOOST_LINUX 1
+
//
// added to glibc 2.1.1
// We can only test for 2.1 though:
diff --git a/include/boost/config/platform/macos.hpp b/include/boost/config/platform/macos.hpp
index 2780ef99..d018703d 100644
--- a/include/boost/config/platform/macos.hpp
+++ b/include/boost/config/platform/macos.hpp
@@ -1,6 +1,7 @@
// (C) Copyright John Maddock 2001 - 2003.
// (C) Copyright Darin Adler 2001 - 2002.
// (C) Copyright Bill Kempf 2002.
+// (C) Copyright Bryce Lelbach 2010
// Use, modification and distribution are subject to the
// Boost Software License, Version 1.0. (See accompanying file
// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -13,6 +14,11 @@
#if __MACH__ && !defined(_MSL_USING_MSL_C)
+#define BOOST_NIX 1
+//#define BOOST_GENETIC_NIX 1
+#define BOOST_TRADEMARK_NIX 1
+//#define BOOST_FUNCTIONAL_NIX 1
+
// Using the Mac OS X system BSD-style C library.
# ifndef BOOST_HAS_UNISTD_H
diff --git a/include/boost/config/platform/qnxnto.hpp b/include/boost/config/platform/qnxnto.hpp
index b1377c8d..0c54373d 100644
--- a/include/boost/config/platform/qnxnto.hpp
+++ b/include/boost/config/platform/qnxnto.hpp
@@ -1,4 +1,5 @@
// (C) Copyright Jim Douglas 2005.
+// (C) Copyright Bryce Lelbach 2010
// Use, modification and distribution are subject to the
// Boost Software License, Version 1.0. (See accompanying file
// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -7,8 +8,15 @@
// QNX specific config options:
+#define BOOST_QNX 1
+
#define BOOST_PLATFORM "QNX"
+#define BOOST_NIX 1
+//#define BOOST_GENETIC_NIX 1
+//#define BOOST_TRADEMARK_NIX 1
+#define BOOST_FUNCTIONAL_NIX 1
+
#define BOOST_HAS_UNISTD_H
#include
diff --git a/include/boost/config/platform/solaris.hpp b/include/boost/config/platform/solaris.hpp
index 9f925666..9a9e1f46 100644
--- a/include/boost/config/platform/solaris.hpp
+++ b/include/boost/config/platform/solaris.hpp
@@ -1,5 +1,6 @@
// (C) Copyright John Maddock 2001 - 2003.
// (C) Copyright Jens Maurer 2003.
+// (C) Copyright Bryce Lelbach 2010
// Use, modification and distribution are subject to the
// Boost Software License, Version 1.0. (See accompanying file
// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -10,6 +11,11 @@
#define BOOST_PLATFORM "Sun Solaris"
+#define BOOST_NIX 1
+//#define BOOST_GENETIC_NIX 1
+#define BOOST_TRADEMARK_NIX 1
+//#define BOOST_FUNCTIONAL_NIX 1
+
#define BOOST_HAS_GETTIMEOFDAY
// boilerplate code:
diff --git a/include/boost/config/platform/symbian.hpp b/include/boost/config/platform/symbian.hpp
index ad379431..798dfac4 100644
--- a/include/boost/config/platform/symbian.hpp
+++ b/include/boost/config/platform/symbian.hpp
@@ -1,6 +1,7 @@
// (C) Copyright Yuriy Krasnoschek 2009.
// (C) Copyright John Maddock 2001 - 2003.
// (C) Copyright Jens Maurer 2001 - 2003.
+// (C) Copyright Bryce Lelbach 2010
// Use, modification and distribution are subject to the
// Boost Software License, Version 1.0. (See accompanying file
// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -9,13 +10,16 @@
// symbian specific config options:
-
#define BOOST_PLATFORM "Symbian"
#define BOOST_SYMBIAN 1
-
#if defined(__S60_3X__)
-// Open C / C++ plugin was introdused in this SDK, earlier versions don't have CRT / STL
+// Open C / C++ plugin was introdused in this SDK, earlier versions don't have
+// CRT / STL
+# define BOOST_NIX 1
+//# define BOOST_GENETIC_NIX 1
+//# define BOOST_TRADEMARK_NIX 1
+# define BOOST_FUNCTIONAL_NIX 1
# define BOOST_S60_3rd_EDITION_FP2_OR_LATER_SDK
// make sure we have __GLIBC_PREREQ if available at all
# include
diff --git a/include/boost/config/platform/vxworks.hpp b/include/boost/config/platform/vxworks.hpp
index 6ec5171e..3b128bf4 100644
--- a/include/boost/config/platform/vxworks.hpp
+++ b/include/boost/config/platform/vxworks.hpp
@@ -1,4 +1,5 @@
// (C) Copyright Dustin Spicuzza 2009.
+// (C) Copyright Bryce Lelbach 2010
// Use, modification and distribution are subject to the
// Boost Software License, Version 1.0. (See accompanying file
// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -23,6 +24,11 @@
#define _POSIX_TIMERS 1
#define _POSIX_THREADS 1
+#define BOOST_NIX 1
+//#define BOOST_GENETIC_NIX 1
+#define BOOST_TRADEMARK_NIX 1
+//#define BOOST_FUNCTIONAL_NIX 1
+
// vxworks doesn't work with asio serial ports
#define BOOST_ASIO_DISABLE_SERIAL_PORT
diff --git a/include/boost/config/suffix.hpp b/include/boost/config/suffix.hpp
index f1f29114..0aab3d3d 100644
--- a/include/boost/config/suffix.hpp
+++ b/include/boost/config/suffix.hpp
@@ -639,6 +639,10 @@ namespace std{ using ::typeinfo; }
# if defined(unix) || defined(__unix) || defined(_XOPEN_SOURCE) \
|| defined(_POSIX_SOURCE)
# define BOOST_PLATFORM "Generic Unix"
+# define BOOST_NIX 1
+//# define BOOST_GENETIC_NIX 1
+//# define BOOST_TRADEMARK_NIX 1
+# define BOOST_FUNCTIONAL_NIX 1
# else
# define BOOST_PLATFORM "Unknown"
# endif
|