From b54dc0fca524b7c1eea002224c984ed836bec153 Mon Sep 17 00:00:00 2001 From: "K. Noel Belcourt" Date: Fri, 5 Feb 2010 05:51:15 +0000 Subject: [PATCH] Changes to support pgi-10.x. John suggested running configure --enable-test but even after making suggested changes, it still doesn't seem to pick up that BOOST_HAS_PTHREADS has been defined. Also, not sure how to undefine these macros as they seem to be set after I explicitly undefine them. the following macros need to be defined BOOST_HAS_PTHREADS the following macros need to be undef'ed BOOST_NO_STDC_NAMESPACE BOOST_NO_EXCEPTION_STD_NAMESPACE BOOST_DEDUCED_TYPENAME [SVN r59505] --- include/boost/config/compiler/pgi.hpp | 21 ++++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/include/boost/config/compiler/pgi.hpp b/include/boost/config/compiler/pgi.hpp index e40553ef..1c7c84b7 100644 --- a/include/boost/config/compiler/pgi.hpp +++ b/include/boost/config/compiler/pgi.hpp @@ -16,11 +16,28 @@ // if no threading API is detected. // -#if (__PGIC__ >= 7) +// PGI 10.x doesn't seem to define __PGIC__ + +// versions earlier than 10.x do define __PGIC__ +#if __PGIC__ >= 10 + +// options requested by configure --enable-test +#define BOOST_HAS_PTHREADS +#define BOOST_HAS_NRVO +#define BOOST_HAS_LONG_LONG + +// options --enable-test wants undefined +#undef BOOST_NO_STDC_NAMESPACE +#undef BOOST_NO_EXCEPTION_STD_NAMESPACE +#undef BOOST_DEDUCED_TYPENAME + +#elif __PGIC__ >= 7 #define BOOST_FUNCTION_SCOPE_USING_DECLARATION_BREAKS_ADL #define BOOST_NO_TWO_PHASE_NAME_LOOKUP #define BOOST_NO_SWPRINTF +#define BOOST_NO_AUTO_MULTIDECLARATIONS +#define BOOST_NO_AUTO_DECLARATIONS #else @@ -32,8 +49,6 @@ // // See boost\config\suffix.hpp for BOOST_NO_LONG_LONG // -#define BOOST_NO_AUTO_DECLARATIONS -#define BOOST_NO_AUTO_MULTIDECLARATIONS #define BOOST_NO_CHAR16_T #define BOOST_NO_CHAR32_T #define BOOST_NO_CONCEPTS