Partial work on changes post-review of Predef library:

* shorter category names
* CXX => COMP to be generic compiler category
* add predef for string name of item
* renamed all version make/extraction macros for clarity
* C++ standard predef to use 1970.0.0 epoc date offset
* subcategories for OS_BSD
* start rewrite to support older preprocessors

git-svn-id: http://svn.boost.org/svn/boost/sandbox/predef@79517 b8fc166d-592f-0410-95f2-cb63ce0dd405
This commit is contained in:
Rene Rivera committed 2012-07-15 03:37:23 +00:00
1 parent 4f4e109ab5
commit 7f08aede99
107 files changed
+2341 -1228

No files matched your search

+17 -6
View File
@@ -1,5 +1,5 @@
/*
Copyright Redshift Software Inc. 2011
Copyright Redshift Software Inc. 2011-2012
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)
@@ -12,19 +12,30 @@ http://www.boost.org/LICENSE_1_0.txt)
#include <boost/predef/make.h>
/*`
[heading `BOOST_LANGUAGE_OBJC`]
[heading `BOOST_LANG_OBJC`]
[@http://en.wikipedia.org/wiki/Objective-C Objective-C] language.
[table
[[__predef_symbol__] [__predef_version__]]
[[``] [__predef_detection__]]
[[``] [V.R.P]]
]
*/
#define BOOST_LANGUAGE_OBJC BOOST_VERSION_NUMBER(0,0,0)
#define BOOST_LANG_OBJC BOOST_VERSION_NUMBER(0,0,0)
#if defined(__OBJC__)
#undef BOOST_LANGUAGE_OBJC
#define BOOST_LANGUAGE_OBJC BOOST_VERSION_NUMBER(0,0,1)
# undef BOOST_LANG_OBJC
# define BOOST_LANG_OBJC BOOST_VERSION_NUMBER(0,0,1)
#endif
#define BOOST_LANG_OBJC_NAME "Objective-C"
#include <boost/predef/detail/test.h>
BOOST_PREDEF_DECLARE_TEST(BOOST_LANGUAGE_OBJC,"Objective-C")
BOOST_PREDEF_DECLARE_TEST(BOOST_LANG_OBJC,BOOST_LANG_OBJC_NAME)
#endif
+26 -15
View File
@@ -1,5 +1,5 @@
/*
Copyright Redshift Software Inc. 2011
Copyright Redshift Software Inc. 2011-2012
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)
@@ -12,28 +12,39 @@ http://www.boost.org/LICENSE_1_0.txt)
#include <boost/predef/make.h>
/*`
[heading `BOOST_LANGUAGE_STDC`]
[heading `BOOST_LANG_STDC`]
[@http://en.wikipedia.org/wiki/C_(programming_language) Standard C] language.
If available, the year of the standard is detected as 0.0.YYYY.
If available, the year of the standard is detected as YYYY.1.1 from the Epoc date.
[table
[[__predef_symbol__] [__predef_version__]]
[[``] [__predef_detection__]]
[[``] [V.R.P]]
]
*/
#define BOOST_LANGUAGE_STDC BOOST_VERSION_NUMBER(0,0,0)
#define BOOST_LANG_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
# undef BOOST_LANG_STDC
# if defined(__STDC_VERSION__)
# if (__STDC_VERSION__ > 100)
# define BOOST_LANG_STDC BOOST_PREDEF_MAKE_YYYY(__STDC_VERSION__)
# else
# define BOOST_LANG_STDC BOOST_VERSION_NUMBER(0,0,1)
# endif
# else
# define BOOST_LANG_STDC BOOST_VERSION_NUMBER(0,0,1)
# endif
#endif
#define BOOST_LANG_STDC_NAME "Standard C"
#include <boost/predef/detail/test.h>
BOOST_PREDEF_DECLARE_TEST(BOOST_LANGUAGE_STDC,"Standard C")
BOOST_PREDEF_DECLARE_TEST(BOOST_LANG_STDC,BOOST_LANG_STDC_NAME)
#endif
+41 -24
View File
@@ -1,5 +1,5 @@
/*
Copyright Redshift Software Inc. 2011
Copyright Redshift Software Inc. 2011-2012
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)
@@ -12,7 +12,7 @@ http://www.boost.org/LICENSE_1_0.txt)
#include <boost/predef/make.h>
/*`
[heading `BOOST_LANGUAGE_STDCPP`]
[heading `BOOST_LANG_STDCPP`]
[@http://en.wikipedia.org/wiki/C%2B%2B Standard C++] language.
If available, the year of the standard is detected as 0.0.YYYY.
@@ -27,57 +27,74 @@ Specifically the defined versions are:
[[0.0.?] [2007] [ISO/IEC TR 19768:2007]]
[[0.0.2011] [2011] [ISO/IEC 14882:2011]]
]
[table
[[__predef_symbol__] [__predef_version__]]
[[``] [__predef_detection__]]
[[``] [V.R.P]]
]
*/
#define BOOST_LANGUAGE_STDCPP BOOST_VERSION_NUMBER(0,0,0)
#define BOOST_LANG_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
# undef BOOST_LANG_STDCPP
# if (__cplusplus > 100)
# define BOOST_LANG_STDCPP BOOST_VERSION_NUMBER(0,0,__cplusplus/100)
# else
# define BOOST_LANG_STDCPP BOOST_VERSION_NUMBER(0,0,1)
# endif
#endif
#define BOOST_LANG_STDCPP_NAME "Standard C++"
#include <boost/predef/detail/test.h>
BOOST_PREDEF_DECLARE_TEST(BOOST_LANGUAGE_STDCPP,"Standard C++")
BOOST_PREDEF_DECLARE_TEST(BOOST_LANG_STDCPP,BOOST_LANG_STDCPP_NAME)
/*`
[heading `BOOST_LANGUAGE_STDCPPCLI`]
[heading `BOOST_LANG_STDCPPCLI`]
[@http://en.wikipedia.org/wiki/C%2B%2B/CLI 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)
#define BOOST_LANG_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
# undef BOOST_LANG_STDCPPCLI
# if (__cplusplus_cli > 100)
# define BOOST_LANG_STDCPPCLI BOOST_VERSION_NUMBER(0,0,__cplusplus_cli/100)
# else
# define BOOST_LANG_STDCPPCLI BOOST_VERSION_NUMBER(0,0,1)
# endif
#endif
#define BOOST_LANG_STDCPPCLI_NAME "Standard C++/CLI"
#include <boost/predef/detail/test.h>
BOOST_PREDEF_DECLARE_TEST(BOOST_LANGUAGE_STDCPPCLI,"Standard C++/CLI")
BOOST_PREDEF_DECLARE_TEST(BOOST_LANG_STDCPPCLI,BOOST_LANG_STDCPPCLI_NAME)
/*`
[heading `BOOST_LANGUAGE_STDECPP`]
[heading `BOOST_LANG_STDECPP`]
[@http://en.wikipedia.org/wiki/Embedded_C%2B%2B Standard Embedded C++] language.
*/
#define BOOST_LANGUAGE_STDECPP BOOST_VERSION_NUMBER(0,0,0)
#define BOOST_LANG_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)
# undef BOOST_LANG_STDECPP
# define BOOST_LANG_STDECPP BOOST_VERSION_NUMBER(0,0,1)
#endif
#define BOOST_LANG_STDECPP_NAME "Standard Embedded C++"
#include <boost/predef/detail/test.h>
BOOST_PREDEF_DECLARE_TEST(BOOST_LANGUAGE_STDECPP,"Standard Embedded C++")
BOOST_PREDEF_DECLARE_TEST(BOOST_LANG_STDECPP,BOOST_LANG_STDECPP_NAME)
#endif