blob: 07a92de7efb4483ad3910854adba6386d5d4f1c2 [file] [log] [blame]
Jeff Thompsonf7d49942013-08-01 16:47:40 -07001// (C) Copyright Noel Belcourt 2007.
2// Use, modification and distribution are subject to the
3// Boost Software License, Version 1.0. (See accompanying file
4// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
5
6// See http://www.boost.org for most recent version.
7
8// PGI C++ compiler setup:
9
Jeff Thompson3d613fd2013-10-15 15:39:04 -070010#define NDNBOOST_COMPILER_VERSION __PGIC__##__PGIC_MINOR__
11#define NDNBOOST_COMPILER "PGI compiler version " NDNBOOST_STRINGIZE(NDNBOOST_COMPILER_VERSION)
Jeff Thompsonf7d49942013-08-01 16:47:40 -070012
13//
14// Threading support:
15// Turn this on unconditionally here, it will get turned off again later
16// if no threading API is detected.
17//
18
19#if __PGIC__ >= 11
20
21// options requested by configure --enable-test
Jeff Thompson3d613fd2013-10-15 15:39:04 -070022#define NDNBOOST_HAS_PTHREADS
23#define NDNBOOST_HAS_THREADS
24#define NDNBOOST_HAS_PTHREAD_YIELD
25#define NDNBOOST_HAS_NRVO
26#define NDNBOOST_HAS_LONG_LONG
Jeff Thompsonf7d49942013-08-01 16:47:40 -070027
28// options --enable-test wants undefined
Jeff Thompson3d613fd2013-10-15 15:39:04 -070029#undef NDNBOOST_NO_STDC_NAMESPACE
30#undef NDNBOOST_NO_EXCEPTION_STD_NAMESPACE
31#undef NDNBOOST_DEDUCED_TYPENAME
Jeff Thompsonf7d49942013-08-01 16:47:40 -070032
Jeff Thompson3d613fd2013-10-15 15:39:04 -070033#define NDNBOOST_FUNCTION_SCOPE_USING_DECLARATION_BREAKS_ADL
34#define NDNBOOST_NO_TWO_PHASE_NAME_LOOKUP
35#define NDNBOOST_NO_CXX11_AUTO_MULTIDECLARATIONS
36#define NDNBOOST_NO_CXX11_AUTO_DECLARATIONS
Jeff Thompsonf7d49942013-08-01 16:47:40 -070037
38#elif __PGIC__ >= 10
39
40// options requested by configure --enable-test
Jeff Thompson3d613fd2013-10-15 15:39:04 -070041#define NDNBOOST_HAS_THREADS
42#define NDNBOOST_HAS_NRVO
43#define NDNBOOST_HAS_LONG_LONG
Jeff Thompsonf7d49942013-08-01 16:47:40 -070044
45// options --enable-test wants undefined
Jeff Thompson3d613fd2013-10-15 15:39:04 -070046#undef NDNBOOST_NO_STDC_NAMESPACE
47#undef NDNBOOST_NO_EXCEPTION_STD_NAMESPACE
48#undef NDNBOOST_DEDUCED_TYPENAME
Jeff Thompsonf7d49942013-08-01 16:47:40 -070049
50#elif __PGIC__ >= 7
51
Jeff Thompson3d613fd2013-10-15 15:39:04 -070052#define NDNBOOST_FUNCTION_SCOPE_USING_DECLARATION_BREAKS_ADL
53#define NDNBOOST_NO_TWO_PHASE_NAME_LOOKUP
54#define NDNBOOST_NO_SWPRINTF
55#define NDNBOOST_NO_CXX11_AUTO_MULTIDECLARATIONS
56#define NDNBOOST_NO_CXX11_AUTO_DECLARATIONS
Jeff Thompsonf7d49942013-08-01 16:47:40 -070057
58#else
59
60# error "Pgi compiler not configured - please reconfigure"
61
62#endif
63//
64// C++0x features
65//
Jeff Thompson3d613fd2013-10-15 15:39:04 -070066// See boost\config\suffix.hpp for NDNBOOST_NO_LONG_LONG
Jeff Thompsonf7d49942013-08-01 16:47:40 -070067//
Jeff Thompson3d613fd2013-10-15 15:39:04 -070068#define NDNBOOST_NO_CXX11_CHAR16_T
69#define NDNBOOST_NO_CXX11_CHAR32_T
70#define NDNBOOST_NO_CXX11_CONSTEXPR
71#define NDNBOOST_NO_CXX11_DECLTYPE
72#define NDNBOOST_NO_CXX11_DECLTYPE_N3276
73#define NDNBOOST_NO_CXX11_DEFAULTED_FUNCTIONS
74#define NDNBOOST_NO_CXX11_DELETED_FUNCTIONS
75#define NDNBOOST_NO_CXX11_EXPLICIT_CONVERSION_OPERATORS
76#define NDNBOOST_NO_CXX11_EXTERN_TEMPLATE
77#define NDNBOOST_NO_CXX11_FUNCTION_TEMPLATE_DEFAULT_ARGS
78#define NDNBOOST_NO_CXX11_LAMBDAS
79#define NDNBOOST_NO_CXX11_LOCAL_CLASS_TEMPLATE_PARAMETERS
80#define NDNBOOST_NO_CXX11_NOEXCEPT
81#define NDNBOOST_NO_CXX11_NULLPTR
82#define NDNBOOST_NO_CXX11_NUMERIC_LIMITS
83#define NDNBOOST_NO_CXX11_RANGE_BASED_FOR
84#define NDNBOOST_NO_CXX11_RAW_LITERALS
85#define NDNBOOST_NO_CXX11_RVALUE_REFERENCES
86#define NDNBOOST_NO_CXX11_SCOPED_ENUMS
87#define NDNBOOST_NO_SFINAE_EXPR
88#define NDNBOOST_NO_CXX11_STATIC_ASSERT
89#define NDNBOOST_NO_SWPRINTF
90#define NDNBOOST_NO_CXX11_TEMPLATE_ALIASES
91#define NDNBOOST_NO_CXX11_UNICODE_LITERALS
92#define NDNBOOST_NO_CXX11_VARIADIC_TEMPLATES
93#define NDNBOOST_NO_CXX11_VARIADIC_MACROS
94#define NDNBOOST_NO_CXX11_UNIFIED_INITIALIZATION_SYNTAX
Jeff Thompsonf7d49942013-08-01 16:47:40 -070095
Jeff Thompson3d613fd2013-10-15 15:39:04 -070096#define NDNBOOST_NO_CXX11_HDR_UNORDERED_SET
97#define NDNBOOST_NO_CXX11_HDR_UNORDERED_MAP
98#define NDNBOOST_NO_CXX11_HDR_TYPEINDEX
99#define NDNBOOST_NO_CXX11_HDR_TYPE_TRAITS
100#define NDNBOOST_NO_CXX11_HDR_TUPLE
101#define NDNBOOST_NO_CXX11_HDR_THREAD
102#define NDNBOOST_NO_CXX11_HDR_SYSTEM_ERROR
103#define NDNBOOST_NO_CXX11_HDR_REGEX
104#define NDNBOOST_NO_CXX11_HDR_RATIO
105#define NDNBOOST_NO_CXX11_HDR_RANDOM
106#define NDNBOOST_NO_CXX11_HDR_MUTEX
107#define NDNBOOST_NO_CXX11_HDR_INITIALIZER_LIST
108#define NDNBOOST_NO_CXX11_HDR_FUTURE
109#define NDNBOOST_NO_CXX11_HDR_FORWARD_LIST
110#define NDNBOOST_NO_CXX11_HDR_CONDITION_VARIABLE
111#define NDNBOOST_NO_CXX11_HDR_CODECVT
112#define NDNBOOST_NO_CXX11_HDR_CHRONO
113#define NDNBOOST_NO_CXX11_HDR_ARRAY
114#define NDNBOOST_NO_CXX11_USER_DEFINED_LITERALS
Jeff Thompsonf7d49942013-08-01 16:47:40 -0700115
116//
117// version check:
118// probably nothing to do here?
119