2010-05-22 20:20:04 +00:00
|
|
|
/*
|
2014-01-10 08:46:03 -06:00
|
|
|
Copyright Rene Rivera 2008-2013
|
2010-05-22 20:20:04 +00:00
|
|
|
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)
|
|
|
|
*/
|
2008-04-04 18:47:29 +00:00
|
|
|
|
2010-02-25 16:59:10 +00:00
|
|
|
#ifndef BOOST_PREDEF_COMPILER_IBM_H
|
|
|
|
#define BOOST_PREDEF_COMPILER_IBM_H
|
2008-04-04 18:47:29 +00:00
|
|
|
|
2010-02-25 16:59:10 +00:00
|
|
|
#include <boost/predef/version_number.h>
|
2011-11-19 03:46:41 +00:00
|
|
|
#include <boost/predef/make.h>
|
2008-04-04 18:47:29 +00:00
|
|
|
|
2011-11-30 05:54:23 +00:00
|
|
|
/*`
|
2012-07-15 03:37:23 +00:00
|
|
|
[heading `BOOST_COMP_IBM`]
|
2011-11-30 05:54:23 +00:00
|
|
|
|
2011-12-15 03:48:37 +00:00
|
|
|
[@http://en.wikipedia.org/wiki/VisualAge IBM XL C/C++] compiler.
|
2011-11-30 05:54:23 +00:00
|
|
|
Version number available as major, minor, and patch.
|
2012-07-15 03:37:23 +00:00
|
|
|
|
|
|
|
[table
|
|
|
|
[[__predef_symbol__] [__predef_version__]]
|
|
|
|
|
2013-01-10 23:23:37 -06:00
|
|
|
[[`__IBMCPP__`] [__predef_detection__]]
|
|
|
|
[[`__xlC__`] [__predef_detection__]]
|
|
|
|
[[`__xlc__`] [__predef_detection__]]
|
2012-07-15 03:37:23 +00:00
|
|
|
|
2013-01-10 23:23:37 -06:00
|
|
|
[[`__COMPILER_VER__`] [V.R.P]]
|
|
|
|
[[`__xlC__`] [V.R.P]]
|
|
|
|
[[`__xlc__`] [V.R.P]]
|
|
|
|
[[`__IBMCPP__`] [V.R.P]]
|
2012-07-15 03:37:23 +00:00
|
|
|
]
|
2011-11-30 05:54:23 +00:00
|
|
|
*/
|
|
|
|
|
2013-01-18 21:25:30 -06:00
|
|
|
#define BOOST_COMP_IBM BOOST_VERSION_NUMBER_NOT_AVAILABLE
|
2008-04-04 18:47:29 +00:00
|
|
|
|
2011-12-15 03:48:37 +00:00
|
|
|
#if defined(__IBMCPP__) || defined(__xlC__) || defined(__xlc__)
|
2012-07-15 03:37:23 +00:00
|
|
|
# undef BOOST_COMP_IBM
|
2013-01-18 21:25:30 -06:00
|
|
|
# if !defined(BOOST_COMP_IBM) && defined(__COMPILER_VER__)
|
2012-07-15 03:37:23 +00:00
|
|
|
# define BOOST_COMP_IBM BOOST_PREDEF_MAKE_0X_VRRPPPP(__COMPILER_VER__)
|
2013-01-18 21:25:30 -06:00
|
|
|
# endif
|
|
|
|
# if !defined(BOOST_COMP_IBM) && defined(__xlC__)
|
2012-07-15 03:37:23 +00:00
|
|
|
# define BOOST_COMP_IBM BOOST_PREDEF_MAKE_0X_VVRR(__xlC__)
|
2013-01-18 21:25:30 -06:00
|
|
|
# endif
|
|
|
|
# if !defined(BOOST_COMP_IBM) && defined(__xlc__)
|
2012-07-15 03:37:23 +00:00
|
|
|
# define BOOST_COMP_IBM BOOST_PREDEF_MAKE_0X_VVRR(__xlc__)
|
2013-01-18 21:25:30 -06:00
|
|
|
# endif
|
|
|
|
# if !defined(BOOST_COMP_IBM)
|
2012-07-15 03:37:23 +00:00
|
|
|
# define BOOST_COMP_IBM BOOST_PREDEF_MAKE_10_VRP(__IBMCPP__)
|
|
|
|
# endif
|
2008-04-04 18:47:29 +00:00
|
|
|
#endif
|
|
|
|
|
2013-01-18 21:25:30 -06:00
|
|
|
#if BOOST_COMP_IBM
|
|
|
|
# define BOOST_COMP_IBM_AVAILABLE
|
|
|
|
#endif
|
|
|
|
|
2012-07-15 03:37:23 +00:00
|
|
|
#define BOOST_COMP_IBM_NAME "IBM XL C/C++"
|
|
|
|
|
2011-11-19 03:46:41 +00:00
|
|
|
#include <boost/predef/detail/test.h>
|
2012-07-15 03:37:23 +00:00
|
|
|
BOOST_PREDEF_DECLARE_TEST(BOOST_COMP_IBM,BOOST_COMP_IBM_NAME)
|
|
|
|
|
2011-11-19 03:46:41 +00:00
|
|
|
|
2008-04-04 18:47:29 +00:00
|
|
|
#endif
|